Résumé

  • L’Uniform Resource Agent réunissait données d’activation, cibles, expérience, script d’activité et filtre de réponse dans une spécification persistante, modifiable et relançable.
  • L’URAgency transformait cette spécification en exécution : elle associait le type à une implémentation, fournissait les dépendances et décidait comment activer et interpréter.
  • La conservation de l’objet ou le démarrage du programme ne prouvait donc ni l’autorisation des entrées, ni la stabilité du but, ni la bonne lecture du résultat, ni l’achèvement réel.

L’idée de départ n’était pas de créer un personnage logiciel. Elle consistait à séparer le besoin du client des moyens particuliers employés pour le satisfaire. S’abonner à une liste, interroger plusieurs services ou agréger des réponses décrit une activité. Une URL, un protocole, un interpréteur ou une page Web n’en est qu’un mécanisme possible.

RFC 2016 appelait URA la description persistante de cette activité. Sa structure virtuelle commune permettait de consulter, copier et modifier des réalisations différentes. Six éléments rendaient l’activité visible : un en-tête de type ; les données requises au moment de l’activation ; les cibles désignées par URL ou URN ; l’expérience conservée d’exécutions antérieures ; le script ou programme ; enfin le filtre chargé de reformater ou d’évaluer la réponse.

Cette liste est aussi une carte des endroits où le sens peut dériver. Un formulaire d’activation ne certifie pas que la valeur fournie est autorisée. Une cible peut être remplacée par un miroir, un hôte proche ou une URAgency distante. L’expérience peut accélérer une recherche tout en important une hypothèse périmée. Le filtre peut confondre une page d’erreur avec un résultat.

L’environnement faisait le travail

L’URAgency annonçait les types qu’elle savait traiter. Elle devait convertir une implémentation vers la structure virtuelle et inversement, connaître sa méthode d’activation et satisfaire ses besoins d’exécution. Un binaire Pascal et un script interprété pouvaient représenter une activité comparable sans partager la même chaîne de confiance. La portabilité de la fiche ne rendait pas les environnements équivalents.

L’activation à distance élargissait encore ce contrôle. Une URAgency pouvait être elle-même une cible ; un URA pouvait en invoquer un autre ; une activité supérieure pouvait orchestrer les suivantes. À chaque niveau, les bibliothèques, l’interpréteur, les identifiants, la position réseau et la politique de substitution pouvaient changer.

Le prototype Silk donne une matérialité à cette architecture. Des URA en Tcl étaient lancés depuis une interface de découverte de ressources. Un exemple fixait l’adresse d’un service, envoyait une requête HTTP et extrayait des éléments HTML avec des expressions régulières. Les commentaires signalaient des finitions incomplètes et des erreurs mal rapportées. C’est la trace d’une expérimentation, pas celle d’un déploiement généralisé.

Le filtre pouvait transformer une rupture en réponse

Le RFC avertissait qu’une modification de présentation, insignifiante pour l’œil humain, pouvait casser le logiciel. Le texte contemporain de Leslie Daigle et Sandro Mazzucato formule le même problème : une expression régulière appliquée à du HTML est une API de circonstance. Des interfaces destinées aux machines ou des agents maintenus par le fournisseur pouvaient réduire la fragilité, sans garantir la validité future d’un ancien objet.

Un accusé de lancement établit qu’un traitement a commencé. La fin d’un processus établit qu’un composant s’est arrêté. Ni l’un ni l’autre ne dit que la cible demeurait pertinente, que la réponse avait été comprise ou que l’objectif humain avait été atteint. Réexécuter le même URA peut charger de nouvelles dépendances et rencontrer une représentation différente.

Publié en octobre 1996 comme document Experimental du Legacy stream, RFC 2016 ne doit pas être promu rétrospectivement au rang de norme ni d’ancêtre direct des agents d’IA. Son apport historique est plus précis : il a rendu l’intention transportable tout en obligeant à demander où résidait l’autorité d’exécution.

Sources