docs: mandate plan-first, red-green TDD, and pre-commit UI validation

Make the three workflow expectations explicit, non-negotiable defaults:
always plan before execution, always use red-green TDD, and always
attempt manual UI validation before committing (skippable only when the
tooling is unavailable, and only with an explicit callout + handoff).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-13 15:32:35 -04:00
parent e5f571a63e
commit 0a0d00f53a

View File

@@ -79,10 +79,22 @@ docs/SWIFT_GUIDELINES.md Swift coding/testing/patterns/security standards
## Workflow expectations (user preference) ## Workflow expectations (user preference)
- **Red-green TDD**: update `docs/RULES_FEATURE_SPEC.md` first for behavior These three are non-negotiable defaults — follow them on every task, not only
changes, write the failing test, run it (compile failure counts as red), when reminded:
implement, re-run focused tests, then the full suite. Run tests often and
fail fast. - **Always plan before execution.** Think through and lay out the approach (a
written plan / plan mode for anything non-trivial) and confirm scope before
editing code. Do not start changing files until the plan is clear.
- **Always use red-green TDD.** Update `docs/RULES_FEATURE_SPEC.md` first for
behavior changes, write the failing test, run it (compile failure counts as
red), implement, re-run focused tests, then the full suite. Run tests often
and fail fast.
- **Always attempt to validate the UI manually before committing.** Build and
run the app (simulator/device) and visually confirm the change behaves as
intended. This step **may be skipped only when such tooling is unavailable**
(e.g. the Xcode MCP / a simulator is not reachable in the session) — in that
case, say so explicitly and hand the verification back to the user rather
than silently skipping it.
- Conventional commits (`feat:`, `fix:`, `refactor:` …). **Agent attribution is - Conventional commits (`feat:`, `fix:`, `refactor:` …). **Agent attribution is
required**: every commit an agent authors or co-authors must end with a required**: every commit an agent authors or co-authors must end with a
`Co-Authored-By:` trailer naming the specific agent/model that did the work, `Co-Authored-By:` trailer naming the specific agent/model that did the work,