KB-5543

Codex Review — RS5B-PATCH1 Effect / Authorization-Binding Correction — 2026-06-21

10 min read Revision 1
codex-reviewrs5b-patch1need-patch2effect-identityauthorization-bindingregistration-holdread-only2026-06-21

Codex Review — RS5B-PATCH1 Effect / Authorization-Binding Correction — 2026-06-21

STATUS: HOLD REVIEW VERDICT: NEED_RS5B_PATCH2 Stop state: RS5B_PATCH1_EFFECT_BINDING_CORRECTION_INCOMPLETE Registration gate: REGISTRATION_HOLD REGISTRATION_CAN_PROCEED = NO Evidence tier: AgentData KB contract-only review · NO_CODEX_LIVE_READ.

1. Source Register

Codex read directly from AgentData KB in the main process:

  1. Operating Rules SSOT: knowledge/dev/ssot/operating-rules.md, v7.58 returned by direct search.
  2. Constitution: knowledge/dev/laws/constitution.md, v4.6.3 BAN HÀNH returned by direct search.
  3. RS5B-PATCH1 index revision 3, content_length 3345.
  4. PATCH1-01 source/defect map revision 2, content_length 5288.
  5. PATCH1-02 corrected contract revision 4, content_length 7366.
  6. PATCH1-03 impact map revision 5, content_length 4758.
  7. PATCH1-04 bad-input self-check revision 5, content_length 7444.
  8. PATCH1-05 decision packet revision 3, content_length 4500.
  9. PATCH1 Codex/GPT packet revision 2, content_length 3233.
  10. PATCH1 rollup revision 3, content_length 5628.
  11. RS5B-03, RS5B-05, RS5B-07, RS5B review packet, and RS5B rollup, all revision 1.
  12. Accepted upstream rs4a-patch2/02-effect-identity-with-authorization-binding-separated-2026-06-21.md, revision 1.
  13. Codex RS5A-PATCH4 acceptance, revision 1.

All target and comparison documents were read complete with truncated=false. No chat summary or local prose was used as evidence.

2. Package Completeness and Revision Caveat

PASS. The package contains seven documents under knowledge/dev/laws-new/reports/rs5b-patch1/ plus one rollup, exactly eight required files. Every file exists, is non-empty, and was read back untruncated.

The revision differences are explainable in-package updates, not hidden source overwrite. The final revisions read are 3/2/4/5/5/3/2 for the seven directory files and 3 for the rollup. Direct inventory confirms all nine original RS5B directory documents remain revision 1. The package is additive.

3. Defect Map Assessment

PASS. The direct unsafe RS5B-05 item-5 phrase is quoted exactly and marked SUPERSEDED_BY_RS5B_PATCH1. The package correctly explains the inversion:

  • correct separation: authority fields remain outside effect_identity;
  • incorrect separation: effect_identity remains outside authorization_binding_digest.

PATCH1-03 now records the dependent shorthand in RS5B-03 and RS5B-05 and states the controlling interpretation as pure effect_identity plus an authorization digest containing it. No unrelated RS5B or RS5A-PATCH4 semantics are rewritten.

4. Corrected effect_identity Assessment

NEEDS_PATCH. Purity is correct: owner scope/head/policy, approvals, APR/owner-row IDs, principal references, nonce, attempts/runs, timestamps, operator, session, host, and authorization window remain excluded.

However, PATCH1-02 still defines:

operation = "register_dot"

RS5B-05 is an authorization packet before founding-act writes, including scope and first-owner designation. Hardcoding the effect operation to register_dot makes the supposedly corrected contract registration-specific while simultaneously adding founding_authority_ref for bootstrap designation. This conflicts with the review macro's required generic operation field and can bind a founding authorization to the wrong business act.

PATCH2 must use a canonical governed operation appropriate to the requested effect. register_dot, owner designation, scope creation, and any other act are distinct operation values and therefore distinct effect identities. It must not infer a new effect from authority changes.

5. Corrected authorization_binding_digest Assessment

PASS_WITH_CAVEAT. The final revision correctly includes:

  • effect_identity;
  • distinct owner scope, owner head, and authority policy references;
  • approval mode/evidence, quorum evidence, and canonical principal refs when used;
  • nonce mode, nonce reference, issuer, and authorization window;
  • artifact hash reference;
  • separate U3, status, and audit policy references;
  • founding authority reference for bootstrap designation.

Conditional evidence is tagged rather than silently omitted. The digest does not enter U1, and authority fields do not contaminate business identity. Same effect under changed authority remains one effect and cannot mint a second registration.

The caveat is section 4's operation mismatch: a correct envelope cannot repair an incorrectly identified business operation.

6. Impact Map Assessment

PASS. The final impact map states that all nine RS5B directory files plus the rollup were scanned. It identifies one direct unsafe phrase and two dependent shorthand occurrences. RS5B-07, the original review packet, and the remaining rollup language do not independently assert that effect identity is outside the authorization binding.

