feat(spec): add decision.outcome_attached journal action#255
Merged
Conversation
RFC 07 (Decision Graph Query Layer) introduces decision.outcome_attached to update a Decision's outcome after the chain has closed. The hash chain excludes outcome, so this post-close mutation is safe. Slice 0 registers the namespace so later slices can emit and project it. Also extends trace_decision_chain's action filter so outcome attachments appear in chain traces alongside the existing decision events. RFC: temp/brain-storming/to-build/07-decision-graph-query-layer-rfc.md
Issues (must fix)
Please update your PR to address these points. |
prakashUXtech
added a commit
that referenced
this pull request
May 25, 2026
RFC 07 (Decision Graph Query Layer) introduces decision.outcome_attached to update a Decision's outcome after the chain has closed. The hash chain excludes outcome, so this post-close mutation is safe. Slice 0 registers the namespace so later slices can emit and project it. Also extends trace_decision_chain's action filter so outcome attachments appear in chain traces alongside the existing decision events. RFC: temp/brain-storming/to-build/07-decision-graph-query-layer-rfc.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
RFC 07 (Decision Graph Query Layer) introduces
decision.outcome_attached— a journal action that updates a Decision'soutcomefield after the chain has closed. The hash chain excludesoutcome, which is what makes the post-close mutation safe.Slice 0 registers the namespace so later slices can emit and project it. No schema change, no behavior change on existing actions.
Changes
src/soul_protocol/spec/journal.py— adds"decision.outcome_attached"toACTION_NAMESPACESunder the# Decisionsblock with a comment explaining the mutation semantics.src/soul_protocol/spec/decisions.py— adds the same string to thedecision_actionsfilter set insidetrace_decision_chainso outcome attachments appear in chain traces alongsideagent.proposed,human.corrected, anddecision.graduated.tests/test_spec/test_decisions.py— extendstest_namespaces_include_decision_actionswith one assertion for the new action.Test plan
uv run pytest tests/test_spec/ -v— 87 passeduv run pytest(full suite) — 2436 passed, 4 skipped, 5 pre-existing failures (allModuleNotFoundErrorfor optional depsfastmcp/httpx; reproduces on pristineorigin/mainHEAD, unrelated to this change)RFC reference
temp/brain-storming/to-build/07-decision-graph-query-layer-rfc.md(workspace repo).ACTION_NAMESPACESadditively. No schema change."