Execute closed prompt commands through canonical tool runtime #207
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!207
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "rage/206-prompt-command-runtime"
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?
Closes #206.
Parent: #172.
RAGE state
TDD-first from starting
main8054606971ffbbb6aa9484b4e915caa4c655929b. Full audit record:rage/206-prompt-command-runtime.org.The first test-only head
01dc568c3e7f7c88e758c74bf2628d0159363612produced the intended deterministic red: 875/877 passed and the only two failures were the deliberately absentprompt_command_execute/6. Credential-backed REAL OpenRouter remained green on that same head.The test contract was then hardened before realization to cover a real canonical
rlm_subagentchild returning through the parent mailbox, unsupported target substitution, and allowed-target payload tampering via compiler-fingerprint mismatch.Design / invariant
Compiled KB prompt commands remain closed inert data.
rlm_prompt_commandauthenticates command shape, the fixed currenttool(rlm_subagent)target, and compiler fingerprint, then projects onlyjson{query:Text}into canonicalrlm_tool:tool_invoke/7. No command/model term is meta-called and no arbitrary KB tool dispatcher exists.The compiler fingerprint proves command integrity only; it never grants execution authority. Tool capabilities, authority, effects, approval, limits, cancellation, and async scheduling remain owned by the canonical typed tool/subagent runtime.
Exact-head verification
Final candidate head:
67e8adc43fa3ec134051e2e3f1a05969e4daab8a.All required exact-head lanes are successful:
Current review submissions and unresolved review threads are empty, issue discussion is empty, the PR is mergeable, and
mainremains the exact starting base at the pre-promotion race check.Non-goals
No second selector, no arbitrary KB tool vocabulary, no #175 timeout/deadline redesign, no downstream Agent Zero/AgentProlog product logic, and no full automatic recursion-policy selection in this slice.