What you re-inject every turn
Some constraints are too important to dilute. For these, re-inject on every turn — not via system prompt (which is fixed), but as a short reminder near the top or bottom of the active context.
Candidates for re-anchoring
- Refusal policies ("do not give medical dosages").
- Output schema reminder for structured-output calls.
- Active task name and current step (for agent loops).
- Tone constraints that drift over time.
How to inject
A turn-level developer-role message (where supported) or a structured user message marked as system reminder. Make it visually distinct in logs so you can audit it.