RS4A-PATCH2-05 — Authoritative Test Registry and Count — 2026-06-21
RS4A-PATCH2-05 — Authoritative Test Registry and Count — 2026-06-21
Macro: RS4A-PATCH2 · Mục tiêu D (registry) + E (residual tests) (closes Codex re-review residual R4 ID collisions / T-P6-3 count and R5 missing residual tests)
Deliverable: 05 of 6 (under rs4a-patch2/) · design-only · criteria, NOT executed (no test run, no validator PASS)
Supersedes: all PATCH1 T-PX-* IDs (they collided across PATCH1-03/04/07). Does NOT overwrite PATCH1/RS4A; the baseline 97 is unchanged in origin.
Gate: REGISTRATION_HOLD · REGISTRATION_CAN_PROCEED = NO
Status: TEST_REGISTRY_AUTHORITATIVE_111 — one row per semantic case, globally unique IDs under PX2-*; deterministic augmented total = 111.
0. The residual defects this file closes (Codex re-review §9 / §12.4 / §12.5)
R4 — ID collisions + T-P6-3 count. Codex found the same T-PX-* ID meaning different things across PATCH1 docs, and the repaired T-P6-3a/b left "kept as two" without a count rule:
| ID | PATCH1-03/04 meaning | PATCH1-07 meaning |
|---|---|---|
T-PX-4 |
Phase-4 readback confirms draft, no notify |
same effect, different run_id |
T-PX-5 |
reject envelope fields as nonexistent dot_tools columns |
fresh approval instance, same effect |
T-PX-6 |
reject envelope in extra_metadata |
fresh nonce, duplicate effect |
PATCH1-07 also merged the two carrier cases into T-PX-8, while PATCH1-04 kept them as T-PX-5/T-PX-6. Codex: "PATCH2 must publish one authoritative test registry with unique IDs and one row per counted semantic case, then recompute the augmented total."
R5 — missing residual tests. Codex requires explicit cases for (1) changed owner/policy ⇒ same U1 effect (authority revalidated, no new registration) and (2) two draft registrations for the same code rejected before commit.
1. Authoritative count rule (deterministic)
1.1 Baseline (Codex-confirmed, unchanged in origin)
Carried (RS3C-10 / RS3B-09, IDs 1–50) = 50
RS4A-11 reconciled T-series (P0 9 + P1 6 + P2 8 + P3 8
+ P4 5 + P5 4 + P6 4 + SRC 3) = 47
Baseline RS4A reconciled suite = 97 (Codex-confirmed)
1.2 T-P6-3 count decision (closes R4 ambiguity)
Decision: T-P6-3a and T-P6-3b are TWO distinct semantic cases. One exercises consumer event handling (an independently-injected context_pack_event); the other exercises active-update outside the registration path (a Phase-6 activation UPDATE). They are different behaviors and cannot share one slot.
The baseline 97 reserved exactly one slot for the original T-P6-3 (the malformed case PATCH1 repaired). PATCH2 re-homes both repaired forms into the authoritative PX2 registry (as PX2-013 and PX2-014) and supersedes the single baseline T-P6-3 slot. Net effect on the count: the one superseded baseline slot is removed (−1) and the two re-homed forms enter via PX2 (+2 inside PX2), a net +1 distinct case versus the baseline — accounted explicitly below so nothing is double-counted.
1.3 PATCH1 T-PX-* supersession (closes R4 collisions)
The 8 PATCH1 T-PX-1..8 cases are superseded by the PX2 registry. Their collisions are resolved by splitting each ambiguous ID into its distinct semantics, so 8 ambiguous IDs expand to 10 distinct cases (PX2-001..010). The PATCH1 "+8 ⇒ 105 augmented" figure is therefore superseded by this PATCH2 registry.
1.4 Authoritative augmented total
Carried (1–50) = 50
RS4A-11 T-series = 47
less: T-P6-3 (single baseline slot) superseded → PX2-013/14 = −1
RS4A-11 T-series net retained = 46
PATCH2 authoritative registry PX2-001..015 (incl. 2 re-homed
T-P6-3 forms PX2-013/014) = 15
-----------------------------------------------------------------
Augmented authoritative total = 111 (50 + 46 + 15)
= 111. Exact, deterministic, no reused IDs, no double-count. (The illustrative 14/111 in the brief lands on the same 111; this registry reaches 111 with 15 PX2 cases because the superseded baseline T-P6-3 slot is removed — see §1.2 — and one extra explicit success-path-no-audit case (PX2-015) is added for C8/R3. Nothing is forced.)
2. Authoritative PATCH2 test registry (PX2-*) — one row per semantic case
| ID | Slug | Input / state | Expected | Layer | Closes | Supersedes |
|---|---|---|---|---|---|---|
PX2-001 |
draft-inert-status-write | registrar writes status='draft' for a watch-tier (A/B) row |
ACCEPT as inert; no context_pack_event; post-commit readback confirms status='draft' |
R/SN | C2 | T-PX-1 |
PX2-002 |
reject-active-at-registration | registrar attempts status='active' (source D05 behavior) |
ACTIVATION_AT_REGISTRATION (reject) |
R | C2 | T-PX-2 |
PX2-003 |
status-domain-not-db-enforced | non-vocabulary status (e.g. published/arbitrary) written at registration (no DB CHECK exists) |
HOLD STATUS_DOMAIN_NOT_DB_ENFORCED until a governed status CHECK exists |
R/SCHEMA | C2 | T-PX-3 |
PX2-004 |
phase4-readback-draft-no-notify | Phase-4 verifier reads back the committed row | PASS only if status='draft' and notify-not-emitted (no other precondition) |
R | C2/C7 | T-PX-4 (PATCH1-03 sense) |
PX2-005 |
same-effect-different-run-id | same effect presented with a different run_id |
same effect_identity ⇒ exact-retry returns prior decision (run_id non-keying) |
R | C1 | T-PX-4 (PATCH1-07 sense) |
PX2-006 |
same-effect-fresh-approval-instance | same effect, fresh approval instance, unchanged policy | same effect_identity ⇒ REPLAY_DUPLICATE (fresh approval does not buy a new effect) |
R | C1 | T-PX-5 (PATCH1-07 sense) |
PX2-007 |
same-effect-fresh-nonce | duplicate effect presented with a fresh authorization_nonce |
REPLAY_DUPLICATE (nonce non-identity) |
R | C1/C5 | T-PX-6 (PATCH1-07 sense) |
PX2-008 |
uniqueness-axes-u1-u2-u3-u4-separated | exercise each axis: U1 effect, U2 nonce, U3 current-head, U4 artifact | each enforced separately; U1≠U2≠U3≠U4 (no conflation); all REQUIRED_NOT_PRESENT today ⇒ fail-closed |
R/SCHEMA | C3 | T-PX-7 |
PX2-009 |
carrier-fields-not-dot-tools-columns | contract tries to persist deployed_artifact_hash/owner_envelope_ref/approval_envelope_ref as dot_tools columns |
REJECT CARRIER_REQUIRED_NOT_PRESENT (no such columns; do not imply they exist) |
R/SCHEMA | C4 | T-PX-5 (PATCH1-04) / part of T-PX-8 |
PX2-010 |
envelope-in-extra-metadata-not-trusted | an envelope value is stuffed into extra_metadata jsonb and treated as trusted |
REJECT REQUEST_PROPOSED_AS_TRUSTED (caller-writable jsonb ≠ carrier) |
V/F | C4 | T-PX-6 (PATCH1-04) / part of T-PX-8 |
PX2-011 |
changed-authority-same-effect-still-u1-duplicate | same operation/code/artifact under changed owner scope / authority policy | same effect_identity ⇒ AUTHORIZATION_CHANGED_SAME_EFFECT_DUPLICATE; authority revalidated but cannot mint a new registration; re-registration requires an explicit different operation |
R | R1 (new) | — |
PX2-012 |
duplicate-draft-head-rejected | two draft registrations for the same canonical_target_dot_code (different artifacts) before commit |
rejected by U3/head policy (DRAFT_HEAD_ALREADY_EXISTS/DUPLICATE_CURRENT_HEAD) before commit; or HEAD_POLICY_UNRESOLVED fail-closed if U3 surface absent |
R/SCHEMA | R2 (new) | — |
PX2-013 |
injected-context-pack-event-consumer-test | a context_pack_event is independently injected/observed (not produced by a registration insert); consumer body exercised |
consumer effect FAIL_CLOSED/unproven until the consumer body is read (G7-consumer) |
R | C11 | T-P6-3a (re-homed) |
PX2-014 |
active-update-outside-registration-test | a watch-tier row is set status='active' via an activation UPDATE explicitly outside the registration path (Phase 6) |
notify fires correctly on AFTER … UPDATE OF status; registration path remains fail-closed/inert; this is not a registration success path |
R | C11 | T-P6-3b (re-homed) |
PX2-015 |
phase4-success-verifier-no-audit-required | Phase-4 success verifier runs with one draft head + metadata-match + no-notify + resolved verifier-ref + readback, no audit present |
PASS (success requires no failure_audit_envelope and no success audit) |
R | C8/R3 | — |
15 authoritative cases. No ID denotes two semantics; every prior collision is split (PX2-004/005 from T-PX-4; PX2-006/007 from T-PX-5/6 PATCH1-07; PX2-009/010 from T-PX-5/6 PATCH1-04 ≡ T-PX-8).
3. Coverage map (references PATCH2 IDs only)
| Codex residual / RS4A category | Authoritative PX2 case(s) | Plus baseline carrier |
|---|---|---|
| R1 — authority not in U1; changed-authority same-effect | PX2-005, PX2-006, PX2-007, PX2-011 |
— |
| R2 — duplicate draft head | PX2-012 |
— |
| R3 — Phase-4 success needs no audit | PX2-015 |
failure path: baseline T-P5-1 |
| R4 — inert state / readback | PX2-001, PX2-002, PX2-003, PX2-004 |
— |
| R4 — axis separation | PX2-008 |
— |
| R4 — carrier boundary | PX2-009, PX2-010 |
— |
| R4/R5 — T-P6-3 split (consumer / active-update) | PX2-013, PX2-014 |
supersedes baseline T-P6-3 |
All 13 mandatory RS4A-11 §3 coverage categories remain covered by the baseline (50 + 46) plus the 15 PX2 cases. No execution, no PASS claimed.
4. Final counts (transparent, no silent truncation)
| Bucket | Count |
|---|---|
| Carried (RS3C-10 / RS3B-09, IDs 1–50) | 50 |
| RS4A-11 reconciled T-series | 47 |
less: baseline T-P6-3 superseded by PX2-013/PX2-014 |
−1 |
| RS4A-11 T-series net retained | 46 |
PATCH2 authoritative registry (PX2-001..015) |
15 |
| Augmented authoritative total | 111 |
Superseded figures (retained for lineage, not re-counted): RS4A-11's 42/92; PATCH1's 97 baseline + 8 ⇒ 105 augmented. The controlling baseline remains 97; the controlling augmented total is 111.
5. Status
TEST_REGISTRY_AUTHORITATIVE_111— 15PX2cases, globally unique IDs, one semantic per ID; allT-PX-*superseded;T-P6-3a/b= two cases (re-homedPX2-013/014).- Added residual tests:
PX2-011(changed-authority/same-effect),PX2-012(duplicate draft head),PX2-015(Phase-4 success no audit). - Baseline 97 (unchanged origin) · augmented 111 (deterministic).
ACCEPTANCE_SUITE_DESIGNED_NOT_EXECUTED. GateREGISTRATION_HOLD·CAN_PROCEED = NO.