specwright/templates/skills/architect-refinement/SKILL.md
Software Architect technical refinement and DoR/DoD for [PROJECT_NAME]
npx skillsauth add michsindlinger/specwright specwright/templates/skills/architect-refinementInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Project: [PROJECT_NAME] Generated: [DATE] Purpose: Guide for technical refinement of user stories
This skill guides you when doing technical refinement for:
/create-spec/add-story/add-todo/add-bugThe canonical story format is defined in specwright/templates/docs/story-template.md
(Fallback: ~/.specwright/templates/docs/story-template.md).
This template is binding. Do not improvise story structure.
This skill provides methodology (how to think about WAS/WIE/WO, when a story is READY, how to classify layers) and project-specific architecture guidance. It does not define the story file layout — the template does.
When creating or refining stories:
story-template.md first → use its section structure (headings, field names, ordering).**WAS:**, **WIE:**, **WO:** fields using the methodology from this skill.The conceptual sections below (### WAS, ### WIE, ### WO) are this skill's own structure for
teaching the methodology — they are not a story-format prescription.
Components/Features to create or modify - NO CODE
Examples:
Anti-patterns:
❌ "Add function validateEmail()" // Too specific
✅ "Email validation logic"
❌ "Create UserController with create(), update() methods" // Implementation details
✅ "User API endpoints"
Patterns and constraints - NO IMPLEMENTATION
Examples:
Anti-patterns:
❌ "def create_user(params)..." // Code implementation
✅ "Use Service Object pattern for business logic"
❌ "Add try-catch in line 45" // Too specific
✅ "Implement error handling with custom exceptions"
File paths to create or modify - NO CONTENT
Examples:
Guidelines:
NEW in v3.0: Stories can reference domain areas
**Domain:** user-registration
This tells the main agent:
Identify all affected layers:
| Layer | Components | What Changes | |-------|------------|--------------| | Frontend | ProfileForm, Avatar component | New edit form, image upload | | Backend | UserService, ProfileController | Update endpoint, validation | | Database | users table | Add avatar_url column | | DevOps | - | No changes |
Integration Type:
Critical Integration Points (if Full-stack):
Start all items unchecked [ ]
Standard DoD items:
#### Implementierung
- [ ] Code implemented and follows style guide
- [ ] Architecture patterns followed (WIE section)
- [ ] Security/performance requirements met
#### Qualitätssicherung
- [ ] All acceptance criteria satisfied
- [ ] Unit tests written and passing
- [ ] Integration tests written (if applicable)
- [ ] Linter passes
#### Dokumentation
- [ ] Code is self-documenting or has comments
- [ ] No debug code left in
Add story-specific items based on requirements.
Provide bash commands to verify story completion:
# File existence
test -f src/app/components/profile/edit.component.ts && echo "Component OK"
# Content verification
grep -q "export class ProfileEditComponent" src/app/components/profile/edit.component.ts && echo "Class OK"
# Tests pass
npm test -- profile.component.spec.ts
# Linter
npm run lint
All commands must exit with code 0 for story to be DONE.
Frontend:
Backend:
API:
Database:
Split story if:
Hard Dependency (Sequential):
Story A → Story B
Example: "User model" before "User registration"
Soft Dependency (Optional):
Story A ⇢ Story B (better if A done first)
Example: "Basic search" before "Advanced filters"
No Dependency (Parallel):
Story A ∥ Story B
Example: "Profile edit" and "Avatar upload" can be parallel
**Abhängigkeiten:** STORY-001, STORY-003
Or if none:
**Abhängigkeiten:** None
REMOVED in v3.0:
ADDED in v3.0:
Why:
Story structure, field names, and ordering are defined in specwright/templates/docs/story-template.md
(see "Story Format" section at the top of this skill). Follow the template exactly — do not paraphrase
the field names or change the section structure.
[ARCHITECTURE_PATTERNS]
[PROJECT_STRUCTURE]
[NAMING_CONVENTIONS]
For full DoD criteria see: specwright/team/dod.md
For full DoR criteria see: specwright/team/dor.md
tools
Session Handoff: Erstellt eine vollständige Zusammenfassung der aktuellen Session für einen sauberen Kontextwechsel. NUR bei explizitem Aufruf (/session-handoff). NICHT automatisch auslösen. Geeignet wenn der User die Session resetten will, den Kontext aufräumen will, oder bei ~120k Tokens angelangt ist.
development
Pre-Mortem Risk Analysis: Strukturierte Prospective-Hindsight-Übung um launch-blocking Risiken vor Commitment aufzudecken. Team stellt sich vor, das Produkt sei 14 Tage nach Launch gefloppt, und arbeitet rückwärts. Klassifiziert Risiken in Tigers (echt), Paper Tigers (hypothetisch), Elephants (unausgesprochen). Nutze diesen Skill vor Build-Commitment, bei zu hoher Stakeholder-Confidence, vor Major-Releases, oder wenn das Team vage Sorgen nicht artikulieren kann. Trigger: /pre-mortem, 'pre-mortem', 'risk analysis', 'was könnte schiefgehen', 'risiken vor launch'.
testing
Six-Sigma Atomicity Validator for create-spec stories
tools
UX pattern definition guidance for navigation, user flows, interactions, and accessibility