diff --git a/docs/approval-service-auth.md b/docs/approval-service-auth.md index bb30c5b..a124ea1 100644 --- a/docs/approval-service-auth.md +++ b/docs/approval-service-auth.md @@ -81,3 +81,7 @@ Approval Engine's operator is a separate identity and read lane. Audit receiver and sender custody remains AUDIT-WP-0009-T09 / APPROVAL-WP-0002-T01. The live Approval Engine deployment and native OpenBao delivery remain open. Synthetic acceptance grants no production access, action approval or model spending. + +The newly consumed FLEX-DEC-2026-012 return remains SECRETS-WP-0008-T02: +adopt submitted_request_digest and the evaluator-to-evaluator approval digest +join before live activation. The current PDP double does not validate it. diff --git a/workplans/SECRETS-WP-0008-layer-model-lifecycle-conformance.md b/workplans/SECRETS-WP-0008-layer-model-lifecycle-conformance.md index f5c600e..e993a4b 100644 --- a/workplans/SECRETS-WP-0008-layer-model-lifecycle-conformance.md +++ b/workplans/SECRETS-WP-0008-layer-model-lifecycle-conformance.md @@ -8,7 +8,7 @@ status: active owner: grok topic_slug: custodian created: "2026-08-29" -updated: "2026-09-06" +updated: "2026-09-09" state_hub_workstream_id: "9c9e5164-b2f5-5ea2-a557-5368d65e9fe0" --- @@ -89,7 +89,7 @@ Acceptance: ```task id: SECRETS-WP-0008-T02 -status: wait +status: progress priority: high state_hub_task_id: "3eb9cff8-1441-5437-9e92-a2b655c82d04" ``` @@ -166,6 +166,34 @@ Acceptance: stance instead. - Local fixtures cannot authorize steady-state production. +### 2026-09-09 published replay-identity contract received + +Owner message `83db7e47-ba93-4d3e-ac15-2bcb2bb16a34` supplies +FLEX-DEC-2026-012, flex-auth source `0bc624b`, and updated +`docs/request-enrichment.md`, `docs/canonical-request-digest.md` and replay +examples. This supersedes the earlier "only external dependency" reading. +T02 is progress: the next work is an executable local consumer correction, +with no new owner interpretation or approval needed. + +Implement `binding.submitted_request_digest` comparison against the exact +submitted CheckRequest. Stop treating enriched `request_digest` or the consumer's +chosen list of benign enrichment fields as the replay identity. Preserve policy +pin, lifetime and deny checks. Refresh the owner's replay fixtures without +changing their existing request_digest/approval_binding_digest pins. + +For the approval join, carry the validated approval claim to the PDP and compare +its recorded pdp_digest to the evaluator's approval_binding_digest. Do not +recompute either side from unenriched material. Prove changed request, wrong +claim/digest, absent new binding field and registry-overridden caller attributes +are handled under the published contract before any live native lane activates. + +The separate approval identity exchange is implemented in SECRETS-WP-0009-T03 +and passes 350 tests plus a real KeyCape/Approval Engine component exercise. +That exercise uses a PDP double and does not prove this newer replay contract. +The current source has not yet implemented the changes in this return; live +PDP rollout/adoption evidence remains explicit too. No synthetic fixture or Hub +decision substitutes for a runtime allow and consume. + ## Emit evidence under the ยง9.6 bound ```task diff --git a/workplans/SECRETS-WP-0009-glas-claude-native-delivery.md b/workplans/SECRETS-WP-0009-glas-claude-native-delivery.md index 93ca2c2..b546ec3 100644 --- a/workplans/SECRETS-WP-0009-glas-claude-native-delivery.md +++ b/workplans/SECRETS-WP-0009-glas-claude-native-delivery.md @@ -181,3 +181,8 @@ AUDIT-WP-0009-T09 audit custody, APPROVAL-WP-0002 live endpoint/claim/consume, and the existing exact native OpenBao authority/delivery returns. The synthetic proof does not grant these. KEY-WP-0013-T02 and verifier CCR-2026-0017/0018 are complete and must not be requested again. No new workplan duplicates T03. + +Owner-return clarification: SECRETS-WP-0008-T02 is now progress for the published +FLEX-DEC-2026-012 submitted-request replay identity and approval-digest join. +The real-component identity exercise used a PDP double and does not close that +local implementation. T03 also consumes that correction before live activation.