Skip to content

ci(cold-store-reaper): no workflow runs the package's test suites — 2,700+ lines of tests execute only when a human remembers #1427

Closed

Description

@dezren39

Finding

pkgs/cold-store-reaper has a substantial test suite — and no CI runs any of it.

Verified this run (2026-10-27, main 37418e56):

  • Suites exist: tests/test_cold_store.py (2,361 lines), tests/test_export_turso.py (246), tests/test_nightly_backup.py (133), plus the worker proof worker/test/run-local-proof.mjs (npm test).
  • grep -rn "cold-store|cold_store" .github/workflows/ → no workflow references the package. grep over *.nix / flake.nix → no check or derivation runs the tests either.
  • The only documented way to run them is a manual command in pkgs/cold-store-reaper/README.md ("Tests" section): python3 -m unittest discover -s pkgs/cold-store-reaper/tests -v.
  • Every comparable package has CI: id-check.yml, mcpx.yml + mcpx-conformance.yml, go-modules-build.yml, identity-build.yml, map-build.yml, lab-ops-hub.yml. cold-store-reaper is the outlier.

Why it matters

The last three cold-store changes all shipped test changes that no automation executed:

A regression in this package is a backup-integrity regression: this code verifies sha256s, enforces the 700 GB/day and 3 TiB budget stops, and produces the only portable exports of the Turso databases. "Tests exist but only run when a human remembers" is how a red suite lands on main unnoticed. (This run: the suite is currently green — 80 tests, OK, 1 skipped — but takes 162 s wall-clock, which is itself a reason it needs a proper CI home rather than ad-hoc runs.)

Acceptance criteria

  • A GitHub Actions workflow runs the cold-store-reaper Python suites (python3 -m unittest discover -s pkgs/cold-store-reaper/tests) on PRs and pushes to main that touch pkgs/cold-store-reaper/** (path-filtered, consistent with the repo's other per-package workflows).
  • The workflow provisions the suite's documented requirements: Python 3.12, the zstd CLI, curl, and the sqlite3 CLI (the export-turso tests shell out to it via the SQLITE3_BIN seam).
  • The worker local proof (worker/: npm test, which cross-checks src/decoder.js against the real Python pack) runs in the same workflow or a sibling job.
  • The workflow is green on main at merge time, and the README "Tests" section is updated to say CI runs the suites (keeping the manual command for local use).

Activity

  1. added
    kind/ciCI/CD pipelines, workflows, and build automation
    task/triageQueue packet kind: verify, reproduce, and route this item
    source/creatorFiled by the new-issue-creator job
    priority/normalOrdinary priority (the default)
    queue/queuedHas a queued task in the Supabase agent queue
    app/cold-store-reaperPackage/app: cold-store-reaper (pkgs/ or apps/ in this repo)
    on Oct 27, 2026
  2. developing-today commented on Oct 27, 2026

    @developing-today
    Contributor
  3. dezren39 commented on Oct 27, 2026

    @dezren39
    MemberAuthor

    Filed this run by the new-issue-creator (lane A). Verified on main 37418e56: no workflow in .github/workflows/ and no nix check references pkgs/cold-store-reaper; the package's Python suites (80 tests) and the worker local proof run only via the manual command in the README. Suite currently green (ran it this run: 80 tests OK, 1 skipped, 162 s).

    • Session / ID: cron new-issue-creator-code-a run 2026-10-27 10:05 CDT
    • Found via: filed this run
    • Task: filed the issue; queued a triage packet for routing
    • Expectation: effort/m — done when a path-filtered workflow runs the Python suites + worker proof on cold-store changes and is green on main
    • Links: packet enqueued to repo-health-code-pilot this run
  4. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 31, 2026
  5. 23 remaining items

  6. added
    status/parkedDeliberately paused with a recorded resume condition
    and removed
    queue/claimedQueue worker lifecycle state
    on Oct 31, 2026
  7. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · parked

  8. added
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Oct 31, 2026
  9. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

  10. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · correction

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

app/cold-store-reaperPackage/app: cold-store-reaper (pkgs/ or apps/ in this repo)kind/ciCI/CD pipelines, workflows, and build automationpriority/normalOrdinary priority (the default)source/creatorFiled by the new-issue-creator jobtask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions