cyber-mawonaj
|
6978fbb5b8
|
feat(app) : phase 2 — endpoint /api/alerts, inbox, flows Node-RED
- POST /api/alerts : token Bearer (comparaison temps constant, 503 si non
configuré), schéma d'alerte PRD §4.4 validé Zod, exempté du SSO dans les hooks
- Persistance alertes.yaml + commits git (réception, « traité »)
- Inbox /alertes : filtres par profil impacté et statut, actions « Marquer
traité » et « Créer/MAJ fiche » avec pré-remplissage du formulaire registre
depuis l'alerte (aucun champ licence/capacité inventé)
- nodered-flows/ : 4 flows importables (rss-ingest, license-watch, classifier
avec le prompt figé du PRD §6 embarqué tel quel, notify) — nœuds core
uniquement, configuration par variables d'env, README de câblage
- Vérifié : check/lint/test (27) /build verts, autofixer propre, JSON des flows
et fonctions embarquées validés, test fumée HTTP (201/400/401 sur l'endpoint,
inbox, traité + commit, pré-remplissage MAJ fiche)
|
2026-08-01 10:40:18 -04:00 |
|
cyber-mawonaj
|
0c9f83d3f5
|
feat(app) : phase 1 — registre, profils, moteur de recommandation, export markdown
- Schémas Zod partagés ($lib/schemas) : modèle, profil (PRD §4), null = « à vérifier »,
sources[] obligatoires à chaque écriture
- Persistance YAML dans DATA_DIR + commits git automatiques (simple-git) ;
seeds PRD au premier démarrage (1 modèle §4.1, 5 profils, 2 templates)
- CRUD registre et profils : pages liste/édition/création, form actions,
champs tri-état, messages d'erreur Zod, commit par écriture
- Moteur de recommandation pur et testé (12 cas : nominal, licence null,
seuil, statut mort, vram, modalité, fraîcheur, pénalités) : filtrage dur
(requiert/exclut/obligatoire/mort) puis scoring pondéré (préférences,
rang arena, fraîcheur, pénalités statut et champs null), justification
et warnings (attribution, seuil, garde-fous, déclarations plateformes)
- POST /api/recommander (SSO requis) + page /recommander
- Exporteur markdown /exports : templates éditables, génération depuis le
registre (tableaux registre + classements), commit par document
- Vérifié : check/lint/test (22) /build verts, test fumée HTTP complet
(seed + git init, CRUD par form action, exports générés, filtres API,
401/404), svelte-autofixer propre sur les 11 composants
|
2026-08-01 10:19:42 -04:00 |
|