1.9 KiB
1.9 KiB
QA Plan: Personalization Correctness Verification
Scope
This feature is itself a verification suite. QA validates that:
- All tests in
tidal/tests/pg1_personalization_correctness.rscompile and pass. - No regressions are introduced in existing test suites.
- The mathematical assertions are sound (not trivially true).
Test Execution
Step 1: Run the new test suite
cargo test --manifest-path tidal/Cargo.toml --test pg1_personalization_correctness -- --nocapture
Pass criteria: All tests pass. Zero failures, zero panics.
Step 2: Run existing lib tests for regression
cargo test --manifest-path tidal/Cargo.toml --lib
Pass criteria: Same pass count as before (no regressions).
Step 3: Run clippy and fmt
cargo fmt --manifest-path tidal/Cargo.toml -- --check
cargo clippy --manifest-path tidal/Cargo.toml --tests -- -D warnings
Pass criteria: No warnings, no formatting errors in our test file.
Step 4: Verify test assertions are non-trivial
Manual review of each test to verify:
- Decay tests use different timestamps and weights (not all zeros or ones).
- Score ordering tests have items with meaningfully different signal histories.
- Reactivity tests actually measure wall-clock time (not just assert results).
- Gate tests have items both above and below the threshold.
Pass criteria: Reviewer confirms assertions are non-trivial.
QA Checklist
| # | Check | Expected |
|---|---|---|
| 1 | pg1_personalization_correctness tests all pass |
0 failures |
| 2 | Lib tests pass (no regression) | Same count as baseline |
| 3 | cargo fmt --check clean for test file |
No diffs |
| 4 | cargo clippy --tests clean for test file |
No warnings |
| 5 | Decay tests use varied inputs | Confirmed by review |
| 6 | Ordering tests compare items with different signal profiles | Confirmed by review |
| 7 | Reactivity tests include timing assertions | Confirmed by review |