Files
kvitt/prompts/K2.md
T
jacobh2 b5114adc06 SPEC v0.35: card purchases via Enable Banking (D-158 to D-176), plans K0 to K3
Owner request and answers of 2026-10-24: each user connects their own SJ Prio
Mastercard through Enable Banking (restricted production, BankID); only the
card holder sees the purchases; a fourth bottom destination "Kortköp"
(revises D-048); "Anslut kort" in Settings with the card artwork; one- and
two-tap linking to household expenses; web as a later plan.

FR-22, §9.12 (CP-1 to CP-14), server schema 4 (migration 0004), Room 2,
E-36 to E-44, S-23 to S-27, W-21 to W-23, OQ-7, OQ-8. PLAN-K0 describes the
test app of 2ce317f and the remaining run and report; K1 server, K2 Android,
K3 web. HANDOFF and prompts/README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 11:49:14 +02:00

2.7 KiB
Raw Blame History

Start prompt: K2 Card purchases, Android

You are an Opus implementation agent on Kvitt (repository /Users/jhag/projects/kvitt), plan K2: card purchases, Android. You have no context other than this prompt and the files it names.

Read PLAN-K2.md and follow it; CLAUDE.md rules apply. SPEC.md wins over both (§9.12, FR-22, §13.2, §13.3 S-23 to S-27, §14.2.4 "Changes in v0.35").

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}} (Room version 2 is this plan's) If a value is still a {{…}} placeholder, write TODO(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-k2 -b agent-k2 main; work only there, on branch agent-k2; git reset --hard main. Then copy android/local.properties and android/app/google-services.json from the main checkout (never commit them). Stop and report if SPEC v0.36 is not on main. You may start before K1 lands; rebase on K1 before the gate.
  • Edit only the paths of PLAN-K2 §4 (android/feature/cards/** new; as a contract change android/core/model/**, android/domain/**, android/data/**, android/core/fakes/**; the named edits in :core:design, :feature:account, :feature:expense, :feature:settings, :app, android/settings.gradle.kts, android/gradle/libs.versions.toml; the card keys in docs/ux/strings.csv); anything else is a request to the orchestrator.
  • Gate: PATH=/opt/homebrew/opt/openjdk@25/bin:$PATH ../tools/gradle-serial.sh check in android/. Open every changed golden. Report only results you ran in this session.
  • Use the phone only if the orchestrator notes name you for it (one agent on the phone at a time); never clear or uninstall the real app's data; never log card content.
  • 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-K2.md §10: branch, head commit hash, gate result lines, goldens, strings added, proposed spec text and decisions, how the orchestrator notes were applied, HUMAN steps outstanding (worded for relay), requests to the orchestrator, open questions with section numbers.