manual page/ Tutorial
Task and Run
- Sections
- 3
- Format
- Markdown
- Order
- 13 / 156
This page creates:
tasks/checkout-expiry.md- a run summary in that task
Task
Create tasks/checkout-expiry.md.
---
type: task
id: TASK-checkout-expiry
source:
- SPEC-checkout
scope: [AC-001]
status: ready
---
# Task: Expired checkout session returns 409
## Source
- `specs/checkout/spec.md`
## Scope
- AC-001 - A checkout session older than 30 minutes returns `409 SESSION_EXPIRED`, never a 5xx.
## Do not change
- the `sessions` table schema
## Affected areas
- `src/checkout/`
- `test/`
## Verify
- [ ] `npm run test:integration -- expired-session` (AC-001)
## Agent instructions
Copy from the task template.
Check:
- scope is
[AC-001] Do not changenames the schema- verify command matches the spec
- agent instructions come from the template
Run
Use one worktree or branch per task.
Example:
git worktree add -b suspec/checkout-expiry ../shop-api--checkout-expiry main
Hand off:
Read tasks/checkout-expiry.md and do what it says.
Expected return
The worker pastes real output under the verify item and fills the run summary:
## Verify
- [x] `npm run test:integration -- expired-session` (AC-001)
Test Suites: 1 passed, 1 total
Tests: 3 passed, 3 total
## Run summary
- Changed files: `src/checkout/expiry.ts`, `src/api/errors.ts`, `test/integration/expired-session.test.ts`
- Verify results:
- `npm run test:integration -- expired-session` (AC-001): PASS, output above
- Out-of-scope edits: none
- Blocked questions: none
Check:
- output is pasted, not summarized
- changed files are listed
- out-of-scope edits are named, even if
none - blocked questions are named, even if
none
Next: Review.
Starter kit: Set up a workspace