The correction remains narrowly additive and does not reopen the accepted total quorum order, G02 domain, bootstrap posture, handler, U1/U2/U3, or registration prerequisites.

7. Bad-Input / Fail-Closed Assessment

NEEDS_PATCH. BI-E2 through BI-E7 now have one canonical outcome each, and BI-E3 correctly excludes the prior-durable-decision domain. No fixture claims runtime execution.

BI-E1 and BI-E6 still overlap at the input-predicate level:

  • BI-E1 describes an authorization binding carrying owner/approval evidence but no effect_identity.
  • BI-E6 describes an authorization_binding_digest that omits effect_identity.

The prose reserves APPROVAL_NOT_BOUND_TO_EFFECT_IDENTITY for BI-E1 and AUTHORIZATION_BINDING_MISSING_EFFECT for BI-E6, but it does not make the inputs mutually exclusive or define an evaluation order. One malformed packet can satisfy both descriptions, allowing two contract-compliant outcomes despite the “one canonical rejection” claim.

PATCH2 must distinguish the fixtures structurally, for example:

  1. BI-E1: approval evidence itself has no bound-effect reference and no authorization digest is presented for evaluation → APPROVAL_NOT_BOUND_TO_EFFECT_IDENTITY.
  2. BI-E6: the packet supplies a valid effect reference, but the declared/computed authorization-digest input schema omits that effect → AUTHORIZATION_BINDING_MISSING_EFFECT.

Alternatively define an authoritative precedence. Until then the self-check is not a deterministic executable oracle.

No current fixture may produce a valid PASS, seal, certificate, authority token, or registration-ready label, but deterministic rejection identity is still incomplete.

8. Scope and Gate Assessment

PASS. The correction is KB-only and design-only. It did not create or authorize runtime mutation, DDL/DML, Owner row, scope row, principal registry, APR, approval, register_dot, handler, registrar/validator patch, RS-VALIDATOR, registration, or activation.

It does not authorize a P2 lane, Chairman execution, RS5B final acceptance, or registration readiness. REGISTRATION_HOLD remains active and REGISTRATION_CAN_PROCEED = NO.

9. Accepted Points

  1. Complete additive package with transparent final revisions.
  2. Original RS5B package remains revision 1.
  3. Unsafe phrase identified and superseded.
  4. Authority remains outside business U1.
  5. Authorization digest includes the pure effect and all required envelope references.
  6. Same approval cannot authorize a different bound effect.
  7. Same effect plus changed authority cannot create a new business registration.
  8. Impact scan covers the complete RS5B package.
  9. BI-E2–BI-E7 are fail-closed with canonical outcomes.
  10. Design PASS is not promoted to authority/runtime/registration PASS.

10. Rejected or Overclaimed Points

  1. Rejected: one fixed operation="register_dot" correctly identifies every RS5B founding/owner-designation effect.
  2. Rejected: BI-E1 and BI-E6 are deterministic solely because prose assigns different codes; their current input domains overlap.
  3. Not accepted as execution evidence: BI-E1–BI-E7 are contract fixtures, not executed tests.
  4. Not independently verified: package attestations of runtime state or zero mutation; this review used no live runtime read.
  5. Not authorized: P2 execution, Chairman act, owner minting, or registration.

11. Final Verdict

VERDICT: NEED_RS5B_PATCH2

RS5B-PATCH1 fixes the dangerous binding direction and now carries the required authorization fields, but it is not yet safe as the controlling contract. The business operation must be generic/canonical for the actual founding act, and BI-E1/BI-E6 must map disjoint inputs to one deterministic rejection.

Stop state: RS5B_PATCH1_EFFECT_BINDING_CORRECTION_INCOMPLETE.

Single next step: RS5B-PATCH2 limited to the operation-domain correction and BI-E1/BI-E6 predicate separation. Do not reopen the accepted digest field set or upstream contracts.

REGISTRATION_HOLD remains active. REGISTRATION_CAN_PROCEED = NO.

DO NOT IMPLEMENT: Confirmed. No runtime mutation, DDL/DML, Owner/scope/principal/APR/approval/action/handler, registrar/validator patch, RS-VALIDATOR, registration, activation, or blocker resolution was performed or authorized by this review.

12. Three Declarations and Compliance

  • Permanent: operation identity and bad-input domains must be canonical, so later implementations cannot reinterpret prose.
  • Mistake-resistant: one malformed input must map to one deterministic rejection; authority cannot substitute for effect identity.
  • 100% automatic: the corrected predicates can become executable fixtures only after PATCH2 closes these two ambiguities.

Assembly Gate: PG/Directus/Nuxt = N/A; KB contract-only review. Data flow: AgentData reads plus one official Codex report write. OR/TD/handoff update is not required because no runtime or implementation state changed.

Back to Knowledge Hub knowledge/dev/laws-new/reports/codex/codex-review-rs5b-patch1-effect-authorization-binding-correction-2026-06-21.md