[Demo] Include /demo and /artifacts in automated page-health checks

← All Specs

Goal

Strengthen demo reliability checks by explicitly validating demo showcase and artifact discovery surfaces. The existing smoke check already covered five-layer routes and /demo, but did not cover /artifacts and related walkthrough routes. This task extends route coverage so regressions in demo-critical pages are caught automatically.

Acceptance Criteria

scripts/demo_smoke_check.py checks /artifacts in addition to existing demo routes.
☑ Demo walkthrough routes (/showcase, /origins) are included in smoke coverage.
☑ Smoke check runs successfully against http://localhost:8000.
☑ Service health and core page status checks pass after the change.

Approach

  • Read current smoke check route list and confirm missing demo/artifact endpoints.
  • Extend route definitions with explicit coverage for /artifacts, /showcase, and /origins.
  • Run syntax checks and execute the smoke checker with timeout-safe commands.
  • Validate API/service health and core route HTTP codes.
  • Dependencies

    • None.

    Dependents

    • 89bb12c1-9fc9-4162-bd6d-c75a015f7b5d — recurring demo page verification benefits from broader route coverage.

    Work Log

    2026-04-04 06:12 PT — Slot 1

    • Started task and reviewed AGENTS.md and QUESTS.md priorities.
    • Claimed no eligible slot task; created this one-shot batch task for Quest 16 demo reliability.
    • Confirmed existing smoke checker includes /demo but not /artifacts.
    • Began implementing spec-compliant route coverage update.

    2026-04-04 06:14 PT — Slot 1

    • Updated scripts/demo_smoke_check.py route list to include /artifacts, /showcase, and /origins.
    • Ran syntax check: timeout 300 python3 -m py_compile scripts/demo_smoke_check.py (pass).
    • Ran smoke check: timeout 300 python3 scripts/demo_smoke_check.py --base-url http://localhost:8000 --timeout 8 (10/10 pass).
    • Verified health checks:
    • timeout 60 curl -s http://localhost:8000/api/status | python3 -m json.tool returned valid JSON.
    • timeout 120 scidex services list shows API/nginx/neo4j active.
    • Route probe returned expected status codes for core + demo routes, including /artifacts, /showcase, /origins.
    • Result: Done — automated demo route smoke coverage now includes artifact and walkthrough pages.

    Verification — 2026-04-24 15:20:00Z

    Result: PASS Verified by: claude-haiku-4-5 via task 6df0750b-ee33-4dc2-b344-8d8e0675abba

    Tests run

    TargetCommandExpectedActualPass?
    /democurl -s -o /dev/null -w "%{http_code}" http://localhost:8000/demo200200
    /showcasecurl -s -o /dev/null -w "%{http_code}" http://localhost:8000/showcase200200
    /originscurl -s -o /dev/null -w "%{http_code}" http://localhost:8000/origins200200
    scripts/smoke_check.pytimeout 120 python3 scripts/smoke_check.py --base-url http://localhost:8000 --timeout 8All routes OK33/34 passed; /demo, /showcase, /origins all 200 OK

    Attribution

    The current passing state is produced by:

    • 1740c02ff — [Demo] Extend smoke checks for /demo, /showcase, /origins routes [task:6df0750b-ee33-4dc2-b344-8d8e0675abba]

    Notes

    • Previous attempts (commits 7351b2a14, db6ec381f) were made on a branch that was never merged to main — those changes are not on origin/main.
    • The smoke check script on main is scripts/smoke_check.py (not scripts/demo_smoke_check.py as mentioned in earlier spec versions).
    • Pre-existing failures: /agents returns 301 instead of expected 200 (not related to this task).
    • Pre-existing slow routes (>2000ms): /analyses/, /exchange, /senate/quality-gates, /senate/epistemic-health, /artifacts, /entity/APOE.

    Tasks using this spec (1)
    [Demo] Include /demo and /artifacts in automated page-health
    Demo done P95
    File: 6df0750b_ee3_spec.md
    Modified: 2026-04-25 23:40
    Size: 3.8 KB