VESICA
PROSYS_PRO_3Brouillon

SYS_PRO_3 — Gestion des modèles et du manifeste agents

Processus· Direction des Systèmes d'Information (DSI) — Système & Infrastructure IA· émetteur VESICA SI

SYS_PRO_3 — Gestion des modèles et du manifeste agents

Manuel LÉGER. Processus implémenté (Lots 6d / 6e / 6f). Source du quoi : 07_Reference_Systeme.md §B2.9 (sync_model_capabilities), §B2.3bis (sync_agents_manifest), §B2.10 (notify_expiring_models), §B2.3ter (get_agent_config). Source du pourquoi : ADR-028, ADR-031, ADR-032, ADR-033. [CORPUS]

Objet et finalité

Maintenir à jour, sans intervention manuelle, (a) le catalogue de capacité des modèles OpenRouter (pricing, fenêtre de contexte, support structured_outputs, dates d'expiration) et (b) le manifeste des agents (agents.json : quelle clé CODE-NN → quel dossier, quel modèle résolu) ; puis (c) alerter avant l'expiration d'un modèle réellement utilisé. [CORPUS]

Finalité : que prepare_agent_call/get_agent_config puissent résoudre le modèle et sa capacité d'un agent à chaque appel (cf. SYS_PRO_1), et que le gérant soit prévenu avant qu'un modèle utilisé ne disparaisse (continuité de service). [CORPUS]

Pilote

  • Direction pilote : SYS — Système.
  • Acteurs : 4 sub-workflows (sync_model_capabilities, sync_agents_manifest, notify_expiring_models, get_agent_config). Déclenchement automatique (CRON/Webhook) + résolution à la volée. Supervision : gérant. [CORPUS]

Déclencheurs (entrées)

  • sync_model_capabilities : Schedule hebdo (lundi 03:00) → 1 appel API OpenRouter. [CORPUS]
  • sync_agents_manifest : Schedule hebdo (filet) + Webhook GET bookmarkable (régén à la demande) + Manual (debug). [CORPUS]
  • notify_expiring_models : Schedule quotidien (06:00). [CORPUS]
  • get_agent_config : Execute Workflow à chaque appel d'agent (input { agent_key }). [CORPUS]

Sorties et livrables

  • /config/Agent_Model_Open_Router/ : model_catalog.json + 3 vues (view_native_output_schema.json, view_pricing.json, view_expiration.json) — format JSON (ADR-032). [CORPUS]
  • /config/agents.json : manifeste (base_path + directions + agents{ CODE-NN: {dossier, mode, model_resolved} }), host souverain (pas Drive — ADR-031) + miroir Drive décoratif. [CORPUS]
  • Notification Mattermost model_expiring (event dédié, system-errors, severity warning) si un modèle utilisé expire ≤ 7 j ; sinon no-op. [CORPUS]
  • À la volée : la « ligne » de config résolue d'un agent (output de get_agent_config). [CORPUS]

Acteurs

ActeurRôleDéclencheur
sync_model_capabilitiesgénère catalogue + 3 vues depuis l'API OpenRouterSchedule hebdo [CORPUS]
sync_agents_manifestscanne /vault/*/*/config_agent.jsonagents.jsonSchedule + Webhook + Manual [CORPUS]
notify_expiring_modelscroise agents.json × view_expiration.json → alerteSchedule quotidien [CORPUS]
get_agent_configDAL résolution config/modèle/capacité par agent_keyExecute Workflow [CORPUS]
OpenRouter APIsource des capacités/pricing/expirationsexterne [CORPUS]

Logigramme (étapes macro)

(hebdo 03:00) sync_model_capabilities → API OpenRouter → model_catalog.json + 3 vues
(hebdo/Webhook) sync_agents_manifest → glob config_agent.json → agents.json (clé CODE-NN dérivée du CHEMIN)
        │                                   │
        └──────────────┬────────────────────┘
                       ▼
(quotidien 06:00) notify_expiring_models : agents.json (model_resolved utilisés)
                       × view_expiration.json (jours_restants ≤ 7) → notif model_expiring | no-op
                       ▼
(à l'appel) get_agent_config { agent_key }
            → lit agents.json (dossier) + config_agent.json/prompt_system.md/output_schema.json
            → résout model_resolved (mode → model | profil→profils.json | dynamic→sonnet)
            → JOIN view_native_output_schema → supports_structured_outputs
            → renvoie la « ligne » résolue à prepare_agent_call

Détails : 07 §B2.9 / §B2.3bis / §B2.10 / §B2.3ter. [CORPUS]

Procédures et instructions rattachées

  • SYS_PQ_3 — Procédure de gestion des modèles (cadence, fichiers, droits, renvois).
  • SYS_IQ_3 — Instruction : résolution du modèle d'un agent (modes + seuils + expiration) — embryon de catalogue.
  • SYS_FQ_3 — Formulaire : manifeste agents.json (structure).

Interfaces amont/aval (handoffs)

  • Amont : OpenRouter (capacités/pricing) ; arborescence Drive des agents (config_agent.json par agent) maintenue par DEX/ADV/… à la création d'agents. [CORPUS]
  • Aval : SYS_PRO_1 (résolution à chaque appel) ; SYS_PRO_4 (la notif model_expiring passe par notify_system). [CORPUS]
  • Fichier, deux consommateurs : agents.json sert le chemin (prepare_agent_call) et le registre modèles (notify_expiring_models) — le scan ne tourne qu'une fois. [CORPUS]

Indicateurs (KPI)

KPIDéfinitionSource
Fraîcheur du catalogue modèlesâge de _generated_at du model_catalog.jsonfichier [STANDARD]
Cohérence manifeste ↔ Drivenb agents résolus vs nb dossiers agentssync_agents_manifest [CORPUS]
Modèles utilisés expirant ≤ 7 jcompteur de la sonde quotidiennenotify_expiring_models [CORPUS]
Modèles résolus invalides (hors catalogue)check typo (fast-follow non câblé)— [CORPUS]

Enregistrements

  • Fichiers /config/Agent_Model_Open_Router/*.json + /config/agents.json (régénérés, versionnés implicitement par horodatage interne). [CORPUS]
  • Historique d'exécutions n8n. [CORPUS]

Cas d'usage rattachés (UC-* du Recueil + nouveaux)

  • UC-SYS-03 (nouveau) — Être alerté avant l'expiration d'un modèle utilisé (continuité de service). [CORPUS]
  • UC-SYS-04 (nouveau) — Régénérer le manifeste agents après création/renommage d'un agent (Webhook bookmarkable). [CORPUS]
  • UC-SYS-05 (nouveau) — Résoudre dynamiquement le modèle + la capacité d'un agent à l'appel (cœur de la DAL). [CORPUS]
  • (Lien indirect : UC-A11/model_override s'appuie sur la capacité de choisir un modèle supérieur, dont la capacité est connue via le catalogue.) [CORPUS]

Roadmap (PQ/IQ/FQ restant à développer)

  • Fast-follow check typo/catalogue : valider que chaque model_resolved / modèle de profils.json existe dans model_catalog.json ; sinon notif system-errors avec suggestion de correspondance (ex. opus-4-6anthropic/claude-opus-4.6). À brancher dans sync_agents_manifest. → futur SYS_IQ_3_2. [CORPUS]
  • SYS_FQ_3_2 — Formulaire des 4 vues modèles (view_pricing, view_native_output_schema, view_expiration, catalogue) si une revue structurée s'avère utile. [CORPUS]
  • Cutover Postgres : agents.json → table config.agents ; les 4 vues → vues matérialisées (ADR-033 / 09). [CORPUS]
  • Intégration Mac Mini Ollama dans le routing (P2, backlog) : étend la résolution de modèle au-delà d'OpenRouter. [CORPUS]

Documents enfants (3)