68 lines
1.7 KiB
Markdown
68 lines
1.7 KiB
Markdown
# T19 Izveštaj: Dugme "Pusti" — pokreni agenta u čistoj sesiji
|
|
|
|
**Agent:** coder
|
|
**Model:** Opus
|
|
**Datum:** 2026-02-20
|
|
|
|
---
|
|
|
|
## Šta je urađeno
|
|
|
|
Dodat "Pusti ▶" dugme na task karticama i POST /task/{id}/run endpoint.
|
|
|
|
### Novi/izmenjeni fajlovi
|
|
|
|
| Fajl | Izmena |
|
|
|------|--------|
|
|
| `internal/server/server.go` | POST /task/:id/run ruta, handleRunTask handler |
|
|
| `internal/server/render.go` | taskCardData wrapper sa CanRun, canRunTask(), doneSet logika |
|
|
| `internal/server/console.go` | timeNow() helper |
|
|
| `internal/server/server_test.go` | 6 novih testova |
|
|
| `web/templates/partials/task-card.html` | "Pusti ▶" dugme sa hx-post |
|
|
| `web/templates/layout.html` | htmx:afterRequest handler za run response + toast |
|
|
| `web/static/style.css` | btn-run stil |
|
|
|
|
### Endpoint
|
|
|
|
| Ruta | Opis |
|
|
|------|------|
|
|
| `POST /task/{id}/run` | Pokreni task u prvoj slobodnoj sesiji |
|
|
|
|
### Logika
|
|
|
|
1. Nađi task, proveri status
|
|
2. backlog → proveri deps (sve u done?), premesti u ready
|
|
3. ready → nađi slobodnu sesiju (1 ili 2)
|
|
4. Nema slobodne → 409 "obe sesije zauzete"
|
|
5. Pokreni `claude --dangerously-skip-permissions -p "..."`
|
|
6. Output ide u konzolu sesije
|
|
7. Toast + board refresh
|
|
|
|
### Dugme se prikazuje za
|
|
|
|
- backlog/ taskove čije su zavisnosti u done/
|
|
- ready/ taskove
|
|
- review/ taskove
|
|
|
|
### Ne prikazuje se za
|
|
|
|
- active/ (već rade)
|
|
- done/ (završeni)
|
|
- backlog/ sa neispunjenim zavisnostima
|
|
|
|
### Novi testovi — 6 PASS
|
|
|
|
```
|
|
TestRunTask_Ready PASS
|
|
TestRunTask_BacklogWithDeps PASS
|
|
TestRunTask_AlreadyDone PASS
|
|
TestRunTask_NotFound PASS
|
|
TestRunTask_BothSessionsBusy PASS
|
|
TestDashboardHTML_HasRunButton PASS
|
|
```
|
|
|
|
### Ukupno projekat: 125 testova, svi prolaze
|
|
|
|
- `go vet ./...` — čist
|
|
- `go build ./...` — prolazi
|