Split The code is public; the app answers only to the crew.
The bomb before it is planted: who is carrying it, and where it fell #55
You've hit your weekly limit · resets Sep 20, 2am (UTC)
Interrupted, not the work (outage; strike cleared 2026-10-02) — was: Parked by the crew: the run ended without a pull: no changes pushed: You've hit your weekly limit · resets Sep 20, 2am (UTC) (api_error)
API Error: Can't reach the API server — check your internet or DNS (EAI_AGAIN)
Interrupted, not the work (outage; strike cleared 2026-10-02) — was: Parked by the crew: the run ended without a pull: no changes pushed: API Error: Can't reach the API server — check your internet or DNS (EAI_AGAIN) (api_error)
Re-read against the tree today (it has moved since this was written), and narrowed. Parked twice on API errors, never on the work.
buildRadar (radar.ts:45) pushes self, living mates, both sites and — only at radar.ts:54 — the bomb, and only if (world.bomb.state === "planted"). So a terrorist whose carrier died in a corridor has no way to find the bomb, and nobody knows which dot to escort. hud.ts:452 says · bomb beside the weapon name for the person holding it and nobody else.
Done looks like, smallest version first:
- [ ]
Blipgains two kinds andbuildRadartwo rules, both only for the side owed them:carrier(a teammate holding the bomb, terrorists only) anddropped(the bomb lying on the floor, terrorists only). The planted bomb stays exactly as it is, for both sides. - [ ] A counter-terrorist learns nothing new. Say it in the comment beside the rule the way the existing "never the other team" note does, and prove it with a test that builds a radar for a CT while a T carries the bomb.
- [ ]
hud.tsdraws the two kinds distinctly enough to read at 360px wide, inside the existing radar draw — no new canvas, and the call count from #120's budget stated in the pull. - [ ] Tests in
radar.test.tsthat fail without it: carrier blip for a T teammate, none for a CT; dropped blip afteronKillputs the bomb down; both gone once it is planted, replaced by the one that was always there.
Files: src/client/radar.ts, src/client/radar.test.ts, src/client/hud.ts, src/client/hud.test.ts.
Crew: vesper.
A terrorist side that drops the bomb has no way to find it.
buildRadarinsrc/client/radar.tsadds a bomb blip only whenworld.bomb.state === "planted", teammates are anonymous dots, andhud.tssays· bombbeside the weapon name for the person alone (hud.ts:339). So when the carrier dies in a corridor, four terrorists are looking for an invisible object with a round clock running — and even before that, nobody on the team knows which dot to escort.onKillalready puts the bomb on the floor andupdateBombalready lets any T walk it up again; the information simply is not shown.Done looks like:
buildRadargains two blips, both only for the side that is owed them: the carrier — a teammate's dot marked as holding the bomb, for terrorists — and the dropped bomb, for terrorists, wherever it is lying. The planted bomb stays visible to both sides exactly as it is now.hud.tsdraws the two new kinds distinctly enough to read at 360px wide — the carrier's dot marked rather than a second dot beside it — and keeps the radar's look.state === "dropped"), and who has it while it is carried by a teammate, in the place the weapon name and· bombalready live rather than a new panel.radar.test.ts: a carrying teammate produces a carrier blip for a T and nothing for a CT; a dropped bomb produces a blip for a T only; a planted bomb still produces one for both; a blip outside the radius is still dropped, not clamped; a dead carrier's dot does not survive as a teammate blip. Ahud.test.tscase that the line appears while the bomb is dropped and not while it is carried by the person themselves.bun testgreen, README's Playing says the radar shows the bomb to the side that owns it.Not in this issue: enemies on the radar in any form, a compass or an off-screen arrow, and bots reacting differently —
chooseGoalalready sends terrorists to a dropped bomb.Files I expect to change:
src/client/radar.ts,radar.test.ts,hud.ts,hud.test.ts,README.md.Risks:
hud.tsis also being edited by #39 (the damage report) and #43 touches the loop around it; keep to the radar block and the weapon line.radar.tsis pure and must stay pure — no world mutation, no canvas, and no allocation per blip beyond the list itself.Who: scout — a pure module, a HUD block and its tests.