- WriteReport generiše markdown izveštaj u reports/ - formatDuration, truncateOutput za formatiranje - Kreira folder ako ne postoji, skraćuje output na 50 linija - 10 reporter testova — svi prolaze - T03 premešten u done/ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
91 lines
1.7 KiB
Markdown
91 lines
1.7 KiB
Markdown
# T05: Reporter — pisanje izveštaja
|
|
|
|
**Kreirao:** planer
|
|
**Datum:** 2026-02-20
|
|
**Agent:** coder
|
|
**Model:** Sonnet
|
|
**Zavisi od:** T03 ✅, T04 ✅
|
|
|
|
---
|
|
|
|
## Opis
|
|
|
|
Generiše markdown izveštaj posle izvršenog taska.
|
|
Koristi RunResult iz T03 i VerifyResult iz T04.
|
|
|
|
## Fajlovi za kreiranje
|
|
|
|
```
|
|
code/internal/supervisor/
|
|
├── reporter.go ← WriteReport()
|
|
└── reporter_test.go
|
|
```
|
|
|
|
## Funkcije
|
|
|
|
```go
|
|
func WriteReport(
|
|
task Task,
|
|
run RunResult,
|
|
verify VerifyResult,
|
|
reportsDir string,
|
|
) (string, error) // vraća putanju do izveštaja
|
|
```
|
|
|
|
## Format izveštaja
|
|
|
|
```markdown
|
|
# T{XX}: Naslov
|
|
|
|
**Datum:** 2026-02-20 10:15
|
|
**Trajanje:** 8m 45s
|
|
**Status:** ✅ Završen / ❌ Neuspešan
|
|
**Tag:** v0.1.X
|
|
|
|
## Verifikacija
|
|
- ✅/❌ go build (0.3s)
|
|
- ✅/❌ go vet (0.2s)
|
|
- ✅/❌ go test (12/12 testova, 2.1s)
|
|
|
|
## Agent output
|
|
(skraćen output Claude Code sesije, max 50 linija)
|
|
|
|
## Commit
|
|
- Hash: a1b2c3d
|
|
- Branch: main
|
|
```
|
|
|
|
## Pravila
|
|
|
|
- Fajl ime: `T{XX}-report.md` (npr. T01-report.md)
|
|
- Ako reportsDir ne postoji — kreiraj
|
|
- Output skrati na max 50 linija (poslednje linije, najrelevantnije)
|
|
- Datum u formatu: YYYY-MM-DD HH:MM
|
|
- Trajanje: Xm Ys ili Xs ako manje od minuta
|
|
|
|
## Testovi
|
|
|
|
- WriteReport sa mock podacima → fajl postoji, sadržaj tačan
|
|
- Proveri format datuma, trajanja
|
|
- Proveri da folder kreira ako ne postoji
|
|
- Proveri skraćivanje outputa (>50 linija → samo poslednjih 50)
|
|
- AllPassed=true → "✅ Završen"
|
|
- AllPassed=false → "❌ Neuspešan"
|
|
|
|
## Očekivani izlaz
|
|
|
|
`TASKS/reports/T{XX}-report.md` se generiše sa tačnim sadržajem.
|
|
`go test ./internal/supervisor/ -v` — svi testovi zeleni.
|
|
|
|
---
|
|
|
|
## Pitanja
|
|
|
|
*(agent piše pitanja ovde, planer odgovara)*
|
|
|
|
---
|
|
|
|
## Odgovori
|
|
|
|
*(planer piše odgovore ovde)*
|