WS-3 PR-C: doc-state reckoning + apps/portal sweep #7
Reference in New Issue
Block a user
Delete Branch "chore/ws-3-pr-c-doc-cleanup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Final cleanup of WS-3 (consolidation sprint, single-SPA migration). Addresses
TECH-DOCS-APPS-PORTAL-PURGEfrom BACKLOG.md with a per-file DELETE/REWRITE/KEEP_AND_PURGE matrix on 9 documents that referencedapps/portal/or pre-WS-3 dual-SPA framing, plus one out-of-scope finding from Phase A:.claude/hooks/post-edit-eslint.shstill scoped its eslint runs toapps/(app|portal).After this lands, WS-3 is officially complete and the next workstream is WS-7 (GlitchTip observability).
Commits
5d41327d82cf42451eab4bea66a52c4d225d33c1191437829Per-file matrix executed
dev-docs/SETUP.md.cursor/rules/101_vue.mdc.cursor/rules/102_multi_tenancy.mdcdev-docs/CLAUDE_CODE_TOOLING.md.claude/hooks/post-edit-eslint.sh$spavariable.cursor/instructions.md.cursor/ARCHITECTURE.mddev-docs/MASTER_PROMPT_CC.mddev-docs/MASTER_PROMPT_CURSOR.mddev-docs/dev-guide.mdTotal: ~80 KB of doc-rot removed.
Acceptance gates
vue-tsc --noEmit): clean, 0 errors ✓pnpm build): ✓ built in 14.27s,dist/produced ✓.vue,.php, empty): all exit 0 ✓Execution notes
Commit 5 required a manual edit. The
protect-files.shdeterministic guard-rail correctly blocked Claude Code from modifying.claude/. The script was hand-edited per spec; Claude Code then staged and committed. This validates the deterministic layer working as designed —.claude/self-modification protection holds.Commit 6 expanded scope to README.md. The Documentation table referenced files in non-existent paths (
resources/design/,docs/SETUP.mdetc. — correct paths aredev-docs/*). Rebuilt around the canonical files. Strictly the prompt only required removing rows for deleted files, but a coherent table is a better outcome than half-broken.Commit 7 used existing BACKLOG convention.
## Opgeloste items (mei 2026)section already existed at line 994. The original TECH-DOCS-APPS-PORTAL-PURGE entry was removed and replaced with a one-line strikethrough summary in that section, matching the surrounding style.Cross-references resolved during commit 6
Phase A grep found 5 external references to about-to-be-deleted files; all resolved cleanly:
README.mdlines 127–129 — Documentation table rebuiltdev-docs/CLAUDE_DESKTOP_SETUP.mdlines 114, 115, 118, 172 — exclusion-list entries dropped, "Gerelateerd" pointer updateddev-guide.md→SETUP.mddev-docs/ARCH-CONSOLIDATION-2026-04.mdline 7 — historical sprint-briefing pointer updateddev-docs/VIBE_CODING_CHECKLIST.mdline 43 — Dev guide row dropped from path-tabledev-docs/BACKLOG.mdlines 853–879 — original entry removed (replaced by closed-items one-liner in commit 7)Closes
TECH-DOCS-APPS-PORTAL-PURGE(BACKLOG.md)Surgical updates reflecting post-WS-3 single-SPA reality. The OrganisationScope rules, three-level authorization, and invitation flow are unchanged — they're still the canonical guidance. Changes: - globs: drop apps/portal/**/*.{vue,ts} - Portal Architecture: "two access modes in apps/portal/" -> "two access modes under /portal/* routes within apps/app/" - Token flow URL example: portal.crewli.app -> crewli.app/portal/ with note about 301 redirect from legacy host - Login flow URL: portal.crewli.app -> crewli.app - CORS allowed_origins: drop FRONTEND_PORTAL_URL line - Production example: collapse dual-host to single-host with pointer to AUTH_ARCHITECTURE.md §11 for the legacy env key