From bbf27f17e1c85b50a655003d5d838d72ca25f998 Mon Sep 17 00:00:00 2001 From: "@permadeath.com" Date: Thu, 20 Aug 2026 19:59:02 -0400 Subject: [PATCH] docs(candidates): record what the hex report now carries The four additions, and the claim the prune partition corrected. --- plan/candidates.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plan/candidates.md b/plan/candidates.md index 06b436e..95341dc 100644 --- a/plan/candidates.md +++ b/plan/candidates.md @@ -595,6 +595,27 @@ conditional, and the allocation is the force's to make. functions. What changed is who calls them, and that the call is visible at the call site. +### The hex report carries the facts now + +`examples/heatmap.rs` draws the same nine maps and adds four things the facts +work made possible, one per board: the to-hit as GATOR rows for three stands, +the gait each hex is reached at, the four-way prune partition in both +directions, and the per-arc damage split. `heatmap::ToHit` keeps the parts +`volley::gather` throws away once it has the integer a `ShotKey` needs, and +`heatmap::FactMap` summarises a `Sweep` per hex - cheapest gait, largest TMM, +mean reason shares, mean arc split - in the same reading order `HexMap` uses. + +**It corrected a claim the page was making.** The old page said the first pick +on the defence list deals `0.00` because it has "no line to any enemy from any +facing". The partition says otherwise: on `open` that stand fires at 35% of the +positions it was scored against and has no line to 35%. The zero is the +per-channel minimax reporting the worst member of `M`, not the ground. The +table prints the two shares beside the stand, so the claim cannot drift again. + +139 of the 198 stands on `open` are reached at a run, and 37 of its 60 +reachable hexes cannot be walked into at any facing - `+2` on every roll made +from them. + ### What this exposed There is no bridge from a `Stance` to a `Weights` anywhere in the tree. -- 2.51.2