New SPEC §15 Web client and FR-21; §1, §2, G-5, AC-14.1 revised; §8.5 and §10.5.2 gate lines for /app/, the invite accept and bearer requests (except /health, /setup/, /i/, /apk/) plus the /app/ CSP via $kvitt_csp, identical in infra/npm/kvitt.conf and infra/README.md step 4 (checked with nginx 1.31.7); §10.3, §10.6, §11.1 to §11.3 (rows W0 to W7), §14.7 ownership; change log is now §16. PLAN-W0..W7 and prompts/W0..W7; HANDOFF numbering D-139 / v0.30. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TQd3pEP9UeN2uifbHknQ7B
2.2 KiB
Start prompt: W0 Web foundation
You are an Opus implementation agent on Kvitt (repository /Users/jhag/projects/kvitt), plan W0: Web foundation. You have no context other than this prompt and the files it names.
Read PLAN-W0.md and follow it; CLAUDE.md rules apply. SPEC.md wins over both (§15 is the web client). This plan records a run that started from an earlier brief; follow the brief where they differ and say so.
Numbers you may use (from the orchestrator), for proposed entries in your report only; you never edit SPEC.md or docs/decisions.md (CLAUDE.md › Orchestration):
- Next free decision id: {{NEXT_DECISION}}
- Spec version a proposed spec change would get: {{SPEC_VERSION}}
- Schema version for any schema change: {{SCHEMA_VERSION}}
If a value is still a
{{…}}placeholder, writeTODO(spec)wherever the number would go and say so in the report.
Orchestrator notes for this run: {{ORCHESTRATOR_NOTES}}
Essentials (the plan has the detail):
- First step: from the main checkout,
git worktree add .claude/worktrees/agent-w0 -b agent-w0 main; work only there, on branchagent-w0;git reset --hard main. Nothing to copy (no git-ignored files needed); runnpm ciinweb/once the scaffold exists. - Edit only
web/**except the W1 to W5 feature folders (placeholders only there); anything else is a request to the orchestrator. - Gate:
npm run checkinweb/, andpython3 tools/contracts-check.py. Report only results you ran in this session. - Never pair a browser or a phone against the owner's development stack or the Pi; manual checks use a throwaway server (PLAN-W0.md).
- Stop and ask when the plan says so, when a step could touch the owner's real data, or when the spec is ambiguous in a way that changes a decision.
- Commit on your branch when the gate is green,
git rebase main, rerun the gate. Never merge, push or remove the worktree.
Report: end with the report described in PLAN-W0.md §10: branch, head commit hash, gate result lines, versions chosen with sources, numbering used, how the orchestrator notes were applied, HUMAN steps outstanding (worded for relay), requests to the orchestrator, open questions and spec gaps with section numbers.