@semacode/cli 2.2.0 → 2.3.1
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/LICENSE +39 -39
- package/README.md +251 -141
- package/dist/agentContext.d.ts +1 -1
- package/dist/agentContextPack.js +6 -1
- package/dist/agentContextTipos.d.ts +4 -2
- package/dist/agentContextTipos.js +7 -0
- package/dist/agentEntryPoints.js +551 -499
- package/dist/angular-consumer-standalone.d.ts +3 -1
- package/dist/angular-consumer-standalone.js +12 -8
- package/dist/comandos.js +4 -0
- package/dist/discovery/catalog.d.ts +11 -0
- package/dist/discovery/catalog.js +521 -0
- package/dist/discovery/command.d.ts +11 -0
- package/dist/discovery/command.js +226 -0
- package/dist/discovery/index.d.ts +5 -0
- package/dist/discovery/index.js +8 -0
- package/dist/discovery/ranker.d.ts +3 -0
- package/dist/discovery/ranker.js +310 -0
- package/dist/discovery/redaction.d.ts +2 -0
- package/dist/discovery/redaction.js +21 -0
- package/dist/discovery/render.d.ts +2 -0
- package/dist/discovery/render.js +100 -0
- package/dist/discovery/types.d.ts +119 -0
- package/dist/discovery/types.js +13 -0
- package/dist/drift.part01.d.ts +32 -2
- package/dist/drift.part01.js +2 -0
- package/dist/drift.part04.d.ts +3 -2
- package/dist/drift.part04.js +6 -3
- package/dist/drift.part05.d.ts +2 -1
- package/dist/drift.part05.js +4 -3
- package/dist/drift.part06.d.ts +2 -1
- package/dist/drift.part06.js +9 -5
- package/dist/drift.part07.d.ts +11 -10
- package/dist/drift.part07.js +40 -30
- package/dist/drift.part08.d.ts +2 -1
- package/dist/drift.part08.js +4 -3
- package/dist/drift.part11.js +71 -6
- package/dist/drift.part12.js +14 -1
- package/dist/drift.part13.d.ts +42 -7
- package/dist/drift.part13.js +660 -36
- package/dist/driftCache.d.ts +49 -0
- package/dist/driftCache.js +311 -0
- package/dist/driftCacheIncremental.d.ts +98 -0
- package/dist/driftCacheIncremental.js +596 -0
- package/dist/driftCatalogo.d.ts +91 -0
- package/dist/driftCatalogo.js +657 -0
- package/dist/driftCatalogoPersistente.d.ts +8 -0
- package/dist/driftCatalogoPersistente.js +77 -0
- package/dist/driftEscopo.d.ts +23 -0
- package/dist/driftEscopo.js +563 -0
- package/dist/driftEscopoReferencias.d.ts +4 -0
- package/dist/driftEscopoReferencias.js +265 -0
- package/dist/driftOrcamento.d.ts +12 -0
- package/dist/driftOrcamento.js +19 -3
- package/dist/execucoesExternas.js +5 -19
- package/dist/exemplosOficiais.js +29 -8
- package/dist/iaPrompts.d.ts +1 -1
- package/dist/iaPrompts.js +310 -307
- package/dist/index.d.ts +2 -0
- package/dist/index.js +23 -5
- package/dist/index.part01.d.ts +17 -2
- package/dist/index.part01.js +119 -8
- package/dist/index.part02.js +21 -21
- package/dist/index.part03.d.ts +2 -2
- package/dist/index.part03.js +14 -3
- package/dist/index.part04.d.ts +2 -2
- package/dist/index.part04.js +113 -101
- package/dist/index.part05.d.ts +1 -1
- package/dist/index.part05.js +99 -22
- package/dist/index.part06.js +6 -2
- package/dist/index.part07.js +24 -24
- package/dist/index.part08.js +1 -1
- package/dist/init/templates.part01.js +393 -393
- package/dist/init/templates.part02.js +189 -189
- package/dist/initTemplatesBackend.js +73 -73
- package/dist/initTemplatesBase.js +81 -80
- package/dist/initTemplatesFlutter.js +137 -137
- package/dist/initTemplatesRuntime.js +350 -350
- package/dist/initTemplatesWeb.js +309 -309
- package/dist/pipelineConteudo/command.js +1 -36
- package/dist/profileArtefatoValidadores.d.ts +3 -2
- package/dist/profileArtefatoValidadores.js +81 -0
- package/dist/profileAuthorTipos.d.ts +4 -3
- package/dist/profileCatalogo.d.ts +5 -5
- package/dist/profileCatalogo.js +30 -0
- package/dist/profileCommand.d.ts +8 -2
- package/dist/profileCommand.js +15 -5
- package/dist/profileRegras.d.ts +5 -5
- package/dist/profileRegras.js +13 -1
- package/dist/profileRulePacks.js +68 -0
- package/dist/projeto.d.ts +1 -1
- package/dist/projetoCarregar.d.ts +2 -2
- package/dist/projetoCarregar.js +47 -24
- package/dist/projetoCatalogo.d.ts +7 -0
- package/dist/projetoCatalogo.js +125 -0
- package/dist/projetoTipos.d.ts +14 -5
- package/dist/sistemasInterativos/adapterProtocol.d.ts +3 -0
- package/dist/sistemasInterativos/adapterProtocol.js +240 -0
- package/dist/sistemasInterativos/advancedCatalog.d.ts +5 -0
- package/dist/sistemasInterativos/advancedCatalog.js +442 -0
- package/dist/sistemasInterativos/autonomy.d.ts +230 -0
- package/dist/sistemasInterativos/autonomy.js +753 -0
- package/dist/sistemasInterativos/canonical.d.ts +3 -0
- package/dist/sistemasInterativos/canonical.js +43 -0
- package/dist/sistemasInterativos/catalog.d.ts +116 -0
- package/dist/sistemasInterativos/catalog.js +543 -0
- package/dist/sistemasInterativos/command.d.ts +7 -0
- package/dist/sistemasInterativos/command.js +311 -0
- package/dist/sistemasInterativos/controlRun.d.ts +56 -0
- package/dist/sistemasInterativos/controlRun.js +391 -0
- package/dist/sistemasInterativos/evidence.d.ts +5 -0
- package/dist/sistemasInterativos/evidence.js +306 -0
- package/dist/sistemasInterativos/experienceIr.d.ts +12 -0
- package/dist/sistemasInterativos/experienceIr.js +895 -0
- package/dist/sistemasInterativos/experienceIrSemantics.d.ts +30 -0
- package/dist/sistemasInterativos/experienceIrSemantics.js +368 -0
- package/dist/sistemasInterativos/experienceIrTypes.d.ts +370 -0
- package/dist/sistemasInterativos/experienceIrTypes.js +5 -0
- package/dist/sistemasInterativos/extensionCommand.d.ts +391 -0
- package/dist/sistemasInterativos/extensionCommand.js +383 -0
- package/dist/sistemasInterativos/index.d.ts +19 -0
- package/dist/sistemasInterativos/index.js +22 -0
- package/dist/sistemasInterativos/operations.d.ts +40 -0
- package/dist/sistemasInterativos/operations.js +1167 -0
- package/dist/sistemasInterativos/operationsTypes.d.ts +297 -0
- package/dist/sistemasInterativos/operationsTypes.js +11 -0
- package/dist/sistemasInterativos/planner.d.ts +2 -0
- package/dist/sistemasInterativos/planner.js +159 -0
- package/dist/sistemasInterativos/portability.d.ts +164 -0
- package/dist/sistemasInterativos/portability.js +539 -0
- package/dist/sistemasInterativos/render.d.ts +3 -0
- package/dist/sistemasInterativos/render.js +179 -0
- package/dist/sistemasInterativos/temporal.d.ts +183 -0
- package/dist/sistemasInterativos/temporal.js +543 -0
- package/dist/sistemasInterativos/types.d.ts +215 -0
- package/dist/sistemasInterativos/types.js +4 -0
- package/dist/sistemasInterativos/validator.d.ts +2 -0
- package/dist/sistemasInterativos/validator.js +305 -0
- package/dist/sync/index.js +35 -35
- package/docs/README.md +34 -28
- package/docs/ai-onboarding.md +62 -62
- package/docs/ai-workflow.md +9 -4
- package/docs/auth.md +26 -26
- package/docs/cli.md +79 -79
- package/docs/commands.md +47 -2
- package/docs/database.md +15 -15
- package/docs/deploy.md +41 -41
- package/docs/descoberta-capacidades.md +106 -0
- package/docs/documentation.md +39 -39
- package/docs/env.md +16 -16
- package/docs/frontend.md +41 -41
- package/docs/getting-started.md +57 -57
- package/docs/i18n.md +15 -15
- package/docs/pipeline-conteudo.md +246 -246
- package/docs/profiles.md +54 -45
- package/docs/repositories.md +43 -43
- package/docs/rollback.md +31 -31
- package/docs/security.md +32 -32
- package/docs/sistemas-interativos.md +376 -0
- package/docs/support.md +8 -8
- package/docs/testing.md +51 -35
- package/docs/vocabulary.md +29 -29
- package/exemplos/agendamento.sema +1 -1
- package/exemplos/assinatura.sema +1 -1
- package/exemplos/auditoria.sema +1 -1
- package/exemplos/autenticacao.sema +1 -1
- package/exemplos/author_obra_comum.sema +1 -1
- package/exemplos/author_tema_sensivel.sema +1 -1
- package/exemplos/automacao.sema +1 -1
- package/exemplos/cadastro_usuario.sema +1 -1
- package/exemplos/calculadora.sema +1 -1
- package/exemplos/crud_simples.sema +1 -1
- package/exemplos/estoque.sema +1 -1
- package/exemplos/exportacao.sema +1 -1
- package/exemplos/fila.sema +1 -1
- package/exemplos/integracao_externa.sema +1 -1
- package/exemplos/multi_tenant.sema +1 -1
- package/exemplos/notificacao.sema +1 -1
- package/exemplos/operacao_estrategia.sema +132 -132
- package/exemplos/operacao_estrategia_discovery.sema +220 -220
- package/exemplos/operacao_estrategia_fluxo.sema +114 -114
- package/exemplos/operacao_estrategia_gates.sema +106 -106
- package/exemplos/operacao_estrategia_quarentena.sema +133 -133
- package/exemplos/operacao_estrategia_rollout.sema +124 -124
- package/exemplos/pagamento.sema +1 -1
- package/exemplos/pagamento_dominio.sema +1 -1
- package/exemplos/pedido.sema +1 -1
- package/exemplos/permissao.sema +1 -1
- package/exemplos/persistencia_vendor_first.sema +1 -1
- 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_conversas.sema +165 -165
- package/exemplos/profile_game.sema +1 -1
- package/exemplos/profile_legal.sema +1 -1
- package/exemplos/profile_ops.sema +1 -1
- package/exemplos/profile_research.sema +1 -1
- package/exemplos/profile_simulation.sema +211 -0
- package/exemplos/profile_software.sema +1 -1
- package/exemplos/profile_workflow_n8n.sema +1 -1
- package/exemplos/relatorio.sema +1 -1
- package/exemplos/replica_analitica_erp.sema +1 -1
- package/exemplos/sistemas-interativos/README.md +100 -0
- package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -0
- package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -0
- package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -0
- package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -0
- package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -0
- package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -0
- package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -0
- package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -0
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -0
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -0
- package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -0
- package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -0
- package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -0
- package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -0
- package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -0
- package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -0
- package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -0
- package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -0
- package/exemplos/sistemas-interativos/game-2d.json +83 -0
- package/exemplos/sistemas-interativos/game-3d-human.json +81 -0
- package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -0
- package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -0
- package/exemplos/sistemas-interativos/game-xr-human.json +80 -0
- package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -0
- package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -0
- package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -0
- package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -0
- package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -0
- package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -0
- package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -0
- package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -0
- package/exemplos/testes_embutidos.sema +1 -1
- package/exemplos/tratamento_erro.sema +1 -1
- package/exemplos/upload_arquivo.sema +1 -1
- package/exemplos/webhook.sema +1 -1
- package/node_modules/@sema/gerador-cpp/dist/index.js +176 -176
- package/node_modules/@sema/gerador-cpp/package.json +1 -1
- package/node_modules/@sema/gerador-css/dist/index.part01.js +10 -10
- package/node_modules/@sema/gerador-css/dist/index.part02.js +460 -460
- package/node_modules/@sema/gerador-dotnet/dist/index.js +169 -169
- package/node_modules/@sema/gerador-dotnet/package.json +1 -1
- package/node_modules/@sema/gerador-html/dist/index.js +17 -17
- package/node_modules/@sema/gerador-lua/dist/index.js +76 -47
- package/node_modules/@sema/gerador-lua/dist/index.js.map +1 -1
- package/node_modules/@sema/gerador-php/dist/index.js +113 -113
- package/node_modules/@sema/gerador-python/dist/index.part02.js +3 -3
- package/node_modules/@sema/gerador-typescript/dist/index.part02.js +11 -11
- package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +42 -42
- package/package.json +3 -3
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "1.0",
|
|
3
|
+
"systemId": "example.game.pixel-16-bit",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"kind": "GAME",
|
|
6
|
+
"spatialModel": "TWO_D",
|
|
7
|
+
"renderMode": "VISUAL",
|
|
8
|
+
"visualProfile": "PIXEL_16_BIT",
|
|
9
|
+
"fidelity": "STYLIZED",
|
|
10
|
+
"controlModes": [
|
|
11
|
+
"HUMAN"
|
|
12
|
+
],
|
|
13
|
+
"timeModel": "FIXED_STEP",
|
|
14
|
+
"determinism": "SEEDED",
|
|
15
|
+
"capabilities": [
|
|
16
|
+
"game.progression.curve",
|
|
17
|
+
"game.progression.exploit",
|
|
18
|
+
"game.progression.model",
|
|
19
|
+
"interactive.control.human",
|
|
20
|
+
"interactive.determinism.seeded",
|
|
21
|
+
"interactive.event.log",
|
|
22
|
+
"interactive.fidelity.stylized",
|
|
23
|
+
"interactive.kind.game",
|
|
24
|
+
"interactive.render.visual",
|
|
25
|
+
"interactive.replay.compare",
|
|
26
|
+
"interactive.runtime.bind",
|
|
27
|
+
"interactive.seed.bind",
|
|
28
|
+
"interactive.smoke.observe",
|
|
29
|
+
"interactive.snapshot.capture",
|
|
30
|
+
"interactive.spatial.two_d",
|
|
31
|
+
"interactive.state.model",
|
|
32
|
+
"interactive.time.fixed_step",
|
|
33
|
+
"interactive.visual.pixel_16_bit",
|
|
34
|
+
"interactive.world.model"
|
|
35
|
+
],
|
|
36
|
+
"pipelines": [
|
|
37
|
+
"interactive.prototype",
|
|
38
|
+
"game.progression",
|
|
39
|
+
"interactive.replay"
|
|
40
|
+
],
|
|
41
|
+
"adapterTargets": [
|
|
42
|
+
"engine.tic80",
|
|
43
|
+
"telemetry.trace.local",
|
|
44
|
+
"validator.replay.local"
|
|
45
|
+
],
|
|
46
|
+
"world": {
|
|
47
|
+
"identity": "side-view action adventure",
|
|
48
|
+
"state": {
|
|
49
|
+
"area": "harbour",
|
|
50
|
+
"abilities": [
|
|
51
|
+
"dash"
|
|
52
|
+
]
|
|
53
|
+
},
|
|
54
|
+
"time": {
|
|
55
|
+
"tickRateHz": 60
|
|
56
|
+
},
|
|
57
|
+
"events": [
|
|
58
|
+
"enemy.defeat",
|
|
59
|
+
"ability.unlock",
|
|
60
|
+
"checkpoint.activate"
|
|
61
|
+
],
|
|
62
|
+
"initialConditions": {
|
|
63
|
+
"area": "harbour",
|
|
64
|
+
"health": 5
|
|
65
|
+
},
|
|
66
|
+
"coordinateSystem": "screen-space origin top-left",
|
|
67
|
+
"grid": "16 px metatiles on a 320x180 canvas",
|
|
68
|
+
"loop": "explore, fight, unlock, return",
|
|
69
|
+
"objective": "restore the harbour beacon",
|
|
70
|
+
"successConditions": [
|
|
71
|
+
"beacon restored"
|
|
72
|
+
],
|
|
73
|
+
"failureConditions": [
|
|
74
|
+
"health reaches zero before a checkpoint"
|
|
75
|
+
],
|
|
76
|
+
"rules": [
|
|
77
|
+
"abilities unlock through declared progression gates",
|
|
78
|
+
"animation frames use the declared sprite budget"
|
|
79
|
+
],
|
|
80
|
+
"seed": 16,
|
|
81
|
+
"snapshot": "checkpoint state",
|
|
82
|
+
"replay": "input transitions and progression events",
|
|
83
|
+
"step": "one 60 Hz tick"
|
|
84
|
+
},
|
|
85
|
+
"budgets": {
|
|
86
|
+
"paletteColors": 256,
|
|
87
|
+
"baseResolution": "320x180",
|
|
88
|
+
"tileSize": "16x16",
|
|
89
|
+
"spriteSize": "16x32 and 32x32",
|
|
90
|
+
"memoryBudgetBytes": 262144,
|
|
91
|
+
"audioProfile": "sampled tracker with eight voices"
|
|
92
|
+
},
|
|
93
|
+
"acceptance": {
|
|
94
|
+
"progression": "every required ability is reachable without sequence breaking",
|
|
95
|
+
"pixelIntegrity": "camera scaling preserves hard pixel edges"
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "1.0",
|
|
3
|
+
"systemId": "example.game.pixel-8-bit",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"kind": "GAME",
|
|
6
|
+
"spatialModel": "TWO_D",
|
|
7
|
+
"renderMode": "VISUAL",
|
|
8
|
+
"visualProfile": "PIXEL_8_BIT",
|
|
9
|
+
"fidelity": "ARCADE",
|
|
10
|
+
"controlModes": [
|
|
11
|
+
"HUMAN"
|
|
12
|
+
],
|
|
13
|
+
"timeModel": "FIXED_STEP",
|
|
14
|
+
"determinism": "SEEDED",
|
|
15
|
+
"capabilities": [
|
|
16
|
+
"interactive.control.human",
|
|
17
|
+
"interactive.determinism.seeded",
|
|
18
|
+
"interactive.event.log",
|
|
19
|
+
"interactive.failure.observe",
|
|
20
|
+
"interactive.fidelity.arcade",
|
|
21
|
+
"interactive.kind.game",
|
|
22
|
+
"interactive.playtest.plan",
|
|
23
|
+
"interactive.render.visual",
|
|
24
|
+
"interactive.replay.compare",
|
|
25
|
+
"interactive.runtime.bind",
|
|
26
|
+
"interactive.runtime.observe",
|
|
27
|
+
"interactive.seed.bind",
|
|
28
|
+
"interactive.smoke.observe",
|
|
29
|
+
"interactive.snapshot.capture",
|
|
30
|
+
"interactive.spatial.two_d",
|
|
31
|
+
"interactive.state.model",
|
|
32
|
+
"interactive.time.fixed_step",
|
|
33
|
+
"interactive.visual.pixel_8_bit",
|
|
34
|
+
"interactive.world.model"
|
|
35
|
+
],
|
|
36
|
+
"pipelines": [
|
|
37
|
+
"interactive.prototype",
|
|
38
|
+
"interactive.playtest",
|
|
39
|
+
"interactive.replay"
|
|
40
|
+
],
|
|
41
|
+
"adapterTargets": [
|
|
42
|
+
"engine.pico8",
|
|
43
|
+
"telemetry.trace.local",
|
|
44
|
+
"validator.replay.local"
|
|
45
|
+
],
|
|
46
|
+
"world": {
|
|
47
|
+
"identity": "compact single-screen platform game",
|
|
48
|
+
"state": {
|
|
49
|
+
"room": 1,
|
|
50
|
+
"score": 0
|
|
51
|
+
},
|
|
52
|
+
"time": {
|
|
53
|
+
"tickRateHz": 30
|
|
54
|
+
},
|
|
55
|
+
"events": [
|
|
56
|
+
"player.jump",
|
|
57
|
+
"coin.collect",
|
|
58
|
+
"player.hit"
|
|
59
|
+
],
|
|
60
|
+
"initialConditions": {
|
|
61
|
+
"room": 1,
|
|
62
|
+
"lives": 3
|
|
63
|
+
},
|
|
64
|
+
"grid": "8 px tiles on a 128x128 canvas",
|
|
65
|
+
"loop": "move, jump, collect, exit",
|
|
66
|
+
"objective": "collect every coin and reach the exit",
|
|
67
|
+
"successConditions": [
|
|
68
|
+
"exit reached after all coins are collected"
|
|
69
|
+
],
|
|
70
|
+
"failureConditions": [
|
|
71
|
+
"all lives exhausted"
|
|
72
|
+
],
|
|
73
|
+
"rules": [
|
|
74
|
+
"integer-aligned sprite positions",
|
|
75
|
+
"no sub-pixel rendering"
|
|
76
|
+
],
|
|
77
|
+
"seed": 8,
|
|
78
|
+
"snapshot": "room state at entry",
|
|
79
|
+
"replay": "button transitions per fixed tick",
|
|
80
|
+
"step": "one 30 Hz tick"
|
|
81
|
+
},
|
|
82
|
+
"budgets": {
|
|
83
|
+
"paletteColors": 16,
|
|
84
|
+
"baseResolution": "128x128",
|
|
85
|
+
"tileSize": "8x8",
|
|
86
|
+
"spriteSize": "8x8 and 16x16",
|
|
87
|
+
"memoryBudgetBytes": 32768,
|
|
88
|
+
"audioProfile": "four-channel chiptune"
|
|
89
|
+
},
|
|
90
|
+
"acceptance": {
|
|
91
|
+
"pixelIntegrity": "sprites and tiles stay on the integer grid",
|
|
92
|
+
"playability": "the full loop is completable with two buttons and a d-pad"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "1.0",
|
|
3
|
+
"systemId": "example.game.xr.human",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"kind": "GAME",
|
|
6
|
+
"spatialModel": "THREE_D",
|
|
7
|
+
"renderMode": "XR",
|
|
8
|
+
"visualProfile": "REALISTIC",
|
|
9
|
+
"fidelity": "STYLIZED",
|
|
10
|
+
"controlModes": [
|
|
11
|
+
"HUMAN"
|
|
12
|
+
],
|
|
13
|
+
"timeModel": "REAL_TIME",
|
|
14
|
+
"determinism": "BEST_EFFORT",
|
|
15
|
+
"capabilities": [
|
|
16
|
+
"interactive.control.human",
|
|
17
|
+
"interactive.determinism.best_effort",
|
|
18
|
+
"interactive.failure.observe",
|
|
19
|
+
"interactive.fidelity.stylized",
|
|
20
|
+
"interactive.kind.game",
|
|
21
|
+
"interactive.playtest.plan",
|
|
22
|
+
"interactive.render.xr",
|
|
23
|
+
"interactive.replay.compare",
|
|
24
|
+
"interactive.runtime.bind",
|
|
25
|
+
"interactive.runtime.observe",
|
|
26
|
+
"interactive.smoke.observe",
|
|
27
|
+
"interactive.spatial.three_d",
|
|
28
|
+
"interactive.state.model",
|
|
29
|
+
"interactive.time.real_time",
|
|
30
|
+
"interactive.visual.realistic",
|
|
31
|
+
"interactive.world.model"
|
|
32
|
+
],
|
|
33
|
+
"pipelines": [
|
|
34
|
+
"interactive.prototype",
|
|
35
|
+
"interactive.playtest"
|
|
36
|
+
],
|
|
37
|
+
"adapterTargets": [
|
|
38
|
+
"engine.godot",
|
|
39
|
+
"telemetry.trace.local",
|
|
40
|
+
"validator.replay.local"
|
|
41
|
+
],
|
|
42
|
+
"world": {
|
|
43
|
+
"identity": "room-scale cooperative repair game",
|
|
44
|
+
"state": {
|
|
45
|
+
"station": "offline",
|
|
46
|
+
"completedRepairs": 0
|
|
47
|
+
},
|
|
48
|
+
"time": {
|
|
49
|
+
"tickRateHz": 90
|
|
50
|
+
},
|
|
51
|
+
"events": [
|
|
52
|
+
"tool.grab",
|
|
53
|
+
"component.install",
|
|
54
|
+
"station.restart"
|
|
55
|
+
],
|
|
56
|
+
"initialConditions": {
|
|
57
|
+
"playerPose": "calibrated-origin",
|
|
58
|
+
"station": "offline"
|
|
59
|
+
},
|
|
60
|
+
"units": "metres",
|
|
61
|
+
"scale": "1 unit = 1 metre",
|
|
62
|
+
"coordinateSystem": "right-handed Y-up room space",
|
|
63
|
+
"loop": "inspect, grab, repair, test",
|
|
64
|
+
"objective": "restart the station",
|
|
65
|
+
"successConditions": [
|
|
66
|
+
"station reports operational"
|
|
67
|
+
],
|
|
68
|
+
"failureConditions": [
|
|
69
|
+
"session safety boundary is breached"
|
|
70
|
+
],
|
|
71
|
+
"rules": [
|
|
72
|
+
"interactions require reachable controller poses",
|
|
73
|
+
"locomotion respects the declared comfort mode"
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
"acceptance": {
|
|
77
|
+
"comfort": "turning and locomotion respect the configured comfort policy",
|
|
78
|
+
"interaction": "all required repair actions are reachable from a calibrated room origin"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "1.0",
|
|
3
|
+
"systemId": "example.hybrid.2-5d.seeded",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"kind": "HYBRID",
|
|
6
|
+
"spatialModel": "TWO_POINT_FIVE_D",
|
|
7
|
+
"renderMode": "VISUAL",
|
|
8
|
+
"visualProfile": "STYLIZED",
|
|
9
|
+
"fidelity": "SYSTEMIC",
|
|
10
|
+
"controlModes": [
|
|
11
|
+
"HYBRID"
|
|
12
|
+
],
|
|
13
|
+
"timeModel": "FIXED_STEP",
|
|
14
|
+
"determinism": "SEEDED",
|
|
15
|
+
"capabilities": [
|
|
16
|
+
"interactive.control.hybrid",
|
|
17
|
+
"interactive.determinism.seeded",
|
|
18
|
+
"interactive.event.log",
|
|
19
|
+
"interactive.failure.observe",
|
|
20
|
+
"interactive.fidelity.systemic",
|
|
21
|
+
"interactive.kind.hybrid",
|
|
22
|
+
"interactive.playtest.plan",
|
|
23
|
+
"interactive.render.visual",
|
|
24
|
+
"interactive.replay.compare",
|
|
25
|
+
"interactive.runtime.bind",
|
|
26
|
+
"interactive.runtime.observe",
|
|
27
|
+
"interactive.seed.bind",
|
|
28
|
+
"interactive.smoke.observe",
|
|
29
|
+
"interactive.snapshot.capture",
|
|
30
|
+
"interactive.spatial.2_5_d",
|
|
31
|
+
"interactive.state.model",
|
|
32
|
+
"interactive.time.fixed_step",
|
|
33
|
+
"interactive.visual.stylized",
|
|
34
|
+
"interactive.world.model",
|
|
35
|
+
"simulation.model",
|
|
36
|
+
"simulation.outputs.observe",
|
|
37
|
+
"simulation.scenario.define"
|
|
38
|
+
],
|
|
39
|
+
"pipelines": [
|
|
40
|
+
"interactive.prototype",
|
|
41
|
+
"interactive.playtest",
|
|
42
|
+
"simulation.scenario",
|
|
43
|
+
"interactive.replay"
|
|
44
|
+
],
|
|
45
|
+
"adapterTargets": [
|
|
46
|
+
"engine.godot",
|
|
47
|
+
"telemetry.trace.local",
|
|
48
|
+
"validator.replay.local"
|
|
49
|
+
],
|
|
50
|
+
"world": {
|
|
51
|
+
"identity": "2.5D emergency-routing training sandbox",
|
|
52
|
+
"state": {
|
|
53
|
+
"district": "coastal-a",
|
|
54
|
+
"evacuatedAgents": 0
|
|
55
|
+
},
|
|
56
|
+
"time": {
|
|
57
|
+
"fixedStepSeconds": 0.25
|
|
58
|
+
},
|
|
59
|
+
"events": [
|
|
60
|
+
"route.open",
|
|
61
|
+
"hazard.spread",
|
|
62
|
+
"agent.evacuate"
|
|
63
|
+
],
|
|
64
|
+
"initialConditions": {
|
|
65
|
+
"hazardOrigin": "sector-4",
|
|
66
|
+
"activeRoutes": 3
|
|
67
|
+
},
|
|
68
|
+
"coordinateSystem": "isometric grid with metric depth",
|
|
69
|
+
"grid": "1 metre navigation cells",
|
|
70
|
+
"loop": "inspect, route, advance, review",
|
|
71
|
+
"objective": "evacuate the declared population before the horizon",
|
|
72
|
+
"successConditions": [
|
|
73
|
+
"all reachable agents evacuated"
|
|
74
|
+
],
|
|
75
|
+
"failureConditions": [
|
|
76
|
+
"simulation horizon reached with reachable agents remaining"
|
|
77
|
+
],
|
|
78
|
+
"rules": [
|
|
79
|
+
"human route choices and scripted agents share one state model",
|
|
80
|
+
"render depth does not change navigation costs"
|
|
81
|
+
],
|
|
82
|
+
"model": "discrete agent movement over a weighted evacuation graph",
|
|
83
|
+
"assumptions": [
|
|
84
|
+
"agents select only currently open routes"
|
|
85
|
+
],
|
|
86
|
+
"boundaryConditions": {
|
|
87
|
+
"horizonSeconds": 900,
|
|
88
|
+
"maximumAgents": 500
|
|
89
|
+
},
|
|
90
|
+
"outputs": [
|
|
91
|
+
"evacuationTimeSeconds",
|
|
92
|
+
"routeUtilisation",
|
|
93
|
+
"agentsRemaining"
|
|
94
|
+
],
|
|
95
|
+
"validation": {
|
|
96
|
+
"method": "compare replay outputs against declared evacuation invariants",
|
|
97
|
+
"invariants": ["agent counts are conserved", "route costs remain non-negative"]
|
|
98
|
+
},
|
|
99
|
+
"seed": 2026071904,
|
|
100
|
+
"snapshot": "graph, agents, hazard, and human decisions",
|
|
101
|
+
"replay": "ordered route decisions and simulation events",
|
|
102
|
+
"step": "fixed 0.25 second update"
|
|
103
|
+
},
|
|
104
|
+
"acceptance": {
|
|
105
|
+
"hybridBoundary": "human actions and simulated agents remain distinguishable in the event log",
|
|
106
|
+
"projection": "2.5D rendering preserves the underlying metric grid"
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
{
|
|
2
|
+
"runId": "fixture.protocol.mutating-rollback.001",
|
|
3
|
+
"adapterId": "engine.godot",
|
|
4
|
+
"adapterVersion": "1.0.0",
|
|
5
|
+
"semanticTargetId": "example.game.3d.human",
|
|
6
|
+
"phases": [
|
|
7
|
+
{
|
|
8
|
+
"phaseId": "mutating.detect",
|
|
9
|
+
"phase": "DETECT",
|
|
10
|
+
"semanticTargetId": "example.game.3d.human",
|
|
11
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
12
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
13
|
+
"success": true
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"phaseId": "mutating.probe",
|
|
17
|
+
"phase": "PROBE",
|
|
18
|
+
"semanticTargetId": "example.game.3d.human",
|
|
19
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
20
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
21
|
+
"success": true
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"phaseId": "mutating.snapshot",
|
|
25
|
+
"phase": "SNAPSHOT",
|
|
26
|
+
"semanticTargetId": "example.game.3d.human",
|
|
27
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
28
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
29
|
+
"success": true
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"phaseId": "mutating.plan",
|
|
33
|
+
"phase": "PLAN",
|
|
34
|
+
"semanticTargetId": "example.game.3d.human",
|
|
35
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
36
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
37
|
+
"success": true
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"phaseId": "mutating.apply",
|
|
41
|
+
"phase": "APPLY",
|
|
42
|
+
"semanticTargetId": "example.game.3d.human",
|
|
43
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
44
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
45
|
+
"success": true
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"phaseId": "mutating.validate",
|
|
49
|
+
"phase": "VALIDATE",
|
|
50
|
+
"semanticTargetId": "example.game.3d.human",
|
|
51
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
52
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
53
|
+
"success": false
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"phaseId": "mutating.evidence",
|
|
57
|
+
"phase": "EVIDENCE",
|
|
58
|
+
"semanticTargetId": "example.game.3d.human",
|
|
59
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
60
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
61
|
+
"success": true
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"phaseId": "mutating.rollback",
|
|
65
|
+
"phase": "ROLLBACK",
|
|
66
|
+
"semanticTargetId": "example.game.3d.human",
|
|
67
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
68
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
69
|
+
"success": true
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"mutated": true,
|
|
73
|
+
"success": false,
|
|
74
|
+
"rollbackEvidenceId": "fixture.rollback.observed.001"
|
|
75
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"runId": "fixture.protocol.read-only.001",
|
|
3
|
+
"adapterId": "runtime.headless.generic",
|
|
4
|
+
"adapterVersion": "1.0.0",
|
|
5
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
6
|
+
"phases": [
|
|
7
|
+
{
|
|
8
|
+
"phaseId": "readonly.detect",
|
|
9
|
+
"phase": "DETECT",
|
|
10
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
11
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
12
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
13
|
+
"success": true
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"phaseId": "readonly.probe",
|
|
17
|
+
"phase": "PROBE",
|
|
18
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
19
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
20
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
21
|
+
"success": true
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"phaseId": "readonly.snapshot",
|
|
25
|
+
"phase": "SNAPSHOT",
|
|
26
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
27
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
28
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
29
|
+
"success": true
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"phaseId": "readonly.plan",
|
|
33
|
+
"phase": "PLAN",
|
|
34
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
35
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
36
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
37
|
+
"success": true
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"phaseId": "readonly.validate",
|
|
41
|
+
"phase": "VALIDATE",
|
|
42
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
43
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
44
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
45
|
+
"success": true
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"phaseId": "readonly.evidence",
|
|
49
|
+
"phase": "EVIDENCE",
|
|
50
|
+
"semanticTargetId": "example.simulation.headless.autonomous-batch",
|
|
51
|
+
"inputDigest": "sha256:8faad66a2e59a27af6bbc6e1421493a2f3758f376515c44e2e16fbcb340ac082",
|
|
52
|
+
"outputDigest": "sha256:4f135cff766c846e90720c6e50676c37a7b98023bbe7b1ef6b3fa46fd54ffc2d",
|
|
53
|
+
"success": true
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
"mutated": false,
|
|
57
|
+
"success": true
|
|
58
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "1.0",
|
|
3
|
+
"systemId": "example.simulation.2d.controlled",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"kind": "SIMULATION",
|
|
6
|
+
"spatialModel": "TWO_D",
|
|
7
|
+
"renderMode": "VISUAL",
|
|
8
|
+
"visualProfile": "VECTOR",
|
|
9
|
+
"fidelity": "SYSTEMIC",
|
|
10
|
+
"controlModes": [
|
|
11
|
+
"SCRIPTED"
|
|
12
|
+
],
|
|
13
|
+
"timeModel": "FIXED_STEP",
|
|
14
|
+
"determinism": "SEEDED",
|
|
15
|
+
"capabilities": [
|
|
16
|
+
"interactive.control.scripted",
|
|
17
|
+
"interactive.determinism.seeded",
|
|
18
|
+
"interactive.event.log",
|
|
19
|
+
"interactive.fidelity.systemic",
|
|
20
|
+
"interactive.kind.simulation",
|
|
21
|
+
"interactive.render.visual",
|
|
22
|
+
"interactive.replay.compare",
|
|
23
|
+
"interactive.seed.bind",
|
|
24
|
+
"interactive.snapshot.capture",
|
|
25
|
+
"interactive.spatial.two_d",
|
|
26
|
+
"interactive.state.model",
|
|
27
|
+
"interactive.time.fixed_step",
|
|
28
|
+
"interactive.visual.vector",
|
|
29
|
+
"interactive.world.model",
|
|
30
|
+
"simulation.invariants.validate",
|
|
31
|
+
"simulation.model",
|
|
32
|
+
"simulation.outputs.compare",
|
|
33
|
+
"simulation.outputs.observe",
|
|
34
|
+
"simulation.scenario.define",
|
|
35
|
+
"simulation.validity.report"
|
|
36
|
+
],
|
|
37
|
+
"pipelines": [
|
|
38
|
+
"simulation.scenario",
|
|
39
|
+
"simulation.validate",
|
|
40
|
+
"interactive.replay"
|
|
41
|
+
],
|
|
42
|
+
"adapterTargets": [
|
|
43
|
+
"engine.web.canvas2d",
|
|
44
|
+
"simulation.runner.generic",
|
|
45
|
+
"telemetry.trace.local",
|
|
46
|
+
"validator.replay.local"
|
|
47
|
+
],
|
|
48
|
+
"world": {
|
|
49
|
+
"identity": "script-controlled urban traffic grid",
|
|
50
|
+
"state": {
|
|
51
|
+
"vehicles": 120,
|
|
52
|
+
"signals": "timed-plan-a"
|
|
53
|
+
},
|
|
54
|
+
"time": {
|
|
55
|
+
"fixedStepSeconds": 0.1
|
|
56
|
+
},
|
|
57
|
+
"events": [
|
|
58
|
+
"vehicle.enter",
|
|
59
|
+
"signal.change",
|
|
60
|
+
"vehicle.exit"
|
|
61
|
+
],
|
|
62
|
+
"initialConditions": {
|
|
63
|
+
"demandProfile": "weekday-am",
|
|
64
|
+
"signalPlan": "timed-plan-a"
|
|
65
|
+
},
|
|
66
|
+
"grid": "lane graph projected onto a 2D metric plane",
|
|
67
|
+
"coordinateSystem": "local east-north metres",
|
|
68
|
+
"model": "cell-transmission traffic flow with scripted signal phases",
|
|
69
|
+
"assumptions": [
|
|
70
|
+
"driver response is homogeneous inside each vehicle class"
|
|
71
|
+
],
|
|
72
|
+
"boundaryConditions": {
|
|
73
|
+
"inflowVehiclesPerHour": 900,
|
|
74
|
+
"simulationDurationSeconds": 3600
|
|
75
|
+
},
|
|
76
|
+
"outputs": [
|
|
77
|
+
"meanTravelTimeSeconds",
|
|
78
|
+
"queueLengthVehicles",
|
|
79
|
+
"throughputVehiclesPerHour"
|
|
80
|
+
],
|
|
81
|
+
"validation": {
|
|
82
|
+
"method": "compare seeded replay outputs with conservation invariants",
|
|
83
|
+
"invariants": ["vehicle count is conserved", "queue length remains non-negative"]
|
|
84
|
+
},
|
|
85
|
+
"seed": 2026071902,
|
|
86
|
+
"snapshot": "network, queues, signals, and random stream state",
|
|
87
|
+
"replay": "scripted demand and signal events",
|
|
88
|
+
"step": "fixed 0.1 second update"
|
|
89
|
+
},
|
|
90
|
+
"acceptance": {
|
|
91
|
+
"invariants": [
|
|
92
|
+
"vehicle count is conserved",
|
|
93
|
+
"queue length is never negative"
|
|
94
|
+
],
|
|
95
|
+
"outputs": "all declared metrics are emitted for every completed run"
|
|
96
|
+
}
|
|
97
|
+
}
|