You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Forward governed invocation context through v2 decision admission #1357
The v2 decision-surface entry point cannot forward the identity and crossing evidence accepted by ordinary governed action admission.
Acceptance criteria
Accept and forward the required invocation context through the public v2 path to ordinary admission, using the existing validation and authorization rules.
Preserve decision epoch, state cut, participant/episode, caller authority, and crossing identity. Selecting an action does not create authority or fresh evidence.
Verify a valid governed admission and rejection of missing, stale, mismatched, and unauthorized context through the v2 API. Retain ADR-095 disclosure, delivery, and observation distinctions.
gc workflow phase recorded: preflight (issue #1357). Posted by the MCP server to enforce ordering between workflow steps (issue #794 MVP-2). Do not edit or delete — used by downstream tools to gate phase prerequisites.
gc workflow phase recorded: plan (issue #1357). Posted by the MCP server to enforce ordering between workflow steps (issue #794 MVP-2). Do not edit or delete — used by downstream tools to gate phase prerequisites.
Plan
Path B, forwarding governed context: Add a regression test through the public v2 control-plane method that passes an authenticated caller identity and crossing evidence with a valid delivered selection. Confirm ordinary governed ingress admits the action and records the correct crossing identity. Reuse ParticipantSubmissionOptions.from_fields() and forward its values to admit_participant_action(); keep the existing v2 binder and its pre-mutation recheck.
Path B, preserved coordinates and no invented authority: Assert the v2 selection still binds the same participant, episode, decision epoch, derivation cut, view digest, and delivery; crossing identity and evidence must come from the caller. Cover missing identity/evidence, stale cut, mismatched participant/episode/action/audience, and unauthorized role or subject with rejected or denied admission and no backend action. Preserve the existing ADR-095 disclosure, delivery, observation, selection, and admission distinctions.
Files: Change implementations/python/packages/raes_runtime/participant_decision_surface_control_v2.py and extend implementations/python/tests/test_sem_220_participant_decision_surface_v2_runtime.py using participant_crossing_fixtures.py. Update the v2 migration note if the public call documentation needs the new context. Keep the preflight design note. No schema, policy, HTTP, or storage format change.
Boundary review: Existing v2 contract/binder, anchor and delivery validators, shared submission options, control-plane identity, crossing policy, mutation guard, operation receipt, and denial audit remain the owners of shape, exact-cut, authority, effect, and error handling. This avoids duplicate security rules and keeps the shared options seam for future submission fields. No credentials or evidence enter participant views, logs, diagnostics, configuration, or process arguments.
Verification: Observe each new regression fail on the unmodified v2 method, implement the focused forwarding change, then run the targeted v2 runtime and relevant crossing tests. Set RAES_REQUIREMENT_UID=SEM-220 for local commands because this branch has no UID. The mandatory pre-publish hook, review, CI, SonarCloud, and readiness gates follow through the workflow; full suites run in CI. The eventual PR title will use a valid fix: Conventional Commit subject.
gc_codex_review — sanitized deferred publication for issue #1357, cycle 1 of 1 Reviewed revision:bd3f2c199ceb40e20a45d880ecd8e712ca1ed3edc71221602cb570de12acaf48
Architectural read
The v2 entry point reuses shared submission options and ordinary admission, preserving the distinction between surface selection and caller authority. It keeps exact-cut validation and the mutation-time recheck. The targeted tests cover governed admission and rejection through the public API. No concrete security regression was found.
gc_codex_review pre-push cycle 1 of 1 complete for issue #1357 on branch '1357-forward-governed-context'. Posted by the MCP server to enforce the pre-push hard-cap-1 contract (issues #796, #804, #906). Do not edit or delete — used by the next gc_codex_review (uncommitted) invocation to count cycles.
Review decision record — codex cycle 1 (issue #1357)
Reviewer: codex Cycle: 1 Verdict:ship
Architectural read:
The v2 entry point reuses shared submission options and ordinary admission, preserving the distinction between surface selection and caller authority. It keeps exact-cut validation and the mutation-time recheck. The targeted tests cover governed admission and rejection through the public API. No concrete security regression was found.
Operators can submit a v2 decision-surface selection with authenticated identity and crossing evidence to the governed action admission path. Missing, stale, mismatched, or unauthorized context is rejected before an action runs.
Forward governed context from v2 decision-surface selection into ordinary action admission.
Proposed in this PR — verified against the merged tree in Phase E.
IMPLEMENTS / TESTS / DOCUMENTS added: 0
Links updated: 0
Stale links removed: 0
Status
CI: ✅ green
SonarCloud: ✅ passed
PR ready for user review and merge. Phase E validates the merged requirement state, posts the final report, and closes the issue automatically once this PR merges.
Operators can submit a v2 decision-surface selection with authenticated identity and crossing evidence to the governed action admission path. Missing, stale, mismatched, or unauthorized context is rejected before an action runs.
Forward governed context from v2 decision-surface selection into ordinary action admission.
Activity
Brad-Edwards commentedon Sep 24, 2026
🛠️ Picked up by /implement - driver codex, branch
1357-forward-governed-context, 2026-09-24T01:13:20.032Z.Brad-Edwards commentedon Sep 24, 2026
gc workflow phase recorded:
preflight(issue #1357). Posted by the MCP server to enforce ordering between workflow steps (issue #794 MVP-2). Do not edit or delete — used by downstream tools to gate phase prerequisites.Brad-Edwards commentedon Sep 24, 2026
gc workflow phase recorded:
plan(issue #1357). Posted by the MCP server to enforce ordering between workflow steps (issue #794 MVP-2). Do not edit or delete — used by downstream tools to gate phase prerequisites.Plan
ParticipantSubmissionOptions.from_fields()and forward its values toadmit_participant_action(); keep the existing v2 binder and its pre-mutation recheck.implementations/python/packages/raes_runtime/participant_decision_surface_control_v2.pyand extendimplementations/python/tests/test_sem_220_participant_decision_surface_v2_runtime.pyusingparticipant_crossing_fixtures.py. Update the v2 migration note if the public call documentation needs the new context. Keep the preflight design note. No schema, policy, HTTP, or storage format change.RAES_REQUIREMENT_UID=SEM-220for local commands because this branch has no UID. The mandatory pre-publish hook, review, CI, SonarCloud, and readiness gates follow through the workflow; full suites run in CI. The eventual PR title will use a validfix:Conventional Commit subject.Brad-Edwards commentedon Sep 24, 2026
gc_codex_review — sanitized deferred publication for issue #1357, cycle 1 of 1
Reviewed revision:
bd3f2c199ceb40e20a45d880ecd8e712ca1ed3edc71221602cb570de12acaf48Architectural read
The v2 entry point reuses shared submission options and ordinary admission, preserving the distinction between surface selection and caller authority. It keeps exact-cut validation and the mutation-time recheck. The targeted tests cover governed admission and rejection through the public API. No concrete security regression was found.
Verdict:
shipFindings
Brad-Edwards commentedon Sep 24, 2026
gc_codex_review pre-push cycle 1 of 1 complete for issue #1357 on branch '1357-forward-governed-context'. Posted by the MCP server to enforce the pre-push hard-cap-1 contract (issues #796, #804, #906). Do not edit or delete — used by the next
gc_codex_review(uncommitted) invocation to count cycles.Brad-Edwards commentedon Sep 24, 2026
Review decision record — codex cycle 1 (issue #1357)
Reviewer: codex
Cycle: 1
Verdict:
shipArchitectural read:
Blocking findings: 0 (clean run)
Brad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current3b7208b15f8dc29db8ad6d3b15bde792d79220b71c8af59ad49c65e3fa825aa84be285b3f4c6896dBrad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current97e4ecc673dfad849a7730b447dd813d5ed0a669c425f1d6a8cd1ce07ee45a923d99bc97d57f5c1bBrad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current764accface02435a33d4c48c76c506ab8ffded0707f6c617a573ab54cb0334d998d139160008cb5bBrad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current3409a5ab3abdf515877e0950cd278b9a6302380f9f24b3a9331e115b2e0df9ca32bd4c740f0fb83fBrad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current6dc9d034fa1f1ef5682917926ff7b9455ac479ecd3a1288f6ccfd03e2824dcbdcef658e02192f3a8Brad-Edwards commentedon Sep 24, 2026
Pre-PR base synchronization
refs/remotes/origin/devatb00aba06389ab75ffac3b3bdbd026a0dbecac487already_current817c9661701a4d78c45faddee973f43f2d647bdd02369b84140bcc26a5671c10e4d57796cb9bc557Brad-Edwards commentedon Sep 24, 2026
Ready for review — issue #1357
PR: #1384
Plan: #1357 (comment)
Outcome
Operators can submit a v2 decision-surface selection with authenticated identity and crossing evidence to the governed action admission path. Missing, stale, mismatched, or unauthorized context is rejected before an action runs.
Forward governed context from v2 decision-surface selection into ordinary action admission.
Files changed
Added:
docs/decisions/issue-1357-v2-governed-admission-preflight.mddocs/research/formal-semantic-validation/analysis-v45.jsondocs/research/formal-semantic-validation/bundles/retest-v45.jsondocs/research/formal-semantic-validation/execution-snapshot-v45.jsondocs/research/specification-coverage/analysis-v45.jsondocs/research/specification-coverage/bundles/raes-standardized-specification-coverage-issue-1357-v45.jsondocs/research/specification-coverage/execution-snapshot-v45.jsonModified:
docs/explain/reference/participant-decision-surface-v2-migration.mddocs/research/formal-semantic-validation/index.mddocs/research/specification-coverage/index.mdimplementations/python/packages/raes_runtime/participant_decision_surface_control_v2.pyimplementations/python/tests/test_formal_semantic_validation.pyimplementations/python/tests/test_issue_989_versioned_evidence.pyimplementations/python/tests/test_sem_220_participant_decision_surface_v2_runtime.pyimplementations/python/tests/test_specification_coverage.pytools/check_specification_coverage.pytools/formal_semantic_validation/_baseline.pytools/formal_semantic_validation/_loading.pytools/formal_semantic_validation/_release_revisions.pytools/formal_semantic_validation/_releases.pytools/formal_semantic_validation/_retest.pyReviews
Traceability reconciliation
Proposed in this PR — verified against the merged tree in Phase E.
Status
Brad-Edwards commentedon Sep 24, 2026
Delivery readiness recorded — Phase E finalizes issue #1357 automatically when PR #1384 merges.
github-actions commentedon Sep 25, 2026
Final report — issue #1357 complete
PR: #1384
Plan: #1357 (comment)
Outcome
Operators can submit a v2 decision-surface selection with authenticated identity and crossing evidence to the governed action admission path. Missing, stale, mismatched, or unauthorized context is rejected before an action runs.
Forward governed context from v2 decision-surface selection into ordinary action admission.
Files changed
Added:
docs/decisions/issue-1357-v2-governed-admission-preflight.mddocs/research/formal-semantic-validation/analysis-v45.jsondocs/research/formal-semantic-validation/bundles/retest-v45.jsondocs/research/formal-semantic-validation/execution-snapshot-v45.jsondocs/research/specification-coverage/analysis-v45.jsondocs/research/specification-coverage/bundles/raes-standardized-specification-coverage-issue-1357-v45.jsondocs/research/specification-coverage/execution-snapshot-v45.jsonModified:
docs/explain/reference/participant-decision-surface-v2-migration.mddocs/research/formal-semantic-validation/index.mddocs/research/specification-coverage/index.mdimplementations/python/packages/raes_runtime/participant_decision_surface_control_v2.pyimplementations/python/tests/test_formal_semantic_validation.pyimplementations/python/tests/test_issue_989_versioned_evidence.pyimplementations/python/tests/test_sem_220_participant_decision_surface_v2_runtime.pyimplementations/python/tests/test_specification_coverage.pytools/check_specification_coverage.pytools/formal_semantic_validation/_baseline.pytools/formal_semantic_validation/_loading.pytools/formal_semantic_validation/_release_revisions.pytools/formal_semantic_validation/_releases.pytools/formal_semantic_validation/_retest.pyReviews
Traceability reconciliation
Issue #1357 is a requirement-free bug fix. The PR body links the issue to the implementation and targeted tests.
Status