EFERUS Nova — Plan de bord Mis à jour le 17 mai 2026 — Phase 3 en cours

Suivi de projet ·

master plan approved
CLEARED ENG + DESIGN CLEARED — prêt à implémenter. 23 décisions · 0 gap critique · 0 question non résolue.

Résumé

2/5
Phases terminées
21
Tâches complétées
1 730
Documents indexés
1 164
Pages OCR
35
Scripts & fichiers
0
Gaps critiques
S1-S3
Semaine actuelle
~14 k€
Valo. réalisée
~108 k€
Valorisation totale

Phases

Phase 0 — Setup & Ingestion S1 ✓
  • Docker + PostgreSQL + pgvector + FastAPI + Nginx sur le VPSP0
  • Domaine/sous-domaine + Let's Encrypt SSL (nova.exvibris.com)P0
  • Git repo structuré (backend/ frontend/ scripts/ docker/)P0
  • Ingestion métadonnées CDO → FTP direct (HTML, sans PDFs)P0
  • 1 730 documents importés PostgreSQL, 12 classes CDOP0
  • T1 — Audit OCR : pdftotext sur 15 PDFs — qualité acceptableP1
  • T2 — Synchro FTP : cron toutes les 6h, détection nouveaux docsP1
  • T4 — Backup pg_dump : cron quotidien, rotation 7 joursP1
Phase 1 — Recherche full-text & FrontendS2-3 ✓
  • API FastAPI : /search?q=... → JSON + snippets FTS (tsvector/tsquery)P0
  • Frontend Astro 6 — 3 pages : accueil, recherche, documentP0
  • Double thème Père (Garamond/parchemin) / Tris (moderne/data)P0
  • Index GIN sur search_vector — recherche <50ms sur 1730 docsP0
  • Nginx proxy /api/ → FastAPI, déploiement HTTPS Let's EncryptP1
  • /plan dashboard préservé avec stats temps réelP1
Phase 2 — OCR & Expérience complèteS4-5 ← TERMINÉE
  • T3 — Extraction OCR batch → document_pages (FTS intégral) — 1 164p extraites, 2 lotsP0
  • Métadonnées enrichies : 143 auteurs, 623 années extraits des titresP2
  • Navigation CDO interactive (/browse, /browse/:cdo) — API + page AstroP2
  • Pages document : métadonnées, lien PDF vers exvibris.comP2
  • Double thème Père/Tris avec persistance localStorageP2
  • Lecteur de document intégré — pages OCR, navigation clavierP2
  • Pages éditoriales : /premiere-visite, /a-proposP2
  • Responsive (3 breakpoints) + WCAG AA (contraste, focus, skip-link)DESIGN
Phase 3 — ÉcosystèmeS6-7 ← EN COURS
  • Comptes utilisateurs — JWT + bcrypt, register/login/meP3
  • Favoris — API CRUD + bouton document + page /favorisP3
  • EFERUS Home : ZIP avec index SQLiteP3
  • Interface admin — /admin, stats détaillées, top CDOP3
  • SEO — sitemap.xml, robots.txt, OG meta, schema.org WebSiteP3
  • T6 — Export asynchroneP3
  • T8 — Tests E2E PlaywrightP3
Phase 4 — Oracle ConversationnelS8-10
  • Découpage PDFs → passages (500 tokens)P3
  • Embeddings BGE-small → pgvectorP3
  • Endpoint /ask : vector search → Claude Haiku → streamingP3
  • UI Oracle : boîte de dialogue messengerP3
  • Fallbacks : LLM down → passages brutsP3
  • T3 — Budget cap OracleP1
  • T7 — IIIF + MiradorP3

Valorisation économique — Équivalent humain

107 800 €
Coût total estimé (marché français 2026)
92 j
Jours-homme totaux
590 €
TJM moyen pondéré
16–20
Semaines avec 2-3 personnes

Tarifs basés sur le marché freelance français 2026 (Paris/Lyon) pour des prestataires compétents en architecture logicielle, développement full-stack Python/JavaScript, design UX et DevOps. Les tarifs agence (Octo, Malt, Silkhom) sont 30-50% supérieurs. Les tarifs ESN (SSII) appliquent un coefficient de ~2,5× sur le TJM pour le client final.

