mirror of
https://github.com/leonvanzyl/autocoder.git
synced 2026-02-01 15:03:36 +00:00
fix skipping rules
This commit is contained in:
@@ -81,6 +81,19 @@ For example, if this were a chat app, you should perform a test that logs into t
|
|||||||
|
|
||||||
### STEP 4: CHOOSE ONE FEATURE TO IMPLEMENT
|
### STEP 4: CHOOSE ONE FEATURE TO IMPLEMENT
|
||||||
|
|
||||||
|
#### TEST-DRIVEN DEVELOPMENT MINDSET (CRITICAL)
|
||||||
|
|
||||||
|
Features are **test cases** that drive development. This is test-driven development:
|
||||||
|
|
||||||
|
- **If you can't test a feature because functionality doesn't exist → BUILD IT**
|
||||||
|
- You are responsible for implementing ALL required functionality
|
||||||
|
- Never assume another process will build it later
|
||||||
|
- "Missing functionality" is NOT a blocker - it's your job to create it
|
||||||
|
|
||||||
|
**Example:** Feature says "User can filter flashcards by difficulty level"
|
||||||
|
- WRONG: "Flashcard page doesn't exist yet" → skip feature
|
||||||
|
- RIGHT: "Flashcard page doesn't exist yet" → build flashcard page → implement filter → test feature
|
||||||
|
|
||||||
Get the next feature to implement:
|
Get the next feature to implement:
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -98,24 +111,34 @@ Use the feature_mark_in_progress tool with feature_id=42
|
|||||||
Focus on completing one feature perfectly and completing its testing steps in this session before moving on to other features.
|
Focus on completing one feature perfectly and completing its testing steps in this session before moving on to other features.
|
||||||
It's ok if you only complete one feature in this session, as there will be more sessions later that continue to make progress.
|
It's ok if you only complete one feature in this session, as there will be more sessions later that continue to make progress.
|
||||||
|
|
||||||
#### If You Cannot Implement the Feature
|
#### When to Skip a Feature (EXTREMELY RARE)
|
||||||
|
|
||||||
Sometimes a feature cannot be implemented yet. Valid reasons to skip:
|
**Skipping should almost NEVER happen.** Only skip for truly external blockers you cannot control:
|
||||||
|
|
||||||
- **Dependency**: The feature requires another feature to be implemented first
|
- **External API not configured**: Third-party service credentials missing (e.g., Stripe keys, OAuth secrets)
|
||||||
- **Missing prerequisite**: Core infrastructure (auth, database schema) isn't ready
|
- **External service unavailable**: Dependency on service that's down or inaccessible
|
||||||
- **Unclear requirements**: The feature description is ambiguous and needs clarification
|
- **Environment limitation**: Hardware or system requirement you cannot fulfill
|
||||||
|
|
||||||
If you encounter a blocker, **skip the feature** to move it to the end of the queue:
|
**NEVER skip because:**
|
||||||
|
|
||||||
|
| Situation | Wrong Action | Correct Action |
|
||||||
|
|-----------|--------------|----------------|
|
||||||
|
| "Page doesn't exist" | Skip | Create the page |
|
||||||
|
| "API endpoint missing" | Skip | Implement the endpoint |
|
||||||
|
| "Database table not ready" | Skip | Create the migration |
|
||||||
|
| "Component not built" | Skip | Build the component |
|
||||||
|
| "No data to test with" | Skip | Create test data or build data entry flow |
|
||||||
|
| "Feature X needs to be done first" | Skip | Build feature X as part of this feature |
|
||||||
|
|
||||||
|
If a feature requires building other functionality first, **build that functionality**. You are the coding agent - your job is to make the feature work, not to defer it.
|
||||||
|
|
||||||
|
If you must skip (truly external blocker only):
|
||||||
|
|
||||||
```
|
```
|
||||||
# Skip feature #42 - moves it to end of priority queue
|
Use the feature_skip tool with feature_id={id}
|
||||||
Use the feature_skip tool with feature_id=42
|
|
||||||
```
|
```
|
||||||
|
|
||||||
After skipping, use the feature_get_next tool again to get the next feature to work on.
|
Document the SPECIFIC external blocker in `claude-progress.txt`. "Functionality not built" is NEVER a valid reason.
|
||||||
|
|
||||||
**Do NOT skip features just because they seem difficult.** Only skip when there is a genuine dependency or blocker. Document why you skipped in `claude-progress.txt`.
|
|
||||||
|
|
||||||
### STEP 5: IMPLEMENT THE FEATURE
|
### STEP 5: IMPLEMENT THE FEATURE
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user