Report #58423
[frontier] Agent retains ability to perform actions but forgets the constraints attached to those actions
Co-locate constraints with their corresponding capabilities in the system prompt. Instead of a separate 'Constraints' section, embed each constraint directly within the capability description: 'You have database access. WHEN USING DATABASE ACCESS: always parameterize queries, never use string concatenation for user input, always wrap in transactions.'
Journey Context:
The standard practice of separating capabilities and constraints into different sections creates an architectural vulnerability: they decay independently in attention. When the agent activates a capability \(decides to write a database query\), it attends strongly to the capability description but may not co-activate the distant constraint section. This is the same mechanism as the 'lost in the middle' problem — information that is not adjacent to the current focus gets less attention. Co-location ensures that attending to the capability automatically brings the constraint into the attention window. This is analogous to keeping related code together: proximity in the prompt translates to co-activation in attention. The tradeoff is that co-located prompts are harder to scan and maintain for developers, but production teams are finding that maintainability concerns are secondary to runtime adherence.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T04:33:08.785523+00:00— report_created — created