📚 Name the audited set, not every mutation on a branch

The sentence opened with every mutation and then listed three that are the
exception, which a reader has to reconcile. It now opens with the set that
does attach the three keys: the mutations through `audited` and a save routed
to a branch's op log.
This commit is contained in:
Álvaro Tejero Cantero 2026-09-16 20:23:09 +02:00
parent c68833d209
commit aad3719721
No known key found for this signature in database

View File

@ -591,14 +591,15 @@ The listing is deliberately not gated. It renders the branch panel, so
refusing it would take the panel away rather than protect it, and its cost
is bounded by the summary cache instead.
Every mutation on a branch attaches `:branch-operation`, `:branch-outcome`
and `:branch-duration-ms` to its own audit event, because the generic RPC
event records who called what and not how long it took, and duration is the
number the first enterprise trial will be asked about. Creation, compare,
merge, update-from-main and materialise attach them through `audited`; a save
routed to a branch's op log attaches them on the `update-file` event, whose
props it replaces. Every outcome carries them, the no-op merge, the
idempotent materialise and both refusal shapes included.
Every mutation that runs through `audited`, and every save routed to a
branch's op log, attaches `:branch-operation`, `:branch-outcome` and
`:branch-duration-ms` to its own audit event, because the generic RPC event
records who called what and not how long it took, and duration is the number
the first enterprise trial will be asked about. Creation, compare, merge,
update-from-main and materialise attach them through `audited`; the save
attaches them on the `update-file` event, whose props it replaces. Every
outcome carries them, the no-op merge, the idempotent materialise and both
refusal shapes included.
Three mutations are the exception: `update-file-branch`,
`archive-file-branch` and `delete-file-branch` are single-row metadata