Skip to main content
POST /v1/forget est l’endpoint d’effacement minimal de Haki. Chaque appel est journalisé dans forget_receipts et la réponse porte l’identifiant du reçu plus les compteurs exacts de ce qui a été fait.

Deux portées, exactement une par appel

uuid
Oublie un seul fait.
string
Oublie tout un sujet dans le projet.
La requête doit fournir exactement un des deux (validé par Pydantic au niveau HTTP, et de nouveau par le Ledger pour les appelants directs non-HTTP comme les outils MCP) — sinon invalid_forget_scope.

Deux modes

  • Un fait : transition vers disabled (peut redevenir active plus tard).
  • Un sujet : chaque fait active ou candidate du sujet passe à disabled. L’historique reste intact.

Le reçu

Chaque appel crée une ligne forget_receipts et renvoie :
Seuls les compteurs pertinents au mode/à la portée choisis sont non nuls — facts_disabled reste à 0 sur un delete, par exemple. L’oubli est en plus audité (policy.audit_forget, ligne JSON structurée haki.policy) à chaque appel, quel que soit le mode.

Erreurs typées

fact_not_found (404 — y compris un fait d’un autre projet : même erreur qu’un id inconnu, aucune fuite cross-projet) et invalid_forget_scope (422 — ni ou les deux de fact_id/subject_id, ou un mode inconnu).

Référence API — Forget

POST /v1/forget : schéma exact de requête et réponse.