coulomb-social/workplans/CSOC-WP-0009-usecase-regression-infrastructure.md
tegwick a1989f19db
Some checks failed
Use-case regression gate / usecase-regressions (push) Failing after 6m2s
Establish use-case regression collection and real browser gate
Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a10e2d-a5ef-7e92-b03d-b1694e915680
2026-10-06 14:02:01 +02:00

4.1 KiB

id type title domain repo status owner topic_slug created updated related state_hub_workstream_id
CSOC-WP-0009 workplan Established use-case collection and executable regression gate communication coulomb-social finished codex coulomb-social 2026-10-06 2026-10-06
CSOC-WP-0008
d9ad740d-82a9-5130-b7da-29901542409a

CSOC-WP-0009 — Keep established use cases working

Milestone: every established journey has a versioned behavior contract and a repeatable regression check. Starting with ReichelAg weekly protocols, a change that breaks duplication, manual editing, clipboard export or access fails the required local/CI check. Automated success never grants productive-transfer acceptance in place of the user.

T01 — Establish the collection and coverage contract

id: CSOC-WP-0009-T01
status: done
priority: high
state_hub_task_id: "8aaf65d3-9931-52a1-8b2c-63888316abf8"

Machine registry links stable UC IDs to narrative, synthetic scenario fixtures, mandatory fast and browser test node IDs, user-confirmation and transfer status. Validate registry and collected tests; an established case cannot lose coverage silently. Document how candidate → confirmed → regression-protected → user accepted records are maintained without conflating those dimensions.

T02 — Exercise ReichelAg through the actual browser UI

id: CSOC-WP-0009-T02
status: done
priority: high
state_hub_task_id: "40ef120b-eccf-5350-a905-af45a6e38ab8"

Isolated Django test DB and temporary CONTENT_ROOT, synthetic actors and protocols. Playwright drives real login/list/detail/duplicate/edit/save/reopen/copy screens; verify full-copy/source independence, payload formatting, manual fallback, reader edit denial and outsider isolation. Serve the real static script. No production hosts, real notes, issuer, outgoing mail or private credentials.

T03 — Make the regression gate reproducible

id: CSOC-WP-0009-T03
status: done
priority: high
state_hub_task_id: "d950b4d6-faf4-5e95-8679-35e887dfa01f"

One make check command runs full application and use-case/browser checks and writes JUnit reports. Provide fast/browser targets and locked Node dependencies, bootstrap instructions and CI integration. Missing browser/dependencies must fail the required gate; default fast tests may explicitly deselect browser tests. CI activation depends on actual Forgejo runner admission; do not claim a remote run from local tests alone.

T04 — Verify and sync

id: CSOC-WP-0009-T04
status: done
priority: high
state_hub_task_id: "7aa0b568-c385-551b-b3e4-b43b3ce6e7f3"

Run required gate, changed-file lint and coverage validation. Prove a missing mandatory test is rejected. Document receipts, file any CI admission residual as a live record, finish this infrastructure workplan, log, commit and sync.

Implementation evidence

  • Registry, fixture and stable fast/browser test mappings established for UC-008.
  • Actual Django screens/static script exercised by Chromium against isolated synthetic data. Full gate: 88 passed; changed Python files pass Ruff.
  • Omitted browser test collection deliberately rejected with pytest exit 4 and a missing registered browser-test error; not silently skipped.
  • Locked Playwright dependencies, setup targets, JUnit reports and Forgejo main/PR/manual workflow configured. Source archive read checked HTTP 200.
  • Remote runner receipt, report retention and required merge-check enforcement handed off before completion as CSOC-IN-0005, origin residual WP-0009.
  • Productive transfer/live deployment/private protocol review remain WP-0008; this infrastructure does not grant user acceptance.

Completion

Required gate rerun after final browser permission checks: 88 passed; JUnit reports show zero failures/errors. Reader clipboard copying succeeds while a valid-CSRF reader POST is rejected as read-only. User-case coverage-loss probe returned exit 4 as expected. AGENTS.md now requires make check for established behavior changes. CSOC-IN-0005 is already registered as the remote CI enforcement residual. All local infrastructure tasks complete; no production change made.