# Quarterly gate-refresh recipe

How to re-research one gate when meaningful new evidence has landed, or
when 90+ days have passed since `last_updated`.

## When to refresh a gate

Refresh triggers, in priority order:

1. A **specific sub-gate** the .md flagged as load-bearing has resolved
   one way or another (e.g. METR doubling rate ticked over to 6 months).
2. **Stale-source check** (`scripts/check-stale-sources.sh`) shows ≥3
   dead URLs in the gate.
3. **External calibration delta**: Metaculus or Manifold crowd estimate
   has moved >15% relative to the value we recorded.
4. **Quarterly default**: `last_updated` is >90 days old.

## How to refresh

1. Read the current `.md` to understand what we knew and where we set P50.
2. Dispatch one `general-purpose` agent with the brief template below.
   Same shape as the initial research brief; explicitly ask it to
   *compare* against the previous P50 and explain any shift.
3. Receive the agent's updated `.md` content; write to disk.
4. Bump `last_updated` to today; bump `sources_count` if changed.
5. Commit with message: `Refresh <slug>: P50 <old> → <new>, <one-line why>`.
6. If the P50 shifted by ≥1 year, re-write the relevant decision section
   in `cross-gate-synthesis.md` to reflect the new outlook.

## Refresh agent brief template

```
You are REFRESHING a previously-researched gate for Tamir's Futures
project. The current .md is at: ~/projects/futures/src/content/gates/<slug>.md

Your job:
1. Read the current .md fully.
2. Identify what's NEW since `last_updated` (about 90+ days ago).
   Specifically check for:
   - Updates to the sub-gates listed in frontmatter
   - Movement in external_calibration values (Metaculus, Manifold)
   - Resolutions of any "Key uncertainties" listed in the body
   - Significant new sources / events
3. Use the SAME 5 evidence streams (academic, industry, sentiment,
   prediction markets, policy) — but focus on signal that POST-DATES
   the current `last_updated`.
4. Decide whether P10/P50/P90 should shift, by how much, and write a
   one-paragraph "Why this refresh moved (or didn't move) the timeline"
   note that goes at the top of the body BEFORE the existing TL;DR.
5. Update the frontmatter: `last_updated` to today, `sources_count`
   to the new total. Keep `status: draft` unless told otherwise.
6. Write the FULL updated .md to disk via Write tool, overwriting.

Constraints: only swap out outdated sources / sections — preserve
sections that are still accurate. Net body word count after refresh
should stay in 2000-4500 word range.
```

## Calibration-tracking note

For gates with both Metaculus AND Manifold values in
`external_calibration`, log the deltas over time in
`docs/calibration-log.md` (TBD). After 12 months of refreshes, the log
should show whether *our* P50s tend to lead or lag the crowd consensus.
