@semacode/cli 2.3.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +265 -217
- package/dist/agentContextPack.js +14 -10
- package/dist/agentEntryPoints.d.ts +5 -0
- package/dist/agentEntryPoints.js +567 -557
- package/dist/angular-consumer-standalone.js +1 -1
- package/dist/bin.d.ts +6 -0
- package/dist/bin.js +130 -0
- package/dist/cliArgs.js +4 -4
- package/dist/cliControlError.d.ts +12 -0
- package/dist/cliControlError.js +47 -0
- package/dist/cliGrammar.d.ts +11 -0
- package/dist/cliGrammar.js +551 -0
- package/dist/cliHelp.d.ts +13 -0
- package/dist/cliHelp.js +19 -0
- package/dist/cliHelpTexto.d.ts +3 -0
- package/dist/cliHelpTexto.js +168 -0
- package/dist/cliRuntime.d.ts +2 -0
- package/dist/cliRuntime.js +31 -0
- package/dist/comandos.js +9 -22
- package/dist/contexto.js +5 -5
- package/dist/dev/index.d.ts +1 -0
- package/dist/dev/index.js +51 -9
- package/dist/discovery/catalog.js +3 -3
- package/dist/distribuicao/filesystemGlobal.d.ts +63 -0
- package/dist/distribuicao/filesystemGlobal.js +701 -0
- package/dist/distribuicao/index.d.ts +7 -0
- package/dist/distribuicao/index.js +227 -0
- package/dist/distribuicao/launcherGlobal.d.ts +53 -0
- package/dist/distribuicao/launcherGlobal.js +643 -0
- package/dist/distribuicao/launcherWindows.d.ts +28 -0
- package/dist/distribuicao/launcherWindows.js +326 -0
- package/dist/distribuicao/lockContextGlobal.d.ts +10 -0
- package/dist/distribuicao/lockContextGlobal.js +17 -0
- package/dist/distribuicao/lockGlobal.d.ts +6 -0
- package/dist/distribuicao/lockGlobal.js +520 -0
- package/dist/distribuicao/skillGlobal.d.ts +48 -0
- package/dist/distribuicao/skillGlobal.js +652 -0
- package/dist/distribuicao/skillIntentPolicy.d.ts +21 -0
- package/dist/distribuicao/skillIntentPolicy.js +115 -0
- package/dist/distribuicao/tipos.d.ts +50 -0
- package/dist/distribuicao/tipos.js +10 -0
- package/dist/distribuicao/versaoSemantica.d.ts +3 -0
- package/dist/distribuicao/versaoSemantica.js +62 -0
- package/dist/drift.part01.d.ts +26 -24
- package/dist/drift.part01.js +2 -1
- package/dist/drift.part04.d.ts +12 -3
- package/dist/drift.part04.js +88 -17
- package/dist/drift.part05.d.ts +2 -2
- package/dist/drift.part05.js +8 -6
- package/dist/drift.part06.d.ts +2 -2
- package/dist/drift.part06.js +113 -26
- package/dist/drift.part07.d.ts +11 -11
- package/dist/drift.part07.js +261 -265
- package/dist/drift.part08.d.ts +2 -2
- package/dist/drift.part08.js +35 -26
- package/dist/drift.part11.js +238 -56
- package/dist/drift.part12.d.ts +1 -1
- package/dist/drift.part12.js +193 -21
- package/dist/drift.part13.d.ts +20 -39
- package/dist/drift.part13.js +601 -647
- package/dist/drift.part14.js +21 -7
- package/dist/driftCacheCas.d.ts +43 -0
- package/dist/driftCacheCas.js +351 -0
- package/dist/driftCacheFilesystem.d.ts +64 -0
- package/dist/driftCacheFilesystem.js +313 -0
- package/dist/driftCacheModes.d.ts +38 -0
- package/dist/driftCacheModes.js +147 -0
- package/dist/driftCacheStore.d.ts +80 -0
- package/dist/driftCacheStore.js +603 -0
- package/dist/driftCatalogo.d.ts +2 -28
- package/dist/driftCatalogo.js +143 -284
- package/dist/driftEscopo.d.ts +1 -3
- package/dist/driftEscopo.js +235 -151
- package/dist/driftEscopoReferencias.d.ts +5 -1
- package/dist/driftEscopoReferencias.js +375 -28
- package/dist/driftOrcamento.d.ts +0 -6
- package/dist/driftOrcamento.js +2 -1
- package/dist/execucoesExternas.js +19 -5
- package/dist/geracaoCore.js +4 -6
- package/dist/iaPrompts.d.ts +3 -3
- package/dist/iaPrompts.js +312 -313
- package/dist/index.d.ts +4 -1
- package/dist/index.js +6 -25
- package/dist/index.part01.d.ts +20 -28
- package/dist/index.part01.js +16 -237
- package/dist/index.part02.js +36 -22
- package/dist/index.part03.d.ts +24 -2
- package/dist/index.part03.js +83 -19
- package/dist/index.part04.d.ts +10 -2
- package/dist/index.part04.js +142 -120
- package/dist/index.part05.js +80 -78
- package/dist/index.part06.js +34 -17
- package/dist/index.part07.js +7 -3
- package/dist/index.part08.d.ts +1 -1
- package/dist/index.part08.js +22 -27
- package/dist/initCommand.js +5 -1
- package/dist/initTemplatesBase.js +81 -79
- package/dist/pipelineConteudo/command.d.ts +1 -0
- package/dist/pipelineConteudo/command.js +9 -2
- package/dist/pipelineConteudo/help.d.ts +2 -0
- package/dist/pipelineConteudo/help.js +33 -0
- package/dist/profileAuthorCommand.js +3 -7
- package/dist/profileCommand.js +3 -7
- package/dist/projetoCarregar.js +35 -17
- package/dist/projetoCatalogo.d.ts +1 -0
- package/dist/projetoCatalogo.js +64 -25
- package/dist/projetoOrigens.d.ts +2 -0
- package/dist/projetoOrigens.js +65 -9
- package/dist/projetoTipos.d.ts +1 -0
- package/dist/resultadoCli.d.ts +20 -0
- package/dist/resultadoCli.js +57 -0
- package/dist/saidaCli.d.ts +35 -0
- package/dist/saidaCli.js +118 -0
- package/dist/sistemasInterativos/acceptanceEvidence.d.ts +22 -0
- package/dist/sistemasInterativos/acceptanceEvidence.js +345 -0
- package/dist/sistemasInterativos/engineObservation.d.ts +12 -0
- package/dist/sistemasInterativos/engineObservation.js +438 -0
- package/dist/sistemasInterativos/jobOrchestration.d.ts +2 -0
- package/dist/sistemasInterativos/jobOrchestration.js +204 -0
- package/dist/sistemasInterativos/operationPrimitives.d.ts +21 -0
- package/dist/sistemasInterativos/operationPrimitives.js +194 -0
- package/dist/sistemasInterativos/operations.d.ts +4 -39
- package/dist/sistemasInterativos/operations.js +5 -1164
- package/dist/skillCommand.d.ts +5 -0
- package/dist/skillCommand.js +88 -0
- package/docs/README.md +34 -30
- package/docs/ai-integration.md +25 -12
- package/docs/ai-onboarding.md +37 -18
- package/docs/ai-workflow.md +9 -7
- package/docs/cli.md +125 -7
- package/docs/commands.md +41 -20
- package/docs/deploy.md +21 -8
- package/docs/descoberta-capacidades.md +106 -106
- package/docs/documentation.md +49 -39
- package/docs/drift-cache.md +108 -0
- package/docs/getting-started.md +43 -18
- package/docs/pipeline-conteudo.md +246 -246
- package/docs/profiles.md +54 -54
- package/docs/repositories.md +19 -2
- package/docs/rollback.md +15 -8
- package/docs/security.md +25 -3
- package/docs/sistemas-interativos.md +379 -374
- package/docs/testing.md +139 -40
- package/exemplos/pipeline-conteudo/README.md +44 -44
- package/exemplos/pipeline-conteudo/alvos.json +23 -23
- package/exemplos/pipeline-conteudo/definicao.json +136 -136
- package/exemplos/profile_simulation.sema +211 -211
- package/exemplos/sistemas-interativos/README.md +100 -100
- package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -5
- package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -16
- package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -32
- package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -93
- package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -78
- package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -27
- package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -79
- package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -42
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -32
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -23
- package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -39
- package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -46
- package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -39
- package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -37
- package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -104
- package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -27
- package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -118
- package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -459
- package/exemplos/sistemas-interativos/game-2d.json +83 -83
- package/exemplos/sistemas-interativos/game-3d-human.json +81 -81
- package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -97
- package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -94
- package/exemplos/sistemas-interativos/game-xr-human.json +80 -80
- package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -108
- package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -75
- package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -58
- package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -97
- package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -141
- package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -112
- package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -103
- package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -95
- package/node_modules/@sema/gerador-cpp/package.json +1 -1
- package/node_modules/@sema/gerador-dotnet/package.json +1 -1
- package/node_modules/@sema/gerador-lua/dist/index.js +51 -51
- package/node_modules/@sema/gerador-php/dist/index.js +113 -113
- package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +1 -0
- package/node_modules/@sema/nucleo/dist/semantico/analisador.js +1 -0
- package/package.json +9 -4
- package/scripts/postinstall.mjs +148 -0
- package/skills/sema/SKILL.md +199 -0
- package/skills/sema/agents/openai.yaml +4 -0
- package/dist/driftCache.d.ts +0 -49
- package/dist/driftCache.js +0 -311
- package/dist/driftCacheIncremental.d.ts +0 -98
- package/dist/driftCacheIncremental.js +0 -596
- package/dist/driftCatalogoPersistente.d.ts +0 -8
- package/dist/driftCatalogoPersistente.js +0 -77
- package/node_modules/@sema/gerador-cpp/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-css/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-css/dist/index.part01.js.map +0 -1
- package/node_modules/@sema/gerador-css/dist/index.part02.js.map +0 -1
- package/node_modules/@sema/gerador-dart/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-dotnet/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-html/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-javascript/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-lua/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-php/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-python/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-python/dist/index.part01.js.map +0 -1
- package/node_modules/@sema/gerador-python/dist/index.part02.js.map +0 -1
- package/node_modules/@sema/gerador-typescript/dist/index.js.map +0 -1
- package/node_modules/@sema/gerador-typescript/dist/index.part01.js.map +0 -1
- package/node_modules/@sema/gerador-typescript/dist/index.part02.js.map +0 -1
- package/node_modules/@sema/gerador-typescript/dist/index.part03.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ast/tipos.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/diagnosticos/index.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/formatador/index.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/formatador/index.part01.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/formatador/index.part02.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/index.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/ir/modelos.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/lexer/lexer.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/lexer/tokens.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.part01.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.part02.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.part03.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/persistencia/contratos.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/semantico/seguranca.js.map +0 -1
- package/node_modules/@sema/nucleo/dist/util/arquivos.js.map +0 -1
- package/node_modules/@sema/padroes/dist/index.js.map +0 -1
|
@@ -1,211 +1,211 @@
|
|
|
1
|
-
module exemplos.profile.simulation {
|
|
2
|
-
docs {
|
|
3
|
-
resumo: "Starter do Profile Simulation com contrato primeiro. Modelo espacial, modo de renderizacao e visual_profile sao eixos separados; THREE_D headless preserva ambos, e PIXEL_8_BIT ou PIXEL_16_BIT nunca substituem spatial_model nem render_mode."
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
type SimulationSpec {
|
|
7
|
-
fields {
|
|
8
|
-
objetivo: Texto
|
|
9
|
-
modelo: Texto
|
|
10
|
-
assumptions: Lista
|
|
11
|
-
condicoes_iniciais: Lista
|
|
12
|
-
condicoes_contorno: Lista
|
|
13
|
-
outputs: Lista
|
|
14
|
-
unidades: Lista
|
|
15
|
-
spatial_model: Texto
|
|
16
|
-
render_mode: Texto
|
|
17
|
-
visual_profile: Texto
|
|
18
|
-
validation: Texto
|
|
19
|
-
controle: Texto
|
|
20
|
-
tempo: Texto
|
|
21
|
-
fidelity: Texto
|
|
22
|
-
referencia: Texto
|
|
23
|
-
calibracao: Texto
|
|
24
|
-
tolerancias: Texto
|
|
25
|
-
incerteza: Texto
|
|
26
|
-
telemetria: Texto
|
|
27
|
-
determinism: Texto
|
|
28
|
-
seed: Texto
|
|
29
|
-
snapshot: Texto
|
|
30
|
-
replay: Texto
|
|
31
|
-
}
|
|
32
|
-
invariants {
|
|
33
|
-
objetivo existe
|
|
34
|
-
modelo existe
|
|
35
|
-
assumptions existe
|
|
36
|
-
condicoes_iniciais existe
|
|
37
|
-
condicoes_contorno existe
|
|
38
|
-
outputs existe
|
|
39
|
-
unidades existe
|
|
40
|
-
spatial_model existe
|
|
41
|
-
render_mode existe
|
|
42
|
-
visual_profile existe
|
|
43
|
-
validation existe
|
|
44
|
-
controle existe
|
|
45
|
-
tempo existe
|
|
46
|
-
fidelity existe
|
|
47
|
-
incerteza existe
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
task validar_simulacao {
|
|
52
|
-
input {
|
|
53
|
-
objetivo: Texto required
|
|
54
|
-
modelo: Texto required
|
|
55
|
-
assumptions: Lista required
|
|
56
|
-
condicoes_iniciais: Lista required
|
|
57
|
-
condicoes_contorno: Lista required
|
|
58
|
-
outputs: Lista required
|
|
59
|
-
unidades: Lista required
|
|
60
|
-
spatial_model: Texto required
|
|
61
|
-
render_mode: Texto required
|
|
62
|
-
visual_profile: Texto required
|
|
63
|
-
validation: Texto required
|
|
64
|
-
controle: Texto required
|
|
65
|
-
tempo: Texto required
|
|
66
|
-
fidelity: Texto required
|
|
67
|
-
referencia: Texto required
|
|
68
|
-
calibracao: Texto required
|
|
69
|
-
tolerancias: Texto required
|
|
70
|
-
incerteza: Texto required
|
|
71
|
-
telemetria: Texto required
|
|
72
|
-
determinism: Texto
|
|
73
|
-
seed: Texto
|
|
74
|
-
snapshot: Texto
|
|
75
|
-
replay: Texto
|
|
76
|
-
scenario_id: Texto
|
|
77
|
-
acceptance: Texto
|
|
78
|
-
batch: Texto
|
|
79
|
-
replications: Inteiro
|
|
80
|
-
seed_strategy: Texto
|
|
81
|
-
aggregation: Texto
|
|
82
|
-
resource_budget: Texto
|
|
83
|
-
stop_condition: Texto
|
|
84
|
-
authority_boundary: Texto
|
|
85
|
-
fail_safe: Texto
|
|
86
|
-
human_takeover: Texto
|
|
87
|
-
isolamento: Texto
|
|
88
|
-
}
|
|
89
|
-
output {
|
|
90
|
-
aprovado: Booleano
|
|
91
|
-
bloqueios: Lista
|
|
92
|
-
}
|
|
93
|
-
rules {
|
|
94
|
-
modelo deve_ser testavel
|
|
95
|
-
assumptions deve_ser nao_vazio
|
|
96
|
-
condicoes_iniciais deve_ser nao_vazio
|
|
97
|
-
condicoes_contorno deve_ser nao_vazio
|
|
98
|
-
outputs deve_ser observaveis
|
|
99
|
-
unidades deve_ser explicitas
|
|
100
|
-
spatial_model deve_ser em [NON_SPATIAL, TWO_D, TWO_POINT_FIVE_D, THREE_D]
|
|
101
|
-
render_mode deve_ser em [HEADLESS, TEXT, VISUAL, XR]
|
|
102
|
-
visual_profile deve_ser em [NONE, PIXEL_8_BIT, PIXEL_16_BIT, RASTER, VECTOR, STYLIZED, REALISTIC]
|
|
103
|
-
spatial_model deve_ser separado_de render_mode_e_visual_profile
|
|
104
|
-
render_mode deve_ser exigir_spatial_model_THREE_D_quando_XR
|
|
105
|
-
render_mode deve_ser exigir_visual_profile_NONE_quando_HEADLESS_ou_TEXT
|
|
106
|
-
validation deve_ser testavel
|
|
107
|
-
controle deve_ser em [HUMAN, SCRIPTED, AI, HYBRID, AUTONOMOUS, UNCONTROLLED]
|
|
108
|
-
tempo deve_ser explicito
|
|
109
|
-
fidelity deve_ser em [ARCADE, STYLIZED, SYSTEMIC, REALISTIC, CALIBRATED]
|
|
110
|
-
referencia deve_ser rastreavel
|
|
111
|
-
calibracao deve_ser ter_metodo_reproduzivel
|
|
112
|
-
tolerancias deve_ser numericas_com_unidade
|
|
113
|
-
incerteza deve_ser declarada
|
|
114
|
-
telemetria deve_ser observavel
|
|
115
|
-
determinism deve_ser exigir_seed_fixed_step_snapshot_e_replay_quando_declarado
|
|
116
|
-
scenario_id deve_ser ligado_a_condicoes_e_acceptance_quando_fornecido
|
|
117
|
-
batch deve_ser exigir_replications_seed_strategy_aggregation_resource_budget_e_stop_condition_quando_fornecido
|
|
118
|
-
controle deve_ser exigir_authority_boundary_resource_budget_stop_condition_fail_safe_human_takeover_e_isolamento_quando_AUTONOMOUS_ou_UNCONTROLLED
|
|
119
|
-
}
|
|
120
|
-
effects {
|
|
121
|
-
auditoria simulation_profile_exemplo criticidade = media
|
|
122
|
-
}
|
|
123
|
-
forbidden {
|
|
124
|
-
PIXEL_8_BIT_como_spatial_model_ou_render_mode
|
|
125
|
-
PIXEL_16_BIT_como_spatial_model_ou_render_mode
|
|
126
|
-
aparencia_visual_provar_fidelidade
|
|
127
|
-
calibracao_sem_referencia_tolerancia_ou_incerteza
|
|
128
|
-
determinismo_sem_seed_snapshot_e_replay
|
|
129
|
-
autonomia_sem_fronteira_budget_parada_e_fail_safe
|
|
130
|
-
}
|
|
131
|
-
execucao {
|
|
132
|
-
idempotencia: verdadeiro
|
|
133
|
-
timeout: "10s"
|
|
134
|
-
retry: "nenhum"
|
|
135
|
-
criticidade_operacional: media
|
|
136
|
-
}
|
|
137
|
-
guarantees {
|
|
138
|
-
aprovado existe
|
|
139
|
-
bloqueios existe
|
|
140
|
-
}
|
|
141
|
-
tests {
|
|
142
|
-
caso "simulacao 2D retro controlada" {
|
|
143
|
-
given {
|
|
144
|
-
objetivo: "comparar fluxo de trafego"
|
|
145
|
-
modelo: "agentes em grid TWO_D"
|
|
146
|
-
assumptions: "velocidade limitada"
|
|
147
|
-
condicoes_iniciais: "100 agentes"
|
|
148
|
-
condicoes_contorno: "bordas fechadas"
|
|
149
|
-
outputs: "tempo medio e congestionamento"
|
|
150
|
-
unidades: "segundos metros agentes"
|
|
151
|
-
spatial_model: "TWO_D"
|
|
152
|
-
render_mode: "VISUAL"
|
|
153
|
-
visual_profile: "PIXEL_16_BIT"
|
|
154
|
-
validation: "comparar outputs com baseline e tolerancia"
|
|
155
|
-
controle: "HUMAN"
|
|
156
|
-
tempo: "FIXED_STEP"
|
|
157
|
-
fidelity: "SYSTEMIC"
|
|
158
|
-
referencia: "baseline versionada"
|
|
159
|
-
calibracao: "metodo reproduzivel"
|
|
160
|
-
tolerancias: "erro <= 2 percent"
|
|
161
|
-
incerteza: "intervalo de confianca"
|
|
162
|
-
telemetria: "metricas por tick"
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
expect {
|
|
166
|
-
sucesso: verdadeiro
|
|
167
|
-
aprovado: verdadeiro
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
caso "simulacao espacial 3D headless autonoma" {
|
|
172
|
-
given {
|
|
173
|
-
objetivo: "validar estabilidade orbital"
|
|
174
|
-
modelo: "mundo espacial THREE_D sem renderer"
|
|
175
|
-
assumptions: "massa constante"
|
|
176
|
-
condicoes_iniciais: "seed e snapshot inicial"
|
|
177
|
-
condicoes_contorno: "limite orbital"
|
|
178
|
-
outputs: "state digest e result digest"
|
|
179
|
-
unidades: "metros segundos quilogramas"
|
|
180
|
-
spatial_model: "THREE_D"
|
|
181
|
-
render_mode: "HEADLESS"
|
|
182
|
-
visual_profile: "NONE"
|
|
183
|
-
validation: "invariantes orbitais e comparacao com dataset"
|
|
184
|
-
controle: "AUTONOMOUS"
|
|
185
|
-
tempo: "FIXED_STEP"
|
|
186
|
-
fidelity: "CALIBRATED"
|
|
187
|
-
referencia: "dataset versionado"
|
|
188
|
-
calibracao: "metodo reproduzivel"
|
|
189
|
-
tolerancias: "erro <= 1 percent"
|
|
190
|
-
incerteza: "intervalo de confianca"
|
|
191
|
-
telemetria: "event log por tick"
|
|
192
|
-
determinism: "SEEDED"
|
|
193
|
-
seed: "42"
|
|
194
|
-
snapshot: "state_digest"
|
|
195
|
-
replay: "event_log"
|
|
196
|
-
resource_budget: "limite de CPU e memoria"
|
|
197
|
-
stop_condition: "maximo de 10000 ticks"
|
|
198
|
-
authority_boundary: "sem escrita externa"
|
|
199
|
-
fail_safe: "kill switch"
|
|
200
|
-
human_takeover: "operador pode interromper"
|
|
201
|
-
isolamento: "sandbox local"
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
expect {
|
|
205
|
-
sucesso: verdadeiro
|
|
206
|
-
aprovado: verdadeiro
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
1
|
+
module exemplos.profile.simulation {
|
|
2
|
+
docs {
|
|
3
|
+
resumo: "Starter do Profile Simulation com contrato primeiro. Modelo espacial, modo de renderizacao e visual_profile sao eixos separados; THREE_D headless preserva ambos, e PIXEL_8_BIT ou PIXEL_16_BIT nunca substituem spatial_model nem render_mode."
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
type SimulationSpec {
|
|
7
|
+
fields {
|
|
8
|
+
objetivo: Texto
|
|
9
|
+
modelo: Texto
|
|
10
|
+
assumptions: Lista
|
|
11
|
+
condicoes_iniciais: Lista
|
|
12
|
+
condicoes_contorno: Lista
|
|
13
|
+
outputs: Lista
|
|
14
|
+
unidades: Lista
|
|
15
|
+
spatial_model: Texto
|
|
16
|
+
render_mode: Texto
|
|
17
|
+
visual_profile: Texto
|
|
18
|
+
validation: Texto
|
|
19
|
+
controle: Texto
|
|
20
|
+
tempo: Texto
|
|
21
|
+
fidelity: Texto
|
|
22
|
+
referencia: Texto
|
|
23
|
+
calibracao: Texto
|
|
24
|
+
tolerancias: Texto
|
|
25
|
+
incerteza: Texto
|
|
26
|
+
telemetria: Texto
|
|
27
|
+
determinism: Texto
|
|
28
|
+
seed: Texto
|
|
29
|
+
snapshot: Texto
|
|
30
|
+
replay: Texto
|
|
31
|
+
}
|
|
32
|
+
invariants {
|
|
33
|
+
objetivo existe
|
|
34
|
+
modelo existe
|
|
35
|
+
assumptions existe
|
|
36
|
+
condicoes_iniciais existe
|
|
37
|
+
condicoes_contorno existe
|
|
38
|
+
outputs existe
|
|
39
|
+
unidades existe
|
|
40
|
+
spatial_model existe
|
|
41
|
+
render_mode existe
|
|
42
|
+
visual_profile existe
|
|
43
|
+
validation existe
|
|
44
|
+
controle existe
|
|
45
|
+
tempo existe
|
|
46
|
+
fidelity existe
|
|
47
|
+
incerteza existe
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
task validar_simulacao {
|
|
52
|
+
input {
|
|
53
|
+
objetivo: Texto required
|
|
54
|
+
modelo: Texto required
|
|
55
|
+
assumptions: Lista required
|
|
56
|
+
condicoes_iniciais: Lista required
|
|
57
|
+
condicoes_contorno: Lista required
|
|
58
|
+
outputs: Lista required
|
|
59
|
+
unidades: Lista required
|
|
60
|
+
spatial_model: Texto required
|
|
61
|
+
render_mode: Texto required
|
|
62
|
+
visual_profile: Texto required
|
|
63
|
+
validation: Texto required
|
|
64
|
+
controle: Texto required
|
|
65
|
+
tempo: Texto required
|
|
66
|
+
fidelity: Texto required
|
|
67
|
+
referencia: Texto required
|
|
68
|
+
calibracao: Texto required
|
|
69
|
+
tolerancias: Texto required
|
|
70
|
+
incerteza: Texto required
|
|
71
|
+
telemetria: Texto required
|
|
72
|
+
determinism: Texto
|
|
73
|
+
seed: Texto
|
|
74
|
+
snapshot: Texto
|
|
75
|
+
replay: Texto
|
|
76
|
+
scenario_id: Texto
|
|
77
|
+
acceptance: Texto
|
|
78
|
+
batch: Texto
|
|
79
|
+
replications: Inteiro
|
|
80
|
+
seed_strategy: Texto
|
|
81
|
+
aggregation: Texto
|
|
82
|
+
resource_budget: Texto
|
|
83
|
+
stop_condition: Texto
|
|
84
|
+
authority_boundary: Texto
|
|
85
|
+
fail_safe: Texto
|
|
86
|
+
human_takeover: Texto
|
|
87
|
+
isolamento: Texto
|
|
88
|
+
}
|
|
89
|
+
output {
|
|
90
|
+
aprovado: Booleano
|
|
91
|
+
bloqueios: Lista
|
|
92
|
+
}
|
|
93
|
+
rules {
|
|
94
|
+
modelo deve_ser testavel
|
|
95
|
+
assumptions deve_ser nao_vazio
|
|
96
|
+
condicoes_iniciais deve_ser nao_vazio
|
|
97
|
+
condicoes_contorno deve_ser nao_vazio
|
|
98
|
+
outputs deve_ser observaveis
|
|
99
|
+
unidades deve_ser explicitas
|
|
100
|
+
spatial_model deve_ser em [NON_SPATIAL, TWO_D, TWO_POINT_FIVE_D, THREE_D]
|
|
101
|
+
render_mode deve_ser em [HEADLESS, TEXT, VISUAL, XR]
|
|
102
|
+
visual_profile deve_ser em [NONE, PIXEL_8_BIT, PIXEL_16_BIT, RASTER, VECTOR, STYLIZED, REALISTIC]
|
|
103
|
+
spatial_model deve_ser separado_de render_mode_e_visual_profile
|
|
104
|
+
render_mode deve_ser exigir_spatial_model_THREE_D_quando_XR
|
|
105
|
+
render_mode deve_ser exigir_visual_profile_NONE_quando_HEADLESS_ou_TEXT
|
|
106
|
+
validation deve_ser testavel
|
|
107
|
+
controle deve_ser em [HUMAN, SCRIPTED, AI, HYBRID, AUTONOMOUS, UNCONTROLLED]
|
|
108
|
+
tempo deve_ser explicito
|
|
109
|
+
fidelity deve_ser em [ARCADE, STYLIZED, SYSTEMIC, REALISTIC, CALIBRATED]
|
|
110
|
+
referencia deve_ser rastreavel
|
|
111
|
+
calibracao deve_ser ter_metodo_reproduzivel
|
|
112
|
+
tolerancias deve_ser numericas_com_unidade
|
|
113
|
+
incerteza deve_ser declarada
|
|
114
|
+
telemetria deve_ser observavel
|
|
115
|
+
determinism deve_ser exigir_seed_fixed_step_snapshot_e_replay_quando_declarado
|
|
116
|
+
scenario_id deve_ser ligado_a_condicoes_e_acceptance_quando_fornecido
|
|
117
|
+
batch deve_ser exigir_replications_seed_strategy_aggregation_resource_budget_e_stop_condition_quando_fornecido
|
|
118
|
+
controle deve_ser exigir_authority_boundary_resource_budget_stop_condition_fail_safe_human_takeover_e_isolamento_quando_AUTONOMOUS_ou_UNCONTROLLED
|
|
119
|
+
}
|
|
120
|
+
effects {
|
|
121
|
+
auditoria simulation_profile_exemplo criticidade = media
|
|
122
|
+
}
|
|
123
|
+
forbidden {
|
|
124
|
+
PIXEL_8_BIT_como_spatial_model_ou_render_mode
|
|
125
|
+
PIXEL_16_BIT_como_spatial_model_ou_render_mode
|
|
126
|
+
aparencia_visual_provar_fidelidade
|
|
127
|
+
calibracao_sem_referencia_tolerancia_ou_incerteza
|
|
128
|
+
determinismo_sem_seed_snapshot_e_replay
|
|
129
|
+
autonomia_sem_fronteira_budget_parada_e_fail_safe
|
|
130
|
+
}
|
|
131
|
+
execucao {
|
|
132
|
+
idempotencia: verdadeiro
|
|
133
|
+
timeout: "10s"
|
|
134
|
+
retry: "nenhum"
|
|
135
|
+
criticidade_operacional: media
|
|
136
|
+
}
|
|
137
|
+
guarantees {
|
|
138
|
+
aprovado existe
|
|
139
|
+
bloqueios existe
|
|
140
|
+
}
|
|
141
|
+
tests {
|
|
142
|
+
caso "simulacao 2D retro controlada" {
|
|
143
|
+
given {
|
|
144
|
+
objetivo: "comparar fluxo de trafego"
|
|
145
|
+
modelo: "agentes em grid TWO_D"
|
|
146
|
+
assumptions: "velocidade limitada"
|
|
147
|
+
condicoes_iniciais: "100 agentes"
|
|
148
|
+
condicoes_contorno: "bordas fechadas"
|
|
149
|
+
outputs: "tempo medio e congestionamento"
|
|
150
|
+
unidades: "segundos metros agentes"
|
|
151
|
+
spatial_model: "TWO_D"
|
|
152
|
+
render_mode: "VISUAL"
|
|
153
|
+
visual_profile: "PIXEL_16_BIT"
|
|
154
|
+
validation: "comparar outputs com baseline e tolerancia"
|
|
155
|
+
controle: "HUMAN"
|
|
156
|
+
tempo: "FIXED_STEP"
|
|
157
|
+
fidelity: "SYSTEMIC"
|
|
158
|
+
referencia: "baseline versionada"
|
|
159
|
+
calibracao: "metodo reproduzivel"
|
|
160
|
+
tolerancias: "erro <= 2 percent"
|
|
161
|
+
incerteza: "intervalo de confianca"
|
|
162
|
+
telemetria: "metricas por tick"
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
expect {
|
|
166
|
+
sucesso: verdadeiro
|
|
167
|
+
aprovado: verdadeiro
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
caso "simulacao espacial 3D headless autonoma" {
|
|
172
|
+
given {
|
|
173
|
+
objetivo: "validar estabilidade orbital"
|
|
174
|
+
modelo: "mundo espacial THREE_D sem renderer"
|
|
175
|
+
assumptions: "massa constante"
|
|
176
|
+
condicoes_iniciais: "seed e snapshot inicial"
|
|
177
|
+
condicoes_contorno: "limite orbital"
|
|
178
|
+
outputs: "state digest e result digest"
|
|
179
|
+
unidades: "metros segundos quilogramas"
|
|
180
|
+
spatial_model: "THREE_D"
|
|
181
|
+
render_mode: "HEADLESS"
|
|
182
|
+
visual_profile: "NONE"
|
|
183
|
+
validation: "invariantes orbitais e comparacao com dataset"
|
|
184
|
+
controle: "AUTONOMOUS"
|
|
185
|
+
tempo: "FIXED_STEP"
|
|
186
|
+
fidelity: "CALIBRATED"
|
|
187
|
+
referencia: "dataset versionado"
|
|
188
|
+
calibracao: "metodo reproduzivel"
|
|
189
|
+
tolerancias: "erro <= 1 percent"
|
|
190
|
+
incerteza: "intervalo de confianca"
|
|
191
|
+
telemetria: "event log por tick"
|
|
192
|
+
determinism: "SEEDED"
|
|
193
|
+
seed: "42"
|
|
194
|
+
snapshot: "state_digest"
|
|
195
|
+
replay: "event_log"
|
|
196
|
+
resource_budget: "limite de CPU e memoria"
|
|
197
|
+
stop_condition: "maximo de 10000 ticks"
|
|
198
|
+
authority_boundary: "sem escrita externa"
|
|
199
|
+
fail_safe: "kill switch"
|
|
200
|
+
human_takeover: "operador pode interromper"
|
|
201
|
+
isolamento: "sandbox local"
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
expect {
|
|
205
|
+
sucesso: verdadeiro
|
|
206
|
+
aprovado: verdadeiro
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
# Interactive system examples
|
|
2
|
-
|
|
3
|
-
This directory exercises the same declarative control plane across games and simulations. Spatial model, render mode, visual profile, fidelity, control, time, and determinism are independent axes. In particular, `PIXEL_8_BIT` and `PIXEL_16_BIT` are visual profiles attached to a `TWO_D` spatial model and `VISUAL` rendering; they are not spatial models or render modes.
|
|
4
|
-
|
|
5
|
-
## Coverage matrix
|
|
6
|
-
|
|
7
|
-
| Fixture | Kind | Spatial model | Render mode | Visual profile | Fidelity | Control | Time |
|
|
8
|
-
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
9
|
-
| `game-3d-human.json` | Game | 3D | Visual | Realistic | Systemic | Human | Real time |
|
|
10
|
-
| `game-2d.json` | Game | 2D | Visual | Vector | Systemic | Human | Fixed step |
|
|
11
|
-
| `game-pixel-8-bit.json` | Game | 2D | Visual | Pixel 8-bit | Arcade | Human | Fixed step |
|
|
12
|
-
| `game-pixel-16-bit.json` | Game | 2D | Visual | Pixel 16-bit | Stylized | Human | Fixed step |
|
|
13
|
-
| `game-xr-human.json` | Game | 3D | XR | Realistic | Stylized | Human | Real time |
|
|
14
|
-
| `hybrid-2-5d.json` | Hybrid | 2.5D | Visual | Stylized | Systemic | Hybrid | Fixed step |
|
|
15
|
-
| `simulation-3d-calibrated-autonomous.json` | Simulation | 3D | Visual | Realistic | Calibrated | Autonomous | Fixed step |
|
|
16
|
-
| `simulation-2d-controlled.json` | Simulation | 2D | Visual | Vector | Systemic | Scripted (controlled) | Fixed step |
|
|
17
|
-
| `simulation-pixel-16-bit.json` | Simulation | 2D | Visual | Pixel 16-bit | Systemic | Uncontrolled | Event driven |
|
|
18
|
-
| `simulation-text-controlled.json` | Simulation | Non-spatial | Text | None | Systemic | Scripted (controlled) | Turn based |
|
|
19
|
-
| `simulation-headless-autonomous-batch.json` | Simulation | Non-spatial | Headless | None | Systemic | Autonomous | Accelerated |
|
|
20
|
-
|
|
21
|
-
This is a representative matrix, not a Cartesian product of every axis. It exercises every public spatial model (`NON_SPATIAL`, `TWO_D`, `TWO_POINT_FIVE_D`, and `THREE_D`) and render mode (`HEADLESS`, `TEXT`, `VISUAL`, and `XR`), while the canonical catalog and automated tests enumerate the complete compatibility surface. The fixtures intentionally cover human, scripted, autonomous, uncontrolled, and hybrid modes, plus realistic, calibrated, vector, headless, and constrained pixel-art surfaces. A visual profile never makes a simulation scientifically valid; the calibrated fixture therefore declares its reference, method, tolerances, uncertainty, and telemetry separately.
|
|
22
|
-
|
|
23
|
-
## Validate and plan
|
|
24
|
-
|
|
25
|
-
From the repository root, after building the CLI:
|
|
26
|
-
|
|
27
|
-
```powershell
|
|
28
|
-
sema interativo validar exemplos/sistemas-interativos/game-3d-human.json --json
|
|
29
|
-
sema interativo planejar exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json --json
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
Run the same validation command for every game and simulation JSON in the coverage matrix. Each fixture declares an explicit compatible adapter composition that covers every planned stage capability. Validation and planning are local and declarative: they do not start an engine, mutate a workspace, or prove that an external run occurred.
|
|
33
|
-
|
|
34
|
-
## Advanced fixtures
|
|
35
|
-
|
|
36
|
-
The `advanced/` directory mirrors the public P0/P1/P2 JSON schemas used by the
|
|
37
|
-
read-only validators and planners:
|
|
38
|
-
|
|
39
|
-
| Fixture | Purpose |
|
|
40
|
-
| --- | --- |
|
|
41
|
-
| `temporal-valid.json` and `temporal-evidence-valid.json` | 4D phases/tracks, order invariant, shot, collision, temporal QA, clean-install/launch/smoke requirements, hardware budget, and a complete supplied structural evidence bundle. |
|
|
42
|
-
| `autonomy-repair-valid.json` | `diagnose -> propose -> simulate -> prove` cycle with a derived recovery token, snapshot, checkpoint, resource lock, and rollback plan. |
|
|
43
|
-
| `playtest-fuzz-valid.json` | Bounded deterministic bot, save/load recovery cases, budgets, stop criteria, and required evidence. |
|
|
44
|
-
| `multiplayer-authority-valid.json` | Server authority, sensitive replicated state, conflict handling, reconnect, and security invariants. |
|
|
45
|
-
| `portability-valid.json` | Cross-engine exact, approximate, and unsupported mappings with explicit losses, fallbacks, acceptance criteria, and rollback-ready version migration. |
|
|
46
|
-
| `distributed-workers-valid.json` | Cook, shader, render, and test DAG with worker capabilities, budgets, leases, heartbeats, checkpoints, and evidence requirements. |
|
|
47
|
-
| `engine-snapshot-before-valid.json` and `engine-snapshot-after-valid.json` | Engine-neutral semantic snapshots for a deterministic local diff. |
|
|
48
|
-
| `asset-provenance-valid.json` | Opaque origin reference, license evidence, hashes, transformations, and derivative lineage. |
|
|
49
|
-
| `editor-state-valid.json` | Supplied editor-state description with scene, selection, mode, dirty state, jobs, plug-ins, modals, and opaque process references. |
|
|
50
|
-
| `job-orchestration-valid.json` | Local queue/lock/budget/heartbeat/checkpoint/resume planning input. |
|
|
51
|
-
| `acceptance-lock-valid.json` and `acceptance-context-evaluate-valid.json` | Artifact, scene, and time-range acceptance binding plus an evaluation context. |
|
|
52
|
-
| `multimodal-evidence-valid.json` | Ten typed supplied channels with an independent-verifier descriptor and decision record. |
|
|
53
|
-
| `control-run-definition-valid.json` and `control-run-valid.json` | A complete local binding across definition, canonical plan, temporal pipeline, validation contract, schema inputs, evidence, and rerun validator result. |
|
|
54
|
-
|
|
55
|
-
Experience IR itself is represented by `experience-ir-valid.json` in the parent
|
|
56
|
-
directory. Its JSON serialization is native; CBOR remains an external-codec
|
|
57
|
-
path.
|
|
58
|
-
|
|
59
|
-
The advanced files are synthetic validation inputs. In particular,
|
|
60
|
-
`editor-state-valid.json` is **not** proof that an editor was inspected, and
|
|
61
|
-
`multimodal-evidence-valid.json` is **not** captured runtime evidence. The CLI
|
|
62
|
-
does not detect or execute engines, editors, plug-ins, verifiers, processes, or
|
|
63
|
-
workers when reading them.
|
|
64
|
-
|
|
65
|
-
The control-run fixtures are templates for deterministic binding. The plan and
|
|
66
|
-
result files are intentionally generated by the CLI during tests instead of
|
|
67
|
-
being checked in as stale derived artifacts. See `validar-control-run` in
|
|
68
|
-
`docs/sistemas-interativos.md` for the full command.
|
|
69
|
-
|
|
70
|
-
## Adapter protocol records
|
|
71
|
-
|
|
72
|
-
- `protocol-read-only-valid.json` models a successful read-only `DETECT -> PROBE -> SNAPSHOT -> PLAN -> VALIDATE -> EVIDENCE` record.
|
|
73
|
-
- `protocol-mutating-rollback-valid.json` models a mutating adapter whose validation failed and whose rollback completed with a declared rollback evidence identifier.
|
|
74
|
-
|
|
75
|
-
Validate them with:
|
|
76
|
-
|
|
77
|
-
```powershell
|
|
78
|
-
sema interativo validar-protocolo exemplos/sistemas-interativos/protocol-read-only-valid.json --json
|
|
79
|
-
sema interativo validar-protocolo exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json --json
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
The protocol fixtures use real SHA-256 digests of two explicit UTF-8 literals:
|
|
83
|
-
|
|
84
|
-
| Literal | SHA-256 |
|
|
85
|
-
| --- | --- |
|
|
86
|
-
| `fixture:protocol-input` | `sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082` |
|
|
87
|
-
| `fixture:protocol-output` | `sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d` |
|
|
88
|
-
|
|
89
|
-
Those hashes exist only to exercise protocol structure. They are not runtime observations, artifact evidence, signatures, or authoritative proof.
|
|
90
|
-
|
|
91
|
-
## Evidence boundary
|
|
92
|
-
|
|
93
|
-
No core pipeline evidence bundle claiming a real engine run is included. The
|
|
94
|
-
advanced temporal and multimodal records are explicitly synthetic validator
|
|
95
|
-
fixtures. In production, create evidence only from actual runner or adapter
|
|
96
|
-
observations, bind every observation to the selected producer adapter
|
|
97
|
-
ID/version and the exact definition/plan digests, and provide non-empty
|
|
98
|
-
observation data. Even a local `STRUCTURALLY_COMPLETE` result keeps
|
|
99
|
-
`completed: false` and remains non-authoritative until an external trust layer
|
|
100
|
-
supplies the required attestation.
|
|
1
|
+
# Interactive system examples
|
|
2
|
+
|
|
3
|
+
This directory exercises the same declarative control plane across games and simulations. Spatial model, render mode, visual profile, fidelity, control, time, and determinism are independent axes. In particular, `PIXEL_8_BIT` and `PIXEL_16_BIT` are visual profiles attached to a `TWO_D` spatial model and `VISUAL` rendering; they are not spatial models or render modes.
|
|
4
|
+
|
|
5
|
+
## Coverage matrix
|
|
6
|
+
|
|
7
|
+
| Fixture | Kind | Spatial model | Render mode | Visual profile | Fidelity | Control | Time |
|
|
8
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
9
|
+
| `game-3d-human.json` | Game | 3D | Visual | Realistic | Systemic | Human | Real time |
|
|
10
|
+
| `game-2d.json` | Game | 2D | Visual | Vector | Systemic | Human | Fixed step |
|
|
11
|
+
| `game-pixel-8-bit.json` | Game | 2D | Visual | Pixel 8-bit | Arcade | Human | Fixed step |
|
|
12
|
+
| `game-pixel-16-bit.json` | Game | 2D | Visual | Pixel 16-bit | Stylized | Human | Fixed step |
|
|
13
|
+
| `game-xr-human.json` | Game | 3D | XR | Realistic | Stylized | Human | Real time |
|
|
14
|
+
| `hybrid-2-5d.json` | Hybrid | 2.5D | Visual | Stylized | Systemic | Hybrid | Fixed step |
|
|
15
|
+
| `simulation-3d-calibrated-autonomous.json` | Simulation | 3D | Visual | Realistic | Calibrated | Autonomous | Fixed step |
|
|
16
|
+
| `simulation-2d-controlled.json` | Simulation | 2D | Visual | Vector | Systemic | Scripted (controlled) | Fixed step |
|
|
17
|
+
| `simulation-pixel-16-bit.json` | Simulation | 2D | Visual | Pixel 16-bit | Systemic | Uncontrolled | Event driven |
|
|
18
|
+
| `simulation-text-controlled.json` | Simulation | Non-spatial | Text | None | Systemic | Scripted (controlled) | Turn based |
|
|
19
|
+
| `simulation-headless-autonomous-batch.json` | Simulation | Non-spatial | Headless | None | Systemic | Autonomous | Accelerated |
|
|
20
|
+
|
|
21
|
+
This is a representative matrix, not a Cartesian product of every axis. It exercises every public spatial model (`NON_SPATIAL`, `TWO_D`, `TWO_POINT_FIVE_D`, and `THREE_D`) and render mode (`HEADLESS`, `TEXT`, `VISUAL`, and `XR`), while the canonical catalog and automated tests enumerate the complete compatibility surface. The fixtures intentionally cover human, scripted, autonomous, uncontrolled, and hybrid modes, plus realistic, calibrated, vector, headless, and constrained pixel-art surfaces. A visual profile never makes a simulation scientifically valid; the calibrated fixture therefore declares its reference, method, tolerances, uncertainty, and telemetry separately.
|
|
22
|
+
|
|
23
|
+
## Validate and plan
|
|
24
|
+
|
|
25
|
+
From the repository root, after building the CLI:
|
|
26
|
+
|
|
27
|
+
```powershell
|
|
28
|
+
sema interativo validar exemplos/sistemas-interativos/game-3d-human.json --json
|
|
29
|
+
sema interativo planejar exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json --json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Run the same validation command for every game and simulation JSON in the coverage matrix. Each fixture declares an explicit compatible adapter composition that covers every planned stage capability. Validation and planning are local and declarative: they do not start an engine, mutate a workspace, or prove that an external run occurred.
|
|
33
|
+
|
|
34
|
+
## Advanced fixtures
|
|
35
|
+
|
|
36
|
+
The `advanced/` directory mirrors the public P0/P1/P2 JSON schemas used by the
|
|
37
|
+
read-only validators and planners:
|
|
38
|
+
|
|
39
|
+
| Fixture | Purpose |
|
|
40
|
+
| --- | --- |
|
|
41
|
+
| `temporal-valid.json` and `temporal-evidence-valid.json` | 4D phases/tracks, order invariant, shot, collision, temporal QA, clean-install/launch/smoke requirements, hardware budget, and a complete supplied structural evidence bundle. |
|
|
42
|
+
| `autonomy-repair-valid.json` | `diagnose -> propose -> simulate -> prove` cycle with a derived recovery token, snapshot, checkpoint, resource lock, and rollback plan. |
|
|
43
|
+
| `playtest-fuzz-valid.json` | Bounded deterministic bot, save/load recovery cases, budgets, stop criteria, and required evidence. |
|
|
44
|
+
| `multiplayer-authority-valid.json` | Server authority, sensitive replicated state, conflict handling, reconnect, and security invariants. |
|
|
45
|
+
| `portability-valid.json` | Cross-engine exact, approximate, and unsupported mappings with explicit losses, fallbacks, acceptance criteria, and rollback-ready version migration. |
|
|
46
|
+
| `distributed-workers-valid.json` | Cook, shader, render, and test DAG with worker capabilities, budgets, leases, heartbeats, checkpoints, and evidence requirements. |
|
|
47
|
+
| `engine-snapshot-before-valid.json` and `engine-snapshot-after-valid.json` | Engine-neutral semantic snapshots for a deterministic local diff. |
|
|
48
|
+
| `asset-provenance-valid.json` | Opaque origin reference, license evidence, hashes, transformations, and derivative lineage. |
|
|
49
|
+
| `editor-state-valid.json` | Supplied editor-state description with scene, selection, mode, dirty state, jobs, plug-ins, modals, and opaque process references. |
|
|
50
|
+
| `job-orchestration-valid.json` | Local queue/lock/budget/heartbeat/checkpoint/resume planning input. |
|
|
51
|
+
| `acceptance-lock-valid.json` and `acceptance-context-evaluate-valid.json` | Artifact, scene, and time-range acceptance binding plus an evaluation context. |
|
|
52
|
+
| `multimodal-evidence-valid.json` | Ten typed supplied channels with an independent-verifier descriptor and decision record. |
|
|
53
|
+
| `control-run-definition-valid.json` and `control-run-valid.json` | A complete local binding across definition, canonical plan, temporal pipeline, validation contract, schema inputs, evidence, and rerun validator result. |
|
|
54
|
+
|
|
55
|
+
Experience IR itself is represented by `experience-ir-valid.json` in the parent
|
|
56
|
+
directory. Its JSON serialization is native; CBOR remains an external-codec
|
|
57
|
+
path.
|
|
58
|
+
|
|
59
|
+
The advanced files are synthetic validation inputs. In particular,
|
|
60
|
+
`editor-state-valid.json` is **not** proof that an editor was inspected, and
|
|
61
|
+
`multimodal-evidence-valid.json` is **not** captured runtime evidence. The CLI
|
|
62
|
+
does not detect or execute engines, editors, plug-ins, verifiers, processes, or
|
|
63
|
+
workers when reading them.
|
|
64
|
+
|
|
65
|
+
The control-run fixtures are templates for deterministic binding. The plan and
|
|
66
|
+
result files are intentionally generated by the CLI during tests instead of
|
|
67
|
+
being checked in as stale derived artifacts. See `validar-control-run` in
|
|
68
|
+
`docs/sistemas-interativos.md` for the full command.
|
|
69
|
+
|
|
70
|
+
## Adapter protocol records
|
|
71
|
+
|
|
72
|
+
- `protocol-read-only-valid.json` models a successful read-only `DETECT -> PROBE -> SNAPSHOT -> PLAN -> VALIDATE -> EVIDENCE` record.
|
|
73
|
+
- `protocol-mutating-rollback-valid.json` models a mutating adapter whose validation failed and whose rollback completed with a declared rollback evidence identifier.
|
|
74
|
+
|
|
75
|
+
Validate them with:
|
|
76
|
+
|
|
77
|
+
```powershell
|
|
78
|
+
sema interativo validar-protocolo exemplos/sistemas-interativos/protocol-read-only-valid.json --json
|
|
79
|
+
sema interativo validar-protocolo exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json --json
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
The protocol fixtures use real SHA-256 digests of two explicit UTF-8 literals:
|
|
83
|
+
|
|
84
|
+
| Literal | SHA-256 |
|
|
85
|
+
| --- | --- |
|
|
86
|
+
| `fixture:protocol-input` | `sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082` |
|
|
87
|
+
| `fixture:protocol-output` | `sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d` |
|
|
88
|
+
|
|
89
|
+
Those hashes exist only to exercise protocol structure. They are not runtime observations, artifact evidence, signatures, or authoritative proof.
|
|
90
|
+
|
|
91
|
+
## Evidence boundary
|
|
92
|
+
|
|
93
|
+
No core pipeline evidence bundle claiming a real engine run is included. The
|
|
94
|
+
advanced temporal and multimodal records are explicitly synthetic validator
|
|
95
|
+
fixtures. In production, create evidence only from actual runner or adapter
|
|
96
|
+
observations, bind every observation to the selected producer adapter
|
|
97
|
+
ID/version and the exact definition/plan digests, and provide non-empty
|
|
98
|
+
observation data. Even a local `STRUCTURALLY_COMPLETE` result keeps
|
|
99
|
+
`completed: false` and remains non-authoritative until an external trust layer
|
|
100
|
+
supplies the required attestation.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
{
|
|
2
|
-
"artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
3
|
-
"sceneId": "scene.main",
|
|
4
|
-
"timeRange": { "start": 0, "end": 240, "unit": "FRAME" }
|
|
5
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
3
|
+
"sceneId": "scene.main",
|
|
4
|
+
"timeRange": { "start": 0, "end": 240, "unit": "FRAME" }
|
|
5
|
+
}
|