forked from syntaxbullet/aurorabot
52 lines
1.6 KiB
Markdown
52 lines
1.6 KiB
Markdown
---
|
|
name: create-ticket
|
|
description: Create a ticket for a task that needs to be worked on.
|
|
---
|
|
|
|
# Skill: create-ticket
|
|
|
|
## Purpose
|
|
|
|
Decompose high-level objectives into "Atomic Tickets" to maximize development velocity and minimize cognitive overhead.
|
|
|
|
## Execution Rules
|
|
|
|
1. **Directory Check:** Scan `.agent/work/tickets/`. Determine sequence number `NNN`.
|
|
2. **Naming:** `.agent/work/tickets/NNN-brief-description.md`.
|
|
3. **The Atomic/Velocity Test:** - Max 3 files modified.
|
|
- Max 80 lines of logic.
|
|
- Must be verifiable via a single command or test suite.
|
|
- If it exceeds these, **split it.**
|
|
4. **Context Injection:** Include relevant code snippets or interface definitions directly in the ticket to prevent "context hunting."
|
|
5. **No Breaking Changes:** If a ticket changes a shared interface, it must include the refactor for consumers or be split into a "Transition" ticket.
|
|
|
|
## Ticket Template
|
|
|
|
### Context & Goal
|
|
|
|
[Why this matters + the specific problem it solves.]
|
|
|
|
### Dependencies
|
|
|
|
- [e.g., Ticket #NNN]
|
|
|
|
### Affected Files
|
|
|
|
- `path/to/file_A.ext`: [Specific change description]
|
|
- `path/to/file_B.ext`: [Specific change description]
|
|
|
|
### Technical Constraints & Strategy
|
|
|
|
- [e.g., Implementation: Use the existing X wrapper instead of a new fetch call.]
|
|
- [e.g., Constraint: Maintain backward compatibility with Y.]
|
|
|
|
### Definition of Done (Binary)
|
|
|
|
- [ ] Criterion 1 (e.g., `npm test` passes for `X.test.ts`)
|
|
- [ ] Criterion 2 (e.g., UI component renders without hydration errors)
|
|
- [ ] Criterion 3 (e.g., API response matches the schema in `types.ts`)
|
|
|
|
### New Test Files
|
|
|
|
- `path/to/test_A.ext`: [What is being tested]
|