diff --git a/docs/re/ob-counts-marked-attackers.md b/docs/re/ob-counts-marked-attackers.md index c6cb4098..de0b6199 100644 --- a/docs/re/ob-counts-marked-attackers.md +++ b/docs/re/ob-counts-marked-attackers.md @@ -273,3 +273,71 @@ The kill test is unchanged and is now the only open half: 1. Kill ONE `e010` and nothing else → the counter must fall by exactly **1**. 2. Kill a turret → it must not move. + +--- + +# 2026-08-27 — the kill run: rises reproduced (n=2), decrement still not shown + +`pilot.py` with `SYLPH_PREFER=e010`, 300 s, Stage 02, mission clock sampled +throughout ([capture](captures/ob-kill-run-timeline.png)). + +## ✅ The arrival timing reproduces exactly — second independent run + +| mission `TIME` | `OB` | +|---|---| +| 01:35.20, 01:54.77 | `004` | +| **02:14.67** | **`008`** — step in (114.8 s, 134.7 s] | +| 02:28 → 03:16.39 | `008` | +| **03:33.32** | **`012`** — step in (196.4 s, 213.3 s] | +| 03:47 → 05:11.56 | `012` | + +Both brackets contain the predicted **120** and **210**. The arrival half is now +confirmed on **two independent runs**. + +## 🟡 The decrement: INCONCLUSIVE, and the reason is specific + +The pilot flew and fought properly this time — **424 `fire=1` samples**, 865 of +them with the target inside 1500 units, closest approach **79** units, target +`e010_ADAN_Attacker_S` throughout, hull never scratched (1500/1500). And the +hostile population **fell 129 → 116**: thirteen ADAN died. + +**The counter did not move**, holding `012` for 98 s across that. + +❌ **But this is not evidence against the decrement**, and saying so would repeat +the exact error this corpus has logged twice. To read a null result I must show +the thing that would produce it happened — *a **marked** attacker dying* — and I +cannot: + +* The thirteen dead were not identified by class. The corpus's own history is + that this pilot's kills skew overwhelmingly to `e007` turrets, which are seven + times more numerous and much closer. +* The live `e010` count **rose** over the run rather than fell, so attacker + deaths cannot be inferred from it either. + +## ✅ One thing the run does establish: the counter is NOT "live attackers" + +Measured at `TIME 05:56.85`, both arms at the same instant: + +| | | +|---|---| +| `REMAINING OB` | **012** | +| live `UN_e010_ADAN_Attacker_S` (definition-pointer enumeration, deduped by position) | **23** | + +**23 ≠ 12.** So the counter tracks a *subset* of the attackers, not all of them — +and 12 is exactly the membership of the three `A`-route squadrons (3 × n=4). +Phase 1 fields only 16 `e010` in total, so 23 live means later-phase or `F`-route +squadrons have joined the scene without touching the counter. + +That kills the simplest competing reading ("the counter is the live attacker +head-count") and is a positive result for the *marked-subset* interpretation, +independent of the decrement question. + +⚠️ One anomaly, recorded not explained: the same enumeration reports **2** +`UN_f001_TCAF_DeltaSaber_T_Player`. Deduplication is by position value, so two +distinct positions carry the player definition. Not investigated. + +## What the decrement test still needs + +A run in which a **marked** attacker demonstrably dies — which means logging the +per-class roster before and after each kill, not just the ADAN total. The pilot +already prefers `e010`; what is missing is the bookkeeping to prove it hit one.