Commit graph

13 commits

Author SHA1 Message Date
trvon
910a1d7f9c
test(daemon): harden background wait, slow-lane hysteresis 2026-08-21 08:55:23 -06:00
trvon
734bbe3a0c
test(extraction): poll for launcher response lines 2026-08-20 23:25:33 -06:00
trvon
788140eeee
fix(cli): discover daemon log via status 2026-08-20 21:00:49 -06:00
trvon
44939e5828
fix(daemon): bypass strand close during global teardown 2026-08-20 19:51:56 -06:00
trvon
7a69883230
test(ci): isolate ARM smoke lifecycles 2026-08-19 14:34:04 -06:00
trvon
d152b5697d
chore(tooling): mark dependency-managed includes 2026-08-19 08:43:17 -06:00
trvon
0e3378113e
test(ci): fix remaining platform builds 2026-08-19 01:54:59 -06:00
trvon
a34f49f39e
test(ci): stabilize platform matrix 2026-08-18 21:07:59 -06:00
trvon
c30793d1d9
test(portability): reject analyzer shims 2026-08-17 21:43:12 -06:00
trvon
0ed43a1a3f
test(daemon): make lock-holder test fork-safe
The child forked by 'Daemon does not terminate unverified data-dir lock
holder' built an fs::path and called json::dump(), both of which allocate;
a fork in a multithreaded process can leave the malloc lock held, so the
child could fail before signaling readiness. Pre-compute the lock path in
the parent, format the payload with snprintf into a stack buffer, signal a
failure byte on open/flock error, and retry the parent's read on EINTR.
Portability allowlist line numbers updated for the shift.
2026-08-14 12:06:06 -06:00
trvon
15bbaa8567
refactor(cli): extract testable post-init guidance
Factor the post-setup 'what next / how to configure' guidance into pure
formatLaterCommand/formatInitSummary builders so each decision branch's
help is testable without stdout, and add a focused test asserting the
later-command and ready-summary text. Output is byte-identical.
Portability allowlist line numbers updated for the shift.
2026-08-13 12:20:02 -06:00
trvon
7ad04189f5
refactor(cli): extract already-initialized init path
Factor the alreadyInitialized && !force_ branch out of the monolithic
execute() into a private handleAlreadyInitialized() helper. Behavior
preserved; setup decision/try nesting reduced. Portability allowlist
line numbers updated for the shift.
2026-08-13 08:33:15 -06:00
trvon
b34bfcf508
test(portability): add cross-platform lint gate
Catch Windows/Linux/macOS-only defect classes before push: raw
std::jthread, sqlite3_open* via bare path.c_str(), and raw getenv
reads outside the config boundary. Wired into pre-commit and the
unit/policy suite; 575 reviewed sites allowlisted.
2026-08-12 19:54:02 -06:00