context anchors analysis
what are context anchors?
threads that explicitly reference prior work via:
Continuing work from thread T-...(spawn pattern)Continuing from https://ampcode.com/threads/...(URL pattern)read_threadtool usage- explicit thread links in db
sample sizes
| cohort | n |
|---|---|
| anchored | 1,507 |
| unanchored | 1,981 |
success rates
| metric | anchored | unanchored | delta |
|---|---|---|---|
| resolved | 40.5% | 43.9% | -3.4pp |
| committed | 9.0% | 6.9% | +2.1pp |
| success (res+comm) | 49.5% | 50.8% | -1.3pp |
| frustrated | 0.3% | 0.4% | -0.1pp |
| handoff | 34.5% | 1.8% | +32.7pp |
key finding: continuity vs isolated success
| metric | anchored | unanchored | delta |
|---|---|---|---|
| continuity rate | 84.0% | 52.6% | +31.4pp |
continuity = resolved + committed + handoff (thread doesn’t die without purpose)
interpretation
anchored threads are not “more successful” per-thread - they have marginally lower single-thread resolution rates (-1.3pp). this is expected: they’re fragments of larger workflows.
but anchored threads almost never die pointlessly. 84% either finish their piece or hand off cleanly vs 52.6% for unanchored threads.
the high UNKNOWN rate for unanchored (864/1981 = 43.6%) suggests many threads start, do some work, and just… stop. anchored threads have lower UNKNOWN (231/1507 = 15.3%).
anchor type breakdown
| type | count |
|---|---|
| explicit_context (spawn pattern) | 1,506 |
| read_thread_tool only | 1 |
almost all anchoring comes from the spawn pattern Continuing work from thread T-.... the read_thread tool is rarely the sole anchor (usually combined with explicit context).
implications
- multi-thread orchestration works - spawned sub-agents complete or hand off 84% of the time
- context passing is valuable - anchored threads have clear purpose and know when to stop
- unanchored threads need better termination signals - nearly half end without clear resolution
- the “continuing from” pattern should be standard - it creates accountability chains
caveats
- anchored threads are often spawned for specific, scoped tasks (easier to complete)
- unanchored threads include exploratory/quick sessions that inflate UNKNOWN
- the +2.1pp commit rate for anchored suggests they’re more likely to ship when they do succeed
raw data
{
"anchored": {
"total": 1507,
"byStatus": {
"RESOLVED": 610,
"COMMITTED": 136,
"HANDOFF": 520,
"UNKNOWN": 231,
"EXPLORATORY": 6,
"FRUSTRATED": 4
},
"rates": {
"resolved": "40.5",
"committed": "9.0",
"handoff": "34.5",
"success_combined": "49.5"
},
"continuity_rate": "84.0"
},
"unanchored": {
"total": 1981,
"byStatus": {
"UNKNOWN": 864,
"COMMITTED": 136,
"RESOLVED": 870,
"FRUSTRATED": 7,
"EXPLORATORY": 61,
"PENDING": 7,
"HANDOFF": 36
},
"rates": {
"resolved": "43.9",
"committed": "6.9",
"handoff": "1.8",
"success_combined": "50.8"
},
"continuity_rate": "52.6"
}
}