Jump to a stage
The nine-stage engineering loop.
Specify → Checkpoint → Analyse → Plan → Implement → Verify → Review diff → Test → Commit. Progress is stored only in this browser.
Specify
Objective
Turn the request into observable acceptance criteria.
Why it matters
A concrete specification prevents guesses about scope and failure behavior.
Improve the project navigation on small screens.
Inspect the current header, styles, scripts and applicable AGENTS.md first.
Requirements: usable at 375–1920 CSS px, keyboard operable, visible focus,
Escape closes the menu, focus returns to the opener, no page overflow.
Preserve existing routes, search and desktop behavior. Add no dependencies.
Identify affected files and propose bounded steps before implementing.
Verify the controls in a browser and report viewport coverage and failures.Completion evidence
Inputs, outputs, boundaries and at least one error case are written down.
Checkpoint
Objective
Preserve valuable work before significant edits.
Why it matters
A reviewed commit records selected files; a branch alone does not save uncommitted changes.
cd "$HOME/Projects/my-project"
git status
git branch --show-current
git log --oneline -5
git diff
git diff --stagedCompletion evidence
Existing changes are understood and preserved; intended checkpoint files were reviewed and committed where appropriate.
Analyse
Objective
Inspect the repository and evidence.
Why it matters
The first plausible diagnosis may be wrong; trace definitions, callers and tests.
Inspect applicable instructions, manifests, relevant source and tests. Identify the root cause or implementation boundary. Cite files. Do not edit during this investigation.Completion evidence
The proposed change is grounded in the current implementation.
Plan
Objective
Choose a bounded implementation and its checks.
Why it matters
A short plan exposes dependency changes and migrations before they become expensive.
List the files to change, behavior to preserve and verification to run. Resolve material ambiguities. Continue within the authorized scope; seek a decision for changes outside it.Completion evidence
The plan matches the requirements and authorized scope.
Implement
Objective
Make incremental, focused changes.
Why it matters
Small coherent changes are easier to verify and review.
Implement the agreed behavior using existing conventions. Preserve unrelated user work. Add meaningful regression coverage where appropriate and avoid unrelated cleanup.Completion evidence
The requested behavior is implemented in the intended files.
Verify
Objective
Run the applicable automated checks.
Why it matters
Actual output distinguishes a working implementation from an untested assertion.
Inspect the declared checks. Run the relevant lint, type, unit, integration and build commands. Record exit codes, fix introduced regressions and disclose pre-existing failures.Completion evidence
Relevant checks passed or blockers are explicitly recorded; blocked checks do not count as passes.
Review diff
Objective
Inspect both unstaged and staged changes.
Why it matters
A passing test suite may miss unrelated deletions, secrets or generated noise.
git status --short
git diff --check
git diff
git diff --stagedCompletion evidence
All changed and untracked files have been reviewed; the staged snapshot contains only intended work.
Test
Objective
Exercise real use and failure cases.
Why it matters
Runtime behavior, responsive layouts and platform integration need direct verification.
Exercise the original scenario and nearby negative cases. Test relevant browsers, viewport sizes and Mac architecture targets. Report which environments were actually used.Completion evidence
Manual behavior matches the specification and untested targets are documented.
Commit
Objective
Record the reviewed result.
Why it matters
A coherent commit preserves verified work for review, release and recovery.
git add -- index.html assets/css/app.css
git diff --staged
git commit -m "feat: improve responsive navigation"
git statusCompletion evidence
The selected changes are committed. Push or publish only to the intended destination within the agreed scope.