[P1] Add proof-carrying child results and host-controlled verifier gates #426
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#426
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Goal
Make supervised/recursive agent completion distinct from result acceptance.
A child agent may finish successfully, but its result must be rejectable when required evidence is missing, stale, untrusted, or fails a host-required verifier.
This implements the first bounded slice from
RLM-RESEARCH-010-logic-native-control-plane.org.Required result contract
Add a reusable typed result envelope equivalent in semantics to:
Exact names may follow existing module conventions.
This is not chain-of-thought storage. Evidence consists of explicit runtime artifacts such as source/artifact refs, hashes, tests, solver outcomes, derivation refs, structured tool observations, and verifier reports.
Acceptance boundary
Provide a deterministic acceptance operation equivalent to:
The acceptance gate must be able to require:
Child completion and parent acceptance must be separate traceable events.
Evidence/provenance rule
A successful Prolog derivation does not automatically make model-authored premises trusted facts.
The implementation needs a minimal provenance/evidence distinction sufficient to prevent proof laundering. At minimum preserve the difference between:
Do not build a giant ontology in this slice. Keep the representation minimal and explicit.
Host-controlled verifier policy
Trusted host/runtime code may declare required verifier(s) for a task/result class.
The model may propose additional verification, but it must not be able to:
Verifier outcomes must distinguish at least:
passed;failed;error(...);timeout(...).Recursive delegation
Verifier/evidence requirements are narrowing-only across child delegation. A child may receive stricter requirements than its parent, never weaker requirements than the parent/host requires for the returned result.
Compose with existing capability narrowing and the authority design in #53.
Integration
Reuse existing runtime pieces instead of creating parallel systems:
rlm_agentsupervision/lifecycle;rlm_artifactimmutable refs and provenance;rlm_graphtrace/checkpoint state where useful;rlm_completionusage and trajectory data;Do not require every public completion API to adopt the result envelope in the first patch. Integrate first at the supervised-child/result-acceptance boundary, then widen only with tests.
Acceptance criteria
Non-goals
call/1verifier supplied by model output.Research
research/RLM-RESEARCH-010-logic-native-control-plane.orgDuplicate of #56 (pre-existing Forgejo mirror with GitHub number parity). Closing this accidental duplicate created by today's open-state sync; #56 stays canonical on Forgejo.