PhaseProfilJoursTJM (€)Total (€)
Phase 0 — Setup & Mirror DevOps senior 56503 250
Développeur full-stack senior 56003 000
Sous-total Phase 0 6 250 €
Phase 1 — Recherche FTS Développeur backend Python 86004 800
Développeur frontend Astro 55502 750
Sous-total Phase 1 7 550 €
Phase 2 — UX complète Designer UX/UI senior 55502 750
Développeur frontend senior 106006 000
Développeur backend 56003 000
Sous-total Phase 2 11 750 €
Phase 3 — Écosystème Développeur backend senior 86004 800
Développeur frontend 55502 750
DevOps (backup, déploiement) 26501 300
Sous-total Phase 3 8 850 €
Phase 4 — Oracle RAG Développeur ML/AI (NLP, embeddings, RAG) 127008 400
Développeur frontend (UI Oracle) 55502 750
DevOps (IIIF/Cantaloupe) 36501 950
Sous-total Phase 4 13 100 €
Transversal Architecte / Lead dev 107507 500
Chef de projet technique 87005 600
QA / Test (E2E, edge cases) 55002 500
Design system + accessibilité 45502 200
Sous-total Transversal 17 800 €
Infrastructure & services (1 an) 2 400
Marge d'imprévu (15%) 14 050
TOTAL 107 800 €

Note : Ce chiffrage représente le coût de reconstruction from scratch par une équipe humaine (3-4 personnes, ~4-5 mois). Le projet réel est développé par Tris avec l'assistance de Claude Code (IA) en 8-10 semaines — le facteur de compression est d'environ 10-15× en coût et 2-3× en temps. Infrastructure : VPS 4 vCPU/8 GB RAM (~20€/mois) + API Claude Haiku (~10€/mois estimé) + domaine.

Reviews

ReviewDéclencheurPourquoiRunsStatutRésultat
Eng Review/plan-eng-reviewArchitecture & tests1CLEAR10 issues, 0 gap critique
Design Review/plan-design-reviewUI/UX1CLEAR7 passes, 15 décisions
Outside Voicecodex-plan-reviewContre-analyse1ISSUES6 findings, 3 tensions résolues
CEO Review/plan-ceo-reviewStratégie0Optionnel, non lancé

Décisions clés (23)

Base de données
PostgreSQL + pgvector
Frontend
Astro SSR + Svelte islands
Backend API
Python FastAPI async
Full-text search
PostgreSQL FTS tsvector/GIN
Embeddings
BGE-small 384d local CPU
LLM Oracle
Claude Haiku, budget cap
Déploiement
Docker Compose, Nginx reverse proxy
PDFs
Statiques via Nginx
CDO browse
SQL GROUP BY unique
Export offline
Async avec polling
Authentification
JWT + bcrypt, optionnelle
Visionneuse PDF
IIIF + Mirador Phase 4
Homepage
Recherche d'abord
Page document
Vignette + métadonnées prioritaires
Première visite
Page dédiée + glossaire
Design tokens
Extraits site actuel → DESIGN.md
Responsive
3 breakpoints, mobile-first
Accessibilité
WCAG 2.1 AA
Thèmes
Parchment + Dark + Candle
UI Oracle
Boîte messenger, citations cliquables
Phases
Oracle Phase 4, UX Phase 2
Ne pas toucher
exvibris.com, CDO, PDFs, copyleft
Hors scope
Ollama, monétisation, CI/CD, Redis, i18n

Hors scope

Modifier exvibris.com Ollama local Monétisation CI/CD GitHub Actions Sentry/Datadog Cache Redis API IIIF publique i18n Email verification

Modes de défaillance (8 codepaths)

CodepathDéfaillanceTestéHandlerVisibilité
POST /ask → embeddingBGE-small OOM (500 MB)Non⚠️ Silent
POST /ask → pgvectorIndex non entraînéNonScan seq autoOK
POST /ask → ClaudeTimeout 30sPrévuPassages brutsOK
GET /search?q=Terme videOuiOK
GET /browse/:cdoCode CDO inexistantOui→ liste vide + total=0OK
Sync FTP → importPDF corrompuNon→ log+skip⚠️ Silent
POST /auth/registerEmail déjà utiliséNonUNIQUE → 409OK
Export EFERUS HomeEspace disque saturéNon→ vérif espace⚠️ ZIP corrompu

Parallélisation

LaneContenuDépend de
APhase 0 → 1 → 2 (backend + frontend)
BPhase 3 (auth, export)Phase 0
CPhase 4 (Oracle)Phase 1

A + B en parallèle après Phase 0. Merge. Puis C avec finitions de A.