Skip to content

docs(spec): command log tenant_id exception, bump to v0.5 - #60

Merged
OriginDevIT merged 1 commit into
mainfrom
docs/spec-v0.5
Sep 1, 2026
Merged

docs(spec): command log tenant_id exception, bump to v0.5#60
OriginDevIT merged 1 commit into
mainfrom
docs/spec-v0.5

Conversation

@OriginDevIT

Copy link
Copy Markdown
Owner

Closes the last of the four spec gaps opened by the command layer session, and bumps the header.

  • §11.2 now states that the command log row is written before the command transaction and concluded after it settles, each independently committed. A log inside the transaction it is logging vanishes on rollback, which is the case it exists for.
  • command_log's nullable tenant_id is stated as a bounded exception, with three conditions: it records an attempt rather than a state change, null rows are unreadable by osds_app, and they are written already concluded so the app never needs to update one.
  • A new exception is a maintainer decision recorded in docs/decisions.md, not something an implementer claims.
  • CLAUDE.md invariant 3 names command_log and points at the rule, so the migration no longer reads as a violation.
  • The access log in §11.2 is left alone; it inherits the rule if and when it is built.
  • Header bumped to v0.5 with a changes block covering §4.3, §7.1, §9.5 and §11.2.

Closes #49

Section 11.2 gains the write-outside-the-transaction discipline and the three
conditions a table must meet for a nullable tenant_id. CLAUDE.md invariant 3
names command_log as the one holder and points at the rule. A new exception
is a maintainer decision recorded in decisions.md.

Closes #49

Signed-off-by: Matthew Wren <info@origindev.com>
@OriginDevIT
OriginDevIT merged commit 96627ff into main Sep 1, 2026
1 check passed
@OriginDevIT
OriginDevIT deleted the docs/spec-v0.5 branch September 1, 2026 00:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

command_log is the one table without a non-null tenant_id

1 participant