@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.
Files changed (250) hide show
  1. package/README.md +265 -217
  2. package/dist/agentContextPack.js +14 -10
  3. package/dist/agentEntryPoints.d.ts +5 -0
  4. package/dist/agentEntryPoints.js +567 -557
  5. package/dist/angular-consumer-standalone.js +1 -1
  6. package/dist/bin.d.ts +6 -0
  7. package/dist/bin.js +130 -0
  8. package/dist/cliArgs.js +4 -4
  9. package/dist/cliControlError.d.ts +12 -0
  10. package/dist/cliControlError.js +47 -0
  11. package/dist/cliGrammar.d.ts +11 -0
  12. package/dist/cliGrammar.js +551 -0
  13. package/dist/cliHelp.d.ts +13 -0
  14. package/dist/cliHelp.js +19 -0
  15. package/dist/cliHelpTexto.d.ts +3 -0
  16. package/dist/cliHelpTexto.js +168 -0
  17. package/dist/cliRuntime.d.ts +2 -0
  18. package/dist/cliRuntime.js +31 -0
  19. package/dist/comandos.js +9 -22
  20. package/dist/contexto.js +5 -5
  21. package/dist/dev/index.d.ts +1 -0
  22. package/dist/dev/index.js +51 -9
  23. package/dist/discovery/catalog.js +3 -3
  24. package/dist/distribuicao/filesystemGlobal.d.ts +63 -0
  25. package/dist/distribuicao/filesystemGlobal.js +701 -0
  26. package/dist/distribuicao/index.d.ts +7 -0
  27. package/dist/distribuicao/index.js +227 -0
  28. package/dist/distribuicao/launcherGlobal.d.ts +53 -0
  29. package/dist/distribuicao/launcherGlobal.js +643 -0
  30. package/dist/distribuicao/launcherWindows.d.ts +28 -0
  31. package/dist/distribuicao/launcherWindows.js +326 -0
  32. package/dist/distribuicao/lockContextGlobal.d.ts +10 -0
  33. package/dist/distribuicao/lockContextGlobal.js +17 -0
  34. package/dist/distribuicao/lockGlobal.d.ts +6 -0
  35. package/dist/distribuicao/lockGlobal.js +520 -0
  36. package/dist/distribuicao/skillGlobal.d.ts +48 -0
  37. package/dist/distribuicao/skillGlobal.js +652 -0
  38. package/dist/distribuicao/skillIntentPolicy.d.ts +21 -0
  39. package/dist/distribuicao/skillIntentPolicy.js +115 -0
  40. package/dist/distribuicao/tipos.d.ts +50 -0
  41. package/dist/distribuicao/tipos.js +10 -0
  42. package/dist/distribuicao/versaoSemantica.d.ts +3 -0
  43. package/dist/distribuicao/versaoSemantica.js +62 -0
  44. package/dist/drift.part01.d.ts +26 -24
  45. package/dist/drift.part01.js +2 -1
  46. package/dist/drift.part04.d.ts +12 -3
  47. package/dist/drift.part04.js +88 -17
  48. package/dist/drift.part05.d.ts +2 -2
  49. package/dist/drift.part05.js +8 -6
  50. package/dist/drift.part06.d.ts +2 -2
  51. package/dist/drift.part06.js +113 -26
  52. package/dist/drift.part07.d.ts +11 -11
  53. package/dist/drift.part07.js +261 -265
  54. package/dist/drift.part08.d.ts +2 -2
  55. package/dist/drift.part08.js +35 -26
  56. package/dist/drift.part11.js +238 -56
  57. package/dist/drift.part12.d.ts +1 -1
  58. package/dist/drift.part12.js +193 -21
  59. package/dist/drift.part13.d.ts +20 -39
  60. package/dist/drift.part13.js +601 -647
  61. package/dist/drift.part14.js +21 -7
  62. package/dist/driftCacheCas.d.ts +43 -0
  63. package/dist/driftCacheCas.js +351 -0
  64. package/dist/driftCacheFilesystem.d.ts +64 -0
  65. package/dist/driftCacheFilesystem.js +313 -0
  66. package/dist/driftCacheModes.d.ts +38 -0
  67. package/dist/driftCacheModes.js +147 -0
  68. package/dist/driftCacheStore.d.ts +80 -0
  69. package/dist/driftCacheStore.js +603 -0
  70. package/dist/driftCatalogo.d.ts +2 -28
  71. package/dist/driftCatalogo.js +143 -284
  72. package/dist/driftEscopo.d.ts +1 -3
  73. package/dist/driftEscopo.js +235 -151
  74. package/dist/driftEscopoReferencias.d.ts +5 -1
  75. package/dist/driftEscopoReferencias.js +375 -28
  76. package/dist/driftOrcamento.d.ts +0 -6
  77. package/dist/driftOrcamento.js +2 -1
  78. package/dist/execucoesExternas.js +19 -5
  79. package/dist/geracaoCore.js +4 -6
  80. package/dist/iaPrompts.d.ts +3 -3
  81. package/dist/iaPrompts.js +312 -313
  82. package/dist/index.d.ts +4 -1
  83. package/dist/index.js +6 -25
  84. package/dist/index.part01.d.ts +20 -28
  85. package/dist/index.part01.js +16 -237
  86. package/dist/index.part02.js +36 -22
  87. package/dist/index.part03.d.ts +24 -2
  88. package/dist/index.part03.js +83 -19
  89. package/dist/index.part04.d.ts +10 -2
  90. package/dist/index.part04.js +142 -120
  91. package/dist/index.part05.js +80 -78
  92. package/dist/index.part06.js +34 -17
  93. package/dist/index.part07.js +7 -3
  94. package/dist/index.part08.d.ts +1 -1
  95. package/dist/index.part08.js +22 -27
  96. package/dist/initCommand.js +5 -1
  97. package/dist/initTemplatesBase.js +81 -79
  98. package/dist/pipelineConteudo/command.d.ts +1 -0
  99. package/dist/pipelineConteudo/command.js +9 -2
  100. package/dist/pipelineConteudo/help.d.ts +2 -0
  101. package/dist/pipelineConteudo/help.js +33 -0
  102. package/dist/profileAuthorCommand.js +3 -7
  103. package/dist/profileCommand.js +3 -7
  104. package/dist/projetoCarregar.js +35 -17
  105. package/dist/projetoCatalogo.d.ts +1 -0
  106. package/dist/projetoCatalogo.js +64 -25
  107. package/dist/projetoOrigens.d.ts +2 -0
  108. package/dist/projetoOrigens.js +65 -9
  109. package/dist/projetoTipos.d.ts +1 -0
  110. package/dist/resultadoCli.d.ts +20 -0
  111. package/dist/resultadoCli.js +57 -0
  112. package/dist/saidaCli.d.ts +35 -0
  113. package/dist/saidaCli.js +118 -0
  114. package/dist/sistemasInterativos/acceptanceEvidence.d.ts +22 -0
  115. package/dist/sistemasInterativos/acceptanceEvidence.js +345 -0
  116. package/dist/sistemasInterativos/engineObservation.d.ts +12 -0
  117. package/dist/sistemasInterativos/engineObservation.js +438 -0
  118. package/dist/sistemasInterativos/jobOrchestration.d.ts +2 -0
  119. package/dist/sistemasInterativos/jobOrchestration.js +204 -0
  120. package/dist/sistemasInterativos/operationPrimitives.d.ts +21 -0
  121. package/dist/sistemasInterativos/operationPrimitives.js +194 -0
  122. package/dist/sistemasInterativos/operations.d.ts +4 -39
  123. package/dist/sistemasInterativos/operations.js +5 -1164
  124. package/dist/skillCommand.d.ts +5 -0
  125. package/dist/skillCommand.js +88 -0
  126. package/docs/README.md +34 -30
  127. package/docs/ai-integration.md +25 -12
  128. package/docs/ai-onboarding.md +37 -18
  129. package/docs/ai-workflow.md +9 -7
  130. package/docs/cli.md +125 -7
  131. package/docs/commands.md +41 -20
  132. package/docs/deploy.md +21 -8
  133. package/docs/descoberta-capacidades.md +106 -106
  134. package/docs/documentation.md +49 -39
  135. package/docs/drift-cache.md +108 -0
  136. package/docs/getting-started.md +43 -18
  137. package/docs/pipeline-conteudo.md +246 -246
  138. package/docs/profiles.md +54 -54
  139. package/docs/repositories.md +19 -2
  140. package/docs/rollback.md +15 -8
  141. package/docs/security.md +25 -3
  142. package/docs/sistemas-interativos.md +379 -374
  143. package/docs/testing.md +139 -40
  144. package/exemplos/pipeline-conteudo/README.md +44 -44
  145. package/exemplos/pipeline-conteudo/alvos.json +23 -23
  146. package/exemplos/pipeline-conteudo/definicao.json +136 -136
  147. package/exemplos/profile_simulation.sema +211 -211
  148. package/exemplos/sistemas-interativos/README.md +100 -100
  149. package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -5
  150. package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -16
  151. package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -32
  152. package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -93
  153. package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -78
  154. package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -27
  155. package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -79
  156. package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -42
  157. package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -32
  158. package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -23
  159. package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -39
  160. package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -46
  161. package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -39
  162. package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -37
  163. package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -104
  164. package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -27
  165. package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -118
  166. package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -459
  167. package/exemplos/sistemas-interativos/game-2d.json +83 -83
  168. package/exemplos/sistemas-interativos/game-3d-human.json +81 -81
  169. package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -97
  170. package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -94
  171. package/exemplos/sistemas-interativos/game-xr-human.json +80 -80
  172. package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -108
  173. package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -75
  174. package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -58
  175. package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -97
  176. package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -141
  177. package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -112
  178. package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -103
  179. package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -95
  180. package/node_modules/@sema/gerador-cpp/package.json +1 -1
  181. package/node_modules/@sema/gerador-dotnet/package.json +1 -1
  182. package/node_modules/@sema/gerador-lua/dist/index.js +51 -51
  183. package/node_modules/@sema/gerador-php/dist/index.js +113 -113
  184. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +1 -0
  185. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +1 -0
  186. package/package.json +9 -4
  187. package/scripts/postinstall.mjs +148 -0
  188. package/skills/sema/SKILL.md +199 -0
  189. package/skills/sema/agents/openai.yaml +4 -0
  190. package/dist/driftCache.d.ts +0 -49
  191. package/dist/driftCache.js +0 -311
  192. package/dist/driftCacheIncremental.d.ts +0 -98
  193. package/dist/driftCacheIncremental.js +0 -596
  194. package/dist/driftCatalogoPersistente.d.ts +0 -8
  195. package/dist/driftCatalogoPersistente.js +0 -77
  196. package/node_modules/@sema/gerador-cpp/dist/index.js.map +0 -1
  197. package/node_modules/@sema/gerador-css/dist/index.js.map +0 -1
  198. package/node_modules/@sema/gerador-css/dist/index.part01.js.map +0 -1
  199. package/node_modules/@sema/gerador-css/dist/index.part02.js.map +0 -1
  200. package/node_modules/@sema/gerador-dart/dist/index.js.map +0 -1
  201. package/node_modules/@sema/gerador-dotnet/dist/index.js.map +0 -1
  202. package/node_modules/@sema/gerador-html/dist/index.js.map +0 -1
  203. package/node_modules/@sema/gerador-javascript/dist/index.js.map +0 -1
  204. package/node_modules/@sema/gerador-lua/dist/index.js.map +0 -1
  205. package/node_modules/@sema/gerador-php/dist/index.js.map +0 -1
  206. package/node_modules/@sema/gerador-python/dist/index.js.map +0 -1
  207. package/node_modules/@sema/gerador-python/dist/index.part01.js.map +0 -1
  208. package/node_modules/@sema/gerador-python/dist/index.part02.js.map +0 -1
  209. package/node_modules/@sema/gerador-typescript/dist/index.js.map +0 -1
  210. package/node_modules/@sema/gerador-typescript/dist/index.part01.js.map +0 -1
  211. package/node_modules/@sema/gerador-typescript/dist/index.part02.js.map +0 -1
  212. package/node_modules/@sema/gerador-typescript/dist/index.part03.js.map +0 -1
  213. package/node_modules/@sema/nucleo/dist/ast/tipos.js.map +0 -1
  214. package/node_modules/@sema/nucleo/dist/diagnosticos/index.js.map +0 -1
  215. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +0 -1
  216. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js.map +0 -1
  217. package/node_modules/@sema/nucleo/dist/formatador/index.js.map +0 -1
  218. package/node_modules/@sema/nucleo/dist/formatador/index.part01.js.map +0 -1
  219. package/node_modules/@sema/nucleo/dist/formatador/index.part02.js.map +0 -1
  220. package/node_modules/@sema/nucleo/dist/index.js.map +0 -1
  221. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +0 -1
  222. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js.map +0 -1
  223. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js.map +0 -1
  224. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js.map +0 -1
  225. package/node_modules/@sema/nucleo/dist/ir/modelos.js.map +0 -1
  226. package/node_modules/@sema/nucleo/dist/lexer/lexer.js.map +0 -1
  227. package/node_modules/@sema/nucleo/dist/lexer/tokens.js.map +0 -1
  228. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js.map +0 -1
  229. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +0 -1
  230. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js.map +0 -1
  231. package/node_modules/@sema/nucleo/dist/parser/parser.part01.js.map +0 -1
  232. package/node_modules/@sema/nucleo/dist/parser/parser.part02.js.map +0 -1
  233. package/node_modules/@sema/nucleo/dist/parser/parser.part03.js.map +0 -1
  234. package/node_modules/@sema/nucleo/dist/persistencia/contratos.js.map +0 -1
  235. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +0 -1
  236. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js.map +0 -1
  237. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js.map +0 -1
  238. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js.map +0 -1
  239. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js.map +0 -1
  240. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js.map +0 -1
  241. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js.map +0 -1
  242. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js.map +0 -1
  243. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js.map +0 -1
  244. package/node_modules/@sema/nucleo/dist/semantico/estruturas.js.map +0 -1
  245. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js.map +0 -1
  246. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js.map +0 -1
  247. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js.map +0 -1
  248. package/node_modules/@sema/nucleo/dist/semantico/seguranca.js.map +0 -1
  249. package/node_modules/@sema/nucleo/dist/util/arquivos.js.map +0 -1
  250. package/node_modules/@sema/padroes/dist/index.js.map +0 -1
@@ -1,94 +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
- }
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
+ }
@@ -1,80 +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
- }
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
+ }
@@ -1,108 +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
- }
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
+ }