mirror of
https://github.com/siop-spelev/siop2.git
synced 2026-08-08 12:41:54 +00:00
837dcba1db321d2b51cf5ba73077ea6665032979
ADR-004 : embeddings locaux sur CPU (fastembed ONNX, paraphrase-multilingual-MiniLM-L12-v2, 384 dims — les textes du client ne quittent jamais le serveur), pgvector dans le Postgres existant (RagChunk possédé par Prisma, migration r5_ia + état de corpus sur Document), génération opt-in (mode extractif par défaut : la recette passe sans clé API), service siop2-ai jamais exposé — joint par l'API NestJS seule (X-Service-Token). apps/ai (FastAPI + uv) : pipeline PDF MinIO → texte paginé (pypdf) → anonymisation D4 (e-mails, téléphones marocains, noms connus de la base, insensible casse/accents — fonction pure testée) → découpage avec chevauchement (testé) → embeddings → RagChunk localisé (« p. 42 », « bilan du 17/07 »). Bilans codés clôturés ingérés. Exclusion de corpus (D3) appliquée à l'ingestion ET à la lecture. 14 pytest + ruff, embeddeur déterministe en CI (aucun téléchargement), job CI ai (uv), deploy en dépend. Vérifié en réel avec le vrai modèle : corpus seedé réindexé en 7 s (PDF réel → 31 extraits paginés + 3 bilans), recherche sémantique concluante, e-mails → ⟨contact⟩, 0 identité dans les chunks (contrôle SQL). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
SIOP V2 — GMAO pour la maintenance d'ascenseurs
SIOP (Système Intégré d'Opérations de maintenance Préventive) est une GMAO complète dédiée à la maintenance d'ascenseurs, inspirée fonctionnellement d'Atlas CMMS et adaptée au métier (carnet d'intervention, périodicités réglementaires, PV signés, urgence « personne bloquée »), avec une couche IA différenciante.
Ce dépôt poursuit deux objectifs jumeaux :
- Le produit — une application web + mobile + IA complètement fonctionnelle, déployée en production (Dokploy).
- Le playbook — la documentation pédagogique de toutes les phases du cycle de vie logiciel (cadrage → design → architecture → développement → tests → production → formation), réutilisable comme support de cours et comme méthode d'entreprise.
V2 : refondation design-first du projet siop (v1, gelée — elle sert de référence de lecture). 100 % nouveau code.
Le playbook
| Phase | Dossier | Contenu |
|---|---|---|
| Vision | docs/00-vision | Charte projet, personas, benchmark Atlas |
| Cadrage | docs/01-cadrage | Releases, user-story map, exigences, risques |
| Design | docs/02-design | Charte graphique, design tokens, maquettes HD |
| Architecture | docs/03-architecture | ADRs, C4, modèle de données, contrat d'API |
| Développement | docs/04-developpement | Conventions, déroulé d'un sprint |
| Tests | docs/05-tests | Stratégie, plans, recettes par release |
| Production | docs/06-production | Runbook Dokploy, sauvegardes, sécurité |
| Formation | docs/07-formation | Manuels, supports, exercices étudiants |
Releases
R0 Fondations → R1 Référentiel → R2 Exploitation → R3 Gestion → R4 Mobile → R5 IA.
Règle : une release n'ouvre pas tant que la précédente n'est pas recettée et déployée.
Démarrage (à partir de R0)
nvm use && pnpm install
pnpm infra:up # PostgreSQL + Redis + MinIO (Docker)
pnpm dev
Projet mené par le Pr. Daaif (ENSET Mohammedia) avec ses étudiants, en partenariat avec SPELEV.
Description
SIOP V2 — GMAO ascenseurs (clone Atlas CMMS adapté) : produit complet + playbook pédagogique du cycle de vie logiciel
Languages
TypeScript
90.3%
Python
4.7%
CSS
4.1%
Dockerfile
0.5%
JavaScript
0.3%