Files
flowdeck/CHANGELOG.md
T
bruno 16532d10bd
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
feat(v1.4.0): Propriétés Avancées — collection_properties, 21 types, API CRUD
- Table collection_properties (21 types Notion: number, checkbox, url, email, phone, status, files, unique_id, ...)
- Auto-propriétés: created_time, created_by, last_edited_time, last_edited_by
- Service property_types.py: validation, formatage, auto-values
- API: GET /db/property-types/api, CRUD /db/{id}/properties/api, PUT/DELETE /db/properties/{id}/api
- 38/38 tests passent (+4 nouveaux tests v1.4)
- Version 1.3.0 → 1.4.0
- Docs: ROADMAP, CHANGELOG, WORKLOAD, README à jour
2026-07-09 22:43:16 -04:00

3.2 KiB

Changelog — FlowDeck

v1.4.0 (2026-07-10) — Propriétés Avancées

Added

  • Table collection_properties: remplace project_properties, liée aux collections
    • Types: title, text, number, select, multi_select, status, date, person, checkbox, url, email, phone, files, unique_id
    • Auto-propriétés: created_time, created_by, last_edited_time, last_edited_by
    • Relations/Rollups/Formulas: schéma prêt (colonnes dispo, implémentation v1.5)
  • Service property_types.py: 21 types définis, validation, formatage, auto-values
  • API propriétés: GET /db/property-types/api, CRUD /{id}/properties/api, PUT/DELETE /properties/{id}/api
  • Tests: 4 nouveaux tests (38/38 passent, +12%)

Changed

  • Version 1.3.0 → 1.4.0

v1.3.0 (2026-07-10) — Database Concept

Added

  • Nouvelles tables: collections, collection_pages, collection_views — fondation Database Notion
  • Router /db: API CRUD complète pour collections et pages
    • GET/POST /db/api — lister/créer collections
    • GET/PUT/DELETE /db/api/{id} — lire/modifier/supprimer collection
    • GET/POST /db/{id}/pages/api — lister/créer pages
    • GET/PUT/DELETE /db/pages/{id}/api — CRUD page standalone
    • GET /db/{id} — vue HTML basique par collection
  • GiteaBoardCompat: adaptateur boards Gitea legacy → Collections
    • GET /db/boards/api — liste boards comme pseudo-collections
    • GET /db/board/{owner}/{repo}/api — board spécifique comme collection
    • POST /db/board/{owner}/{repo}/sync — sync board → vraie collection
  • Tests: 6 nouveaux tests (34/34 passent, +21%)
  • CSRF: /db/ exempté (API interne)

Changed

  • Version 1.0.0 → 1.3.0 (main.py, api.py, health)
  • db.py init: 3 nouvelles tables + index
  • Architecture DB: collection_pages utilise property_values_json (JSON flexible)

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