Aller au contenu principal
Retour aux docsAction Proof · Délégation bornée
Spécification

Un mandat est un artefact, pas un réglage.

La délégation bornée est une capacité à l’intérieur d’Execution Authorization, pas une catégorie à part. Un Task Contract encadre la chaîne ; il n’en remplace aucune pièce. Chaque étape produit toujours son propre Execution Grant à usage unique et son propre Action Receipt.

Conception

TaskContractV1

Le contrat lie, dans un seul objet signé : le tenant, les acteurs autorisés à agir sous son couvert, le Guardian et l’audience auxquels il s’adresse, la révision, les étapes, leurs contraintes, le budget et ses unités, la fenêtre de validité, la politique et le manifeste en vigueur, et le compteur de révocation.

  • taskId · revision

    Identité et version. Un contrat approuvé ne se modifie jamais sur place : tout changement d’une étape produit une nouvelle révision à relire.

  • tenant · guardianId · audience

    À qui il appartient et quel unique point d’exécution peut le consommer. Un mandat s’adresse à un Guardian.

  • actors[]

    Chaque acteur lie un identifiant à une clé et à son empreinte. Une étape est réclamée en prouvant la possession de cette clé face à un défi frais, consommé de façon atomique.

  • authority

    Fixée par opération par le protocole. L’appelant ne la choisit pas et ne peut pas la dégrader dans la même requête, et un mandat approuvé n’abaisse jamais le seuil d’une étape.

  • steps[]

    Chaque étape nomme son opération canonique, son fournisseur, sa liste de ressources, l’empreinte de ses paramètres exacts, et porte maxUses fixé à un.

  • budget

    Durable et atomique par tenant, tâche, révision et étape. Engagé signifie consommé plus tout ce qui est réservé dont le résultat est en attente ou incertain, de sorte qu’un grant ne peut pas réserver deux fois.

  • issuedAt · expiresAt

    La fenêtre. Ensuite aucune nouvelle étape n’est envoyée ; il n’y a ni délai de grâce ni renouvellement depuis l’intérieur de la tâche.

  • policyVersion · revocationVersion

    La politique locale signée en vigueur et le compteur de révocation. Si le stockage ou la révocation sont indisponibles, aucun nouvel effet ne sort.

L’intersection s’applique toujours

permission effective = mandat ∩ grant ∩ politique locale signée ∩ contraintes de l’adaptateur ∩ budget ∩ identité ∩ validité et révocation

Le cloud n’élargit jamais le plafond local. Un mandat est un terme de plus dans l’intersection, jamais un moyen de la contourner, et le Guardian les applique tous avant de contacter un fournisseur.

Machine à états

Une tâche occupe exactement un état, et c’est la transition que le registre consigne, pas l’intention.

  • draft
  • approved
  • running
  • paused
  • completed
  • revoked
  • expired

Exclusions délibérées

  • Pas de sous-délégation. Un mandat, un Guardian, un budget ; une tâche ne peut pas céder une partie d’elle-même à un autre acteur ni dresser un second point d’exécution.
  • Pas d’effets ouverts. Une étape sans opération canonique et sans empreinte de paramètres n’est pas une étape.
  • Pas d’autorisation permanente. Tout mandat expire, et l’expiration n’est pas renouvelable depuis l’intérieur de la tâche.
  • Ce que l’acteur lit — documents, sorties d’outils, contenu web, mémoire — est une entrée, jamais une autorité. Cela ne peut pas étendre le contrat.
  • L’adaptateur détermine l’effet canonique et l’état antérieur. Le résumé d’un agent, un schéma en lecture seule ou une destination tirée du contenu ne sont pas acceptés comme vérité.

Le rôle du lecteur

Le lecteur local est explicatif. Dans ce profil, un constat isolé, une abstention, une non-évaluation ou une lecture partielle ne bloquent pas, ne révoquent pas et n’imposent pas d’approbations supplémentaires sur un effet exact déjà approuvé et permis. L’autorité n’est jamais relevée pour compenser une alerte, et jamais abaissée parce qu’aucune alerte n’est apparue. Identité, signature, budget, précondition et révocation continuent d’échouer en position fermée — ce n’est pas une permission d’exécuter sans contrôles.

Statut

Conception. Le schéma et ses invariants existent et sont couverts par des tests. Aucun mandat délégué n’a été exécuté contre un fournisseur réel, ce profil est donc étiqueté simulé. Un résultat n’est jamais extrapolé depuis un mock ni depuis un autre connecteur, et un connecteur hérité testé avec MFA ou quorum ne crédite pas la délégation à plusieurs étapes.

Questions ouvertes

Les détails de canonisation, les limites de taille et de nombre, la gestion de l’horloge et le rejet des champs inconnus sont fixés avant de construire le moindre runtime, et publiés comme vecteurs de test versionnés aux côtés du vérificateur. Le vérificateur sort avant le profil : rien n’est émis qui ne puisse encore être vérifié de façon indépendante.

Délégation bornée — spécification du Task Contract | SecureStamp Foundation