prior_for_turn
Retrieve a compact priors block at the start of a turn, assembled from recent drift, unresolved uncertainty, matched threads, and related insights. A freshness penalty prevents repeated surfacing.
Instructions
Turn-start reflex. Call at the start of a turn (not session) to receive a compact priors block assembled from four sources in priority order: recent drift (Nape honk) → oldest unresolved uncertainty → top matched open thread → top related insight. Enforces k=1 per bucket by default (ReasoningBank ICLR 2026: k>1 hurts), a hard token cap, and a freshness penalty that demotes items surfaced in the last 3 calls — so the same memory cannot keep resurfacing and amplifying itself (Jain et al. MIT/IDSS 2026 sycophancy guardrail). Read the returned 'block' before forming the turn's response.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain_tags | No | Active domain tags for this turn. If empty, drift + uncertainty still surface but threads/insights are skipped. | |
| project | No | Optional project for +0.5 match bonus. | |
| k | No | Items per bucket (capped at 3). Default 1 per ReasoningBank finding. | |
| max_tokens | No | Hard ceiling on the returned block's token count. | |
| dry_run | No | If true, does not write to the freshness log. Use for preview. | |
| full_content | No | When true, removes the per-item 120-char cap inside the priors block so addressed-letter shapes survive. The token budget still applies — the block as a whole won't exceed max_tokens. Default false preserves compact pre-attentive surface. |