yams/tests/unit/storage
Trevon d398556ee5
fix(tests): replace frozen expectations and harden release gates (#323)
* test(search,daemon,storage): assert behaviour instead of frozen literals

Several suites encoded exact internal values that legitimate tuning and
ranking changes are allowed to move: SCIENTIFIC-era profile weights and
rrfK values, corpus-statistic figures, and hardcoded timeout/cancellation
numbers. They failed on every platform after those changes landed, so the
real behaviour regressions they should catch were hidden behind noise.

Replace the frozen literals with contract assertions: weights are finite,
non-negative and normalize, state selection still holds, capability-gated
sources stay zeroed, and hybrid results keep matching canonical hash/path
sets. Deadlines are not widened and the daemon paths they cover are
unchanged.

Also add independent corpus and adapter oracles, deterministic collector
cancellation and late-result gates, and synchronize ServiceManager
shutdown observation, so the tests fail for the behaviour they name.

The portability allowlist keeps its two reviewed raw test-env reads; only
their line numbers moved.

Signed-off-by: trvon <git@trevon.dev>

* ci(tests): summarise Meson failures without flooding the log

A failing test run printed the whole Meson suite output, so the actual
failing test names and their assertion messages were buried and the
uploaded logs were dominated by passing-test chatter.

Add a bounded reporter that extracts the failing test names plus their
surrounding diagnostics, keeps an overall cap on emitted lines, and is
unit-tested against representative Meson output. Wire it into the Tests
workflow so failures stay readable.

Signed-off-by: trvon <git@trevon.dev>

* build(deb): validate candidate identity, mapping and upgrade ordering

The Debian packaging scripts took filenames and versions on trust, so a
misnamed candidate or a wrong package ordering could pass validation while
the real install path was never exercised.

Fail closed on candidate identity, version and architecture, verify the
package-to-source mapping, seed the legacy-only layout, wait on the actual
services, and assert install/upgrade/remove ordering for both Debian and
RPM in an offline container. Cases that cannot be proven on a host are
reported as skipped rather than silently passing.

Signed-off-by: trvon <git@trevon.dev>

---------

Signed-off-by: trvon <git@trevon.dev>
2026-10-19 19:16:57 -06:00
..
compressed_storage_engine_catch2_test.cpp chore(warnings): clean up compiler warnings on GCC, Clang and Apple Clang (#279) 2026-10-08 14:30:28 -06:00
compressed_storage_stats_catch2_test.cpp refactor: simplify runtime paths and harden retrieval (#61) 2026-07-31 14:16:45 -04:00
garbage_collector_catch2_test.cpp fix(testing): stabilize TSAN coverage, harden daemon shutdown, and speed up KG/storage paths (#53) 2026-06-26 17:57:02 -04:00
object_storage_adapter_catch2_test.cpp fix(tests): replace frozen expectations and harden release gates (#323) 2026-10-19 19:16:57 -06:00
reference_counter_catch2_test.cpp fix(storage): cache reference counter stats per SQLite generation (#291) 2026-10-14 08:32:55 -06:00
reference_counter_stress_catch2_test.cpp chore(warnings): clean up compiler warnings on GCC, Clang and Apple Clang (#279) 2026-10-08 14:30:28 -06:00
s3_signer_catch2_test.cpp chore(warnings): clean up compiler warnings on GCC, Clang and Apple Clang (#279) 2026-10-08 14:30:28 -06:00
sqlite_retry_catch2_test.cpp chore: housekeeping — rm dead code, consolidate MCP tools, add tests, clean docs (#50) 2026-06-16 19:37:24 -04:00
storage_backend_catch2_test.cpp fix(memory-sync): bound complete sweeps and cancel filesystem walks (#321) 2026-10-18 07:29:13 -06:00
storage_backend_engine_adapter_catch2_test.cpp test: expand storage-readiness coverage — 48.1%→59.8% broad, 74.3% narrow (#38) 2026-05-25 22:58:15 -04:00
storage_backend_factory_catch2_test.cpp fix(docs): Replace 2026-06-27 16:28:08 -04:00
storage_engine_catch2_test.cpp fix(ci): repair audited platform regressions 2026-09-13 20:48:30 -06:00
storage_runtime_resolver_catch2_test.cpp test(ci): stabilize platform matrix 2026-08-18 21:07:59 -06:00
windows_path_catch2_test.cpp fix(storage): scope Windows long paths to paths that need them 2026-09-17 07:16:00 -06:00