Version. 0.1
Date. 2026-08-20
Filed under. Ruling 2, item B, Operator, 2026-08-20 — filed as its own item alongside item A (loomworks-candidate-discard-memory-deletion-design-question-v0_1.md), split out from the R-2 forward-gap arc. R-2 stays a forward-gap CR; this does not fold into it.
Status. Finding, filed for record. Not a defect ruling and not a CR — no fix is authorized or implied by this filing.
Raised by. The R-2 Step 0 trace of contribution_credential_issued / _claimed / _revoked (loomworks-foray-r2-forward-gap-scoping-note-v0_3.md; the six-entry trace), tracing authority/contribution_credentials.py.
authority/contribution_credentials.py implements the full contribution-credential lifecycle — issuance, claim-binding, revocation — entirely via raw SQL against its own dedicated table:
db.execute(text("INSERT INTO contribution_credentials (...) VALUES (...) RETURNING ..."))
create_contribution_credential, revoke_credential, and bind_credential_for_token all persist this way. None of the three functions in this file calls append_event. No memory_events row is ever written for issuing, claiming, or revoking a contribution credential.
Most of the six-entry trace's findings are registry-vs-reality mismatches: an entry exists but the name is wrong (induction_cycle_recorded), or a live kind exists with no entry (49 of 65 cases in the wider census). This one is different in kind. contribution_credential_issued, _claimed, and _revoked were pre-registered in _ANCHOR_PRIORITY — someone judged these three acts significant enough to reserve a place for them before any writer existed. No writer ever arrived. The gap is not a naming drift or an unregistered event; it is a registered, judged-significant act with no path to Memory's event log at all, by any name.
A contribution credential is an authority act — it establishes who is credited for a contribution, which is the same axis of provenance the candidate seed's Memory section commits to preserving ("Memory is accumulated knowledge with provenance"). Issuing, claiming, and revoking one are the kind of acts the seed's provenance model would expect to be visible in Memory's record. Today, none of the three ever becomes a Memory event, and none reaches _foray_reserved_emit or any FORAY reserved location by any other path either — the raw-SQL table contribution_credentials is its own island, unconnected to both Memory and FORAY.
This filing records the finding. It does not propose a fix, does not rule on whether contribution_credentials should gain an append_event call, and does not touch _ANCHOR_PRIORITY or authority/contribution_credentials.py. The registry-local annotation of this fact (a pointer, not a resolution) is recorded separately at loomworks-anchor-priority-registry-dispositions-v0_1.md §4, which keeps all three entries and cites this document as the fuller record of why.
DUNIN7 — Done In Seven LLC — Miami, Florida Loomworks — contribution-credential lifecycle writes around the event log — v0_1 — 2026-08-20