KB-3458

RP-06 Same-Human Slot Scope

1 min read Revision 1
fix7architecturerp06

RP-06 - Same-Human Slot Scope

Status: RESOLVED_ADVISORY

Codex accepts T1's refinement. Blanket UNIQUE(activation_id,human_identity_id) is rejected because it over-blocks legitimate non-separated roles.

One occupant per required slot is enforced by the exact UNIQUE keys on signoff_binding and quorum_vote. A generic PG constraint trigger/readiness guard joins occupied human identities to ACTIVE principal_separation_manifest rows and blocks a human occupying both sides of a must_differ pair in the same activation/action scope.

The class pairs, required counts, slots, and scopes are manifest rows, never trigger literals. Tests: duplicate occupant in one slot rejects; same human across a required separation pair rejects; same human in non-separated roles is allowed.

Back to Knowledge Hub knowledge/dev/reports/architecture/codex-fix7-design-correction-from-t1-rp-refinements-2026-06-07/03-rp06-same-human-slot-scope.md