@khorsheed/dsh-game 0.1.0 → 0.1.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/CHANGELOG.md +8 -0
- package/lib/client.js +637 -295
- package/lib/index.js +144 -1
- package/lib/typert.host.js +142 -35
- package/lib/typert.remote-client.d.ts +4 -1
- package/lib/typert.remote-client.js +81 -25
- package/lib/types/agent.js +2 -1
- package/lib/types/client/DesignView.js +3 -3
- package/lib/types/client/ElementsView.js +13 -5
- package/lib/types/client/GameTab.js +11 -6
- package/lib/types/client/PlayView.js +3 -1
- package/lib/types/client/Preview3D.d.ts +3 -1
- package/lib/types/client/Preview3D.js +4 -2
- package/lib/types/client/ProjectSwitcher.js +2 -2
- package/lib/types/client/contract.d.ts +7 -1
- package/lib/types/client/index.js +34 -0
- package/lib/types/client/locales.d.ts +3 -0
- package/lib/types/client/locales.js +6 -0
- package/lib/types/client/preview-entry.d.ts +1 -1
- package/lib/types/client/preview-entry.js +4 -1
- package/lib/types/client/reveal.d.ts +43 -0
- package/lib/types/client/reveal.js +73 -0
- package/lib/types/project.d.ts +6 -0
- package/lib/types/project.js +10 -0
- package/lib/types/remote.d.ts +3 -1
- package/lib/types/remote.js +7 -0
- package/lib/types/skills.js +1 -0
- package/lib/types/store.d.ts +22 -1
- package/lib/types/store.js +99 -1
- package/lib/types/tools.js +15 -7
- package/lib/types/types.d.ts +26 -0
- package/lib/types/vfs.d.ts +2 -0
- package/package.json +1 -1
package/lib/typert.host.js
CHANGED
|
@@ -197,6 +197,26 @@ const _khorsheed_dsh_game_game_finalizeParams_result$schema = () => (_khorsheed_
|
|
|
197
197
|
}), z.object({
|
|
198
198
|
'ok': z.literal(true).readonly(),
|
|
199
199
|
})]))
|
|
200
|
+
let _khorsheed_dsh_game_game_liveVersion_parameter_0$schema$value
|
|
201
|
+
const _khorsheed_dsh_game_game_liveVersion_parameter_0$schema = () => (_khorsheed_dsh_game_game_liveVersion_parameter_0$schema$value ??= z.string())
|
|
202
|
+
let _khorsheed_dsh_game_game_liveVersion_result$schema$value
|
|
203
|
+
const _khorsheed_dsh_game_game_liveVersion_result$schema = () => (_khorsheed_dsh_game_game_liveVersion_result$schema$value ??= z.union([z.literal(null), z.object({
|
|
204
|
+
'projectId': z.string().readonly(),
|
|
205
|
+
'version': z.number().readonly(),
|
|
206
|
+
'kind': z.union([z.literal("none"), z.literal("candidate"), z.literal("deployed")]).readonly(),
|
|
207
|
+
'at': z.union([z.literal(null), z.string()]).readonly(),
|
|
208
|
+
'by': z.union([z.literal("user"), z.literal("agent"), z.literal("turn")]).readonly().optional(),
|
|
209
|
+
'show': z.object({
|
|
210
|
+
'seq': z.number().readonly(),
|
|
211
|
+
'target': z.object({
|
|
212
|
+
'view': z.union([z.literal("versions"), z.literal("play"), z.literal("elements"), z.literal("design")]).readonly(),
|
|
213
|
+
'elementId': z.string().readonly().optional(),
|
|
214
|
+
'chapterId': z.string().readonly().optional(),
|
|
215
|
+
}).readonly(),
|
|
216
|
+
'note': z.string().readonly().describe('What to look at, in the agent\'s words (shown with the notice).'),
|
|
217
|
+
'at': z.string().readonly(),
|
|
218
|
+
}).readonly().optional().describe('The agent\'s latest request to show the user something, if any since the host started.'),
|
|
219
|
+
})]))
|
|
200
220
|
let _khorsheed_dsh_game_game_logPlay_parameter_0$schema$value
|
|
201
221
|
const _khorsheed_dsh_game_game_logPlay_parameter_0$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_0$schema$value ??= z.string())
|
|
202
222
|
let _khorsheed_dsh_game_game_logPlay_parameter_1$schema$value
|
|
@@ -490,6 +510,7 @@ const _khorsheed_dsh_game_game_state_result$schema = () => (_khorsheed_dsh_game_
|
|
|
490
510
|
}).readonly().optional(),
|
|
491
511
|
})]).readonly().describe('The 3D look, if the element has one (3d-three projects).'),
|
|
492
512
|
'lore': z.string().readonly().describe('The 设定 text (the element\'s `lore` field): who it is, its temper, how it meets the player. \'\' when unwritten.'),
|
|
513
|
+
'updatedAt': z.number().readonly().optional().describe('When its file last changed (ms), for listing the newest first.'),
|
|
493
514
|
})).readonly(),
|
|
494
515
|
'elementErrors': z.array(z.object({
|
|
495
516
|
'where': z.string().readonly().describe('`smoke`, `data`, or the test file\'s project-relative path.'),
|
|
@@ -813,6 +834,8 @@ let _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema$value
|
|
|
813
834
|
const _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema$value ??= z.strictObject({
|
|
814
835
|
'projectId': z.string(),
|
|
815
836
|
}))
|
|
837
|
+
let _khorsheed_dsh_game_game_liveVersion_parameter_0_strict$schema$value
|
|
838
|
+
const _khorsheed_dsh_game_game_liveVersion_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_liveVersion_parameter_0_strict$schema$value ??= z.string())
|
|
816
839
|
let _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema$value
|
|
817
840
|
const _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema$value ??= z.string())
|
|
818
841
|
let _khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema$value
|
|
@@ -961,7 +984,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
961
984
|
schema: _khorsheed_dsh_game_game_bind_result$schema(),
|
|
962
985
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
963
986
|
},
|
|
964
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
987
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":73,"column":3},
|
|
965
988
|
},
|
|
966
989
|
'game/bundle': {
|
|
967
990
|
service: 'gameRemote',
|
|
@@ -994,7 +1017,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
994
1017
|
schema: _khorsheed_dsh_game_game_bundle_result$schema(),
|
|
995
1018
|
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
996
1019
|
},
|
|
997
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1020
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":85,"column":3},
|
|
998
1021
|
},
|
|
999
1022
|
'game/changes': {
|
|
1000
1023
|
service: 'gameRemote',
|
|
@@ -1027,7 +1050,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1027
1050
|
schema: _khorsheed_dsh_game_game_changes_result$schema(),
|
|
1028
1051
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"against":{"oneOf":[{"type":"null","const":null},{"type":"number"}],"description":"The version compared against (the waiting candidate, else the live one); null before any."},"hasEntry":{"type":"boolean"},"count":{"type":"number","description":"Build files added, changed or removed (first 30 of \\`count\\`)."},"files":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"kind":{"type":"string","enum":["changed","added","removed"]}},"required":["path","kind"],"additionalProperties":true}},"lastAt":{"oneOf":[{"type":"null","const":null},{"type":"string"}],"description":"The newest change's time."},"busy":{"oneOf":[{"type":"null","const":null},{"type":"string","enum":["turn","recent"]}],"description":"Someone is still writing: a bound session's turn is running, or a file changed in the last 20 s."},"edits":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","description":"Stable key so repeated edits of one thing collapse into one entry (`param:speed`, `look:fog`, `design:core-loop`)."},"text":{"type":"string","description":"Short label for the dock and the model (`参数 移动速度 1.4→1.8`)."}},"required":["key","text"],"additionalProperties":true},"description":"The panel edits among them."},"failed":{"oneOf":[{"type":"null","const":null},{"type":"array","items":{"type":"object","properties":{"where":{"type":"string"},"message":{"type":"string"}},"required":["where","message"],"additionalProperties":true}}],"description":"The last check ran after the newest change and failed: its findings."},"ok":{"type":"boolean","const":true}},"required":["against","hasEntry","count","files","lastAt","busy","edits","failed","ok"],"additionalProperties":true}]},
|
|
1029
1052
|
},
|
|
1030
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1053
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":97,"column":3},
|
|
1031
1054
|
},
|
|
1032
1055
|
'game/checkShot': {
|
|
1033
1056
|
service: 'gameRemote',
|
|
@@ -1060,7 +1083,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1060
1083
|
schema: _khorsheed_dsh_game_game_checkShot_result$schema(),
|
|
1061
1084
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"webp":{"type":"string"}},"required":["ok","webp"],"additionalProperties":true}]},
|
|
1062
1085
|
},
|
|
1063
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1086
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":204,"column":3},
|
|
1064
1087
|
},
|
|
1065
1088
|
'game/commit': {
|
|
1066
1089
|
service: 'gameRemote',
|
|
@@ -1111,7 +1134,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1111
1134
|
schema: _khorsheed_dsh_game_game_commit_result$schema(),
|
|
1112
1135
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"kind":{"type":"string","enum":["candidate","deployed"]},"version":{"type":"number"}},"required":["ok","kind","version"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"kind":{"type":"string","const":"failed"},"failures":{"type":"array","items":{"type":"object","properties":{"where":{"type":"string"},"message":{"type":"string"}},"required":["where","message"],"additionalProperties":true}}},"required":["ok","kind","failures"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"kind":{"type":"string","enum":["unchanged","no-entry"]}},"required":["ok","kind"],"additionalProperties":true}]},
|
|
1113
1136
|
},
|
|
1114
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1137
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":103,"column":9},
|
|
1115
1138
|
},
|
|
1116
1139
|
'game/confirm': {
|
|
1117
1140
|
service: 'gameRemote',
|
|
@@ -1162,7 +1185,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1162
1185
|
schema: _khorsheed_dsh_game_game_confirm_result$schema(),
|
|
1163
1186
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"version":{"type":"number"}},"required":["ok","version"],"additionalProperties":true}]},
|
|
1164
1187
|
},
|
|
1165
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1188
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":91,"column":9},
|
|
1166
1189
|
},
|
|
1167
1190
|
'game/deleteProject': {
|
|
1168
1191
|
service: 'gameRemote',
|
|
@@ -1213,7 +1236,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1213
1236
|
schema: _khorsheed_dsh_game_game_deleteProject_result$schema(),
|
|
1214
1237
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":true},"trashedTo":{"type":"string"}},"required":["ok"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]},"reason":{"type":"string"}},"required":["ok","error"],"additionalProperties":true}]},
|
|
1215
1238
|
},
|
|
1216
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1239
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":67,"column":9},
|
|
1217
1240
|
},
|
|
1218
1241
|
'game/diff': {
|
|
1219
1242
|
service: 'gameRemote',
|
|
@@ -1246,7 +1269,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1246
1269
|
schema: _khorsheed_dsh_game_game_diff_result$schema(),
|
|
1247
1270
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"diff":{"type":"object","properties":{"added":{"type":"array","items":{"type":"string"}},"removed":{"type":"array","items":{"type":"string"}},"changed":{"type":"array","items":{"type":"string"}}},"required":["added","removed","changed"],"additionalProperties":true}},"required":["ok","diff"],"additionalProperties":true}]},
|
|
1248
1271
|
},
|
|
1249
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1272
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":198,"column":3},
|
|
1250
1273
|
},
|
|
1251
1274
|
'game/dropPending': {
|
|
1252
1275
|
service: 'gameRemote',
|
|
@@ -1297,7 +1320,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1297
1320
|
schema: _khorsheed_dsh_game_game_dropPending_result$schema(),
|
|
1298
1321
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1299
1322
|
},
|
|
1300
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1323
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":121,"column":9},
|
|
1301
1324
|
},
|
|
1302
1325
|
'game/editElement': {
|
|
1303
1326
|
service: 'gameRemote',
|
|
@@ -1348,7 +1371,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1348
1371
|
schema: _khorsheed_dsh_game_game_editElement_result$schema(),
|
|
1349
1372
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"elementJson":{"type":"string"}},"required":["ok","elementJson"],"additionalProperties":true}]},
|
|
1350
1373
|
},
|
|
1351
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1374
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":145,"column":9},
|
|
1352
1375
|
},
|
|
1353
1376
|
'game/finalizeParams': {
|
|
1354
1377
|
service: 'gameRemote',
|
|
@@ -1399,7 +1422,40 @@ const $remote = createTypertRemoteInfo({
|
|
|
1399
1422
|
schema: _khorsheed_dsh_game_game_finalizeParams_result$schema(),
|
|
1400
1423
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1401
1424
|
},
|
|
1402
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1425
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":133,"column":9},
|
|
1426
|
+
},
|
|
1427
|
+
'game/liveVersion': {
|
|
1428
|
+
service: 'gameRemote',
|
|
1429
|
+
description: 'The bound project\'s newest version (cheap; the page polls it).',
|
|
1430
|
+
invocation: { kind: 'direct' },
|
|
1431
|
+
parameters: [
|
|
1432
|
+
{
|
|
1433
|
+
name: 'sessionId',
|
|
1434
|
+
source: 'json',
|
|
1435
|
+
codec: {
|
|
1436
|
+
mode: 'strict',
|
|
1437
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1438
|
+
create: _khorsheed_dsh_game_game_liveVersion_parameter_0$schema,
|
|
1439
|
+
schema: _khorsheed_dsh_game_game_liveVersion_parameter_0$schema(),
|
|
1440
|
+
jsonSchema: {"type":"string"},
|
|
1441
|
+
},
|
|
1442
|
+
strictCodec: {
|
|
1443
|
+
mode: 'strict',
|
|
1444
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1445
|
+
create: _khorsheed_dsh_game_game_liveVersion_parameter_0_strict$schema,
|
|
1446
|
+
schema: _khorsheed_dsh_game_game_liveVersion_parameter_0_strict$schema(),
|
|
1447
|
+
jsonSchema: {"type":"string"},
|
|
1448
|
+
},
|
|
1449
|
+
},
|
|
1450
|
+
],
|
|
1451
|
+
result: {
|
|
1452
|
+
mode: 'strict',
|
|
1453
|
+
typeSymbol: '@khorsheed/dsh-game#game/liveVersion:result',
|
|
1454
|
+
create: _khorsheed_dsh_game_game_liveVersion_result$schema,
|
|
1455
|
+
schema: _khorsheed_dsh_game_game_liveVersion_result$schema(),
|
|
1456
|
+
jsonSchema: {"oneOf":[{"type":"null","const":null},{"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"},"kind":{"type":"string","enum":["none","candidate","deployed"]},"at":{"oneOf":[{"type":"null","const":null},{"type":"string"}]},"by":{"type":"string","enum":["user","agent","turn"]},"show":{"type":"object","properties":{"seq":{"type":"number"},"target":{"type":"object","properties":{"view":{"type":"string","enum":["versions","play","elements","design"]},"elementId":{"type":"string"},"chapterId":{"type":"string"}},"required":["view"],"additionalProperties":true},"note":{"type":"string","description":"What to look at, in the agent's words (shown with the notice)."},"at":{"type":"string"}},"required":["seq","target","note","at"],"additionalProperties":true,"description":"The agent's latest request to show the user something, if any since the host started."}},"required":["projectId","version","kind","at"],"additionalProperties":true}]},
|
|
1457
|
+
},
|
|
1458
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":49,"column":3},
|
|
1403
1459
|
},
|
|
1404
1460
|
'game/logPlay': {
|
|
1405
1461
|
service: 'gameRemote',
|
|
@@ -1450,7 +1506,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1450
1506
|
schema: _khorsheed_dsh_game_game_logPlay_result$schema(),
|
|
1451
1507
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1452
1508
|
},
|
|
1453
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1509
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":115,"column":9},
|
|
1454
1510
|
},
|
|
1455
1511
|
'game/pickProposal': {
|
|
1456
1512
|
service: 'gameRemote',
|
|
@@ -1501,7 +1557,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1501
1557
|
schema: _khorsheed_dsh_game_game_pickProposal_result$schema(),
|
|
1502
1558
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1503
1559
|
},
|
|
1504
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1560
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":162,"column":9},
|
|
1505
1561
|
},
|
|
1506
1562
|
'game/projectCards': {
|
|
1507
1563
|
service: 'gameRemote',
|
|
@@ -1516,7 +1572,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1516
1572
|
schema: _khorsheed_dsh_game_game_projectCards_result$schema(),
|
|
1517
1573
|
jsonSchema: {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"root":{"type":"string"},"updatedAt":{"type":"string"},"pitch":{"type":"string"},"artStyle":{"type":"string"},"version":{"oneOf":[{"type":"null","const":null},{"type":"number"}]},"elements":{"type":"number"},"thumb":{"type":"string","description":"The last check's screenshot (webp, base64), when there is one."}},"required":["id","title","root","updatedAt","pitch","artStyle","version","elements"],"additionalProperties":true}},
|
|
1518
1574
|
},
|
|
1519
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1575
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":61,"column":3},
|
|
1520
1576
|
},
|
|
1521
1577
|
'game/reject': {
|
|
1522
1578
|
service: 'gameRemote',
|
|
@@ -1567,7 +1623,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1567
1623
|
schema: _khorsheed_dsh_game_game_reject_result$schema(),
|
|
1568
1624
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1569
1625
|
},
|
|
1570
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1626
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":186,"column":9},
|
|
1571
1627
|
},
|
|
1572
1628
|
'game/requestRestyle': {
|
|
1573
1629
|
service: 'gameRemote',
|
|
@@ -1618,7 +1674,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1618
1674
|
schema: _khorsheed_dsh_game_game_requestRestyle_result$schema(),
|
|
1619
1675
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1620
1676
|
},
|
|
1621
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1677
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":180,"column":9},
|
|
1622
1678
|
},
|
|
1623
1679
|
'game/resetParams': {
|
|
1624
1680
|
service: 'gameRemote',
|
|
@@ -1669,7 +1725,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1669
1725
|
schema: _khorsheed_dsh_game_game_resetParams_result$schema(),
|
|
1670
1726
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1671
1727
|
},
|
|
1672
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1728
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":139,"column":9},
|
|
1673
1729
|
},
|
|
1674
1730
|
'game/rollback': {
|
|
1675
1731
|
service: 'gameRemote',
|
|
@@ -1720,7 +1776,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1720
1776
|
schema: _khorsheed_dsh_game_game_rollback_result$schema(),
|
|
1721
1777
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1722
1778
|
},
|
|
1723
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1779
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":192,"column":9},
|
|
1724
1780
|
},
|
|
1725
1781
|
'game/setAutoConfirm': {
|
|
1726
1782
|
service: 'gameRemote',
|
|
@@ -1771,7 +1827,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1771
1827
|
schema: _khorsheed_dsh_game_game_setAutoConfirm_result$schema(),
|
|
1772
1828
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1773
1829
|
},
|
|
1774
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1830
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":109,"column":9},
|
|
1775
1831
|
},
|
|
1776
1832
|
'game/setOnePager': {
|
|
1777
1833
|
service: 'gameRemote',
|
|
@@ -1822,7 +1878,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1822
1878
|
schema: _khorsheed_dsh_game_game_setOnePager_result$schema(),
|
|
1823
1879
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1824
1880
|
},
|
|
1825
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1881
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":174,"column":9},
|
|
1826
1882
|
},
|
|
1827
1883
|
'game/setParam': {
|
|
1828
1884
|
service: 'gameRemote',
|
|
@@ -1873,7 +1929,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1873
1929
|
schema: _khorsheed_dsh_game_game_setParam_result$schema(),
|
|
1874
1930
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
1875
1931
|
},
|
|
1876
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
1932
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":127,"column":9},
|
|
1877
1933
|
},
|
|
1878
1934
|
'game/state': {
|
|
1879
1935
|
service: 'gameRemote',
|
|
@@ -1957,7 +2013,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1957
2013
|
schema: _khorsheed_dsh_game_game_turnReport_result$schema(),
|
|
1958
2014
|
jsonSchema: {"oneOf":[{"type":"null","const":null},{"type":"object","properties":{"turn":{"type":"number"},"projectId":{"type":"string"},"title":{"type":"string"},"at":{"type":"string"},"version":{"oneOf":[{"type":"null","const":null},{"type":"object","properties":{"kind":{"type":"string","enum":["candidate","deployed"]},"version":{"type":"number"}},"required":["kind","version"],"additionalProperties":true}],"description":"A version that became live (or a candidate) during the turn."},"check":{"oneOf":[{"type":"null","const":null},{"type":"object","properties":{"ok":{"type":"boolean"},"fixes":{"type":"number"},"gaveUp":{"type":"boolean"},"passed":{"type":"number"},"failures":{"type":"number"}},"required":["ok","fixes","gaveUp","passed","failures"],"additionalProperties":true}],"description":"The turn's end-of-turn check, when one ran."},"elements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"what":{"type":"string","enum":["removed","new","look","fields"]},"fields":{"type":"array","items":{"type":"string"}},"looks":{"type":"object","properties":{"before":{"oneOf":[{"type":"null","const":null},{"type":"string"}]},"after":{"type":"string"}},"required":["before","after"],"additionalProperties":true,"description":"3D looks before and after the turn (JSON), for the card's side-by-side previews."}},"required":["id","name","what"],"additionalProperties":true}},"chapters":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id","title"],"additionalProperties":true}},"params":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"label":{"type":"string"},"from":{"type":"number"},"to":{"type":"number"}},"required":["key","label","to"],"additionalProperties":true}},"code":{"type":"array","items":{"type":"string"},"description":"Other changed source files (code, assets, index.html)."},"tests":{"type":"array","items":{"type":"string"}}},"required":["turn","projectId","title","at","version","check","elements","chapters","params","code","tests"],"additionalProperties":true}]},
|
|
1959
2015
|
},
|
|
1960
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
2016
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":55,"column":3},
|
|
1961
2017
|
},
|
|
1962
2018
|
'game/versionBundle': {
|
|
1963
2019
|
service: 'gameRemote',
|
|
@@ -1990,7 +2046,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
1990
2046
|
schema: _khorsheed_dsh_game_game_versionBundle_result$schema(),
|
|
1991
2047
|
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
1992
2048
|
},
|
|
1993
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
2049
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":210,"column":3},
|
|
1994
2050
|
},
|
|
1995
2051
|
'game/workingFile': {
|
|
1996
2052
|
service: 'gameRemote',
|
|
@@ -2023,7 +2079,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
2023
2079
|
schema: _khorsheed_dsh_game_game_workingFile_result$schema(),
|
|
2024
2080
|
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
2025
2081
|
},
|
|
2026
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
2082
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":79,"column":3},
|
|
2027
2083
|
},
|
|
2028
2084
|
'game/writeChapter': {
|
|
2029
2085
|
service: 'gameRemote',
|
|
@@ -2074,7 +2130,7 @@ const $remote = createTypertRemoteInfo({
|
|
|
2074
2130
|
schema: _khorsheed_dsh_game_game_writeChapter_result$schema(),
|
|
2075
2131
|
jsonSchema: {"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["not-found","denied","io","unbound","invalid","no-version","not-a-project","is-workspace","trash-failed"]}},"required":["ok","error"],"additionalProperties":true},{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"],"additionalProperties":true}]},
|
|
2076
2132
|
},
|
|
2077
|
-
sourceLocation: {"file":"packages/game/src/remote.ts","line":
|
|
2133
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":168,"column":9},
|
|
2078
2134
|
},
|
|
2079
2135
|
},
|
|
2080
2136
|
}, z)
|
|
@@ -2102,6 +2158,13 @@ export const TYPERT = {
|
|
|
2102
2158
|
"summary": "The session's bound project (full view) and the project list.",
|
|
2103
2159
|
"jsDoc": "/** The session's bound project (full view) and the project list. */"
|
|
2104
2160
|
},
|
|
2161
|
+
{
|
|
2162
|
+
"kind": "method",
|
|
2163
|
+
"name": "liveVersion",
|
|
2164
|
+
"signature": "@Remote('liveVersion') liveVersion(sessionId: SessionId): Promise<LiveVersion | null>",
|
|
2165
|
+
"summary": "The bound project's newest version (cheap; the page polls it).",
|
|
2166
|
+
"jsDoc": "/** The bound project's newest version (cheap; the page polls it). */"
|
|
2167
|
+
},
|
|
2105
2168
|
{
|
|
2106
2169
|
"kind": "method",
|
|
2107
2170
|
"name": "turnReport",
|
|
@@ -2329,7 +2392,7 @@ export const TYPERT = {
|
|
|
2329
2392
|
},
|
|
2330
2393
|
{
|
|
2331
2394
|
"name": "ElementView",
|
|
2332
|
-
"declaration": "export interface ElementView {\n readonly file: string;\n readonly index: number;\n readonly id: string;\n readonly type: string;\n readonly name: string;\n readonly stats: Readonly<Record<string, string | number | boolean>>;\n readonly look: ElementLook | null;\n readonly look3d: Look3D | null;\n readonly lore: string;\n}"
|
|
2395
|
+
"declaration": "export interface ElementView {\n readonly file: string;\n readonly index: number;\n readonly id: string;\n readonly type: string;\n readonly name: string;\n readonly stats: Readonly<Record<string, string | number | boolean>>;\n readonly look: ElementLook | null;\n readonly look3d: Look3D | null;\n readonly lore: string;\n readonly updatedAt?: number;\n}"
|
|
2333
2396
|
},
|
|
2334
2397
|
{
|
|
2335
2398
|
"name": "GameError",
|
|
@@ -2363,6 +2426,10 @@ export const TYPERT = {
|
|
|
2363
2426
|
"name": "KitRef",
|
|
2364
2427
|
"declaration": "export interface KitRef {\n readonly kit: KitId;\n readonly version: number;\n}"
|
|
2365
2428
|
},
|
|
2429
|
+
{
|
|
2430
|
+
"name": "LiveVersion",
|
|
2431
|
+
"declaration": "export interface LiveVersion {\n readonly projectId: string;\n readonly version: number;\n readonly kind: 'deployed' | 'candidate' | 'none';\n readonly at: string | null;\n readonly by?: VersionSource;\n readonly show?: ShowRequest;\n}"
|
|
2432
|
+
},
|
|
2366
2433
|
{
|
|
2367
2434
|
"name": "LogEntry",
|
|
2368
2435
|
"declaration": "export interface LogEntry {\n readonly at: string;\n readonly text: string;\n}"
|
|
@@ -2427,6 +2494,14 @@ export const TYPERT = {
|
|
|
2427
2494
|
"name": "SessionId",
|
|
2428
2495
|
"declaration": "export type SessionId = Branded<'SessionId'>;"
|
|
2429
2496
|
},
|
|
2497
|
+
{
|
|
2498
|
+
"name": "ShowRequest",
|
|
2499
|
+
"declaration": "export interface ShowRequest {\n readonly seq: number;\n readonly target: ShowTarget;\n readonly note: string;\n readonly at: string;\n}"
|
|
2500
|
+
},
|
|
2501
|
+
{
|
|
2502
|
+
"name": "ShowTarget",
|
|
2503
|
+
"declaration": "export interface ShowTarget {\n readonly view: 'play' | 'elements' | 'design' | 'versions';\n readonly elementId?: string;\n readonly chapterId?: string;\n}"
|
|
2504
|
+
},
|
|
2430
2505
|
{
|
|
2431
2506
|
"name": "Style3D",
|
|
2432
2507
|
"declaration": "export interface Style3D {\n readonly preset?: string;\n readonly bg?: string;\n readonly ground?: string;\n readonly ground2?: string;\n readonly water?: string;\n readonly outline?: string;\n readonly outlineWidth?: number;\n readonly shades?: number;\n readonly fog?: readonly [number, number];\n readonly light?: number;\n readonly shadows?: boolean;\n readonly rim?: number;\n readonly rimColor?: string;\n readonly scenes?: Readonly<Record<string, SceneStyle3D>>;\n}"
|
|
@@ -2565,12 +2640,24 @@ export const TYPERT = {
|
|
|
2565
2640
|
"summary": "Everything the panel and `game_read` show about one project.",
|
|
2566
2641
|
"jsDoc": "/**\n * Everything the panel and `game_read` show about one project.\n * @param projectId - registry id.\n * @returns the view, or undefined for an unknown id.\n */"
|
|
2567
2642
|
},
|
|
2643
|
+
{
|
|
2644
|
+
"kind": "method",
|
|
2645
|
+
"name": "liveVersion",
|
|
2646
|
+
"signature": "async liveVersion(sessionId: string): Promise<LiveVersion | null>",
|
|
2647
|
+
"summary": "The bound project's newest version (the waiting candidate, else the live one), read from two small files: the page polls it to announce a version the moment it lands, whoever's turn cut it.",
|
|
2648
|
+
"jsDoc": "/**\n * The bound project's newest version (the waiting candidate, else the live\n * one), read from two small files: the page polls it to announce a version\n * the moment it lands, whoever's turn cut it. Version 0 means none yet.\n */"
|
|
2649
|
+
},
|
|
2650
|
+
{
|
|
2651
|
+
"kind": "method",
|
|
2652
|
+
"name": "showAfterPublish",
|
|
2653
|
+
"signature": "async showAfterPublish(sessionId: string, version: number, candidate: boolean, show?: string, note?: string): Promise<string>",
|
|
2654
|
+
"summary": "After a passing `game_publish`: leave the pages showing this project a request to take their game tab to the result.",
|
|
2655
|
+
"jsDoc": "/**\n * After a passing `game_publish`: leave the pages showing this project a\n * request to take their game tab to the result. `show` is the agent's choice\n * (play, versions, elements, elements:<id or name>, design:<chapter>); left\n * out — or not found — the version decides: the one element it changed, the\n * grid when several, else the play area (a candidate always opens play,\n * where it waits for the user's OK). Pages pick it up on their poll.\n * @returns a line for the tool's answer.\n */"
|
|
2656
|
+
},
|
|
2568
2657
|
{
|
|
2569
2658
|
"kind": "method",
|
|
2570
2659
|
"name": "sessionState",
|
|
2571
|
-
"signature": "async sessionState(sessionId: string): Promise<SessionGameState>"
|
|
2572
|
-
"summary": "The tab's state for one session.",
|
|
2573
|
-
"jsDoc": "/** The tab's state for one session. */"
|
|
2660
|
+
"signature": "async sessionState(sessionId: string): Promise<SessionGameState>"
|
|
2574
2661
|
},
|
|
2575
2662
|
{
|
|
2576
2663
|
"kind": "method",
|
|
@@ -2910,7 +2997,7 @@ export const TYPERT = {
|
|
|
2910
2997
|
},
|
|
2911
2998
|
{
|
|
2912
2999
|
"name": "ElementView",
|
|
2913
|
-
"declaration": "export interface ElementView {\n readonly file: string;\n readonly index: number;\n readonly id: string;\n readonly type: string;\n readonly name: string;\n readonly stats: Readonly<Record<string, string | number | boolean>>;\n readonly look: ElementLook | null;\n readonly look3d: Look3D | null;\n readonly lore: string;\n}"
|
|
3000
|
+
"declaration": "export interface ElementView {\n readonly file: string;\n readonly index: number;\n readonly id: string;\n readonly type: string;\n readonly name: string;\n readonly stats: Readonly<Record<string, string | number | boolean>>;\n readonly look: ElementLook | null;\n readonly look3d: Look3D | null;\n readonly lore: string;\n readonly updatedAt?: number;\n}"
|
|
2914
3001
|
},
|
|
2915
3002
|
{
|
|
2916
3003
|
"name": "EpochHeader",
|
|
@@ -3092,6 +3179,10 @@ export const TYPERT = {
|
|
|
3092
3179
|
"name": "LegacyScheduleRecord",
|
|
3093
3180
|
"declaration": "export type LegacyScheduleRecord = LegacyAfterScheduleRecord | LegacyAtScheduleRecord | LegacyEveryScheduleRecord;"
|
|
3094
3181
|
},
|
|
3182
|
+
{
|
|
3183
|
+
"name": "LiveVersion",
|
|
3184
|
+
"declaration": "export interface LiveVersion {\n readonly projectId: string;\n readonly version: number;\n readonly kind: 'deployed' | 'candidate' | 'none';\n readonly at: string | null;\n readonly by?: VersionSource;\n readonly show?: ShowRequest;\n}"
|
|
3185
|
+
},
|
|
3095
3186
|
{
|
|
3096
3187
|
"name": "LlmCallConfig",
|
|
3097
3188
|
"declaration": "export interface LlmCallConfig extends LlmCallControls {\n provider: string;\n model: string;\n}"
|
|
@@ -3336,9 +3427,13 @@ export const TYPERT = {
|
|
|
3336
3427
|
"name": "RoomDeliveryStateEvent",
|
|
3337
3428
|
"declaration": "export interface RoomDeliveryStateEvent {\n readonly id: string;\n readonly dispatchSeq: number;\n readonly memberId: string;\n readonly state: 'running' | 'done' | 'cancelled' | 'failed' | 'uncertain';\n readonly text?: string;\n readonly error?: string;\n}"
|
|
3338
3429
|
},
|
|
3430
|
+
{
|
|
3431
|
+
"name": "RoomDispatchAttachment",
|
|
3432
|
+
"declaration": "export interface RoomDispatchAttachment {\n readonly kind: 'image' | 'file';\n readonly name?: string;\n readonly path?: string;\n}"
|
|
3433
|
+
},
|
|
3339
3434
|
{
|
|
3340
3435
|
"name": "RoomDispatchEvent",
|
|
3341
|
-
"declaration": "export interface RoomDispatchEvent {\n readonly plan?: { readonly goalId: string; readonly taskId?: string; readonly attemptId?: string; };\n readonly requestSignature?: string;\n readonly id?: string;\n readonly targetIds?: readonly string[];\n readonly origin?: 'human' | 'coordinator' | 'member' | 'report' | 'relay' | 'help';\n readonly help?: RoomHelpOrigin;\n readonly from?: string;\n readonly kind?: 'task' | 'notify';\n readonly hop?: number;\n readonly inReplyTo?: number;\n readonly note?: string;\n readonly held?: true;\n readonly releases?: readonly number[];\n readonly task?: string;\n readonly parent?: string;\n readonly replyTo?: string;\n readonly reportFor?: string;\n readonly targets: readonly string[];\n readonly text: string;\n}"
|
|
3436
|
+
"declaration": "export interface RoomDispatchEvent {\n readonly attachments?: readonly RoomDispatchAttachment[];\n readonly plan?: { readonly goalId: string; readonly taskId?: string; readonly attemptId?: string; };\n readonly requestSignature?: string;\n readonly id?: string;\n readonly targetIds?: readonly string[];\n readonly origin?: 'human' | 'coordinator' | 'member' | 'report' | 'relay' | 'help';\n readonly help?: RoomHelpOrigin;\n readonly from?: string;\n readonly kind?: 'task' | 'notify';\n readonly hop?: number;\n readonly inReplyTo?: number;\n readonly note?: string;\n readonly held?: true;\n readonly releases?: readonly number[];\n readonly task?: string;\n readonly parent?: string;\n readonly replyTo?: string;\n readonly reportFor?: string;\n readonly targets: readonly string[];\n readonly text: string;\n}"
|
|
3342
3437
|
},
|
|
3343
3438
|
{
|
|
3344
3439
|
"name": "RoomExecutionMetadataEvent",
|
|
@@ -3410,7 +3505,7 @@ export const TYPERT = {
|
|
|
3410
3505
|
},
|
|
3411
3506
|
{
|
|
3412
3507
|
"name": "RoomQuestionEvent",
|
|
3413
|
-
"declaration": "export interface RoomQuestionEvent {\n readonly id: string;\n readonly member: string;\n readonly memberId: string;\n readonly questions: readonly RoomQuestionItem[];\n}"
|
|
3508
|
+
"declaration": "export interface RoomQuestionEvent {\n readonly id: string;\n readonly member: string;\n readonly memberId: string;\n readonly questions: readonly RoomQuestionItem[];\n readonly runId?: string;\n readonly before?: string;\n readonly consent?: true;\n}"
|
|
3414
3509
|
},
|
|
3415
3510
|
{
|
|
3416
3511
|
"name": "RoomQuestionItem",
|
|
@@ -3422,7 +3517,7 @@ export const TYPERT = {
|
|
|
3422
3517
|
},
|
|
3423
3518
|
{
|
|
3424
3519
|
"name": "RoomQuestionResolvedEvent",
|
|
3425
|
-
"declaration": "export interface RoomQuestionResolvedEvent {\n readonly id: string;\n readonly outcome: 'answered' | 'cancelled';\n readonly answers?: readonly RoomQuestionAnswer[];\n}"
|
|
3520
|
+
"declaration": "export interface RoomQuestionResolvedEvent {\n readonly id: string;\n readonly outcome: 'answered' | 'cancelled';\n readonly answers?: readonly RoomQuestionAnswer[];\n readonly late?: true;\n}"
|
|
3426
3521
|
},
|
|
3427
3522
|
{
|
|
3428
3523
|
"name": "RoomRelayEvent",
|
|
@@ -3436,6 +3531,10 @@ export const TYPERT = {
|
|
|
3436
3531
|
"name": "RoomReportGateEvent",
|
|
3437
3532
|
"declaration": "export interface RoomReportGateEvent {\n readonly dispatchSeq: number;\n readonly memberId: string;\n readonly member: string;\n readonly verdict: 'deliver' | 'hold' | 'release';\n readonly reason: string;\n readonly probability?: number;\n}"
|
|
3438
3533
|
},
|
|
3534
|
+
{
|
|
3535
|
+
"name": "RoomRunMovedEvent",
|
|
3536
|
+
"declaration": "export interface RoomRunMovedEvent {\n readonly member: string;\n readonly startedAt: number;\n}"
|
|
3537
|
+
},
|
|
3439
3538
|
{
|
|
3440
3539
|
"name": "RoomRunStateEvent",
|
|
3441
3540
|
"declaration": "export interface RoomRunStateEvent {\n readonly childSessionId?: SessionId;\n readonly childTurn?: number;\n readonly model?: string;\n readonly effort?: string;\n readonly tokens?: number;\n readonly runId?: string;\n readonly member: string;\n readonly state: 'running' | 'done' | 'cancelled' | 'failed';\n readonly startedAt: number;\n readonly elapsedMs?: number;\n readonly error?: string;\n}"
|
|
@@ -3450,7 +3549,7 @@ export const TYPERT = {
|
|
|
3450
3549
|
},
|
|
3451
3550
|
{
|
|
3452
3551
|
"name": "RoomSpeechEvent",
|
|
3453
|
-
"declaration": "export interface RoomSpeechEvent {\n readonly interrupted?: 'cancelled' | 'failed';\n readonly reportedTo?: string;\n readonly member: string;\n readonly text: string;\n readonly childSessionId?: SessionId;\n readonly durationMs?: number;\n readonly runId?: string;\n readonly messageId?: string;\n}"
|
|
3552
|
+
"declaration": "export interface RoomSpeechEvent {\n readonly interrupted?: 'cancelled' | 'failed';\n readonly reportedTo?: string;\n readonly member: string;\n readonly text: string;\n readonly asks?: readonly { readonly id: string; readonly at: number; }[];\n readonly childSessionId?: SessionId;\n readonly durationMs?: number;\n readonly runId?: string;\n readonly messageId?: string;\n}"
|
|
3454
3553
|
},
|
|
3455
3554
|
{
|
|
3456
3555
|
"name": "RoomTaskAddedEvent",
|
|
@@ -3506,7 +3605,7 @@ export const TYPERT = {
|
|
|
3506
3605
|
},
|
|
3507
3606
|
{
|
|
3508
3607
|
"name": "SessionEventMap",
|
|
3509
|
-
"declaration": "export interface SessionEventMap {\n 'turn/start': { turn: number; };\n 'turn/end': { turn: number; reason: TurnEndReason; };\n 'step/start': { turn: number; step: number; };\n 'step/end': { turn: number; step: number; };\n 'user/message': UserMessage;\n 'developer/message': { turn: number; step: number; message: DeveloperMessage; headerSeq?: SessionSeq; };\n 'system/message': { turn: number; step: number; message: SystemMessage; };\n 'assistant/message': { turn: number; step: number; message: AssistantMessage; stream: AssistantStreamRecord[]; usage?: TokenUsage; interrupted?: true; };\n 'assistant/attempt': { turn: number; step: number; stream: AssistantStreamRecord[]; };\n 'tool/call': { turn: number; step: number; callId: ToolCallId; name: string; arguments: string; };\n 'tool/result': { turn: number; step: number; message: ToolResultMessage; error?: { name: string; code: string; reason?: string; }; meta?: JsonValue; };\n 'request/header': { header: EpochHeader; reason: RequestHeaderReason; startsSeries?: true; };\n 'request/context': RequestContext;\n 'session/end-seed': { inherited?: true; };\n 'agent/inbox/spliced': { target: InboxTarget; start: number; removedCount?: number; inserted: UserMessage[]; outcome?: 'canceled'; };\n 'working-directory/change': { cwd: string; };\n 'sandbox/mode': { mode: SandboxMode; source?: 'delegation'; };\n 'approval/asked': { id: ApprovalRequestId; toolName: string; callId?: ToolCallId; reason?: string; };\n 'approval/decided': { id: ApprovalRequestId; outcome: ApprovalOutcome; };\n 'approval/policy': { policy: ApprovalPolicy; source?: 'delegation'; };\n 'tool/ptc-dispatch-start': PtcDispatchStartEventData;\n 'tool/ptc-dispatch': PtcDispatchEventData;\n 'agent-preset/selected': { agentPreset: string; };\n 'job/registered': JobRegisteredData;\n 'job/settled': JobSettledData;\n 'command/run': { commandId: CommandId; name: string; args?: string; source: CommandSource; };\n 'command/done': { commandId: CommandId; kind: 'success' | 'error'; text?: string; sourceEventSeq?: import('@deepseek-ai/dsh-session/types').SessionSeq; };\n 'image/offload': { targets: ImageOffloadTarget[]; };\n 'session/title': SessionTitleEventData;\n 'todo/write': { todos: TodoItem[]; };\n 'model/selection': ModelSelection;\n 'permission/preset': { preset: string; };\n 'subagent/descriptor': SubagentDescriptorData;\n 'subagent/catalog': SubagentCatalogEvent;\n 'compaction/start': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; };\n 'compaction/summary': { compactionId: CompactionId; sourceCommandId?: CommandId; summary: ContentBlock[]; shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; provider: string; model: string; maxTokens?: number; usage?: TokenUsage; } & ({ rawOutput: ContentBlock[]; llmStreamCall: true; } | { rawOutput?: ContentBlock[]; llmStreamCall?: never; });\n 'compaction/end': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; error?: string; };\n 'compaction/prune': { shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; };\n 'feedback/record': FeedbackRecord;\n 'llm/retry': LlmRetryEventData;\n 'llm/retry-started': LlmRetryStartedEventData;\n 'team/member': { version: 2; teamId: TeamId; member: TeamMemberSnapshot; };\n 'team/task': { version: 2; teamId: TeamId; task: TeamTaskSnapshot; };\n 'team/message/queued': { version: 2; teamId: TeamId; message: TeamMessageSnapshot; };\n 'team/message/delivered': { version: 2; teamId: TeamId; messageId: TeamMessageId; targetId: SessionId; };\n 'goal/change': GoalChangeMeta;\n 'feedback/message-put': MessageFeedbackPut;\n 'feedback/message-delete': MessageFeedbackDelete;\n 'plan/mode': { active: boolean; };\n 'schedule/change': ScheduleChange;\n 'subagent/model-selection-policy': { allowedModels: AllowedModelRoute[]; };\n 'workspace/changes': { turn: number; };\n 'local-agent/stream': LocalAgentStreamCheckpoint;\n 'room/created': RoomCreatedEvent;\n 'room/member-added': RoomMemberAddedEvent;\n 'room/member-updated': RoomMemberUpdatedEvent;\n 'room/member-removed': RoomMemberRemovedEvent;\n 'room/dispatch': RoomDispatchEvent;\n 'room/speech': RoomSpeechEvent;\n 'room/run-state': RoomRunStateEvent;\n 'room/execution-metadata': RoomExecutionMetadataEvent;\n 'room/relay': RoomRelayEvent;\n 'room/relay-resolved': RoomRelayResolvedEvent;\n 'room/approval': RoomApprovalEvent;\n 'room/approval-resolved': RoomApprovalResolvedEvent;\n 'room/question': RoomQuestionEvent;\n 'room/question-resolved': RoomQuestionResolvedEvent;\n 'room/task-added': RoomTaskAddedEvent;\n 'room/task-updated': RoomTaskUpdatedEvent;\n 'room/task-edited': RoomTaskEditedEvent;\n 'room/goal': RoomGoalEvent;\n 'room/settings': RoomSettingsEvent;\n 'room/report-gate': RoomReportGateEvent;\n 'room/decision': RoomDecisionEvent;\n 'room/task-link': RoomTaskLinkEvent;\n 'room/job-stopped': RoomJobStoppedEvent;\n 'room/help': RoomHelpEvent;\n 'room/help-message': RoomHelpMessageEvent;\n 'room/help-state': RoomHelpStateEvent;\n 'room/help-in': RoomHelpInEvent;\n 'room/help-link': { readonly sessionId: string; readonly title: string; };\n 'room/help-unlink': { readonly sessionId: string; };\n 'room/help-nudge-dismissed': { readonly sessionId: string; };\n 'room/plan-state': RoomPlan;\n 'room/coordinator': RoomCoordinatorEvent;\n 'room/delivery-state': RoomDeliveryStateEvent;\n}"
|
|
3608
|
+
"declaration": "export interface SessionEventMap {\n 'turn/start': { turn: number; };\n 'turn/end': { turn: number; reason: TurnEndReason; };\n 'step/start': { turn: number; step: number; };\n 'step/end': { turn: number; step: number; };\n 'user/message': UserMessage;\n 'developer/message': { turn: number; step: number; message: DeveloperMessage; headerSeq?: SessionSeq; };\n 'system/message': { turn: number; step: number; message: SystemMessage; };\n 'assistant/message': { turn: number; step: number; message: AssistantMessage; stream: AssistantStreamRecord[]; usage?: TokenUsage; interrupted?: true; };\n 'assistant/attempt': { turn: number; step: number; stream: AssistantStreamRecord[]; };\n 'tool/call': { turn: number; step: number; callId: ToolCallId; name: string; arguments: string; };\n 'tool/result': { turn: number; step: number; message: ToolResultMessage; error?: { name: string; code: string; reason?: string; }; meta?: JsonValue; };\n 'request/header': { header: EpochHeader; reason: RequestHeaderReason; startsSeries?: true; };\n 'request/context': RequestContext;\n 'session/end-seed': { inherited?: true; };\n 'agent/inbox/spliced': { target: InboxTarget; start: number; removedCount?: number; inserted: UserMessage[]; outcome?: 'canceled'; };\n 'working-directory/change': { cwd: string; };\n 'sandbox/mode': { mode: SandboxMode; source?: 'delegation'; };\n 'approval/asked': { id: ApprovalRequestId; toolName: string; callId?: ToolCallId; reason?: string; };\n 'approval/decided': { id: ApprovalRequestId; outcome: ApprovalOutcome; };\n 'approval/policy': { policy: ApprovalPolicy; source?: 'delegation'; };\n 'tool/ptc-dispatch-start': PtcDispatchStartEventData;\n 'tool/ptc-dispatch': PtcDispatchEventData;\n 'agent-preset/selected': { agentPreset: string; };\n 'job/registered': JobRegisteredData;\n 'job/settled': JobSettledData;\n 'command/run': { commandId: CommandId; name: string; args?: string; source: CommandSource; };\n 'command/done': { commandId: CommandId; kind: 'success' | 'error'; text?: string; sourceEventSeq?: import('@deepseek-ai/dsh-session/types').SessionSeq; };\n 'image/offload': { targets: ImageOffloadTarget[]; };\n 'session/title': SessionTitleEventData;\n 'todo/write': { todos: TodoItem[]; };\n 'model/selection': ModelSelection;\n 'permission/preset': { preset: string; };\n 'subagent/descriptor': SubagentDescriptorData;\n 'subagent/catalog': SubagentCatalogEvent;\n 'compaction/start': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; };\n 'compaction/summary': { compactionId: CompactionId; sourceCommandId?: CommandId; summary: ContentBlock[]; shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; provider: string; model: string; maxTokens?: number; usage?: TokenUsage; } & ({ rawOutput: ContentBlock[]; llmStreamCall: true; } | { rawOutput?: ContentBlock[]; llmStreamCall?: never; });\n 'compaction/end': { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; error?: string; };\n 'compaction/prune': { shadowedRange: { start: SessionSeq; end: SessionSeq; }; shadowedSeqs: SessionSeq[]; shadowedTokenCount: number; };\n 'feedback/record': FeedbackRecord;\n 'llm/retry': LlmRetryEventData;\n 'llm/retry-started': LlmRetryStartedEventData;\n 'team/member': { version: 2; teamId: TeamId; member: TeamMemberSnapshot; };\n 'team/task': { version: 2; teamId: TeamId; task: TeamTaskSnapshot; };\n 'team/message/queued': { version: 2; teamId: TeamId; message: TeamMessageSnapshot; };\n 'team/message/delivered': { version: 2; teamId: TeamId; messageId: TeamMessageId; targetId: SessionId; };\n 'goal/change': GoalChangeMeta;\n 'feedback/message-put': MessageFeedbackPut;\n 'feedback/message-delete': MessageFeedbackDelete;\n 'plan/mode': { active: boolean; };\n 'schedule/change': ScheduleChange;\n 'subagent/model-selection-policy': { allowedModels: AllowedModelRoute[]; };\n 'workspace/changes': { turn: number; };\n 'local-agent/stream': LocalAgentStreamCheckpoint;\n 'room/created': RoomCreatedEvent;\n 'room/member-added': RoomMemberAddedEvent;\n 'room/member-updated': RoomMemberUpdatedEvent;\n 'room/member-removed': RoomMemberRemovedEvent;\n 'room/dispatch': RoomDispatchEvent;\n 'room/speech': RoomSpeechEvent;\n 'room/run-state': RoomRunStateEvent;\n 'room/run-moved': RoomRunMovedEvent;\n 'room/execution-metadata': RoomExecutionMetadataEvent;\n 'room/relay': RoomRelayEvent;\n 'room/relay-resolved': RoomRelayResolvedEvent;\n 'room/approval': RoomApprovalEvent;\n 'room/approval-resolved': RoomApprovalResolvedEvent;\n 'room/question': RoomQuestionEvent;\n 'room/question-resolved': RoomQuestionResolvedEvent;\n 'room/task-added': RoomTaskAddedEvent;\n 'room/task-updated': RoomTaskUpdatedEvent;\n 'room/task-edited': RoomTaskEditedEvent;\n 'room/goal': RoomGoalEvent;\n 'room/settings': RoomSettingsEvent;\n 'room/report-gate': RoomReportGateEvent;\n 'room/decision': RoomDecisionEvent;\n 'room/task-link': RoomTaskLinkEvent;\n 'room/job-stopped': RoomJobStoppedEvent;\n 'room/help': RoomHelpEvent;\n 'room/help-message': RoomHelpMessageEvent;\n 'room/help-state': RoomHelpStateEvent;\n 'room/help-in': RoomHelpInEvent;\n 'room/help-link': { readonly sessionId: string; readonly title: string; };\n 'room/help-unlink': { readonly sessionId: string; };\n 'room/help-nudge-dismissed': { readonly sessionId: string; };\n 'room/plan-state': RoomPlan;\n 'room/coordinator': RoomCoordinatorEvent;\n 'room/delivery-state': RoomDeliveryStateEvent;\n}"
|
|
3510
3609
|
},
|
|
3511
3610
|
{
|
|
3512
3611
|
"name": "SessionEventType",
|
|
@@ -3560,6 +3659,14 @@ export const TYPERT = {
|
|
|
3560
3659
|
"name": "SessionTitleSource",
|
|
3561
3660
|
"declaration": "export type SessionTitleSource = { readonly kind: 'fallback'; } | { readonly kind: 'provider'; readonly provider: SessionTitleProviderId; readonly model?: SessionTitleModelIdentity; } | { readonly kind: 'user'; };"
|
|
3562
3661
|
},
|
|
3662
|
+
{
|
|
3663
|
+
"name": "ShowRequest",
|
|
3664
|
+
"declaration": "export interface ShowRequest {\n readonly seq: number;\n readonly target: ShowTarget;\n readonly note: string;\n readonly at: string;\n}"
|
|
3665
|
+
},
|
|
3666
|
+
{
|
|
3667
|
+
"name": "ShowTarget",
|
|
3668
|
+
"declaration": "export interface ShowTarget {\n readonly view: 'play' | 'elements' | 'design' | 'versions';\n readonly elementId?: string;\n readonly chapterId?: string;\n}"
|
|
3669
|
+
},
|
|
3563
3670
|
{
|
|
3564
3671
|
"name": "SkillInvocationSource",
|
|
3565
3672
|
"declaration": "export interface SkillInvocationSource {\n readonly kind: 'skill-invocation';\n readonly name: string;\n readonly form: 'instructions';\n}"
|
|
@@ -5,7 +5,7 @@ import type {
|
|
|
5
5
|
TypertRemoteMethod,
|
|
6
6
|
} from '@deepseek-ai/dsh-typert-protocol'
|
|
7
7
|
import type { SessionId } from '@deepseek-ai/dsh-session/types'
|
|
8
|
-
import type { BundleFile, CommitResult, DeleteProjectResult, GameResult, PlayBundle, ProjectCard, SessionGameState, TurnReport, VersionDiff, WorkingChanges } from '@khorsheed/dsh-game/types'
|
|
8
|
+
import type { BundleFile, CommitResult, DeleteProjectResult, GameResult, LiveVersion, PlayBundle, ProjectCard, SessionGameState, TurnReport, VersionDiff, WorkingChanges } from '@khorsheed/dsh-game/types'
|
|
9
9
|
|
|
10
10
|
declare module '@deepseek-ai/dsh-typert-protocol' {
|
|
11
11
|
interface TypertRemoteNamespace$67616d65 {
|
|
@@ -20,6 +20,7 @@ declare module '@deepseek-ai/dsh-typert-protocol' {
|
|
|
20
20
|
dropPending: (sessionId: SessionId, request: { projectId: string; key: string; }) => Promise<RemoteResult<GameResult>>
|
|
21
21
|
editElement: (sessionId: SessionId, request: { projectId: string; elementId: string; look?: string; fields?: string; }) => Promise<RemoteResult<GameResult<{ readonly ok: true; readonly elementJson: string; }>>>
|
|
22
22
|
finalizeParams: (sessionId: SessionId, request: { projectId: string; }) => Promise<RemoteResult<GameResult>>
|
|
23
|
+
liveVersion: (sessionId: SessionId) => Promise<RemoteResult<LiveVersion | null>>
|
|
23
24
|
logPlay: (sessionId: SessionId, request: { projectId: string; version: number; seconds: number; errors: string[]; }) => Promise<RemoteResult<GameResult>>
|
|
24
25
|
pickProposal: (sessionId: SessionId, request: { projectId: string; elementId: string; at: string; index: number; }) => Promise<RemoteResult<GameResult>>
|
|
25
26
|
projectCards: () => Promise<RemoteResult<ProjectCard[]>>
|
|
@@ -48,6 +49,7 @@ declare module '@deepseek-ai/dsh-typert-protocol' {
|
|
|
48
49
|
'game/dropPending': (sessionId: SessionId, request: { projectId: string; key: string; }) => Promise<RemoteResult<GameResult>>
|
|
49
50
|
'game/editElement': (sessionId: SessionId, request: { projectId: string; elementId: string; look?: string; fields?: string; }) => Promise<RemoteResult<GameResult<{ readonly ok: true; readonly elementJson: string; }>>>
|
|
50
51
|
'game/finalizeParams': (sessionId: SessionId, request: { projectId: string; }) => Promise<RemoteResult<GameResult>>
|
|
52
|
+
'game/liveVersion': (sessionId: SessionId) => Promise<RemoteResult<LiveVersion | null>>
|
|
51
53
|
'game/logPlay': (sessionId: SessionId, request: { projectId: string; version: number; seconds: number; errors: string[]; }) => Promise<RemoteResult<GameResult>>
|
|
52
54
|
'game/pickProposal': (sessionId: SessionId, request: { projectId: string; elementId: string; at: string; index: number; }) => Promise<RemoteResult<GameResult>>
|
|
53
55
|
'game/projectCards': () => Promise<RemoteResult<ProjectCard[]>>
|
|
@@ -81,6 +83,7 @@ export declare const TYPERT_REMOTE: TypertRemoteInfo<{
|
|
|
81
83
|
readonly 'game/dropPending': TypertRemoteMethod<{ readonly 'sessionId': SessionId; readonly 'request': { projectId: string; key: string; } }, GameResult>
|
|
82
84
|
readonly 'game/editElement': TypertRemoteMethod<{ readonly 'sessionId': SessionId; readonly 'request': { projectId: string; elementId: string; look?: string; fields?: string; } }, GameResult<{ readonly ok: true; readonly elementJson: string; }>>
|
|
83
85
|
readonly 'game/finalizeParams': TypertRemoteMethod<{ readonly 'sessionId': SessionId; readonly 'request': { projectId: string; } }, GameResult>
|
|
86
|
+
readonly 'game/liveVersion': TypertRemoteMethod<{ readonly 'sessionId': SessionId }, LiveVersion | null>
|
|
84
87
|
readonly 'game/logPlay': TypertRemoteMethod<{ readonly 'sessionId': SessionId; readonly 'request': { projectId: string; version: number; seconds: number; errors: string[]; } }, GameResult>
|
|
85
88
|
readonly 'game/pickProposal': TypertRemoteMethod<{ readonly 'sessionId': SessionId; readonly 'request': { projectId: string; elementId: string; at: string; index: number; } }, GameResult>
|
|
86
89
|
readonly 'game/projectCards': TypertRemoteMethod<{ }, ProjectCard[]>
|