Skip to content

fix(governance): reconcile expired released reservation claims - #39

Draft
echoomegaprime wants to merge 1 commit into
agent/certforge-installed-d8ad-source-base-20261102from
agent/certforge-released-claim-reconcile-20261102
Draft

echoomegaprime wants to merge 1 commit into
agent/certforge-installed-d8ad-source-base-20261102from
agent/certforge-released-claim-reconcile-20261102

Conversation

@echoomegaprime

Copy link
Copy Markdown
Owner

Terminal reconciliation can release a reservation while retaining its worker claim and lease. Existing recovery skips RELEASED, leaving historical ownership metadata unresolved. This clears those fields during normal terminal release and adds a tenant/run-scoped reconciliation operation for existing expired residue.

The operation uses existing governance authority, rechecks live authorization under the writer lock, requires a released reservation, terminal run and terminal/unclaimed dispatch, and refuses unproven or unexpired leases. It preserves run/outcome, usage credits, dispatch history and unrelated reservations, appends one audit event, and returns an idempotent readback. The SDK mapping reuses certforge.governance.manage at tier 2; the exact declared SDK set and generated schemas increase from 61 to 62 without applying registration SQL or granting access.

Validation:

  • Full local suite: 698 passed, 3 skipped.
  • P1 acceptance, generated SDK contract check, canonical self-journey (18 checks) and offline release journey passed.
  • Focused repair/surface/master controls passed, including tenant/scope/state/expiry negatives, rollback on audit failure, existing-credit preservation, all 13 unrelated pending reservations, and SDK count/route drift.
  • Exact-source BUILD preflight passed; secret scan found no leaks in the candidate commit.

Source candidate only. No live reconciliation, service installation, SDK registration, queue mutation or quiet-guard change is included. Exact-SHA certification and normal owner release admission remain separate gates.

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.

2 participants