chore: add issue templates with integration criteria (refs #2)
All checks were successful
Deploy to Staging / Build Images (pull_request) Successful in 22s
Deploy to Staging / Deploy to Staging (pull_request) Successful in 27s
Deploy to Staging / Verify Staging (pull_request) Successful in 6s
Deploy to Staging / Notify Staging Ready (pull_request) Successful in 5s
Deploy to Staging / Notify Staging Failure (pull_request) Has been skipped

Adds Gitea issue templates to prevent missed integration points:
- feature.yaml: Includes Integration Criteria section for navigation,
  routing, and state management requirements
- bug.yaml: Structured bug reporting with platform selection
- chore.yaml: Technical debt and maintenance tasks

The Integration Criteria section ensures features specify:
- Desktop sidebar / mobile nav placement
- Route paths and default landing page
- Mobile screen type in navigation store

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Eric Gullickson
2026-01-02 21:45:08 -06:00
parent 82ad407697
commit 7c8c80b6f4
3 changed files with 264 additions and 0 deletions

View File

@@ -0,0 +1,109 @@
name: Feature Request
about: Propose a new feature for MotoVaultPro
title: "[Feature]: "
labels:
- type/feature
- status/backlog
body:
- type: markdown
attributes:
value: |
## Feature Request
Use this template to propose new features. Be specific about requirements and integration points.
- type: textarea
id: problem
attributes:
label: Problem / User Need
description: What problem does this feature solve? Who needs it and why?
placeholder: "As a [user type], I want to [goal] so that [benefit]..."
validations:
required: true
- type: textarea
id: solution
attributes:
label: Proposed Solution
description: Describe the feature and how it should work
placeholder: "When the user does X, the system should Y..."
validations:
required: true
- type: textarea
id: non-goals
attributes:
label: Non-goals / Out of Scope
description: What is explicitly NOT part of this feature?
placeholder: |
- Advanced analytics (future enhancement)
- Data export functionality
- etc.
validations:
required: false
- type: textarea
id: acceptance-criteria
attributes:
label: Acceptance Criteria (Feature Behavior)
description: What must be true for this feature to be complete?
placeholder: |
- [ ] User can see X
- [ ] System displays Y when Z
- [ ] Works on mobile viewport (320px) with touch-friendly targets
- [ ] Works on desktop viewport (1920px) with keyboard navigation
validations:
required: true
- type: textarea
id: integration-criteria
attributes:
label: Integration Criteria (App Flow)
description: How does this feature integrate into the app? This prevents missed navigation/routing.
value: |
### Navigation
- [ ] Desktop sidebar: [not needed / add as item #X / replace existing]
- [ ] Mobile bottom nav: [not needed / add to left/right items]
- [ ] Mobile hamburger menu: [not needed / add to menu items]
### Routing
- [ ] Desktop route path: `/garage/[feature-name]`
- [ ] Is this the default landing page after login? [yes / no]
- [ ] Replaces existing placeholder/route: [none / specify what]
### State Management
- [ ] Mobile screen type needed in navigation store? [yes / no]
- [ ] New Zustand store needed? [yes / no]
validations:
required: true
- type: textarea
id: implementation-notes
attributes:
label: Implementation Notes
description: Technical hints, existing patterns to follow, files to modify
placeholder: |
- Current placeholder: frontend/src/App.tsx lines X-Y
- Create new feature directory: frontend/src/features/[name]/
- Backend APIs already exist for X, Y, Z
- Follow pattern in: frontend/src/features/vehicles/
validations:
required: false
- type: textarea
id: test-plan
attributes:
label: Test Plan
description: How will this feature be tested?
placeholder: |
**Unit tests:**
- Component tests for X, Y, Z
**Integration tests:**
- Test data fetching with mocked API responses
**Manual testing:**
- Verify mobile layout at 320px, 768px viewports
- Verify desktop layout at 1920px viewport
- Test with 0 items, 1 item, 10+ items
validations:
required: false