Repository navigation
M3: a SUPPLY aircraft destroyed in flight, and the campaign's response (#27) - #67
Conversation
…next docs/m3-supply-loss.md follows the naturally occurring loss in the accepted reference run's retained observations (no new run, no runtime change): red Mi-17 87568 of SUPPLY group 87567 "Wolfpack" dies at 1,584.66 s while Performing Task, 32 km from Beirut, as two blue MIM-72G Chaparrals vanish at it. The group falls from two aircraft to one with no replacement; the survivor turns back at that moment and its task ends at Beirut with no keysite delivery; the campaign re-tasks the one-aircraft group at 3,619.24 s and it delivers fuel to Power Station 3 at 4,013.67 s. No red keysite was requesting fuel when the task was assigned, so its receiver was a group (by elimination and the code), whose supply is not reported: the lost cargo and the receiver's shortfall are not observable. Facts are classified as observed, inferred, not observable and code. tools/loss-chain-check.py and its self-test; reference/m3-supply-loss/ keeps the report and the records behind each link. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C64rJFJLY8BTJbC1QimZDK
fd-starscream-bot
left a comment
There was a problem hiding this comment.
Approved.
This slice provides the adverse-outcome evidence M3 needed.
What is established through the public observation path is:
- a member of an active SUPPLY group is physically destroyed;
- the campaign state thereafter contains a permanently reduced group;
- the surviving member's current task ends without an observed keysite delivery;
- the reduced group is later selected for another SUPPLY task and completes a delivery.
That is enough to show a meaningful adverse world outcome changes campaign state and that subsequent campaign decisions operate on the changed state.
The record correctly does not claim adaptive compensation for the lost cargo. The receiver, any carried crate, the request message, and whether the original shortfall was later made good are not observable. Likewise, the Chaparral hit and the receiver being a group remain inference/code-supported interpretation, not required evidence for accepting this slice.
A naturally occurring keysite-bound loss could broaden the evidence later, but it is not required merely to strengthen a claim this PR does not make.
No runtime behaviour changed and M1/M2/#66 evidence remains intact. No further changes requested.
bf6bae2
into
claude/eech-campaign-native-spike-tjkj6g
Task and scope
Epic / milestone: #27, M3 — Operate the campaign within EECH World.
Base:
claude/eech-campaign-native-spike-tjkj6gat4a99b8a3(the resupply loop, #66, merged).The question: when a SUPPLY aircraft is destroyed during an active supply task, does that physical loss alter campaign progression and lead to a subsequent campaign response?
Answer:
The record is
eech-campaign/docs/m3-supply-loss.md.The evidence: the loss is the naturally occurring in-flight Mi-17 loss at 1,584.66 s in the accepted reference run's retained observations (
reference/m3-resupply-loop/observations.jsonl.gz, #66), read throughengine:objects (). Nothing was manufactured, no new run was needed, and no runtime file changed. There are no engine, host-boundary or Lua changes.The chain
Group 87567 is "Wolfpack": two red Mi-17 Hips, units 87568 and 87581, based at Beirut.
Inferred:
keysite.c), and the other requester kind is a group (group.c).Not observable:
Code reading: a crate aboard a destroyed helicopter is destroyed with its wreck (
hc_dstry.c).Changes
tools/loss-chain-check.py: follows a SUPPLY aircraft loss through the observations (loss and weapons, pickups, group membership, the survivors' response, receiver elimination, next assignment and outcome) and classifies each fact as observed, inferred, not observable or code reading. It passes when the loss, the response and the subsequent assignment are observed.tools/loss-chain-check-selftest.py: removing the death, the survivor's task events, or its later SUPPLY assignment each makes the check fail.docs/m3-supply-loss.md, andreference/m3-supply-loss/: the report, and 2,674 lines of the records behind each link.Evidence
python tools/loss-chain-check.py reference/m3-resupply-loop/observations.jsonl.gz --unit 87568python tools/loss-chain-check-selftest.py reference/m3-resupply-loop/observations.jsonl.gz --unit 87568tools/,docs/,reference/m3-supply-loss/and a README line changedBoth checks run on committed files with no retail data. The recording is M2's (byte-identical); it was not visually reviewed for this chain.
What this does not establish
eech_dc.dll(M5).Review and handover
fd-shockwave-bot.Next bounded action: decide whether M3 needs an adverse outcome with an observable receiver shortfall (a keysite-bound delivery lost). If so, find a run or seed where one occurs naturally, rather than manufacturing one.
🤖 Generated with Claude Code
https://claude.ai/code/session_01C64rJFJLY8BTJbC1QimZDK