7 Commits
Author SHA1 Message Date
cyber-mawonaj 2e0220b1c9 feat(app) : phase 3 — templates ComfyUI paramétriques + smoke tests
- Templates paramétrés (data/workflows/templates/) : substitution de variables
  ({{modele_checkpoint}}, {{resolution}}, {{resolution_largeur/hauteur}},
  {{vram_profile}}) — jamais de réécriture de topologie (PRD §4.6)
- Génération de JSON concrets (/workflows) + régénération automatique à chaque
  écriture du registre, commit git ; suppression si le modèle disparaît
- Champ comfyui_checkpoint ajouté au schéma et au formulaire registre ;
  génération refusée tant qu'il est null (anti-hallucination)
- Smoke test : prompt canari sans modèle (EmptyImage→PreviewImage) posté sur
  COMFYUI_URL/prompt, statut remonté dans l'UI, dégradation gracieuse
- Endpoint de téléchargement /workflows/fichier/[nom]
- Tests : 11 nouveaux cas (substitution, conversion numérique, variable
  inconnue, paliers VRAM, résolution invalide, checkpoint null, smoke test
  accepté/refusé/injoignable)
- Package YNH : question comfyui_url + COMFYUI_URL dans l'env applicatif
- Vérifié : check/lint/test (38)/build verts, autofixer propre, test fumée
  HTTP complet (seed templates, refus sans checkpoint, génération, JSON
  concret correct, téléchargement, smoke test dégradé, commits git)
2026-08-01 11:05:30 -04:00
cyber-mawonaj 7a90ddd641 feat(dev) : script npm run dev:local (SSO simulé + token factice, zéro config)
- DEV_USER=dev, ALERTS_TOKEN=dev-token-local, DATA_DIR=./data injectés
- README (racine et app/) : usage + exemple curl /api/alerts
- Vérifié : dashboard sans header, /registre 200, alerte 201 avec le token
  factice, 401 avec un mauvais token
2026-08-01 10:49:32 -04:00
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
cyber-mawonaj 4a108c1fda docs : package YNH déplacé vers le dépôt dédié veille-ia-gen_ynh 2026-08-01 09:45:40 -04:00
cyber-mawonaj 338ba8e17f chore(packaging) : pointe le dépôt réel cyber-mawonaj/veille-ia-gen
- manifest.toml : upstream.code + url de l'archive de tag
- README : procédure de release et commande d'install (clone + sous-dossier)
2026-08-01 09:40:07 -04:00
cyber-mawonaj b3ff529cfa feat(packaging) : package YunoHost veille-ia_ynh (packaging v2, helpers 2.1)
- manifest.toml validé contre le schéma officiel manifest.v2.schema.json
  (sources par tag forge avec placeholder sha256 assumé, nodejs 24, ports,
  system_user, install_dir, data_dir, permission privée all_users, SSO)
- Scripts install/remove/upgrade/backup/restore/change_url (bash -n OK) :
  build au fil de l'eau avec BASE_PATH, ALERTS_TOKEN généré à l'install,
  .env chmod 400, logs journald
- conf/nginx.conf : proxy_params_with_auth (header Ynh-User), conf/systemd.service :
  node via __NODEJS_DIR__, sandboxing modéré, conf/env : DATA_DIR/OLLAMA_URL/ALERTS_TOKEN
- tests.toml minimal, doc DESCRIPTION/ADMIN fr+en
- README racine : dev local, variables d'env, procédure de release, Ollama
2026-08-01 09:25:39 -04:00