@semacode/cli 2.1.0 → 2.3.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 (154) hide show
  1. package/README.md +107 -4
  2. package/dist/agentContext.d.ts +1 -1
  3. package/dist/agentContextPack.js +6 -1
  4. package/dist/agentContextTipos.d.ts +4 -2
  5. package/dist/agentContextTipos.js +7 -0
  6. package/dist/agentEntryPoints.js +70 -19
  7. package/dist/comandos.js +6 -0
  8. package/dist/discovery/catalog.d.ts +11 -0
  9. package/dist/discovery/catalog.js +521 -0
  10. package/dist/discovery/command.d.ts +11 -0
  11. package/dist/discovery/command.js +226 -0
  12. package/dist/discovery/index.d.ts +5 -0
  13. package/dist/discovery/index.js +8 -0
  14. package/dist/discovery/ranker.d.ts +3 -0
  15. package/dist/discovery/ranker.js +310 -0
  16. package/dist/discovery/redaction.d.ts +2 -0
  17. package/dist/discovery/redaction.js +21 -0
  18. package/dist/discovery/render.d.ts +2 -0
  19. package/dist/discovery/render.js +100 -0
  20. package/dist/discovery/types.d.ts +119 -0
  21. package/dist/discovery/types.js +13 -0
  22. package/dist/execucoesExternas.js +19 -5
  23. package/dist/exemplosOficiais.js +29 -8
  24. package/dist/iaPrompts.d.ts +1 -1
  25. package/dist/iaPrompts.js +3 -0
  26. package/dist/index.d.ts +3 -0
  27. package/dist/index.js +24 -5
  28. package/dist/index.part01.d.ts +1 -1
  29. package/dist/index.part01.js +47 -3
  30. package/dist/index.part06.js +3 -0
  31. package/dist/initTemplatesBase.js +3 -2
  32. package/dist/pipelineConteudo/adapters.d.ts +84 -0
  33. package/dist/pipelineConteudo/adapters.js +449 -0
  34. package/dist/pipelineConteudo/canonical.d.ts +18 -0
  35. package/dist/pipelineConteudo/canonical.js +107 -0
  36. package/dist/pipelineConteudo/command.d.ts +3 -0
  37. package/dist/pipelineConteudo/command.js +572 -0
  38. package/dist/pipelineConteudo/index.d.ts +9 -0
  39. package/dist/pipelineConteudo/index.js +12 -0
  40. package/dist/pipelineConteudo/ledger.d.ts +68 -0
  41. package/dist/pipelineConteudo/ledger.js +732 -0
  42. package/dist/pipelineConteudo/planner.d.ts +12 -0
  43. package/dist/pipelineConteudo/planner.js +366 -0
  44. package/dist/pipelineConteudo/projection.d.ts +16 -0
  45. package/dist/pipelineConteudo/projection.js +57 -0
  46. package/dist/pipelineConteudo/state.d.ts +23 -0
  47. package/dist/pipelineConteudo/state.js +615 -0
  48. package/dist/pipelineConteudo/trust.d.ts +17 -0
  49. package/dist/pipelineConteudo/trust.js +750 -0
  50. package/dist/pipelineConteudo/types.d.ts +331 -0
  51. package/dist/pipelineConteudo/types.js +4 -0
  52. package/dist/profileArtefatoValidadores.d.ts +3 -2
  53. package/dist/profileArtefatoValidadores.js +81 -0
  54. package/dist/profileAuthorTipos.d.ts +4 -3
  55. package/dist/profileCatalogo.d.ts +5 -5
  56. package/dist/profileCatalogo.js +30 -0
  57. package/dist/profileCommand.d.ts +8 -2
  58. package/dist/profileCommand.js +15 -5
  59. package/dist/profileRegras.d.ts +5 -5
  60. package/dist/profileRegras.js +13 -1
  61. package/dist/profileRulePacks.js +68 -0
  62. package/dist/sistemasInterativos/adapterProtocol.d.ts +3 -0
  63. package/dist/sistemasInterativos/adapterProtocol.js +240 -0
  64. package/dist/sistemasInterativos/advancedCatalog.d.ts +5 -0
  65. package/dist/sistemasInterativos/advancedCatalog.js +442 -0
  66. package/dist/sistemasInterativos/autonomy.d.ts +230 -0
  67. package/dist/sistemasInterativos/autonomy.js +753 -0
  68. package/dist/sistemasInterativos/canonical.d.ts +3 -0
  69. package/dist/sistemasInterativos/canonical.js +43 -0
  70. package/dist/sistemasInterativos/catalog.d.ts +116 -0
  71. package/dist/sistemasInterativos/catalog.js +543 -0
  72. package/dist/sistemasInterativos/command.d.ts +7 -0
  73. package/dist/sistemasInterativos/command.js +311 -0
  74. package/dist/sistemasInterativos/controlRun.d.ts +56 -0
  75. package/dist/sistemasInterativos/controlRun.js +391 -0
  76. package/dist/sistemasInterativos/evidence.d.ts +5 -0
  77. package/dist/sistemasInterativos/evidence.js +306 -0
  78. package/dist/sistemasInterativos/experienceIr.d.ts +12 -0
  79. package/dist/sistemasInterativos/experienceIr.js +895 -0
  80. package/dist/sistemasInterativos/experienceIrSemantics.d.ts +30 -0
  81. package/dist/sistemasInterativos/experienceIrSemantics.js +368 -0
  82. package/dist/sistemasInterativos/experienceIrTypes.d.ts +370 -0
  83. package/dist/sistemasInterativos/experienceIrTypes.js +5 -0
  84. package/dist/sistemasInterativos/extensionCommand.d.ts +391 -0
  85. package/dist/sistemasInterativos/extensionCommand.js +383 -0
  86. package/dist/sistemasInterativos/index.d.ts +19 -0
  87. package/dist/sistemasInterativos/index.js +22 -0
  88. package/dist/sistemasInterativos/operations.d.ts +40 -0
  89. package/dist/sistemasInterativos/operations.js +1167 -0
  90. package/dist/sistemasInterativos/operationsTypes.d.ts +297 -0
  91. package/dist/sistemasInterativos/operationsTypes.js +11 -0
  92. package/dist/sistemasInterativos/planner.d.ts +2 -0
  93. package/dist/sistemasInterativos/planner.js +159 -0
  94. package/dist/sistemasInterativos/portability.d.ts +164 -0
  95. package/dist/sistemasInterativos/portability.js +539 -0
  96. package/dist/sistemasInterativos/render.d.ts +3 -0
  97. package/dist/sistemasInterativos/render.js +179 -0
  98. package/dist/sistemasInterativos/temporal.d.ts +183 -0
  99. package/dist/sistemasInterativos/temporal.js +543 -0
  100. package/dist/sistemasInterativos/types.d.ts +215 -0
  101. package/dist/sistemasInterativos/types.js +4 -0
  102. package/dist/sistemasInterativos/validator.d.ts +2 -0
  103. package/dist/sistemasInterativos/validator.js +305 -0
  104. package/docs/README.md +9 -0
  105. package/docs/ai-integration.md +7 -1
  106. package/docs/ai-workflow.md +5 -4
  107. package/docs/commands.md +43 -1
  108. package/docs/descoberta-capacidades.md +106 -0
  109. package/docs/documentation.md +11 -2
  110. package/docs/pipeline-conteudo.md +246 -0
  111. package/docs/profiles.md +11 -2
  112. package/docs/sistemas-interativos.md +381 -0
  113. package/docs/testing.md +11 -2
  114. package/exemplos/pipeline-conteudo/README.md +44 -0
  115. package/exemplos/pipeline-conteudo/alvos.json +23 -0
  116. package/exemplos/pipeline-conteudo/definicao.json +136 -0
  117. package/exemplos/profile_simulation.sema +211 -0
  118. package/exemplos/sistemas-interativos/README.md +100 -0
  119. package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -0
  120. package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -0
  121. package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -0
  122. package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -0
  123. package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -0
  124. package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -0
  125. package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -0
  126. package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -0
  127. package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -0
  128. package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -0
  129. package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -0
  130. package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -0
  131. package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -0
  132. package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -0
  133. package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -0
  134. package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -0
  135. package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -0
  136. package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -0
  137. package/exemplos/sistemas-interativos/game-2d.json +83 -0
  138. package/exemplos/sistemas-interativos/game-3d-human.json +81 -0
  139. package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -0
  140. package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -0
  141. package/exemplos/sistemas-interativos/game-xr-human.json +80 -0
  142. package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -0
  143. package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -0
  144. package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -0
  145. package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -0
  146. package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -0
  147. package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -0
  148. package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -0
  149. package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -0
  150. package/node_modules/@sema/gerador-lua/dist/index.js +78 -4
  151. package/node_modules/@sema/gerador-lua/dist/index.js.map +1 -1
  152. package/node_modules/@sema/gerador-php/dist/index.js +8 -0
  153. package/node_modules/@sema/gerador-php/dist/index.js.map +1 -1
  154. package/package.json +8 -1
