Formats d’Autorització de Decision Gate
Decision Gate accepta l’entrada d’autoria de ScenarioSpec en JSON o RON. JSON és el format canònic utilitzat per a hashing, esquemes i runpacks. RON existeix només com una capa d’autoria amigable per a humans i ha de ser normalitzat a JSON canònic abans de l’execució.
JSON canònic
- El JSON canònic utilitza l’RFC 8785 (JCS) per a l’ordenació determinista.
- Els hashes de ScenarioSpec es calculen sobre bytes JSON canònics.
- El JSON canònic és emès per
decision-gate authoring normalize.
Entrades Suportades
- JSON: format canònic per a l’emmagatzematge, hashing i validació.
- RON: format només d’autoria normalitzat a JSON canònic.
- YAML: no és compatible per defecte (afegeix només amb requisit explícit).
Normalització del Pipeline
- Analitzar JSON o RON en un valor estructurat.
- Valida contra
schemas/scenario.schema.json. - Executar la validació semàntica de ScenarioSpec (IDs, condicions, portes).
- Canonitzar a JSON (RFC 8785).
- Calcular el hash de la especificació canònica.
Límits
- Mida màxima d’entrada d’autor: 16777216 bytes.
- Profunditat màxima de la nidificació: 64.
Ús de la CLI
Valida l’entrada d’autoria RON:
decision-gate authoring validate --input examples/scenario.ron --format ron
Normalitzar a JSON canònic:
decision-gate authoring normalize --input examples/scenario.ron --format ron \
--output examples/scenario.json
Referències
examples/scenario.ron: exemple d’autoria en RON.examples/scenario.json: sortida JSON canònica.schemas/scenario.schema.json: JSON Schema per a ScenarioSpec.