myxce/.kiro/specs/build-time-versioning
Rongsong Shen 0eefc95f0a
test(build-time-versioning): add motivating-incident regression script
Adds src/tools/test-build-version-regression.sh, a standalone script (same
convention as test-commit-durability.sh/test-heartbeat-tolerance.sh) that
runs real xce-build.sh scheduler builds in both asan and debug profiles,
extracts the commit id from xce_scheduler --version, and fails loudly if it
doesn't match a live git rev-parse --short HEAD (+ -dirty) -- the exact
staleness this feature was built to make visible without forensic git
commands.

Tolerates xce-build.sh's own known-unrelated flaky test exit (bug-1560) via
captured exit status rather than a blanket set -e bypass, so a genuine
compile failure still fails the check. A built-in demonstration proves the
comparison logic rejects a wrong hash, an empty commit id, and the literal
"unknown" fallback. Verified independently by review with a full from-
scratch re-run of both profiles.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-20 15:14:21 +00:00
..
design.md feat(build-time-versioning): xcecli --version via Cobra rootCmd.Version 2026-08-20 14:07:38 +00:00
requirements.md docs(build-time-versioning): add spec (requirements, design, research) 2026-08-20 08:29:57 +00:00
research.md feat(build-time-versioning): nix packages compute build time at build phase 2026-08-20 09:32:34 +00:00
spec.json docs(build-time-versioning): add spec (requirements, design, research) 2026-08-20 08:29:57 +00:00
tasks.md test(build-time-versioning): add motivating-incident regression script 2026-08-20 15:14:21 +00:00