bug-1580's evidence was a ':FAIL:' grep that cannot match Unity's colored FAIL lines. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3.4 KiB
| id | status | status_updated | status_note | component | severity | timestamp | last_seen | occurrences | files | tags | related | repro_attempts | legacy | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bug-1580 | cannot-reproduce | 2026-09-30 | 0/26 runs with failures on dc94da20, 2026-09-29; original ':FAIL:' grep cannot match Unity's colored FAIL lines |
controller | crash | 2026-08-18T10:39:52Z | 2026-09-19T09:00:00Z | 1 |
|
|
|
0/26 runs, 2026-09-29 (20 standalone + 6 full-suite, dc94da20, asan) |
true |
bug-1580: meson test 'xce:controller / controller test' (controller_unit_test) reports '1104 Tests 2…
Description
meson test 'xce:controller / controller test' (controller_unit_test) reports '1104 Tests 2 Failures 0 Ignored' / exit status 2, but grep of the full raw testlog for ':FAIL:' or a per-test [FAIL] marker finds ZERO matches -- every individual Unity test case visibly printed PASS. Reproduced deterministically 2/2 times (once via meson test, once via a direct standalone re-run of the binary with ASAN_OPTIONS=detect_leaks=0), unlike bug-1553's documented ~1-in-3 intermittent SIGSEGV (exit 139) signature -- this is exit 2 with no crash indication, a distinct manifestation.
UPDATE (2026-09-30): The original evidence does not hold: controller_unit_test prints colored Unity output, where a failure line is file:line:test:\e[41mFAIL\e[0m: msg. A grep for :FAIL: can never match it, so "2 Failures but zero FAIL markers" most likely meant two ordinary test failures the grep could not see, not a counter desync; the original log was not kept, so which tests is unknown. On 2026-09-29 (dc94da20 + cfa0a941, asan) controller_unit_test ran 26 times (20 standalone, 6 via xce-build.sh): every run exit 0, 0 Failures, and the printed per-test results agree with the summary. To look for failures in these logs, grep for FAIL (or strip ANSI codes first), not :FAIL:.
Environment
Not recorded (migrated from buglog.json).
Reproduction
Not recorded (migrated from buglog.json).
Root cause
Not investigated. Most likely the same class of issue cerebrum.md's Unity-harness note already flags for this codebase (multiple UnitySetTestFile()-sharing test-group files in one binary can desync the aggregate PASS/FAIL counter from the printed per-test lines) rather than a real regression -- no code change in this session could have caused it (only .claude/skills/xce-test-resources/run-resource-verify.sh, a bash script, was edited). Possibly related to / the same underlying fragility as bug-1553 (order-dependent shared Unity/ASAN state across test files in the same binary) but with a different observed symptom (miscounted summary vs. an outright segfault).
Fix
Not fixed -- out of scope for the resource-value-verification bug-1579 follow-up (bash-script-only boundary). Verified NOT a regression from this session's change (no C files modified) and does not block or relate to the run-resource-verify.sh live validation, which was carried out and passed independently. Needs the same isolation bug-1553 needs: bisect which specific linked test-group file(s) desync the counter.
Verification
Not recorded (migrated from buglog.json).
References
- Related: bug-1553