ADR 0005: Unidirectional control flow through the execution stack - #104
Conversation
| No layer may influence, configure, or depend on layers above it: | ||
|
|
||
| - The **agent runtime** cannot modify the harness (its own system prompt, | ||
| skills, tool definitions). |
There was a problem hiding this comment.
need to consider something like allocating test resource (VMs, clustes), is that a tool? Is that something the infrastructure layer needs to do ahead of time? Knowing ahead of time could be really useful for managing resources with e.g. Kueue but then we risk over-allocating...
There was a problem hiding this comment.
Hm, I wonder .. if the implementation/coder agent needs to provision resources in order to perform tests, then - that's a different infrastructure layer than the infrastructure layer described in this ADR.
If the an agent tries to request infra from "somewhere", that's just tool use. If it happens to be the same infrastructure that the agent is running on - that can work, but the fact that the agent is running there shouldn't somehow influence the infra's provisioning API.
In other words, if an agent needs to provision compute for tests, that should work the same way whether the agent is running in a gh action, or if the agent is running in a kube pod.
| No layer may influence, configure, or depend on layers above it: | ||
|
|
||
| - The **agent runtime** cannot modify the harness (its own system prompt, | ||
| skills, tool definitions). |
There was a problem hiding this comment.
Letting the agent improving its skills is very useful
It should be done through a pr process.
There was a problem hiding this comment.
Perhaps we should update this to say that "No layer may directly influence, configure, or depend on layers above it."
|
Taking this out of draft. Ready for review! |
Establishes that control flows strictly downward through the execution stack (Dispatch → Infrastructure → Sandbox → Harness → Runtime) and no layer may influence layers above it. Distinguishes prohibited upward control flow from permitted upward data flow (telemetry, failure signals). Renames "Work Coordinator" to "Agent Dispatch and Coordination Layer" for clarity. Adds an "Execution Stack" section to architecture.md. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…action-layer ADR Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4f607cf to
aaec32c
Compare
Addresses PR feedback: add "directly" qualifier to the decision statement and a new permitted-action bullet explaining that agents may propose harness changes through PRs subject to human review. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Summary
Dependencies
🤖 Generated with Claude Code