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,85 @@
name: Bug Report
about: Report a bug or unexpected behavior
title: "[Bug]: "
labels:
- type/bug
- status/backlog
body:
- type: markdown
attributes:
value: |
## Bug Report
Use this template to report bugs. Provide as much detail as possible to help reproduce the issue.
- type: dropdown
id: platform
attributes:
label: Platform
description: Where did you encounter this bug?
options:
- Mobile (iOS)
- Mobile (Android)
- Desktop (Chrome)
- Desktop (Firefox)
- Desktop (Safari)
- Desktop (Edge)
- Multiple platforms
validations:
required: true
- type: textarea
id: description
attributes:
label: Bug Description
description: What went wrong? Be specific.
placeholder: "When I click X, I expected Y to happen, but instead Z happened."
validations:
required: true
- type: textarea
id: steps
attributes:
label: Steps to Reproduce
description: How can we reproduce this bug?
placeholder: |
1. Navigate to '...'
2. Click on '...'
3. Scroll down to '...'
4. See error
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected Behavior
description: What should have happened?
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual Behavior
description: What actually happened?
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional Context
description: Screenshots, error messages, console logs, etc.
validations:
required: false
- type: textarea
id: fix-hints
attributes:
label: Fix Hints (if known)
description: Any ideas on what might be causing this or how to fix it?
placeholder: |
- Might be related to: [file or component]
- Similar issue in: [other feature]
validations:
required: false

View File

@@ -0,0 +1,70 @@
name: Chore / Maintenance
about: Technical debt, refactoring, dependency updates, infrastructure
title: "[Chore]: "
labels:
- type/chore
- status/backlog
body:
- type: markdown
attributes:
value: |
## Chore / Maintenance Task
Use this template for technical debt, refactoring, dependency updates, or infrastructure work.
- type: dropdown
id: category
attributes:
label: Category
description: What type of chore is this?
options:
- Refactoring
- Dependency update
- Performance optimization
- Technical debt cleanup
- Infrastructure / DevOps
- Testing improvements
- Documentation
- Other
validations:
required: true
- type: textarea
id: description
attributes:
label: Description
description: What needs to be done and why?
placeholder: "We need to refactor X because Y..."
validations:
required: true
- type: textarea
id: scope
attributes:
label: Scope / Files Affected
description: What parts of the codebase will be touched?
placeholder: |
- frontend/src/features/[name]/
- backend/src/features/[name]/
- docker-compose.yml
validations:
required: false
- type: textarea
id: acceptance
attributes:
label: Definition of Done
description: How do we know this is complete?
placeholder: |
- [ ] All tests pass
- [ ] No new linting errors
- [ ] Performance benchmark improved by X%
validations:
required: true
- type: textarea
id: risks
attributes:
label: Risks / Breaking Changes
description: Any potential issues or breaking changes to be aware of?
validations:
required: false

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