|
| 1 | +# [Feature Name] Feature |
| 2 | + |
| 3 | +## Preamble |
| 4 | + |
| 5 | +Generate a new feature that implements [scope description], namely the **[feature name]**. This feature should be implemented across the following architectural components: |
| 6 | + |
| 7 | +* API/Controller Layer |
| 8 | +* Domain/Service Layer |
| 9 | +* Repository/Data Access Layer |
| 10 | +* Infrastructure Components |
| 11 | +* Cross-cutting Concerns (logging, error handling, etc.) |
| 12 | + |
| 13 | +Do NOT implement business logic in the controller layer or mix concerns across layers! |
| 14 | + |
| 15 | +The implementation should follow existing patterns in the codebase and integrate with the current architecture. |
| 16 | + |
| 17 | +## Technical Requirements |
| 18 | + |
| 19 | +* API Specification (endpoints, request/response models) |
| 20 | +* Data Models and DTOs |
| 21 | +* Service Interfaces |
| 22 | +* Error Handling Cases |
| 23 | +* Performance Considerations |
| 24 | +* Security Requirements |
| 25 | + |
| 26 | +## AI Guidelines |
| 27 | + |
| 28 | +* follow the Kotlin style guide rules @kotlin-rules.md |
| 29 | +* follow the Testing rules @testing-rules.md |
| 30 | +* follow the DDD guideline rules @ddd-rules.md |
| 31 | +* follow the Hexagonal Architecture rules @hexagonal-architecture-rules.md |
| 32 | + |
| 33 | +## Infrastructure Considerations |
| 34 | + |
| 35 | +* Required External Services/Dependencies |
| 36 | +* Configuration Requirements |
| 37 | +* Deployment Considerations |
| 38 | +* Monitoring/Observability Requirements |
| 39 | +* Cache Strategy (if applicable) |
| 40 | +* Rate Limiting Requirements (if applicable) |
| 41 | + |
| 42 | +## Error Scenarios |
| 43 | + |
| 44 | +* Invalid Input Handling |
| 45 | +* External Service Failures |
| 46 | +* Resource Not Found Cases |
| 47 | +* Authorization Failures |
| 48 | +* Rate Limit Exceeded |
| 49 | +* System Resource Constraints |
| 50 | + |
| 51 | +## Gherkin Scenarios |
| 52 | + |
| 53 | +```gherkin |
| 54 | +Feature: [Feature Name] |
| 55 | + Scenario: Successful Operation |
| 56 | + Given [precondition] |
| 57 | + When [action] |
| 58 | + Then [expected outcome] |
| 59 | +
|
| 60 | + Scenario: Invalid Request |
| 61 | + Given [precondition] |
| 62 | + When [action] |
| 63 | + Then [expected error response] |
| 64 | +
|
| 65 | + Scenario: Resource Not Found |
| 66 | + Given [precondition] |
| 67 | + When [action] |
| 68 | + Then [expected error response] |
| 69 | +
|
| 70 | + Scenario: Authorization Failure |
| 71 | + Given [precondition] |
| 72 | + When [action] |
| 73 | + Then [expected error response] |
| 74 | +``` |
| 75 | + |
| 76 | +## Testing Requirements |
| 77 | + |
| 78 | +* Unit Tests Coverage |
| 79 | +* Integration Tests Scope |
| 80 | +* Acceptance Tests Scope |
| 81 | +* Mock/Stub Requirements |
| 82 | +* Supporting Test Containers |
| 83 | +* Test Container Integration |
| 84 | +* Test Data Setup |
| 85 | + |
| 86 | +## Acceptance Criteria |
| 87 | + |
| 88 | +* API Contract Compliance |
| 89 | +* Error Handling Requirements |
| 90 | +* Performance Thresholds |
| 91 | +* Security Requirements |
| 92 | +* Documentation Requirements |
| 93 | +* Monitoring/Logging Requirements |
0 commit comments