Documentation
¶
Overview ¶
Command attack_report answers the two questions a finished attack actually raises, from the run's own log:
did every unit deploy, and were the spells placed somewhere useful?
The other two harnesses answer neighbouring questions. `attack_verify` shows the *plan* before a battle is spent, and `see` shows what the bot *perceives* in a frame. Neither looks at what the run did, which is how a session that logged "all units successfully deployed" also logged, 20 lines earlier, two heroes failing and two troop cards being written off on a broken OCR reading.
Usage:
attack_report -log tmp/run.log attack_report -log tmp/run.log -json attack_report -log tmp/run.log -spell-radius 90
Exit code is 1 when the run has a problem worth looking at, so it can gate a script; 0 when nothing in the log contradicts a success.
This is a log reader, not a game observer. A unit it calls UNVERIFIED is one whose completion the bot could not establish either — which is precisely the category that used to reach a human as "it didn't use all the troops".