comparison · c_6209cd238b3f (tommy-mor) vs c_7752a1605bf0 (tommy-mor)
Side A is a substantive feature/bugfix commit: it speeds up scan by avoiding full replay, surfaces detailed parse errors, adds a new compile --ingest replay path, updates docs, and adds tests. Side B merely deletes a file with no explanation of removal rationale or migration, offering negligible lasting value in comparison.
A delivers lasting tooling value: a fast scan path that avoids expensive full replay, richer parse_error surfaces, compile --ingest for single-event replay, CLI/docs updates, and a regression test. B only deletes a 24-line Clojure test runner with no replacement or design impact.
Side A adds substantive functionality and architecture: it introduces fast non-replay scanning, richer parse error reporting, a new `compile --ingest` workflow that reconstructs prior reducer state for a single event, improved CLI behavior, and tests/documentation to support these features. Side B only deletes `test/runner.clj`, removing a test entrypoint without adding new functionality or evident long-term design improvements.
comparison · c_7752a1605bf0 (tommy-mor) vs c_7ca21f5e83a8 (tommy-mor)
Side B adds a substantial, functional integration test exercising real pool-scoped voting flows end-to-end, providing lasting regression coverage. Side A merely deletes a small entrypoint file with no compensating functionality added elsewhere in the diff, offering minimal lasting value.
B adds a full browser integration test (seed pool items, enter via /vote?pool=, assert pair scoping and edge-history morph across the vote/next-pair loop), which is lasting product coverage. A only deletes an obsolete 24-line test runner entrypoint—useful cleanup but no new behavior or protection.
Side B adds a substantial end-to-end browser test that seeds a pool, exercises the vote→next-pair workflow, and verifies key invariants such as votes appearing in edge history and all presented pairs belonging to the requested pool. Side A only deletes the JVM test runner entrypoint (`test/runner.clj`), removing functionality without introducing a replacement in the shown patch.