fabro/lib/apps
Bryan Helmkamp 8b767c658b
fix: make the artifact tie-break match the artifacts page
Two artifacts can share a filename, a retry, and an absent stage, in
which case the winner was whichever the object store listed first. Break
the tie on the serialized stage ID, which is the third key the artifacts
page sorts on. Compare the `node@visit` string rather than StageId's own
ordering: the page compares the string, so "unknown@2" beats
"unknown@10" there and now here too.

The spec said captures from the `start` and `exit` nodes are excluded,
but the exclusion is by handler type, so a node named `start` that does
real work keeps its artifacts. Say that instead.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-01 09:20:40 -04:00
..
fabro-cli feat: add model-keyed fallback policies 2026-07-30 12:02:41 -04:00
fabro-mcp-server fix(tool): keep fabro_run_create validation catalog-free 2026-07-28 14:40:54 -04:00
fabro-server fix: make the artifact tie-break match the artifacts page 2026-08-01 09:20:40 -04:00
fabro-spa refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00