land: test-hooks-feature

Merged
AF
13h ago
+253-196

Accepted agent delivery; branch-keyed search descriptor included.


Summary by cubic

Makes integration test hooks explicit by introducing a single test-hooks Cargo feature behind agent-file-tools, replacing the two prior test-sandbox-launcher and test-conformance-result-inputs features and removing the self dev-dependency that caused lib-only test builds to compile the library twice. Integration and rest test harnesses now fail at compile time instead of silently skipping when the feature is omitted. CI compile checks now verify the shipped library and binaries without test-hooks, then all targets with it (including the Windows conformance check), so merge-queue builds stay green. The test-inventory proof now lists lib, bin, and doctest targets with test-hooks to match the CI archive build, and the macOS backtrace probe, inventory listings, gh-shim tests, and cost gate pass test-hooks the same way, so these jobs reuse the archive build instead of compiling a second library copy that pushed a Windows archive job past its time limit. The background-task test's two waits were raised from 10 to 30 seconds so loaded Windows runners don't exceed the old bound.

Migration

  • Pass --features test-hooks to any cargo test / cargo nextest command that targets the integration or rest suites; lib-only test commands need no change.
  • Run cargo test --features test-hooks -p agent-file-tools for the full suite. Production and release builds must never enable the feature, and scripts/check-secret-test-fake.sh now guards both test-hooks and secret-test-fake equally.