contracts.go (package eai)
Source : sdks/go/contracts.go. Retour à l'index de la référence du SDK Go.
Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.
Modèle ValidationResult
ValidationResult est le résultat d'une validation de contrat.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
Contract (contract) | string | oui | Nom du contrat utilisé, unknown quand le kind du manifeste n'a pas pu être résolu. |
Valid (valid) | bool | oui | true quand le document respecte le contrat. |
Errors (errors) | []string | oui | Erreurs de validation, chacune sous la forme /pointeur/json: message ; vide si le document est valide. |
Fonctions
ContractNames
ContractNames() []string
ContractNames liste les contrats embarqués (hors définitions communes).
Cet élément ne prend aucun paramètre.
Retour : []string. Copie triée des noms des schémas contracts/v1 embarqués, sans common.
ContractSchema
ContractSchema(name string) (json.RawMessage, error)
ContractSchema renvoie le JSON Schema embarqué d'un contrat.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | string | oui | Nom du contrat tel que listé par ContractNames, sans .schema.json. |
Retour : (json.RawMessage, error). JSON brut du schéma ; l'error est renseignée quand aucun schéma embarqué ne porte ce nom.
Erreurs levées : error.
ContractForKind
ContractForKind(kind string) (string, bool)
ContractForKind associe un kind de manifeste (Agent, Model, Tool...) au nom de son contrat.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
kind | string | oui | Kind du manifeste : Agent, Model, Tool, Skill, Plugin, Connector, Channel ou ManagedComponent. |
Retour : (string, bool). Le nom du contrat (par exemple agent-manifest) et true, ou une chaîne vide et false pour un kind inconnu.
ValidateContract
ValidateContract(lang string, name string, doc any) (ValidationResult, error)
ValidateContract valide doc ([]byte, json.RawMessage, string ou toute valeur sérialisable en JSON) par rapport au contrat nommé. lang choisit la langue des messages produits par le SDK.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
lang | string | oui | Langue des messages du SDK, en ou fr. | |
name | string | oui | Nom du contrat, l'un de ceux de ContractNames. | |
doc | any | oui | Document à valider : []byte, json.RawMessage, string ou toute valeur acceptée par json.Marshal. |
Retour : (ValidationResult, error). Un ValidationResult : le résultat d'une validation de contrat. L'error est une erreur typée du SDK, nil en cas de succès.
Erreurs levées : error.
ValidateManifest
ValidateManifest(lang string, manifest any) (ValidationResult, error)
ValidateManifest choisit le contrat d'après le kind du manifeste.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
lang | string | oui | Langue des messages du SDK, en ou fr. | |
manifest | any | oui | Manifeste à valider, sous les mêmes formes que pour ValidateContract ; son champ kind choisit le contrat. |
Retour : (ValidationResult, error). Un ValidationResult : le résultat d'une validation de contrat. L'error est une erreur typée du SDK, nil en cas de succès.
Erreurs levées : error.