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
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:
85
.gitea/issue_template/bug.yaml
Normal file
85
.gitea/issue_template/bug.yaml
Normal 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
|
||||||
70
.gitea/issue_template/chore.yaml
Normal file
70
.gitea/issue_template/chore.yaml
Normal 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
|
||||||
109
.gitea/issue_template/feature.yaml
Normal file
109
.gitea/issue_template/feature.yaml
Normal 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
|
||||||
Reference in New Issue
Block a user