refactor: A28 TERMINÉ — board.py (2 101 L) → package 14 fichiers (v7.32.0)
Lot 4/4 de l'A28 (god files) : l'ancien app/routers/board.py (2 101 lignes, 53 routes) devient le package `app/routers/board/` : - 12 modules de routes : pages 271 L (7 r.), page_api 229 (5), board_views 223 (8), page_ops 176 (3), sharing 175 (10), synced 144 (8), page_media 122 (4), import_ 85 (2), wiki 76 (2), library 66 (1), embed 64 (2), sync 51 (1) - _common.py (878 L) : 23 helpers dont 4 async + les 4 constantes (STATUS_COLORS, STATUS_LABELS, AI_KEYWORD_COLORS, _REPO_REF_RE) - __init__.py : __all__ complet — importateurs inchangés (api.py ×4 top-level, webhooks top-level, dashboard ×5 lazy, tests ×4) Preuve contractuelle : docs/openapi-v2.json régénéré = IDENTIQUE byte-à-byte (509 chemins, ordre préservé). Pièges rattrapés : - constantes d'état oubliées dans _common à la 1ʳᵉ passe (F821 + ImportError au chargement) → ré-insérées avec les valeurs exactes - docstring du header copié → F404 → slice [1:21] - helpers `async def` non détectés par `def ` seul A28 TERMINÉ en 4 lots : api_v2 (7.29.0), dashboard (7.30.0), collections (7.31.0), board (7.32.0) — 0 changement d'URL sur les 4. suite **1091/1091** · ruff OK · OpenAPI 509 identique · docs à jour
This commit is contained in:
@@ -1,5 +1,37 @@
|
||||
# Changelog - FlowDeck
|
||||
|
||||
## v7.32.0 (2026-10-01) — Audit : A28 TERMINÉ (board, dernier lot)
|
||||
|
||||
### Changed
|
||||
|
||||
- **A28 lot 4** : `app/routers/board.py` (**2 101 lignes, 53 routes**)
|
||||
devient le package `app/routers/board/` :
|
||||
· 12 modules : `pages` 271 L (7), `page_api` 229 (5), `board_views` 223 (8),
|
||||
`page_ops` 176 (3), `sharing` 175 (10), `synced` 144 (8),
|
||||
`page_media` 122 (4), `import_` 85 (2), `wiki` 76 (2), `library` 66 (1),
|
||||
`embed` 64 (2), `sync` 51 (1)
|
||||
· `_common.py` (878 L) : les **23 helpers dont 4 async** + les 4
|
||||
constantes (STATUS_COLORS, STATUS_LABELS, AI_KEYWORD_COLORS,
|
||||
_REPO_REF_RE)
|
||||
· `__init__.py` : `__all__` complet — importateurs **inchangés**
|
||||
(api.py ×4 top-level, webhooks top-level, dashboard ×5 lazy, tests ×4)
|
||||
- Preuve contractuelle : **`docs/openapi-v2.json` régénéré = identique
|
||||
byte-à-byte**
|
||||
|
||||
### Fixed
|
||||
|
||||
- Constantes d'état oubliées dans `_common` à la 1ʳᵉ passe (F821 +
|
||||
ImportError au chargement) → ré-insérées avec leurs valeurs exactes
|
||||
(git show)
|
||||
- Docstring du header copié → F404 (`from __future__` après un statement)
|
||||
→ slice `[1:21]` ; helpers **async** non détectés par `def ` seul
|
||||
|
||||
### Notes
|
||||
|
||||
- **A28 TERMINÉ en 4 lots** : api_v2 (7.29.0), dashboard (7.30.0),
|
||||
collections (7.31.0), board (7.32.0) — **0 changement d'URL** sur les 4
|
||||
- Suite complète : **1091/1091** · ruff OK
|
||||
|
||||
## v7.31.0 (2026-10-01) — Audit : A28 lot 3 (collections → package 13 fichiers)
|
||||
|
||||
### Changed
|
||||
|
||||
Reference in New Issue
Block a user