Phase 10: regression bench, hardening, archive location, native VM kit, go-live docs #55

Merged
spencerm merged 10 commits from phase-10 into main 2026-11-03 21:16:19 +00:00
10 Commits
Author SHA1 Message Date
spencermandClaude Opus 5.5 1cf37d94e7 Fix: hand upload and rev approval lines name the person, not the user id; PLAN questions 53, 54 and the phase 10 note
ci / frontend (pull_request) Successful in 56s
ci / server (pull_request) Successful in 13m10s
ci / image (pull_request) Skipped
ci / e2e (pull_request) Successful in 5m51s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:18:41 -06:00
spencermandClaude Opus 5.5 a5246e2aa5 Regression bench: the old build's 38 scenarios mapped in tests/e2e/BENCH.md, 20 new Playwright tests, CSP-violation guard on every test
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:17:19 -06:00
spencermandClaude Opus 5.5 c52edfa9b1 README and CHANGELOG for phase 10
ci / frontend (pull_request) Successful in 57s
ci / server (pull_request) Successful in 13m12s
ci / image (pull_request) Skipped
ci / e2e (pull_request) Failing after 23s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:09:38 -06:00
spencermandClaude Opus 5.5 fce4528cdd Env examples: SITE_ID=PESCO, MFILES_CA_BUNDLE left unset; CLAUDE.md and the NPM notes point at the VM kit
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:09:06 -06:00
spencermandClaude Opus 5.5 45a1d1a42a Native VM install kit: systemd units, launcher, install and upgrade scripts; backups, restore and doctor without docker exec; DEPLOY.md VM, NPM and NFS sections
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:08:48 -06:00
spencermandClaude Opus 5.5 f025479358 Docs: Admin file-locations routes in POLICY.md, open question 53 (archive copy never blocks filing), ARCHIVE_ROOT in the env examples
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:50:29 -06:00
spencermandClaude Opus 5.5 cb00ea7c5c Docs: SECURITY.md rewritten around the ID table, GO-LIVE.md with incident notes, PAPER-FALLBACK.md
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:50:05 -06:00
spencermandClaude Opus 5.5 6e820ba0a5 Version banner, File locations section, final CSP (no unsafe-inline styles, frame-src none, object-src none)
The MTR viewer draws PDFs with pdf.js instead of an iframe the server's frame-ancestors refused.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:50:05 -06:00
spencermandClaude Opus 5.5 da31b0a87a Archive location (Gitea issue 7): ARCHIVE_ROOT, Admin file-locations API, archive-copy job, doctor check
A filed packet's sealed data book, documents and a manifest are copied to the archive folder by the worker.
A failed copy never blocks filing: it is retried with backoff and raises the archive_failed condition.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:50:04 -06:00
spencermandClaude Opus 5.5 3fdf063b70 Bump pypdf 6.21.4, certifi 2026.10.23, pyasn1 0.6.5 for pip-audit findings
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:31:58 -06:00