Add canonical tool-result projection presets #213
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/prolog-rlm!213
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "agent/tool-result-projection-presets"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements slice 1 of #211.
RAGE recovery state
The original slice was TDD-valid but exact old head
fced85495700a0746ce49d7f697db3aab39f408dhad one real deterministic failure:tool_result_projection_is_canonical_and_ground(888/889 passed). The failure was preserved and diagnosed rather than weakened or skipped.Root cause:
canonical_tool_result/2requiredground(Result0). A normal anonymous SWI-Prolog dict (_{...}) has a variable tag, so it is notground/1even when every key/value payload term is ground. The canonicalizer replaces that input tag with the fixedtool_resulttag anyway.Existing PR/branch ownership was recovered rather than replaced. Current exact candidate
99dfc12e6651f69f2e2cac5bf23d1ac224df3e7cis a non-force recovery over canonicalmain267697bef10a3fffff7c093e1435ece770e7444b; the branch remains based on that current main and changes only this slice's three files.What lands
full|once|reference|hiddenvisibility presets;result_projection{initial,after_consumption,retention,retrievable}policy data;message_normalize/2;tool_result;Security / architecture boundary
Projection metadata is inert data. This slice does not grant execution authority, delete authoritative results, expose handlers/callables, or change effect/permission semantics. Anonymous tag acceptance does not admit nonground payload data.
Deliberate non-goals
This does not yet alter tool invocation, managed context packing, provider serialization, token accounting, or
onceconsumption tracking. Those remain later slices of #211.Exact-head verification
Exact candidate:
99dfc12e6651f69f2e2cac5bf23d1ac224df3e7con unchanged canonical base267697bef10a3fffff7c093e1435ece770e7444b.Fresh repository-native verification on this exact candidate is green for every returned required workflow:
Current submitted reviews, PR conversation comments, and unresolved review threads are empty. The PR is mergeable. Any changed head invalidates this evidence.
Decision
RAGE decision for slice 1: GO / ready for review. Do not close #211: this PR lands only slice 1. The repository merge gate still applies; no merge is implied by this promotion.
Backlog merge recovery: after #237 advanced
main, this branch was content-preservingly replayed onto currentmainc836b500b2a024637487401ec3312c4616822df5to satisfy the repo's rebase-only merge rule. Current candidate is8989e116e89a99aef2771b1973626296ceee1133, exactly 3 commits / 3 intended paths; the final blobs for the original slice are preserved. The old99dfc12e...exact-head green evidence is intentionally invalidated. Fresh PR workflows were triggered on8989e116...; do not merge until all required runs complete green.