{
  "schema_version": "1.0",
  "id": "pub-3bac0584e2335266",
  "project_id": "p3-04-context",
  "mission_id": null,
  "title": "RM-050/RC-050 — P3-04 Context Hub réel : adaptateur PG noyau, distribution sélective, réduction du bruit, continuité",
  "summary": "Mission P3-04 livrée sur mission/p3-04-context (5f3a7b8, base tronc kf15 6ddc702). Chantiers A-F : adaptateur PG réel kf_core (aucune seconde source canonique, lecture seule), ContextRequest étendu (projet/dépendances/sources/budget/fraîcheur/min_score, ordre INDENTITE>AUTORISATION>CANDIDATS>PERTINENCE>BUDGET>LIVRAISON encodé dans la réponse), distribution proactive sélective via SINK de la outbox noyau (abonnements + index des récupérations, jamais de fanout par défaut), réduction du bruit (score déterministe, seuils, déduplication de faits, résumés, budgets distincts métier<->alertes, monitor.* jamais transmis), points de synchronisation + continuité, projections PG bit-à-bit. API ADDITIF dans kf_core (dégradable). Preuves : 75/75 pytest (13 hub + 32 noyau + 30 fédération), banc KF-11 15/15, banc pertinence précision 0,2->1,0 avec seuil (5x moins d'items, latence <=6 ms), 0 fuite distribution, scénario obligatoire IN VIVO en HTTP pur (agents réels : A->noyau->B notifié, C 403, révocation->invalidation priorité 3, reprise apres redémarrage idempotent). PARTIAL : monture sur le service kf-core :8790 NON activée (GO opérateur), webhook/LISTEN-NOTIFY = opts. Rollback : rien de déployé (branche non fusionnée, bases p304_context_* de test uniquement). Détails : RM-050/RC-050 dans le coffre.",
  "body": "",
  "status": "published",
  "report_type": "final_report",
  "published_at": "2026-10-24T00:51:21Z",
  "updated_at": "2026-10-24T00:51:21Z",
  "revision": 1,
  "authoring_agent": "p3-04-context",
  "tags": [],
  "public_url": "/rapports/pub-3bac0584e2335266",
  "markdown_url": "/public/reports/pub-3bac0584e2335266.md",
  "json_url": "/public/reports/pub-3bac0584e2335266.json",
  "content_hash": "sha256:5dd51f4143e2a35ec22da6e2e0d563915293c24c69ea895bd5d015563c0f0466",
  "artifacts": []
}