@@ -0,0 +1,459 @@
1
+ {
2
+ "schemaVersion": "sema.experience-ir/v1",
3
+ "revision": "1.0.0",
4
+ "coordinateSystem": {
5
+ "units": {
6
+ "length": "METER",
7
+ "mass": "KILOGRAM",
8
+ "time": "SECOND",
9
+ "angle": "RADIAN"
10
+ },
11
+ "axes": {
12
+ "handedness": "RIGHT_HANDED",
13
+ "up": "Y",
14
+ "forward": "NEGATIVE_Z"
15
+ },
16
+ "worldScaleMetersPerUnit": 1
17
+ },
18
+ "serialization": {
19
+ "json": {
20
+ "version": "1",
21
+ "mediaType": "application/vnd.sema.experience-ir+json",
22
+ "canonicalization": "SEMA_CANONICAL_JSON_V1"
23
+ },
24
+ "cbor": {
25
+ "mode": "EXTERNAL_CODEC_REQUIRED",
26
+ "mediaType": "application/cbor",
27
+ "encoded": false,
28
+ "deterministicEncodingRequired": true,
29
+ "codec": null
30
+ }
31
+ },
32
+ "project": {
33
+ "semanticId": "project.demo",
34
+ "kind": "PROJECT",
35
+ "references": [
36
+ "scene.main",
37
+ "world.main"
38
+ ],
39
+ "name": "Experience IR Demo",
40
+ "worldIds": [
41
+ "world.main"
42
+ ],
43
+ "defaultSceneId": "scene.main"
44
+ },
45
+ "worlds": [
46
+ {
47
+ "semanticId": "world.main",
48
+ "kind": "WORLD",
49
+ "references": [
50
+ "scene.main"
51
+ ],
52
+ "name": "Main World",
53
+ "sceneIds": [
54
+ "scene.main"
55
+ ]
56
+ }
57
+ ],
58
+ "scenes": [
59
+ {
60
+ "semanticId": "scene.main",
61
+ "kind": "SCENE",
62
+ "references": [
63
+ "camera.main",
64
+ "entity.player",
65
+ "light.sun"
66
+ ],
67
+ "name": "Main Scene",
68
+ "semanticRole": "LEVEL",
69
+ "entityIds": [
70
+ "entity.player"
71
+ ],
72
+ "cameraId": "camera.main",
73
+ "lightIds": [
74
+ "light.sun"
75
+ ]
76
+ }
77
+ ],
78
+ "entities": [
79
+ {
80
+ "semanticId": "entity.player",
81
+ "kind": "ENTITY",
82
+ "references": [
83
+ "component.player_state",
84
+ "transform.origin"
85
+ ],
86
+ "name": "Player",
87
+ "componentIds": [
88
+ "component.player_state"
89
+ ],
90
+ "transformId": "transform.origin"
91
+ }
92
+ ],
93
+ "components": [
94
+ {
95
+ "semanticId": "component.player_state",
96
+ "kind": "COMPONENT",
97
+ "references": [
98
+ "entity.player"
99
+ ],
100
+ "ownerEntityId": "entity.player",
101
+ "componentType": "player-state",
102
+ "properties": {
103
+ "health": 100,
104
+ "active": true
105
+ }
106
+ }
107
+ ],
108
+ "transforms": [
109
+ {
110
+ "semanticId": "transform.origin",
111
+ "kind": "TRANSFORM",
112
+ "references": [],
113
+ "semanticRole": "PIVOT",
114
+ "translation": [0, 0, 0],
115
+ "rotation": [0, 0, 0, 1],
116
+ "scale": [1, 1, 1]
117
+ }
118
+ ],
119
+ "cameras": [
120
+ {
121
+ "semanticId": "camera.main",
122
+ "kind": "CAMERA",
123
+ "references": [
124
+ "transform.origin"
125
+ ],
126
+ "transformId": "transform.origin",
127
+ "projection": "PERSPECTIVE",
128
+ "near": 0.1,
129
+ "far": 1000,
130
+ "fieldOfViewRadians": 1.0471975512
131
+ }
132
+ ],
133
+ "lights": [
134
+ {
135
+ "semanticId": "light.sun",
136
+ "kind": "LIGHT",
137
+ "references": [
138
+ "transform.origin"
139
+ ],
140
+ "transformId": "transform.origin",
141
+ "lightType": "DIRECTIONAL",
142
+ "color": "#fff4dd",
143
+ "intensity": {
144
+ "value": 110000,
145
+ "unit": "LUX"
146
+ }
147
+ }
148
+ ],
149
+ "materials": [
150
+ {
151
+ "semanticId": "material.player",
152
+ "kind": "MATERIAL",
153
+ "references": [
154
+ "texture.player_albedo"
155
+ ],
156
+ "shadingModel": "physically-based",
157
+ "textureIds": [
158
+ "texture.player_albedo"
159
+ ],
160
+ "parameters": {
161
+ "roughness": 0.6,
162
+ "metallic": 0
163
+ }
164
+ }
165
+ ],
166
+ "textures": [
167
+ {
168
+ "semanticId": "texture.player_albedo",
169
+ "kind": "TEXTURE",
170
+ "references": [],
171
+ "usage": "ALBEDO",
172
+ "colorSpace": "SRGB",
173
+ "provenance": {
174
+ "source": {
175
+ "kind": "ORIGINAL",
176
+ "uri": "asset://textures/player-albedo.png"
177
+ },
178
+ "license": {
179
+ "name": "CC0-1.0",
180
+ "spdxId": "CC0-1.0",
181
+ "attributionRequired": false
182
+ },
183
+ "hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
184
+ "derivations": []
185
+ }
186
+ }
187
+ ],
188
+ "audio": [
189
+ {
190
+ "semanticId": "audio.ambience",
191
+ "kind": "AUDIO",
192
+ "references": [
193
+ "entity.player"
194
+ ],
195
+ "ownerEntityId": "entity.player",
196
+ "spatial": true,
197
+ "loop": true,
198
+ "provenance": {
199
+ "source": {
200
+ "kind": "VENDOR",
201
+ "uri": "asset://audio/ambience.ogg"
202
+ },
203
+ "license": {
204
+ "name": "Licensed asset pack",
205
+ "uri": "license://asset-pack/2026-07",
206
+ "attributionRequired": true
207
+ },
208
+ "hash": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
209
+ "derivations": []
210
+ }
211
+ }
212
+ ],
213
+ "physics": [
214
+ {
215
+ "semanticId": "physics.player_body",
216
+ "kind": "PHYSICS",
217
+ "references": [
218
+ "entity.player"
219
+ ],
220
+ "ownerEntityId": "entity.player",
221
+ "bodyType": "DYNAMIC",
222
+ "massKilograms": 80,
223
+ "collider": {
224
+ "shape": "capsule",
225
+ "radiusMeters": 0.4,
226
+ "heightMeters": 1.8
227
+ },
228
+ "colliders": [
229
+ {
230
+ "semanticRole": "COLLIDER",
231
+ "colliderId": "collider.player_body",
232
+ "shape": "CAPSULE",
233
+ "trigger": false,
234
+ "radiusMeters": 0.4,
235
+ "heightMeters": 1.8
236
+ }
237
+ ]
238
+ }
239
+ ],
240
+ "constraints": [
241
+ {
242
+ "semanticId": "constraint.player_ground",
243
+ "kind": "CONSTRAINT",
244
+ "references": [
245
+ "entity.player",
246
+ "physics.player_body"
247
+ ],
248
+ "constraintType": "ground-contact",
249
+ "sourceId": "entity.player",
250
+ "targetId": "physics.player_body",
251
+ "parameters": {
252
+ "maxSlopeRadians": 0.7853981634
253
+ }
254
+ }
255
+ ],
256
+ "animations": [
257
+ {
258
+ "semanticId": "animation.player_idle",
259
+ "kind": "ANIMATION",
260
+ "references": [
261
+ "entity.player"
262
+ ],
263
+ "targetIds": [
264
+ "entity.player"
265
+ ],
266
+ "durationSeconds": 2,
267
+ "provenance": {
268
+ "source": {
269
+ "kind": "DERIVED",
270
+ "uri": "asset://animation/player-idle.glb"
271
+ },
272
+ "license": {
273
+ "name": "Project-owned",
274
+ "attributionRequired": false
275
+ },
276
+ "hash": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
277
+ "derivations": [
278
+ {
279
+ "operation": "retarget",
280
+ "tool": "external-animation-tool",
281
+ "toolVersion": "1.0.0",
282
+ "inputHashes": [
283
+ "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"
284
+ ],
285
+ "parametersDigest": "sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
286
+ "outputHash": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
287
+ }
288
+ ]
289
+ }
290
+ }
291
+ ],
292
+ "vfx": [
293
+ {
294
+ "semanticId": "vfx.player_spawn",
295
+ "kind": "VFX",
296
+ "references": [
297
+ "entity.player",
298
+ "material.player"
299
+ ],
300
+ "ownerEntityId": "entity.player",
301
+ "materialIds": [
302
+ "material.player"
303
+ ],
304
+ "emitters": [
305
+ {
306
+ "semanticRole": "EMITTER",
307
+ "emitterId": "emitter.player_spawn",
308
+ "ratePerSecond": 8,
309
+ "maxParticles": 128,
310
+ "enabled": true
311
+ }
312
+ ],
313
+ "provenance": {
314
+ "source": {
315
+ "kind": "GENERATED",
316
+ "uri": "asset://vfx/player-spawn.json"
317
+ },
318
+ "license": {
319
+ "name": "Project-owned",
320
+ "attributionRequired": false
321
+ },
322
+ "hash": "sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
323
+ "derivations": [
324
+ {
325
+ "operation": "generate",
326
+ "tool": "external-vfx-tool",
327
+ "inputHashes": [],
328
+ "parametersDigest": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
329
+ "outputHash": "sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
330
+ }
331
+ ]
332
+ }
333
+ }
334
+ ],
335
+ "timelines": [
336
+ {
337
+ "semanticId": "timeline.intro",
338
+ "kind": "TIMELINE",
339
+ "references": [
340
+ "animation.player_idle"
341
+ ],
342
+ "durationSeconds": 2,
343
+ "tracks": [
344
+ {
345
+ "semanticRole": "TRACK",
346
+ "trackId": "intro-player-idle",
347
+ "trackType": "ANIMATION",
348
+ "targetId": "animation.player_idle",
349
+ "clips": [
350
+ {
351
+ "semanticRole": "CLIP",
352
+ "clipId": "clip.player_idle",
353
+ "targetId": "animation.player_idle",
354
+ "startSeconds": 0,
355
+ "endSeconds": 2
356
+ }
357
+ ],
358
+ "events": [
359
+ {
360
+ "semanticRole": "EVENT",
361
+ "eventId": "event.intro_started",
362
+ "eventType": "INTRO_STARTED",
363
+ "atSeconds": 0,
364
+ "payload": {
365
+ "phase": "intro"
366
+ }
367
+ }
368
+ ],
369
+ "keyframes": [
370
+ {
371
+ "atSeconds": 0,
372
+ "value": {
373
+ "weight": 1
374
+ }
375
+ },
376
+ {
377
+ "atSeconds": 2,
378
+ "value": {
379
+ "weight": 0
380
+ }
381
+ }
382
+ ]
383
+ }
384
+ ]
385
+ }
386
+ ],
387
+ "inputs": [
388
+ {
389
+ "semanticId": "input.player",
390
+ "kind": "INPUT",
391
+ "references": [
392
+ "entity.player"
393
+ ],
394
+ "contextEntityId": "entity.player",
395
+ "actions": [
396
+ {
397
+ "actionId": "move",
398
+ "bindings": [
399
+ "keyboard:wasd",
400
+ "gamepad:left-stick"
401
+ ]
402
+ }
403
+ ]
404
+ }
405
+ ],
406
+ "saves": [
407
+ {
408
+ "semanticId": "save.main",
409
+ "kind": "SAVE",
410
+ "references": [
411
+ "entity.player",
412
+ "physics.player_body"
413
+ ],
414
+ "semanticRole": "GAME_STATE",
415
+ "strategy": "HYBRID",
416
+ "schemaRevision": "1",
417
+ "stateSemanticIds": [
418
+ "entity.player",
419
+ "physics.player_body"
420
+ ]
421
+ }
422
+ ],
423
+ "networks": [
424
+ {
425
+ "semanticId": "network.local",
426
+ "kind": "NETWORK",
427
+ "references": [],
428
+ "mode": "OFFLINE",
429
+ "authority": "NONE",
430
+ "replicatedSemanticIds": [],
431
+ "tickRateHz": 0
432
+ }
433
+ ],
434
+ "builds": [
435
+ {
436
+ "semanticId": "build.web",
437
+ "kind": "BUILD",
438
+ "references": [
439
+ "animation.player_idle",
440
+ "audio.ambience",
441
+ "scene.main",
442
+ "texture.player_albedo",
443
+ "vfx.player_spawn"
444
+ ],
445
+ "target": "web",
446
+ "entrySceneId": "scene.main",
447
+ "assetIds": [
448
+ "animation.player_idle",
449
+ "audio.ambience",
450
+ "texture.player_albedo",
451
+ "vfx.player_spawn"
452
+ ],
453
+ "options": {
454
+ "optimization": "balanced",
455
+ "sourceMaps": false
456
+ }
457
+ }
458
+ ]
459
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "schemaVersion": "1.0",
3
+ "systemId": "example.game.2d.seeded",
4
+ "version": "1.0.0",
5
+ "kind": "GAME",
6
+ "spatialModel": "TWO_D",
7
+ "renderMode": "VISUAL",
8
+ "visualProfile": "VECTOR",
9
+ "fidelity": "SYSTEMIC",
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.fidelity.systemic",
20
+ "interactive.kind.game",
21
+ "interactive.render.visual",
22
+ "interactive.replay.compare",
23
+ "interactive.runtime.bind",
24
+ "interactive.seed.bind",
25
+ "interactive.smoke.observe",
26
+ "interactive.snapshot.capture",
27
+ "interactive.spatial.two_d",
28
+ "interactive.state.model",
29
+ "interactive.time.fixed_step",
30
+ "interactive.visual.vector",
31
+ "interactive.world.model"
32
+ ],
33
+ "pipelines": [
34
+ "interactive.prototype",
35
+ "interactive.replay"
36
+ ],
37
+ "adapterTargets": [
38
+ "engine.web.canvas2d",
39
+ "telemetry.trace.local",
40
+ "validator.replay.local"
41
+ ],
42
+ "world": {
43
+ "identity": "top-down logistics puzzle",
44
+ "state": {
45
+ "grid": "warehouse-a",
46
+ "moves": 0
47
+ },
48
+ "time": {
49
+ "fixedStepMs": 16.6667
50
+ },
51
+ "events": [
52
+ "crate.move",
53
+ "route.complete",
54
+ "route.blocked"
55
+ ],
56
+ "initialConditions": {
57
+ "level": "warehouse-a",
58
+ "moves": 0
59
+ },
60
+ "coordinateSystem": "screen-space origin top-left",
61
+ "grid": "32 px orthogonal cells",
62
+ "loop": "inspect, route, move, verify",
63
+ "objective": "place every crate on a destination",
64
+ "successConditions": [
65
+ "all destinations occupied"
66
+ ],
67
+ "failureConditions": [
68
+ "no legal move remains"
69
+ ],
70
+ "rules": [
71
+ "one crate per destination",
72
+ "crates cannot overlap"
73
+ ],
74
+ "seed": 20260719,
75
+ "snapshot": "state captured before every move",
76
+ "replay": "ordered input events reproduce the run",
77
+ "step": "one fixed simulation tick"
78
+ },
79
+ "acceptance": {
80
+ "determinism": "same seed and inputs produce the same result digest",
81
+ "rendering": "world remains legible at the declared grid scale"
82
+ }
83
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "schemaVersion": "1.0",
3
+ "systemId": "example.game.3d.human",
4
+ "version": "1.0.0",
5
+ "kind": "GAME",
6
+ "spatialModel": "THREE_D",
7
+ "renderMode": "VISUAL",
8
+ "visualProfile": "REALISTIC",
9
+ "fidelity": "SYSTEMIC",
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.systemic",
20
+ "interactive.kind.game",
21
+ "interactive.playtest.plan",
22
+ "interactive.render.visual",
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": "third-person exploration arena",
44
+ "state": {
45
+ "player": "active",
46
+ "arena": "loaded"
47
+ },
48
+ "time": {
49
+ "tickRateHz": 60
50
+ },
51
+ "events": [
52
+ "player.move",
53
+ "objective.complete",
54
+ "player.fail"
55
+ ],
56
+ "initialConditions": {
57
+ "spawn": "arena.entry",
58
+ "health": 100
59
+ },
60
+ "units": "metres",
61
+ "scale": "1 unit = 1 metre",
62
+ "coordinateSystem": "right-handed Y-up",
63
+ "loop": "explore, solve, reach the exit",
64
+ "objective": "reach arena.exit",
65
+ "successConditions": [
66
+ "arena.exit reached"
67
+ ],
68
+ "failureConditions": [
69
+ "health reaches zero"
70
+ ],
71
+ "rules": [
72
+ "movement obeys collision volumes",
73
+ "objectives unlock in declared order"
74
+ ]
75
+ },
76
+ "acceptance": {
77
+ "boot": "runtime reaches the playable arena",
78
+ "loop": "a human can complete one full objective cycle",
79
+ "failure": "failure returns to a recoverable checkpoint"
80
+ }
81
+ }