tidaldb/.sdlc/features/pg1-personalization-correctness/qa-plan.md

1.9 KiB

QA Plan: Personalization Correctness Verification

Scope

This feature is itself a verification suite. QA validates that:

  1. All tests in tidal/tests/pg1_personalization_correctness.rs compile and pass.
  2. No regressions are introduced in existing test suites.
  3. 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