Files
kanban_cpp/app.md
T
agent 255e8dcf71 feat: initial scaffold of kanban_cpp v2 (issue 0130)
Frontend C++ ImGui (main.cpp + 4 paneles) + backend Go (HTTP + SQLite + fsnotify + SSE).
Reusa parse/scan/watch funcs del registry (issue 0130a).
2026-05-22 22:19:47 +02:00

77 lines
2.3 KiB
Markdown

---
name: kanban_cpp
lang: cpp
domain: tools
version: 0.2.0
description: "Kanban C++ v2 — gestor de dev/issues y dev/flows del registry. Board drag-drop, edicion bidireccional de frontmatter MD"
tags: [imgui, kanban, dev_ux, issues, flows]
icon:
phosphor: "kanban"
accent: "#a855f7"
uses_functions:
- http_request_cpp_core
- sse_client_cpp_core
uses_types: []
framework: "imgui"
entry_point: "main.cpp"
dir_path: "apps/kanban_cpp"
repo_url: "https://gitea.organic-machine.com/dataforge/kanban_cpp"
e2e_checks:
- id: backend_build
cmd: "cd apps/kanban_cpp/backend && CGO_ENABLED=1 go build -o kanban_cpp_backend ."
timeout_s: 180
- id: backend_tests
cmd: "cd apps/kanban_cpp/backend && CGO_ENABLED=1 go test -count=1 ./..."
timeout_s: 60
- id: build
cmd: "cmake --build cpp/build/linux --target kanban_cpp -j"
timeout_s: 300
- id: self_test
cmd: "./cpp/build/linux/apps/kanban_cpp/kanban_cpp --self-test"
timeout_s: 30
---
# kanban_cpp
Kanban C++ v2 para gestionar `dev/issues/` y `dev/flows/` del registry. Frontend ImGui sobre `fn::run_app`, backend Go local en `backend/` que parsea los `.md` a SQLite y expone REST + SSE.
## Build
```bash
# Backend
cd apps/kanban_cpp/backend && CGO_ENABLED=1 go build -o kanban_cpp_backend .
# Frontend
cmake --build cpp/build/linux --target kanban_cpp -j
```
## Run
```bash
# Terminal 1: backend
apps/kanban_cpp/backend/kanban_cpp_backend --port 8487 --registry $PWD
# Terminal 2: frontend
./cpp/build/linux/apps/kanban_cpp/kanban_cpp
```
Por defecto el frontend apunta a `http://127.0.0.1:8487`. Cambiar con `--backend http://host:port`.
## Self-test
`./kanban_cpp --self-test` — smoke headless (state singleton, filtros, HTTP wrapper sin backend).
## Paneles
1. **Board** — 4 columnas (pendiente / in-progress / bloqueado / completado). Drag-drop entre columnas reescribe el `.md` correspondiente via PATCH al backend.
2. **Flows** — tabla de flows. Click para detalle.
3. **Filters** — sidebar multi-select de priority / scope / domain / tag + include_completed.
4. **Detail** — combos para status/priority/scope + CSV editors para tags/domain/depends/blocks. Body MD read-only.
## Anti-scope (issue 0130)
- Sin grafo de dependencias.
- Sin edicion del body MD (solo frontmatter).
- Sin crear issues nuevos.
- Sin DoD panel / agent runs / worktrees.