diff --git a/docs/re/captures/ob-decrement-confirmed.png b/docs/re/captures/ob-decrement-confirmed.png new file mode 100644 index 0000000..163b2f7 Binary files /dev/null and b/docs/re/captures/ob-decrement-confirmed.png differ diff --git a/docs/re/ob-counts-marked-attackers.md b/docs/re/ob-counts-marked-attackers.md index e5da21a..80f021b 100644 --- a/docs/re/ob-counts-marked-attackers.md +++ b/docs/re/ob-counts-marked-attackers.md @@ -1,9 +1,9 @@ # 🟡 What `REMAINING OB` counts — the marked attackers, four per arriving squadron -**Status: ✅ CONFIRMED for the counter's RISES — the `A`-route arrival times -predict every step to the second (measured 2026-08-27, see below). 🟡 the -DECREMENT half is still untested: no run has yet killed a marked attacker under -observation.** It is recorded because it is the first reading that fits *every* +**Status: ✅ CONFIRMED, both halves (2026-08-27).** The `A`-route arrival times +predict every rise to the second, and a marked attacker's death was finally +observed: the counter fell by **exactly one**, and the next arrival then raised +it by four from the *reduced* value. See the final section. It is recorded because it is the first reading that fits *every* number this corpus has taken, and because it makes sharp predictions that one run can kill. @@ -456,3 +456,63 @@ runs end early, so a 30-minute engagement on one target is not reachable. they were never deliberately used. * **Accept it as a long-run experiment** and check the counter after a scripted event kills an attacker, rather than trying to force one. + +--- + +# ✅✅ THE DECREMENT, MEASURED — the hypothesis is confirmed in full + +The four previous attempts failed because fire was spread across the squadron: +14 of 16 attackers damaged, none killed. `pilot.py` gained `SYLPH_WEAKEST=1` +(commit `00052b0`), which scales a target's score by its remaining hull so the +pilot finishes what is already hurt. It worked on the first live run. + +All gates enforced first: `FLIGHT` confirmed, stage asserted, mission clock shown +advancing (00:10.12 → 00:23.14 → 00:36.30) before the experiment began. + +## The measurement + +Live `e010` count, logged every 10 s — the floor drops **once**, at sample 12, +and stays down: + +``` + 0..11 e010=16 (spikes to 18/20 are the known tool artifact) +12..39 e010=15 one marked attacker dead +``` + +The counter, sampled beside the mission clock +([capture](captures/ob-decrement-confirmed.png)): + +| mission `TIME` | `OB` | | +|---|---|---| +| 01:45.65 | `004` | | +| **02:06.33** | **`008`** | the t=120 arrival, +4 | +| 02:51.19 | `008` | | +| **03:10.28** | **`007`** | **← DECREMENT, in (171.2 s, 190.3 s]** | +| 03:29.66 | `007` | | +| **03:48.40** | **`011`** | the t=210 arrival, +4 **from 7, not from 8** | +| 04:07 → 06:50.30 | `011` | holds; ceiling is 11, not 12 | + +## Why this is conclusive and not a coincidence + +* **It fell by exactly 1**, not by 4. So the counter tracks *craft*, not + squadrons — the competing reading is dead. +* **Exactly one attacker died and exactly one decrement occurred**, in the same + window. +* **The ceiling moved with it.** The t=210 arrival added its four to **7**, + giving **011** — where every previous run reached **012**. A counter that + merely read arrivals would have shown 012 regardless. The reduced ceiling is + the kill still being remembered 3 minutes later. +* **The control held throughout.** Turrets fell **109 → 92** — seventeen deaths — + across the same run, and not one of them moved the counter. + +## The settled reading + +`REMAINING OB` = **the number of objective-marked craft still alive**, where the +marked craft are exactly the members of the phase's `A`-route squadrons +(Stage 02 phase 1: `ADT102`, `ADT107`, `ADT113`, each `n = 4`). It rises by a +squadron's membership as each arrives on its route's first-keyframe time, and +falls by one for each marked craft destroyed. Turret and other non-marked deaths +do not affect it. + +Every number in that sentence was predicted from `Route_S02.tbl` and +`UnitGroup_S02.tbl` before being measured.