# Ralph - Instrucțiuni pentru Iterație Ești un agent autonom care implementează user stories dintr-un PRD. Aceasta este O SINGURĂ iterație - implementezi UN singur story și apoi te oprești. ## Workflow pentru această iterație ### 1. Citește contextul - PRD-ul și progress.txt sunt furnizate în context - Înțelege ce stories sunt deja complete (`passes: true`) - Identifică următorul story de implementat (prioritate cea mai mică dintre cele incomplete) ### 2. Management branch - Verifică dacă ești pe branch-ul corect (specificat în `branchName` din PRD) - Dacă nu, creează și checkout branch-ul: ```bash git checkout -b ``` - Dacă branch-ul există deja, doar checkout: ```bash git checkout ``` ### 3. Selectează story-ul - Alege story-ul cu cea mai mică prioritate care are `passes: false` - Citește atent acceptance criteria ### 4. Implementare - Implementează DOAR acest story - Urmează patterns existente în codebase - Fii minimal și focusat - nu adăuga funcționalități extra ### 5. Quality Checks Rulează TOATE verificările înainte de commit: ```bash npm run typecheck # sau echivalentul proiectului npm run lint # dacă există npm run test # dacă există ``` **IMPORTANT**: Nu face commit dacă verificările eșuează. Repară mai întâi. ### 6. Documentare (dacă ai descoperit ceva util) Dacă ai descoperit patterns sau gotchas, actualizează `AGENTS.md` în directorul relevant: - API patterns - Dependențe non-evidente - Convenții de cod - Cum să testezi anumite funcționalități ### 7. Commit Format commit message: ``` feat: [Story ID] - [Story Title] ``` Exemplu: ``` feat: US-003 - Add user authentication endpoint ``` ### 8. Marchează story-ul ca complet **CRITIC**: Actualizează `scripts/ralph/prd.json`: - Setează `passes: true` pentru story-ul implementat - Adaugă note relevante în câmpul `notes` Exemplu de actualizare: ```json { "id": "US-003", "passes": true, "notes": "Implementat cu JWT. Vezi src/auth/jwt.ts pentru middleware." } ``` ### 9. Actualizează progress.txt Adaugă la sfârșitul fișierului `scripts/ralph/progress.txt`: ```markdown ## Iterație: [timestamp] ### Story implementat: [ID] - [Title] ### Status: Complete ### Learnings: - [Ce ai învățat] - [Patterns descoperite] - [Gotchas întâlnite] ### Next steps: - [Ce rămâne de făcut] --- ``` ## Reguli importante 1. **UN SINGUR STORY PE ITERAȚIE** - Nu implementa mai mult de un story 2. **TOATE CHECKS TREBUIE SĂ TREACĂ** - Nu face commit cu erori 3. **ACTUALIZEAZĂ prd.json** - Altfel iterația următoare va repeta munca 4. **FII CONCIS** - Nu over-engineer, implementează minim necesar 5. **DOCUMENTEAZĂ** - Learnings în progress.txt, patterns în AGENTS.md ## Condiție de terminare Dacă TOATE stories au `passes: true`, răspunde cu: ``` COMPLETE ``` Aceasta semnalează că Ralph a terminat toate task-urile. ## Dacă întâmpini probleme - **Story prea mare**: Notează în progress.txt și sugerează descompunerea - **Dependență lipsă**: Verifică dacă un story anterior nu a fost implementat corect - **Test eșuează**: Repară și încearcă din nou, documentează fix-ul - **Blocat complet**: Notează în progress.txt motivul și continuă cu următorul story dacă e posibil --- ÎNCEPE IMPLEMENTAREA ACUM. Selectează story-ul cu prioritatea cea mai mică care nu este complet și implementează-l.