KAOS/TASKS/reports/T08-report.md
djuka 04ef8e75ef T08: HTTP server + API za taskove
- Gin HTTP server sa dashboard i API endpointima
- JSON API: GET /api/tasks, GET /api/task/:id, POST /api/task/:id/move
- HTML dashboard sa Kanban prikazom (5 kolona)
- HTMX za interaktivnost (klik na task → detalj panel)
- Embedded static fajlovi (htmx.min.js, sortable.min.js)
- Config: dodat KAOS_PORT
- 10 server testova, 77 ukupno — svi prolaze
- Očišćeni duplikati taskova iz v0.1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 12:10:49 +00:00

1.7 KiB

T08 Izveštaj: HTTP server + API za taskove

Agent: coder Model: Opus Datum: 2026-02-20


Šta je urađeno

Implementiran HTTP server sa Gin framework-om i dashboard:

Kreirani fajlovi

Fajl Opis
cmd/kaos-server/main.go Entry point za HTTP server
internal/server/server.go Server struct, API i HTML rute
internal/server/render.go HTML renderovanje (dashboard, kartice, detalj)
internal/server/server_test.go 10 testova za API i HTML
web/embed.go embed.FS za static fajlove
web/static/htmx.min.js HTMX 2.0.4
web/static/sortable.min.js Sortable.js 1.15.6

Izmenjeni fajlovi

Fajl Izmena
internal/config/config.go Dodat KAOS_PORT (default 8080)
.env.example Dodat KAOS_PORT

API endpointi

Metod Ruta Opis
GET /api/tasks JSON lista svih taskova
GET /api/task/:id JSON task sa sadržajem fajla
POST /api/task/:id/move?to=X Premesti task
GET / Dashboard HTML (Kanban board)
GET /task/:id Task detalj (HTMX fragment)
POST /task/:id/move?to=X Premesti + vrati ažuriran HTML

Testovi — 10/10 PASS

TestAPIGetTasks           PASS
TestAPIGetTask            PASS
TestAPIGetTask_NotFound   PASS
TestAPIMoveTask           PASS
TestAPIMoveTask_NotFound  PASS
TestAPIMoveTask_InvalidFolder PASS
TestDashboardHTML         PASS
TestTaskDetailHTML        PASS
TestTaskDetailHTML_NotFound PASS
TestHTMLMoveTask          PASS

Ukupno projekat: 77 testova, svi prolaze

  • go vet ./... — čist
  • go build ./cmd/kaos-server/ — prolazi
  • go build ./cmd/kaos-supervisor/ — prolazi