Files
timmy-config/docs/issue-650-verification.md
Alexander Whitestone 44ec5811d7
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 21s
Smoke Test / smoke (pull_request) Failing after 19s
Validate Config / YAML Lint (pull_request) Failing after 14s
Validate Config / JSON Validate (pull_request) Successful in 20s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 59s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Cron Syntax Check (pull_request) Successful in 13s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 10s
Validate Config / Playbook Schema Validation (pull_request) Successful in 16s
Validate Config / Shell Script Lint (pull_request) Failing after 46s
Architecture Lint / Lint Repository (pull_request) Failing after 9s
PR Checklist / pr-checklist (pull_request) Successful in 5m30s
docs: verify #650 already implemented on main
Add a verification note and regression test proving the pipeline daily reset
is already wired on main via reset_pipeline_state.py, nightly scheduler
integration, and midnight cron configuration.
2026-04-22 14:56:05 -04:00

1.8 KiB

Issue #650 Verification

Status: already implemented on main

Issue: [Pipeline] pipeline_state.json needs daily reset

Summary: The repo already contains the full daily-reset implementation for pipeline_state.json. Yesterday's complete/failed states are reset by age, stuck running states older than 6 hours are cleared, the nightly scheduler calls the reset helper before each cycle, and a dedicated midnight cron entry runs the reset script against ~/.hermes/pipeline_state.json.

Evidence on main:

  • scripts/reset_pipeline_state.py
    • removes stale complete and failed entries older than 24 hours
    • removes stale running entries older than 6 hours
    • supports direct execution against ~/.hermes/pipeline_state.json
  • scripts/test_reset_pipeline_state.py
    • covers fresh vs stale complete entries
    • covers stale failed entries
    • covers stuck running entries
    • passes on a fresh clone
  • scripts/nightly-pipeline-scheduler.sh
    • calls reset_pipeline_state.py before pipeline scheduling
    • treats stale completion state as not reusable forever
  • cron/pipeline-daily-reset.yml
    • schedules a midnight daily reset using python3 scripts/reset_pipeline_state.py --state-file ~/.hermes/pipeline_state.json

Verification commands run:

  • python3 scripts/test_reset_pipeline_state.py
  • bash -n scripts/nightly-pipeline-scheduler.sh
  • python3 -m py_compile scripts/reset_pipeline_state.py

Result:

  • reset script tests passed
  • scheduler shell syntax check passed
  • reset script compiled cleanly

Additional trail:

  • issue comment references closed PR #676 describing timestamp-based staleness logic
  • current main already contains the reset helper, scheduler integration, tests, and cron wiring

Recommendation: Close issue #650 as already implemented on main.