Wire survey output into dir loop system prompt #6
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: archeious/luminos#6
Loading…
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?
After
_run_survey()completes, inject its output into the dir loop system prompt so each dir loop agent knows what it's looking at before it starts.The
domain_notes,approach, andrelevant_tools/skip_toolsfields shape what the dir loop agent prioritizes.Empirical finding from #5 smoke test
Ran
python3 luminos.py --ai luminos_libafter #5 shipped (survey log-only, not yet wired into the dir loop).The survey returned
skip_tools: ["run_command"]for this Python library target — a sensible call. The dir loop nonetheless invokedrun_commandtwice on its second turn:This means the prompt-injection approach alone is insufficient. The dir-loop agent reaches for any tool that is in its toolbox, even when the system prompt has been told otherwise. The model treats prompt instructions as soft preferences and tool availability as hard affordances.
Scope expansion
#6 should do BOTH:
description,approach,domain_notes, and therelevant_tools/skip_toolslists go into the dir loop system prompt so the agent has the context.tools=list passed to_call_api_streamingfor the dir loop, remove any tool whose name is insurvey["skip_tools"]. This is a hard enforcement: the agent literally cannot call tools that are not in the schema.Confidence guard
Skip-tool filtering should be gated on
survey["confidence"] >= 0.5. If the survey is unsure (thin signals, generic target), do not let it strip tools — that risks breaking the dir loop on a wrong call. The prompt injection (item 1) can still happen at any confidence level since it is advisory.Acceptance update
skip_toolswhenconfidence >= 0.5--ai luminos_lib) shows zerorun_commandinvocations in the dir loop, given the same survey outputShipped in #45, merged to main. Closing manually — Forgejo's
Closeskeyword didn't auto-close this from the PR body.