- FastAPI lifespan (deprecation fix, 0 warnings)
- 28 tests (vues, filtres, tris, APIs, CSRF, CORS, DB)
- CI/CD Gitea Actions (.gitea/workflows/ci.yml)
- Version 1.0.0: main.py, api.py, health endpoint
- CHANGELOG.md v1.0.0
- ARCHITECTURE.md: 12 tables, routes complètes
- ROADMAP: all versions ✅
33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
# Changelog — FlowDeck
|
|
|
|
## v1.0.0 (2026-07-08) — Production
|
|
|
|
### Added
|
|
- **UI Notion-complete**: sidebar 240px, topbar 44px, dark mode (#191919/#222/#333)
|
|
- **5 vues**: Kanban, Detailed Board, Table, Status Overview (SVG donut), Team Load (stacked bars)
|
|
- **Filtres cumulables AND** avec status dropdown checkboxes, filtres par assignee/tag
|
|
- **Tri multi-critères** hiérarchique (N niveaux, asc/desc)
|
|
- **Card detail modal**: titre éditable, propriétés, checklists, commentaires Gitea
|
|
- **Création d'issues inline** depuis le board
|
|
- **Propriétés custom** par projet: select, multi_select, date, person, text
|
|
- **AI keywords**: extraction automatique depuis labels + body, table `ai_keywords`
|
|
- **Sync API**: `POST /board/api/sync/{owner}/{repo}` — bidirectionnelle complète
|
|
- **CI/CD**: Gitea Actions workflow
|
|
- **Tests**: 25 tests, couvrant toutes les vues, APIs, filtres, tris
|
|
|
|
### Changed
|
|
- FastAPI `on_event` → `lifespan` handler (deprecation fix)
|
|
- Version bump 0.3.0 → 1.0.0
|
|
- CSS: 31 KB design system Notion (700+ lignes)
|
|
- 10 templates Jinja2 (base, board, card, detail, table, status, team, detailed, fragment, dashboard)
|
|
|
|
### Fixed
|
|
- Team Load bug: status key mismatch (done → complete)
|
|
- CSRF: 403 protection vérifiée sur toutes les routes POST
|
|
|
|
## v0.3.0 (2026-06-??)
|
|
- OAuth2 Gitea, CSRF, rate limiting, webhooks
|
|
|
|
## v0.2.0 (2026-05-??)
|
|
- Dashboard + Board Kanban + Gitea sync + Notes + Docker
|