@khorsheed/dsh-game 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/README.en.md +53 -0
- package/README.i18n.yaml +6 -0
- package/README.md +52 -2
- package/cordis.patch.yml +23 -0
- package/lib/client.js +30348 -0
- package/lib/index.js +4154 -0
- package/lib/typert.host.d.ts +3 -0
- package/lib/typert.host.js +3769 -0
- package/lib/typert.remote-client.d.ts +101 -0
- package/lib/typert.remote-client.js +2082 -0
- package/lib/types/agent.d.ts +20 -0
- package/lib/types/agent.js +42 -0
- package/lib/types/checks.d.ts +44 -0
- package/lib/types/checks.js +267 -0
- package/lib/types/client/DesignView.d.ts +22 -0
- package/lib/types/client/DesignView.js +134 -0
- package/lib/types/client/ElementsView.d.ts +21 -0
- package/lib/types/client/ElementsView.js +187 -0
- package/lib/types/client/GameTab.d.ts +14 -0
- package/lib/types/client/GameTab.js +256 -0
- package/lib/types/client/PlayFrame.d.ts +54 -0
- package/lib/types/client/PlayFrame.js +129 -0
- package/lib/types/client/PlayView.d.ts +19 -0
- package/lib/types/client/PlayView.js +161 -0
- package/lib/types/client/Preview3D.d.ts +50 -0
- package/lib/types/client/Preview3D.js +176 -0
- package/lib/types/client/ProjectSwitcher.d.ts +20 -0
- package/lib/types/client/ProjectSwitcher.js +75 -0
- package/lib/types/client/Recipe3DEditor.d.ts +19 -0
- package/lib/types/client/Recipe3DEditor.js +44 -0
- package/lib/types/client/StyleGallery.d.ts +18 -0
- package/lib/types/client/StyleGallery.js +27 -0
- package/lib/types/client/TurnCard.d.ts +62 -0
- package/lib/types/client/TurnCard.js +100 -0
- package/lib/types/client/VersionsView.d.ts +17 -0
- package/lib/types/client/VersionsView.js +68 -0
- package/lib/types/client/chat-node.d.ts +42 -0
- package/lib/types/client/chat-node.js +77 -0
- package/lib/types/client/contract.d.ts +125 -0
- package/lib/types/client/contract.js +6 -0
- package/lib/types/client/definition.d.ts +22 -0
- package/lib/types/client/definition.js +28 -0
- package/lib/types/client/index.d.ts +21 -0
- package/lib/types/client/index.js +229 -0
- package/lib/types/client/locales.d.ts +376 -0
- package/lib/types/client/locales.js +727 -0
- package/lib/types/client/looks.d.ts +36 -0
- package/lib/types/client/looks.js +105 -0
- package/lib/types/client/markdown.d.ts +11 -0
- package/lib/types/client/markdown.js +52 -0
- package/lib/types/client/preset-visibility.d.ts +94 -0
- package/lib/types/client/preset-visibility.js +115 -0
- package/lib/types/client/preview-entry.d.ts +24 -0
- package/lib/types/client/preview-entry.js +107 -0
- package/lib/types/client/refs.d.ts +36 -0
- package/lib/types/client/refs.js +44 -0
- package/lib/types/client/style-samples.d.ts +5 -0
- package/lib/types/client/style-samples.js +196 -0
- package/lib/types/fsutil.d.ts +26 -0
- package/lib/types/fsutil.js +104 -0
- package/lib/types/hooks.d.ts +83 -0
- package/lib/types/hooks.js +108 -0
- package/lib/types/index.d.ts +30 -0
- package/lib/types/index.js +22 -0
- package/lib/types/kits/canvas2d.d.ts +6 -0
- package/lib/types/kits/canvas2d.js +60 -0
- package/lib/types/kits/ids.d.ts +11 -0
- package/lib/types/kits/ids.js +6 -0
- package/lib/types/kits/index.d.ts +26 -0
- package/lib/types/kits/index.js +28 -0
- package/lib/types/kits/three3d.d.ts +12 -0
- package/lib/types/kits/three3d.js +188 -0
- package/lib/types/kits/types.d.ts +52 -0
- package/lib/types/kits/types.js +6 -0
- package/lib/types/look3d.d.ts +20 -0
- package/lib/types/look3d.js +175 -0
- package/lib/types/panel-session.d.ts +21 -0
- package/lib/types/panel-session.js +16 -0
- package/lib/types/project.d.ts +132 -0
- package/lib/types/project.js +494 -0
- package/lib/types/remote.d.ts +182 -0
- package/lib/types/remote.js +256 -0
- package/lib/types/skills.d.ts +13 -0
- package/lib/types/skills.js +140 -0
- package/lib/types/store.d.ts +325 -0
- package/lib/types/store.js +1285 -0
- package/lib/types/tools.d.ts +12 -0
- package/lib/types/tools.js +301 -0
- package/lib/types/trash.d.ts +5 -0
- package/lib/types/trash.js +64 -0
- package/lib/types/types.d.ts +522 -0
- package/lib/types/types.js +85 -0
- package/lib/types/vfs.d.ts +92 -0
- package/lib/types/vfs.js +217 -0
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +132 -3
- package/runtime/dsh3d.js +1279 -0
|
@@ -0,0 +1,3769 @@
|
|
|
1
|
+
/* Generated by @deepseek-ai/dsh-typert-generator from FaceModel — do not edit. */
|
|
2
|
+
import { z } from 'zod'
|
|
3
|
+
|
|
4
|
+
import { createTypertRemoteInfo } from '@deepseek-ai/dsh-typert-protocol/remote-info'
|
|
5
|
+
|
|
6
|
+
let _khorsheed_dsh_game_game_bind_parameter_0$schema$value
|
|
7
|
+
const _khorsheed_dsh_game_game_bind_parameter_0$schema = () => (_khorsheed_dsh_game_game_bind_parameter_0$schema$value ??= z.string())
|
|
8
|
+
let _khorsheed_dsh_game_game_bind_parameter_1$schema$value
|
|
9
|
+
const _khorsheed_dsh_game_game_bind_parameter_1$schema = () => (_khorsheed_dsh_game_game_bind_parameter_1$schema$value ??= z.object({
|
|
10
|
+
'projectId': z.union([z.literal(null), z.string()]),
|
|
11
|
+
}))
|
|
12
|
+
let _khorsheed_dsh_game_game_bind_result$schema$value
|
|
13
|
+
const _khorsheed_dsh_game_game_bind_result$schema = () => (_khorsheed_dsh_game_game_bind_result$schema$value ??= z.union([z.object({
|
|
14
|
+
'ok': z.literal(false).readonly(),
|
|
15
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
16
|
+
}), z.object({
|
|
17
|
+
'ok': z.literal(true).readonly(),
|
|
18
|
+
})]))
|
|
19
|
+
let _khorsheed_dsh_game_game_bundle_parameter_0$schema$value
|
|
20
|
+
const _khorsheed_dsh_game_game_bundle_parameter_0$schema = () => (_khorsheed_dsh_game_game_bundle_parameter_0$schema$value ??= z.object({
|
|
21
|
+
'projectId': z.string(),
|
|
22
|
+
'which': z.union([z.literal("current"), z.literal("candidate")]).optional(),
|
|
23
|
+
}))
|
|
24
|
+
let _khorsheed_dsh_game_game_bundle_result$schema$value
|
|
25
|
+
const _khorsheed_dsh_game_game_bundle_result$schema = () => (_khorsheed_dsh_game_game_bundle_result$schema$value ??= z.union([z.object({
|
|
26
|
+
'ok': z.literal(false).readonly(),
|
|
27
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
28
|
+
}), z.object({
|
|
29
|
+
'ok': z.literal(true).readonly(),
|
|
30
|
+
'bundle': z.object({
|
|
31
|
+
'projectId': z.string().readonly(),
|
|
32
|
+
'version': z.number().readonly(),
|
|
33
|
+
'files': z.record(z.string(), z.union([z.object({
|
|
34
|
+
'type': z.string().readonly(),
|
|
35
|
+
'text': z.string().readonly(),
|
|
36
|
+
}), z.object({
|
|
37
|
+
'type': z.string().readonly(),
|
|
38
|
+
'b64': z.string().readonly(),
|
|
39
|
+
})])).readonly().readonly(),
|
|
40
|
+
}).readonly(),
|
|
41
|
+
})]))
|
|
42
|
+
let _khorsheed_dsh_game_game_changes_parameter_0$schema$value
|
|
43
|
+
const _khorsheed_dsh_game_game_changes_parameter_0$schema = () => (_khorsheed_dsh_game_game_changes_parameter_0$schema$value ??= z.object({
|
|
44
|
+
'projectId': z.string(),
|
|
45
|
+
}))
|
|
46
|
+
let _khorsheed_dsh_game_game_changes_result$schema$value
|
|
47
|
+
const _khorsheed_dsh_game_game_changes_result$schema = () => (_khorsheed_dsh_game_game_changes_result$schema$value ??= z.union([z.object({
|
|
48
|
+
'ok': z.literal(false).readonly(),
|
|
49
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
50
|
+
}), z.object({
|
|
51
|
+
'against': z.union([z.literal(null), z.number()]).readonly().describe('The version compared against (the waiting candidate, else the live one); null before any.'),
|
|
52
|
+
'hasEntry': z.boolean().readonly(),
|
|
53
|
+
'count': z.number().readonly().describe('Build files added, changed or removed (first 30 of \\`count\\`).'),
|
|
54
|
+
'files': z.array(z.object({
|
|
55
|
+
'path': z.string().readonly(),
|
|
56
|
+
'kind': z.union([z.literal("changed"), z.literal("added"), z.literal("removed")]).readonly(),
|
|
57
|
+
})).readonly(),
|
|
58
|
+
'lastAt': z.union([z.literal(null), z.string()]).readonly().describe('The newest change\'s time.'),
|
|
59
|
+
'busy': z.union([z.literal(null), z.literal("turn"), z.literal("recent")]).readonly().describe('Someone is still writing: a bound session\'s turn is running, or a file changed in the last 20 s.'),
|
|
60
|
+
'edits': z.array(z.object({
|
|
61
|
+
'key': z.string().readonly().describe('Stable key so repeated edits of one thing collapse into one entry (`param:speed`, `look:fog`, `design:core-loop`).'),
|
|
62
|
+
'text': z.string().readonly().describe('Short label for the dock and the model (`参数 移动速度 1.4→1.8`).'),
|
|
63
|
+
})).readonly().describe('The panel edits among them.'),
|
|
64
|
+
'failed': z.union([z.literal(null), z.array(z.object({
|
|
65
|
+
'where': z.string().readonly(),
|
|
66
|
+
'message': z.string().readonly(),
|
|
67
|
+
}))]).readonly().describe('The last check ran after the newest change and failed: its findings.'),
|
|
68
|
+
'ok': z.literal(true).readonly(),
|
|
69
|
+
})]))
|
|
70
|
+
let _khorsheed_dsh_game_game_checkShot_parameter_0$schema$value
|
|
71
|
+
const _khorsheed_dsh_game_game_checkShot_parameter_0$schema = () => (_khorsheed_dsh_game_game_checkShot_parameter_0$schema$value ??= z.object({
|
|
72
|
+
'projectId': z.string(),
|
|
73
|
+
'version': z.number().optional(),
|
|
74
|
+
}))
|
|
75
|
+
let _khorsheed_dsh_game_game_checkShot_result$schema$value
|
|
76
|
+
const _khorsheed_dsh_game_game_checkShot_result$schema = () => (_khorsheed_dsh_game_game_checkShot_result$schema$value ??= z.union([z.object({
|
|
77
|
+
'ok': z.literal(false).readonly(),
|
|
78
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
79
|
+
}), z.object({
|
|
80
|
+
'ok': z.literal(true).readonly(),
|
|
81
|
+
'webp': z.string().readonly(),
|
|
82
|
+
})]))
|
|
83
|
+
let _khorsheed_dsh_game_game_commit_parameter_0$schema$value
|
|
84
|
+
const _khorsheed_dsh_game_game_commit_parameter_0$schema = () => (_khorsheed_dsh_game_game_commit_parameter_0$schema$value ??= z.string())
|
|
85
|
+
let _khorsheed_dsh_game_game_commit_parameter_1$schema$value
|
|
86
|
+
const _khorsheed_dsh_game_game_commit_parameter_1$schema = () => (_khorsheed_dsh_game_game_commit_parameter_1$schema$value ??= z.object({
|
|
87
|
+
'projectId': z.string(),
|
|
88
|
+
}))
|
|
89
|
+
let _khorsheed_dsh_game_game_commit_result$schema$value
|
|
90
|
+
const _khorsheed_dsh_game_game_commit_result$schema = () => (_khorsheed_dsh_game_game_commit_result$schema$value ??= z.union([z.object({
|
|
91
|
+
'ok': z.literal(false).readonly(),
|
|
92
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
93
|
+
}), z.object({
|
|
94
|
+
'ok': z.literal(true).readonly(),
|
|
95
|
+
'kind': z.union([z.literal("candidate"), z.literal("deployed")]).readonly(),
|
|
96
|
+
'version': z.number().readonly(),
|
|
97
|
+
}), z.object({
|
|
98
|
+
'ok': z.literal(true).readonly(),
|
|
99
|
+
'kind': z.literal("failed").readonly(),
|
|
100
|
+
'failures': z.array(z.object({
|
|
101
|
+
'where': z.string().readonly(),
|
|
102
|
+
'message': z.string().readonly(),
|
|
103
|
+
})).readonly(),
|
|
104
|
+
}), z.object({
|
|
105
|
+
'ok': z.literal(true).readonly(),
|
|
106
|
+
'kind': z.union([z.literal("unchanged"), z.literal("no-entry")]).readonly(),
|
|
107
|
+
})]))
|
|
108
|
+
let _khorsheed_dsh_game_game_confirm_parameter_0$schema$value
|
|
109
|
+
const _khorsheed_dsh_game_game_confirm_parameter_0$schema = () => (_khorsheed_dsh_game_game_confirm_parameter_0$schema$value ??= z.string())
|
|
110
|
+
let _khorsheed_dsh_game_game_confirm_parameter_1$schema$value
|
|
111
|
+
const _khorsheed_dsh_game_game_confirm_parameter_1$schema = () => (_khorsheed_dsh_game_game_confirm_parameter_1$schema$value ??= z.object({
|
|
112
|
+
'projectId': z.string(),
|
|
113
|
+
}))
|
|
114
|
+
let _khorsheed_dsh_game_game_confirm_result$schema$value
|
|
115
|
+
const _khorsheed_dsh_game_game_confirm_result$schema = () => (_khorsheed_dsh_game_game_confirm_result$schema$value ??= z.union([z.object({
|
|
116
|
+
'ok': z.literal(false).readonly(),
|
|
117
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
118
|
+
}), z.object({
|
|
119
|
+
'ok': z.literal(true).readonly(),
|
|
120
|
+
'version': z.number().readonly(),
|
|
121
|
+
})]))
|
|
122
|
+
let _khorsheed_dsh_game_game_deleteProject_parameter_0$schema$value
|
|
123
|
+
const _khorsheed_dsh_game_game_deleteProject_parameter_0$schema = () => (_khorsheed_dsh_game_game_deleteProject_parameter_0$schema$value ??= z.string())
|
|
124
|
+
let _khorsheed_dsh_game_game_deleteProject_parameter_1$schema$value
|
|
125
|
+
const _khorsheed_dsh_game_game_deleteProject_parameter_1$schema = () => (_khorsheed_dsh_game_game_deleteProject_parameter_1$schema$value ??= z.object({
|
|
126
|
+
'projectId': z.string(),
|
|
127
|
+
'mode': z.union([z.literal("trash"), z.literal("forget")]),
|
|
128
|
+
}))
|
|
129
|
+
let _khorsheed_dsh_game_game_deleteProject_result$schema$value
|
|
130
|
+
const _khorsheed_dsh_game_game_deleteProject_result$schema = () => (_khorsheed_dsh_game_game_deleteProject_result$schema$value ??= z.union([z.object({
|
|
131
|
+
'ok': z.literal(true).readonly(),
|
|
132
|
+
'trashedTo': z.string().readonly().optional(),
|
|
133
|
+
}), z.object({
|
|
134
|
+
'ok': z.literal(false).readonly(),
|
|
135
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
136
|
+
'reason': z.string().readonly().optional(),
|
|
137
|
+
})]))
|
|
138
|
+
let _khorsheed_dsh_game_game_diff_parameter_0$schema$value
|
|
139
|
+
const _khorsheed_dsh_game_game_diff_parameter_0$schema = () => (_khorsheed_dsh_game_game_diff_parameter_0$schema$value ??= z.object({
|
|
140
|
+
'projectId': z.string(),
|
|
141
|
+
'from': z.number(),
|
|
142
|
+
'to': z.number(),
|
|
143
|
+
}))
|
|
144
|
+
let _khorsheed_dsh_game_game_diff_result$schema$value
|
|
145
|
+
const _khorsheed_dsh_game_game_diff_result$schema = () => (_khorsheed_dsh_game_game_diff_result$schema$value ??= z.union([z.object({
|
|
146
|
+
'ok': z.literal(false).readonly(),
|
|
147
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
148
|
+
}), z.object({
|
|
149
|
+
'ok': z.literal(true).readonly(),
|
|
150
|
+
'diff': z.object({
|
|
151
|
+
'added': z.array(z.string()).readonly(),
|
|
152
|
+
'removed': z.array(z.string()).readonly(),
|
|
153
|
+
'changed': z.array(z.string()).readonly(),
|
|
154
|
+
}).readonly(),
|
|
155
|
+
})]))
|
|
156
|
+
let _khorsheed_dsh_game_game_dropPending_parameter_0$schema$value
|
|
157
|
+
const _khorsheed_dsh_game_game_dropPending_parameter_0$schema = () => (_khorsheed_dsh_game_game_dropPending_parameter_0$schema$value ??= z.string())
|
|
158
|
+
let _khorsheed_dsh_game_game_dropPending_parameter_1$schema$value
|
|
159
|
+
const _khorsheed_dsh_game_game_dropPending_parameter_1$schema = () => (_khorsheed_dsh_game_game_dropPending_parameter_1$schema$value ??= z.object({
|
|
160
|
+
'projectId': z.string(),
|
|
161
|
+
'key': z.string(),
|
|
162
|
+
}))
|
|
163
|
+
let _khorsheed_dsh_game_game_dropPending_result$schema$value
|
|
164
|
+
const _khorsheed_dsh_game_game_dropPending_result$schema = () => (_khorsheed_dsh_game_game_dropPending_result$schema$value ??= z.union([z.object({
|
|
165
|
+
'ok': z.literal(false).readonly(),
|
|
166
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
167
|
+
}), z.object({
|
|
168
|
+
'ok': z.literal(true).readonly(),
|
|
169
|
+
})]))
|
|
170
|
+
let _khorsheed_dsh_game_game_editElement_parameter_0$schema$value
|
|
171
|
+
const _khorsheed_dsh_game_game_editElement_parameter_0$schema = () => (_khorsheed_dsh_game_game_editElement_parameter_0$schema$value ??= z.string())
|
|
172
|
+
let _khorsheed_dsh_game_game_editElement_parameter_1$schema$value
|
|
173
|
+
const _khorsheed_dsh_game_game_editElement_parameter_1$schema = () => (_khorsheed_dsh_game_game_editElement_parameter_1$schema$value ??= z.object({
|
|
174
|
+
'projectId': z.string(),
|
|
175
|
+
'elementId': z.string(),
|
|
176
|
+
'look': z.string().optional(),
|
|
177
|
+
'fields': z.string().optional(),
|
|
178
|
+
}))
|
|
179
|
+
let _khorsheed_dsh_game_game_editElement_result$schema$value
|
|
180
|
+
const _khorsheed_dsh_game_game_editElement_result$schema = () => (_khorsheed_dsh_game_game_editElement_result$schema$value ??= z.union([z.object({
|
|
181
|
+
'ok': z.literal(false).readonly(),
|
|
182
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
183
|
+
}), z.object({
|
|
184
|
+
'ok': z.literal(true).readonly(),
|
|
185
|
+
'elementJson': z.string().readonly(),
|
|
186
|
+
})]))
|
|
187
|
+
let _khorsheed_dsh_game_game_finalizeParams_parameter_0$schema$value
|
|
188
|
+
const _khorsheed_dsh_game_game_finalizeParams_parameter_0$schema = () => (_khorsheed_dsh_game_game_finalizeParams_parameter_0$schema$value ??= z.string())
|
|
189
|
+
let _khorsheed_dsh_game_game_finalizeParams_parameter_1$schema$value
|
|
190
|
+
const _khorsheed_dsh_game_game_finalizeParams_parameter_1$schema = () => (_khorsheed_dsh_game_game_finalizeParams_parameter_1$schema$value ??= z.object({
|
|
191
|
+
'projectId': z.string(),
|
|
192
|
+
}))
|
|
193
|
+
let _khorsheed_dsh_game_game_finalizeParams_result$schema$value
|
|
194
|
+
const _khorsheed_dsh_game_game_finalizeParams_result$schema = () => (_khorsheed_dsh_game_game_finalizeParams_result$schema$value ??= z.union([z.object({
|
|
195
|
+
'ok': z.literal(false).readonly(),
|
|
196
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
197
|
+
}), z.object({
|
|
198
|
+
'ok': z.literal(true).readonly(),
|
|
199
|
+
})]))
|
|
200
|
+
let _khorsheed_dsh_game_game_logPlay_parameter_0$schema$value
|
|
201
|
+
const _khorsheed_dsh_game_game_logPlay_parameter_0$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_0$schema$value ??= z.string())
|
|
202
|
+
let _khorsheed_dsh_game_game_logPlay_parameter_1$schema$value
|
|
203
|
+
const _khorsheed_dsh_game_game_logPlay_parameter_1$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_1$schema$value ??= z.object({
|
|
204
|
+
'projectId': z.string(),
|
|
205
|
+
'version': z.number(),
|
|
206
|
+
'seconds': z.number(),
|
|
207
|
+
'errors': z.array(z.string()),
|
|
208
|
+
}))
|
|
209
|
+
let _khorsheed_dsh_game_game_logPlay_result$schema$value
|
|
210
|
+
const _khorsheed_dsh_game_game_logPlay_result$schema = () => (_khorsheed_dsh_game_game_logPlay_result$schema$value ??= z.union([z.object({
|
|
211
|
+
'ok': z.literal(false).readonly(),
|
|
212
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
213
|
+
}), z.object({
|
|
214
|
+
'ok': z.literal(true).readonly(),
|
|
215
|
+
})]))
|
|
216
|
+
let _khorsheed_dsh_game_game_pickProposal_parameter_0$schema$value
|
|
217
|
+
const _khorsheed_dsh_game_game_pickProposal_parameter_0$schema = () => (_khorsheed_dsh_game_game_pickProposal_parameter_0$schema$value ??= z.string())
|
|
218
|
+
let _khorsheed_dsh_game_game_pickProposal_parameter_1$schema$value
|
|
219
|
+
const _khorsheed_dsh_game_game_pickProposal_parameter_1$schema = () => (_khorsheed_dsh_game_game_pickProposal_parameter_1$schema$value ??= z.object({
|
|
220
|
+
'projectId': z.string(),
|
|
221
|
+
'elementId': z.string(),
|
|
222
|
+
'at': z.string(),
|
|
223
|
+
'index': z.number(),
|
|
224
|
+
}))
|
|
225
|
+
let _khorsheed_dsh_game_game_pickProposal_result$schema$value
|
|
226
|
+
const _khorsheed_dsh_game_game_pickProposal_result$schema = () => (_khorsheed_dsh_game_game_pickProposal_result$schema$value ??= z.union([z.object({
|
|
227
|
+
'ok': z.literal(false).readonly(),
|
|
228
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
229
|
+
}), z.object({
|
|
230
|
+
'ok': z.literal(true).readonly(),
|
|
231
|
+
})]))
|
|
232
|
+
let _khorsheed_dsh_game_game_projectCards_result$schema$value
|
|
233
|
+
const _khorsheed_dsh_game_game_projectCards_result$schema = () => (_khorsheed_dsh_game_game_projectCards_result$schema$value ??= z.array(z.object({
|
|
234
|
+
'id': z.string().readonly(),
|
|
235
|
+
'title': z.string().readonly(),
|
|
236
|
+
'root': z.string().readonly(),
|
|
237
|
+
'updatedAt': z.string().readonly(),
|
|
238
|
+
'pitch': z.string().readonly(),
|
|
239
|
+
'artStyle': z.string().readonly(),
|
|
240
|
+
'version': z.union([z.literal(null), z.number()]).readonly(),
|
|
241
|
+
'elements': z.number().readonly(),
|
|
242
|
+
'thumb': z.string().readonly().optional().describe('The last check\'s screenshot (webp, base64), when there is one.'),
|
|
243
|
+
})))
|
|
244
|
+
let _khorsheed_dsh_game_game_reject_parameter_0$schema$value
|
|
245
|
+
const _khorsheed_dsh_game_game_reject_parameter_0$schema = () => (_khorsheed_dsh_game_game_reject_parameter_0$schema$value ??= z.string())
|
|
246
|
+
let _khorsheed_dsh_game_game_reject_parameter_1$schema$value
|
|
247
|
+
const _khorsheed_dsh_game_game_reject_parameter_1$schema = () => (_khorsheed_dsh_game_game_reject_parameter_1$schema$value ??= z.object({
|
|
248
|
+
'projectId': z.string(),
|
|
249
|
+
'reason': z.string(),
|
|
250
|
+
}))
|
|
251
|
+
let _khorsheed_dsh_game_game_reject_result$schema$value
|
|
252
|
+
const _khorsheed_dsh_game_game_reject_result$schema = () => (_khorsheed_dsh_game_game_reject_result$schema$value ??= z.union([z.object({
|
|
253
|
+
'ok': z.literal(false).readonly(),
|
|
254
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
255
|
+
}), z.object({
|
|
256
|
+
'ok': z.literal(true).readonly(),
|
|
257
|
+
})]))
|
|
258
|
+
let _khorsheed_dsh_game_game_requestRestyle_parameter_0$schema$value
|
|
259
|
+
const _khorsheed_dsh_game_game_requestRestyle_parameter_0$schema = () => (_khorsheed_dsh_game_game_requestRestyle_parameter_0$schema$value ??= z.string())
|
|
260
|
+
let _khorsheed_dsh_game_game_requestRestyle_parameter_1$schema$value
|
|
261
|
+
const _khorsheed_dsh_game_game_requestRestyle_parameter_1$schema = () => (_khorsheed_dsh_game_game_requestRestyle_parameter_1$schema$value ??= z.object({
|
|
262
|
+
'projectId': z.string(),
|
|
263
|
+
'styleId': z.string(),
|
|
264
|
+
}))
|
|
265
|
+
let _khorsheed_dsh_game_game_requestRestyle_result$schema$value
|
|
266
|
+
const _khorsheed_dsh_game_game_requestRestyle_result$schema = () => (_khorsheed_dsh_game_game_requestRestyle_result$schema$value ??= z.union([z.object({
|
|
267
|
+
'ok': z.literal(false).readonly(),
|
|
268
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
269
|
+
}), z.object({
|
|
270
|
+
'ok': z.literal(true).readonly(),
|
|
271
|
+
})]))
|
|
272
|
+
let _khorsheed_dsh_game_game_resetParams_parameter_0$schema$value
|
|
273
|
+
const _khorsheed_dsh_game_game_resetParams_parameter_0$schema = () => (_khorsheed_dsh_game_game_resetParams_parameter_0$schema$value ??= z.string())
|
|
274
|
+
let _khorsheed_dsh_game_game_resetParams_parameter_1$schema$value
|
|
275
|
+
const _khorsheed_dsh_game_game_resetParams_parameter_1$schema = () => (_khorsheed_dsh_game_game_resetParams_parameter_1$schema$value ??= z.object({
|
|
276
|
+
'projectId': z.string(),
|
|
277
|
+
}))
|
|
278
|
+
let _khorsheed_dsh_game_game_resetParams_result$schema$value
|
|
279
|
+
const _khorsheed_dsh_game_game_resetParams_result$schema = () => (_khorsheed_dsh_game_game_resetParams_result$schema$value ??= z.union([z.object({
|
|
280
|
+
'ok': z.literal(false).readonly(),
|
|
281
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
282
|
+
}), z.object({
|
|
283
|
+
'ok': z.literal(true).readonly(),
|
|
284
|
+
})]))
|
|
285
|
+
let _khorsheed_dsh_game_game_rollback_parameter_0$schema$value
|
|
286
|
+
const _khorsheed_dsh_game_game_rollback_parameter_0$schema = () => (_khorsheed_dsh_game_game_rollback_parameter_0$schema$value ??= z.string())
|
|
287
|
+
let _khorsheed_dsh_game_game_rollback_parameter_1$schema$value
|
|
288
|
+
const _khorsheed_dsh_game_game_rollback_parameter_1$schema = () => (_khorsheed_dsh_game_game_rollback_parameter_1$schema$value ??= z.object({
|
|
289
|
+
'projectId': z.string(),
|
|
290
|
+
'version': z.number(),
|
|
291
|
+
}))
|
|
292
|
+
let _khorsheed_dsh_game_game_rollback_result$schema$value
|
|
293
|
+
const _khorsheed_dsh_game_game_rollback_result$schema = () => (_khorsheed_dsh_game_game_rollback_result$schema$value ??= z.union([z.object({
|
|
294
|
+
'ok': z.literal(false).readonly(),
|
|
295
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
296
|
+
}), z.object({
|
|
297
|
+
'ok': z.literal(true).readonly(),
|
|
298
|
+
})]))
|
|
299
|
+
let _khorsheed_dsh_game_game_setAutoConfirm_parameter_0$schema$value
|
|
300
|
+
const _khorsheed_dsh_game_game_setAutoConfirm_parameter_0$schema = () => (_khorsheed_dsh_game_game_setAutoConfirm_parameter_0$schema$value ??= z.string())
|
|
301
|
+
let _khorsheed_dsh_game_game_setAutoConfirm_parameter_1$schema$value
|
|
302
|
+
const _khorsheed_dsh_game_game_setAutoConfirm_parameter_1$schema = () => (_khorsheed_dsh_game_game_setAutoConfirm_parameter_1$schema$value ??= z.object({
|
|
303
|
+
'projectId': z.string(),
|
|
304
|
+
'on': z.boolean(),
|
|
305
|
+
}))
|
|
306
|
+
let _khorsheed_dsh_game_game_setAutoConfirm_result$schema$value
|
|
307
|
+
const _khorsheed_dsh_game_game_setAutoConfirm_result$schema = () => (_khorsheed_dsh_game_game_setAutoConfirm_result$schema$value ??= z.union([z.object({
|
|
308
|
+
'ok': z.literal(false).readonly(),
|
|
309
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
310
|
+
}), z.object({
|
|
311
|
+
'ok': z.literal(true).readonly(),
|
|
312
|
+
})]))
|
|
313
|
+
let _khorsheed_dsh_game_game_setOnePager_parameter_0$schema$value
|
|
314
|
+
const _khorsheed_dsh_game_game_setOnePager_parameter_0$schema = () => (_khorsheed_dsh_game_game_setOnePager_parameter_0$schema$value ??= z.string())
|
|
315
|
+
let _khorsheed_dsh_game_game_setOnePager_parameter_1$schema$value
|
|
316
|
+
const _khorsheed_dsh_game_game_setOnePager_parameter_1$schema = () => (_khorsheed_dsh_game_game_setOnePager_parameter_1$schema$value ??= z.object({
|
|
317
|
+
'projectId': z.string(),
|
|
318
|
+
'pitch': z.string().optional(),
|
|
319
|
+
'elementTypes': z.string().optional(),
|
|
320
|
+
'pillars': z.string().optional(),
|
|
321
|
+
}))
|
|
322
|
+
let _khorsheed_dsh_game_game_setOnePager_result$schema$value
|
|
323
|
+
const _khorsheed_dsh_game_game_setOnePager_result$schema = () => (_khorsheed_dsh_game_game_setOnePager_result$schema$value ??= z.union([z.object({
|
|
324
|
+
'ok': z.literal(false).readonly(),
|
|
325
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
326
|
+
}), z.object({
|
|
327
|
+
'ok': z.literal(true).readonly(),
|
|
328
|
+
})]))
|
|
329
|
+
let _khorsheed_dsh_game_game_setParam_parameter_0$schema$value
|
|
330
|
+
const _khorsheed_dsh_game_game_setParam_parameter_0$schema = () => (_khorsheed_dsh_game_game_setParam_parameter_0$schema$value ??= z.string())
|
|
331
|
+
let _khorsheed_dsh_game_game_setParam_parameter_1$schema$value
|
|
332
|
+
const _khorsheed_dsh_game_game_setParam_parameter_1$schema = () => (_khorsheed_dsh_game_game_setParam_parameter_1$schema$value ??= z.object({
|
|
333
|
+
'projectId': z.string(),
|
|
334
|
+
'key': z.string(),
|
|
335
|
+
'value': z.number(),
|
|
336
|
+
}))
|
|
337
|
+
let _khorsheed_dsh_game_game_setParam_result$schema$value
|
|
338
|
+
const _khorsheed_dsh_game_game_setParam_result$schema = () => (_khorsheed_dsh_game_game_setParam_result$schema$value ??= z.union([z.object({
|
|
339
|
+
'ok': z.literal(false).readonly(),
|
|
340
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
341
|
+
}), z.object({
|
|
342
|
+
'ok': z.literal(true).readonly(),
|
|
343
|
+
})]))
|
|
344
|
+
let _khorsheed_dsh_game_game_state_parameter_0$schema$value
|
|
345
|
+
const _khorsheed_dsh_game_game_state_parameter_0$schema = () => (_khorsheed_dsh_game_game_state_parameter_0$schema$value ??= z.string())
|
|
346
|
+
let _khorsheed_dsh_game_game_state_result$schema$value
|
|
347
|
+
const _khorsheed_dsh_game_game_state_result$schema = () => (_khorsheed_dsh_game_game_state_result$schema$value ??= z.object({
|
|
348
|
+
'bound': z.union([z.literal(null), z.object({
|
|
349
|
+
'id': z.string().readonly(),
|
|
350
|
+
'title': z.string().readonly(),
|
|
351
|
+
'root': z.string().readonly(),
|
|
352
|
+
'manifest': z.union([z.literal(null), z.object({
|
|
353
|
+
'schema': z.literal(1).readonly(),
|
|
354
|
+
'id': z.string().readonly(),
|
|
355
|
+
'title': z.string().readonly(),
|
|
356
|
+
'pitch': z.string().readonly().describe('The one-pager\'s core: what the player does and why it is fun, in a sentence or two.'),
|
|
357
|
+
'elementTypes': z.array(z.string()).readonly().describe('Element categories the game has (角色 / 敌人 / 道具 …); element files declare one of these.'),
|
|
358
|
+
'artStyle': z.string().readonly().describe('An {@link ART_STYLES} id, or `custom:<description>`.'),
|
|
359
|
+
'pillars': z.array(z.string()).readonly().describe('Design pillars, pinned at the top of the design doc.'),
|
|
360
|
+
'autoConfirm': z.boolean().readonly().describe('Passing candidates deploy into the play area without a click (default on, decision D6).'),
|
|
361
|
+
'params': z.array(z.object({
|
|
362
|
+
'key': z.string().readonly(),
|
|
363
|
+
'label': z.string().readonly(),
|
|
364
|
+
'min': z.number().readonly(),
|
|
365
|
+
'max': z.number().readonly(),
|
|
366
|
+
'step': z.number().readonly(),
|
|
367
|
+
'value': z.number().readonly(),
|
|
368
|
+
'unit': z.string().readonly().optional(),
|
|
369
|
+
})).readonly().describe('The tunable numbers the 试玩 drawer shows; `value` is the finalized default.'),
|
|
370
|
+
'palette': z.array(z.string()).readonly().describe('The palette element looks draw from (the style\'s, unless the agent set its own).'),
|
|
371
|
+
'createdAt': z.string().readonly(),
|
|
372
|
+
'runtime': z.object({
|
|
373
|
+
'kit': z.union([z.literal("2d-canvas"), z.literal("3d-three")]).readonly(),
|
|
374
|
+
'version': z.number().readonly(),
|
|
375
|
+
}).readonly().optional().describe('The runtime kit the project is pinned to; absent = `2d-canvas` v1 (projects made before kits).'),
|
|
376
|
+
'style3d': z.object({
|
|
377
|
+
'preset': z.string().readonly().optional(),
|
|
378
|
+
'bg': z.string().readonly().optional(),
|
|
379
|
+
'ground': z.string().readonly().optional(),
|
|
380
|
+
'ground2': z.string().readonly().optional(),
|
|
381
|
+
'water': z.string().readonly().optional(),
|
|
382
|
+
'outline': z.string().readonly().optional(),
|
|
383
|
+
'outlineWidth': z.number().readonly().optional().describe('Outline thickness in world units; 0 turns the ink line off.'),
|
|
384
|
+
'shades': z.number().readonly().optional().describe('Toon shading bands (2 = hard cel, 5 = soft).'),
|
|
385
|
+
'fog': z.tuple([z.number(), z.number()]).readonly().optional().describe('Fog start and end distance.'),
|
|
386
|
+
'light': z.number().readonly().optional().describe('Sun intensity.'),
|
|
387
|
+
'shadows': z.boolean().readonly().optional().describe('The sun casts shadows (game-wide; off unless set).'),
|
|
388
|
+
'rim': z.number().readonly().optional().describe('Rim light on toon surfaces (0 = off … 2), and its color.'),
|
|
389
|
+
'rimColor': z.string().readonly().optional(),
|
|
390
|
+
'scenes': z.record(z.string(), z.object({
|
|
391
|
+
'bg': z.string().readonly().optional(),
|
|
392
|
+
'ground': z.string().readonly().optional(),
|
|
393
|
+
'ground2': z.string().readonly().optional(),
|
|
394
|
+
'water': z.string().readonly().optional(),
|
|
395
|
+
'fog': z.tuple([z.number(), z.number()]).readonly().optional(),
|
|
396
|
+
'light': z.number().readonly().optional(),
|
|
397
|
+
})).readonly().readonly().optional().describe('Per-scene overrides, keyed by the game\'s own scene names (dsh3d `enterScene(name)`): background, ground colors, water, fog and light. Shading bands and the outline stay global.'),
|
|
398
|
+
}).readonly().optional().describe('3D projects: the rendering style as data (see {@link Style3D}).'),
|
|
399
|
+
})]).readonly(),
|
|
400
|
+
'manifestError': z.string().readonly().optional().describe('Why the manifest could not be read, when it could not.'),
|
|
401
|
+
'chapters': z.array(z.object({
|
|
402
|
+
'id': z.string().readonly(),
|
|
403
|
+
'title': z.string().readonly(),
|
|
404
|
+
'file': z.string().readonly(),
|
|
405
|
+
'status': z.union([z.literal("draft"), z.literal("done"), z.literal("todo")]).readonly(),
|
|
406
|
+
'text': z.string().readonly(),
|
|
407
|
+
'generated': z.boolean().readonly(),
|
|
408
|
+
'mtime': z.number().readonly().describe('Last-modified time (ms) of the chapter\'s source, 0 when unknown.'),
|
|
409
|
+
})).readonly(),
|
|
410
|
+
'elements': z.array(z.object({
|
|
411
|
+
'file': z.string().readonly(),
|
|
412
|
+
'index': z.number().readonly().describe('Position inside the file when it holds an array, else -1.'),
|
|
413
|
+
'id': z.string().readonly(),
|
|
414
|
+
'type': z.string().readonly(),
|
|
415
|
+
'name': z.string().readonly(),
|
|
416
|
+
'stats': z.record(z.string(), z.union([z.string(), z.number(), z.literal(false), z.literal(true)])).readonly().readonly().describe('Every other top-level scalar, for the numbers table and the field editor.'),
|
|
417
|
+
'look': z.union([z.literal(null), z.object({
|
|
418
|
+
'palette': z.array(z.string()).readonly(),
|
|
419
|
+
'states': z.record(z.string(), z.array(z.string())).readonly().readonly(),
|
|
420
|
+
})]).readonly().describe('The 2D pixel look, if the element has one.'),
|
|
421
|
+
'look3d': z.union([z.literal(null), z.object({
|
|
422
|
+
'kind': z.literal("parts3d").readonly(),
|
|
423
|
+
'base': z.union([z.literal("quadruped"), z.literal("bird"), z.literal("fish"), z.literal("serpent"), z.literal("humanoid"), z.string()]).readonly().describe('A built-in {@link BodyBase} or a body the project registers with `dsh3d.defineBase`.'),
|
|
424
|
+
'proportions': z.record(z.string(), z.number()).readonly().readonly(),
|
|
425
|
+
'parts': z.array(z.object({
|
|
426
|
+
'type': z.union([z.string(), z.literal("ear"), z.literal("horn"), z.literal("tail"), z.literal("wing"), z.literal("fin"), z.literal("eye"), z.literal("face")]).readonly(),
|
|
427
|
+
'count': z.number().readonly().optional(),
|
|
428
|
+
'size': z.number().readonly().optional(),
|
|
429
|
+
'length': z.number().readonly().optional(),
|
|
430
|
+
'fan': z.number().readonly().optional().describe('Spread of a multi-part fan (tails, wings), degrees.'),
|
|
431
|
+
'thickness': z.number().readonly().optional(),
|
|
432
|
+
'color': z.string().readonly().optional().describe('A `palette` key or a `#rrggbb` color.'),
|
|
433
|
+
'style': z.string().readonly().optional().describe('`face` only: `human` gives a human face.'),
|
|
434
|
+
'extra': z.record(z.string(), z.union([z.string(), z.number()])).readonly().readonly().optional().describe('A project-defined part\'s own parameters (anything beyond the shared keys).'),
|
|
435
|
+
})).readonly(),
|
|
436
|
+
'palette': z.record(z.string(), z.string()).readonly().readonly().describe('Named colors: `body`, `accent`, `eye`, `belly`…'),
|
|
437
|
+
'motion': z.record(z.string(), z.object({
|
|
438
|
+
'amplitude': z.number().readonly().optional(),
|
|
439
|
+
'period': z.number().readonly().optional(),
|
|
440
|
+
})).readonly().readonly().describe('`tailSway`, `breath`, `flap`, `swim`, `bob`.'),
|
|
441
|
+
'scale': z.number().readonly().optional().describe('Overall size in world units (default 1).'),
|
|
442
|
+
'preview': z.object({
|
|
443
|
+
'yaw': z.number().readonly().optional(),
|
|
444
|
+
'pitch': z.number().readonly().optional(),
|
|
445
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
446
|
+
'refine': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Refine-path (Blender) knobs; ignored by the live builder.'),
|
|
447
|
+
}), z.object({
|
|
448
|
+
'kind': z.literal("gltf").readonly(),
|
|
449
|
+
'src': z.string().readonly().describe('Project-relative path to a `.glb` / `.gltf`.'),
|
|
450
|
+
'scale': z.number().readonly().optional(),
|
|
451
|
+
'material': z.union([z.literal("toon"), z.literal("original")]).readonly().optional().describe('`toon` (default): the style\'s toon shading over the model\'s colors, vertex colors and textures; `original`: its own materials.'),
|
|
452
|
+
'outline': z.boolean().readonly().optional().describe('Ink outline around the model (default: on with toon, off with original).'),
|
|
453
|
+
'animation': z.string().readonly().optional().describe('The clip that plays on its own (default: one named idle / 待机 / stand, else the first).'),
|
|
454
|
+
'preview': z.object({
|
|
455
|
+
'yaw': z.number().readonly().optional(),
|
|
456
|
+
'pitch': z.number().readonly().optional(),
|
|
457
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
458
|
+
'tint': z.record(z.string(), z.string()).readonly().readonly().optional().describe('Base color by the model\'s material name (`{ "冠": "#c9a23a" }`).'),
|
|
459
|
+
'bones': z.record(z.string(), z.object({
|
|
460
|
+
'scale': z.union([z.number(), z.tuple([z.number(), z.number(), z.number()])]).readonly().optional(),
|
|
461
|
+
'rotate': z.tuple([z.number(), z.number(), z.number()]).readonly().optional(),
|
|
462
|
+
})).readonly().readonly().optional().describe('Per bone (by name): a scale (one number or x/y/z) and a rotation offset in degrees, on top of any animation.'),
|
|
463
|
+
'morphs': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Shape-key weights by name (`{ "smile": 0.6 }`).'),
|
|
464
|
+
'recipe': z.object({
|
|
465
|
+
'kind': z.literal("parts3d").readonly(),
|
|
466
|
+
'base': z.union([z.literal("quadruped"), z.literal("bird"), z.literal("fish"), z.literal("serpent"), z.literal("humanoid"), z.string()]).readonly().describe('A built-in {@link BodyBase} or a body the project registers with `dsh3d.defineBase`.'),
|
|
467
|
+
'proportions': z.record(z.string(), z.number()).readonly().readonly(),
|
|
468
|
+
'parts': z.array(z.object({
|
|
469
|
+
'type': z.union([z.string(), z.literal("ear"), z.literal("horn"), z.literal("tail"), z.literal("wing"), z.literal("fin"), z.literal("eye"), z.literal("face")]).readonly(),
|
|
470
|
+
'count': z.number().readonly().optional(),
|
|
471
|
+
'size': z.number().readonly().optional(),
|
|
472
|
+
'length': z.number().readonly().optional(),
|
|
473
|
+
'fan': z.number().readonly().optional().describe('Spread of a multi-part fan (tails, wings), degrees.'),
|
|
474
|
+
'thickness': z.number().readonly().optional(),
|
|
475
|
+
'color': z.string().readonly().optional().describe('A `palette` key or a `#rrggbb` color.'),
|
|
476
|
+
'style': z.string().readonly().optional().describe('`face` only: `human` gives a human face.'),
|
|
477
|
+
'extra': z.record(z.string(), z.union([z.string(), z.number()])).readonly().readonly().optional().describe('A project-defined part\'s own parameters (anything beyond the shared keys).'),
|
|
478
|
+
})).readonly(),
|
|
479
|
+
'palette': z.record(z.string(), z.string()).readonly().readonly().describe('Named colors: `body`, `accent`, `eye`, `belly`…'),
|
|
480
|
+
'motion': z.record(z.string(), z.object({
|
|
481
|
+
'amplitude': z.number().readonly().optional(),
|
|
482
|
+
'period': z.number().readonly().optional(),
|
|
483
|
+
})).readonly().readonly().describe('`tailSway`, `breath`, `flap`, `swim`, `bob`.'),
|
|
484
|
+
'scale': z.number().readonly().optional().describe('Overall size in world units (default 1).'),
|
|
485
|
+
'preview': z.object({
|
|
486
|
+
'yaw': z.number().readonly().optional(),
|
|
487
|
+
'pitch': z.number().readonly().optional(),
|
|
488
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
489
|
+
'refine': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Refine-path (Blender) knobs; ignored by the live builder.'),
|
|
490
|
+
}).readonly().optional(),
|
|
491
|
+
})]).readonly().describe('The 3D look, if the element has one (3d-three projects).'),
|
|
492
|
+
'lore': z.string().readonly().describe('The 设定 text (the element\'s `lore` field): who it is, its temper, how it meets the player. \'\' when unwritten.'),
|
|
493
|
+
})).readonly(),
|
|
494
|
+
'elementErrors': z.array(z.object({
|
|
495
|
+
'where': z.string().readonly().describe('`smoke`, `data`, or the test file\'s project-relative path.'),
|
|
496
|
+
'message': z.string().readonly(),
|
|
497
|
+
})).readonly(),
|
|
498
|
+
'current': z.union([z.literal(null), z.object({
|
|
499
|
+
'version': z.number().readonly(),
|
|
500
|
+
'at': z.string().readonly(),
|
|
501
|
+
'fingerprint': z.string().readonly(),
|
|
502
|
+
'by': z.union([z.literal("user"), z.literal("agent"), z.literal("turn")]).readonly().optional().describe('Who cut it: the user (检查并发版 / 提交), the agent (\\`game_publish\\`), or the end-of-turn check. Absent on older versions.'),
|
|
503
|
+
'note': z.string().readonly().optional().describe('One line about what changed (the turn\'s last words, or the plugin\'s own note).'),
|
|
504
|
+
})]).readonly(),
|
|
505
|
+
'candidate': z.union([z.literal(null), z.object({
|
|
506
|
+
'version': z.number().readonly(),
|
|
507
|
+
'at': z.string().readonly(),
|
|
508
|
+
'fingerprint': z.string().readonly(),
|
|
509
|
+
'by': z.union([z.literal("user"), z.literal("agent"), z.literal("turn")]).readonly().optional().describe('Who cut it: the user (检查并发版 / 提交), the agent (\\`game_publish\\`), or the end-of-turn check. Absent on older versions.'),
|
|
510
|
+
'note': z.string().readonly().optional().describe('One line about what changed (the turn\'s last words, or the plugin\'s own note).'),
|
|
511
|
+
})]).readonly(),
|
|
512
|
+
'lastCheck': z.union([z.literal(null), z.object({
|
|
513
|
+
'fingerprint': z.string().readonly(),
|
|
514
|
+
'at': z.string().readonly(),
|
|
515
|
+
'ok': z.boolean().readonly(),
|
|
516
|
+
'failures': z.array(z.object({
|
|
517
|
+
'where': z.string().readonly().describe('`smoke`, `data`, or the test file\'s project-relative path.'),
|
|
518
|
+
'message': z.string().readonly(),
|
|
519
|
+
})).readonly(),
|
|
520
|
+
'passed': z.number().readonly().describe('Test cases that ran and passed.'),
|
|
521
|
+
'skipped': z.string().readonly().optional().describe('Why the browser part did not run (no Chrome found, say); the data part still did.'),
|
|
522
|
+
'attempt': z.number().readonly().describe('The automatic fix round this run belongs to (1-based), 0 when not steered.'),
|
|
523
|
+
'gaveUp': z.boolean().readonly().optional().describe('Set when the fix cap was hit and the plugin stopped steering.'),
|
|
524
|
+
})]).readonly(),
|
|
525
|
+
'hasEntry': z.boolean().readonly(),
|
|
526
|
+
'paramOverrides': z.record(z.string(), z.number()).readonly().readonly().describe('The user\'s slider values that differ from the finalized defaults.'),
|
|
527
|
+
'pending': z.array(z.object({
|
|
528
|
+
'key': z.string().readonly().describe('Stable key so repeated edits of one thing collapse into one entry (`param:speed`, `look:fog`, `design:core-loop`).'),
|
|
529
|
+
'text': z.string().readonly().describe('Short label for the dock and the model (`参数 移动速度 1.4→1.8`).'),
|
|
530
|
+
})).readonly().describe('Panel changes the agent has not read yet (`game_read` shows, then clears them).'),
|
|
531
|
+
'uncommitted': z.array(z.object({
|
|
532
|
+
'key': z.string().readonly().describe('Stable key so repeated edits of one thing collapse into one entry (`param:speed`, `look:fog`, `design:core-loop`).'),
|
|
533
|
+
'text': z.string().readonly().describe('Short label for the dock and the model (`参数 移动速度 1.4→1.8`).'),
|
|
534
|
+
})).readonly().describe('Panel edits in the working files that no version carries yet — the panel\'s 提交为新版本.'),
|
|
535
|
+
'proposals': z.array(z.object({
|
|
536
|
+
'elementId': z.string().readonly(),
|
|
537
|
+
'at': z.string().readonly(),
|
|
538
|
+
'request': z.string().readonly(),
|
|
539
|
+
'variants': z.array(z.object({
|
|
540
|
+
'label': z.string().readonly(),
|
|
541
|
+
'note': z.string().readonly(),
|
|
542
|
+
'look': z.union([z.object({
|
|
543
|
+
'palette': z.array(z.string()).readonly(),
|
|
544
|
+
'states': z.record(z.string(), z.array(z.string())).readonly().readonly(),
|
|
545
|
+
}), z.object({
|
|
546
|
+
'kind': z.literal("parts3d").readonly(),
|
|
547
|
+
'base': z.union([z.literal("quadruped"), z.literal("bird"), z.literal("fish"), z.literal("serpent"), z.literal("humanoid"), z.string()]).readonly().describe('A built-in {@link BodyBase} or a body the project registers with `dsh3d.defineBase`.'),
|
|
548
|
+
'proportions': z.record(z.string(), z.number()).readonly().readonly(),
|
|
549
|
+
'parts': z.array(z.object({
|
|
550
|
+
'type': z.union([z.string(), z.literal("ear"), z.literal("horn"), z.literal("tail"), z.literal("wing"), z.literal("fin"), z.literal("eye"), z.literal("face")]).readonly(),
|
|
551
|
+
'count': z.number().readonly().optional(),
|
|
552
|
+
'size': z.number().readonly().optional(),
|
|
553
|
+
'length': z.number().readonly().optional(),
|
|
554
|
+
'fan': z.number().readonly().optional().describe('Spread of a multi-part fan (tails, wings), degrees.'),
|
|
555
|
+
'thickness': z.number().readonly().optional(),
|
|
556
|
+
'color': z.string().readonly().optional().describe('A `palette` key or a `#rrggbb` color.'),
|
|
557
|
+
'style': z.string().readonly().optional().describe('`face` only: `human` gives a human face.'),
|
|
558
|
+
'extra': z.record(z.string(), z.union([z.string(), z.number()])).readonly().readonly().optional().describe('A project-defined part\'s own parameters (anything beyond the shared keys).'),
|
|
559
|
+
})).readonly(),
|
|
560
|
+
'palette': z.record(z.string(), z.string()).readonly().readonly().describe('Named colors: `body`, `accent`, `eye`, `belly`…'),
|
|
561
|
+
'motion': z.record(z.string(), z.object({
|
|
562
|
+
'amplitude': z.number().readonly().optional(),
|
|
563
|
+
'period': z.number().readonly().optional(),
|
|
564
|
+
})).readonly().readonly().describe('`tailSway`, `breath`, `flap`, `swim`, `bob`.'),
|
|
565
|
+
'scale': z.number().readonly().optional().describe('Overall size in world units (default 1).'),
|
|
566
|
+
'preview': z.object({
|
|
567
|
+
'yaw': z.number().readonly().optional(),
|
|
568
|
+
'pitch': z.number().readonly().optional(),
|
|
569
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
570
|
+
'refine': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Refine-path (Blender) knobs; ignored by the live builder.'),
|
|
571
|
+
}), z.object({
|
|
572
|
+
'kind': z.literal("gltf").readonly(),
|
|
573
|
+
'src': z.string().readonly().describe('Project-relative path to a `.glb` / `.gltf`.'),
|
|
574
|
+
'scale': z.number().readonly().optional(),
|
|
575
|
+
'material': z.union([z.literal("toon"), z.literal("original")]).readonly().optional().describe('`toon` (default): the style\'s toon shading over the model\'s colors, vertex colors and textures; `original`: its own materials.'),
|
|
576
|
+
'outline': z.boolean().readonly().optional().describe('Ink outline around the model (default: on with toon, off with original).'),
|
|
577
|
+
'animation': z.string().readonly().optional().describe('The clip that plays on its own (default: one named idle / 待机 / stand, else the first).'),
|
|
578
|
+
'preview': z.object({
|
|
579
|
+
'yaw': z.number().readonly().optional(),
|
|
580
|
+
'pitch': z.number().readonly().optional(),
|
|
581
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
582
|
+
'tint': z.record(z.string(), z.string()).readonly().readonly().optional().describe('Base color by the model\'s material name (`{ "冠": "#c9a23a" }`).'),
|
|
583
|
+
'bones': z.record(z.string(), z.object({
|
|
584
|
+
'scale': z.union([z.number(), z.tuple([z.number(), z.number(), z.number()])]).readonly().optional(),
|
|
585
|
+
'rotate': z.tuple([z.number(), z.number(), z.number()]).readonly().optional(),
|
|
586
|
+
})).readonly().readonly().optional().describe('Per bone (by name): a scale (one number or x/y/z) and a rotation offset in degrees, on top of any animation.'),
|
|
587
|
+
'morphs': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Shape-key weights by name (`{ "smile": 0.6 }`).'),
|
|
588
|
+
'recipe': z.object({
|
|
589
|
+
'kind': z.literal("parts3d").readonly(),
|
|
590
|
+
'base': z.union([z.literal("quadruped"), z.literal("bird"), z.literal("fish"), z.literal("serpent"), z.literal("humanoid"), z.string()]).readonly().describe('A built-in {@link BodyBase} or a body the project registers with `dsh3d.defineBase`.'),
|
|
591
|
+
'proportions': z.record(z.string(), z.number()).readonly().readonly(),
|
|
592
|
+
'parts': z.array(z.object({
|
|
593
|
+
'type': z.union([z.string(), z.literal("ear"), z.literal("horn"), z.literal("tail"), z.literal("wing"), z.literal("fin"), z.literal("eye"), z.literal("face")]).readonly(),
|
|
594
|
+
'count': z.number().readonly().optional(),
|
|
595
|
+
'size': z.number().readonly().optional(),
|
|
596
|
+
'length': z.number().readonly().optional(),
|
|
597
|
+
'fan': z.number().readonly().optional().describe('Spread of a multi-part fan (tails, wings), degrees.'),
|
|
598
|
+
'thickness': z.number().readonly().optional(),
|
|
599
|
+
'color': z.string().readonly().optional().describe('A `palette` key or a `#rrggbb` color.'),
|
|
600
|
+
'style': z.string().readonly().optional().describe('`face` only: `human` gives a human face.'),
|
|
601
|
+
'extra': z.record(z.string(), z.union([z.string(), z.number()])).readonly().readonly().optional().describe('A project-defined part\'s own parameters (anything beyond the shared keys).'),
|
|
602
|
+
})).readonly(),
|
|
603
|
+
'palette': z.record(z.string(), z.string()).readonly().readonly().describe('Named colors: `body`, `accent`, `eye`, `belly`…'),
|
|
604
|
+
'motion': z.record(z.string(), z.object({
|
|
605
|
+
'amplitude': z.number().readonly().optional(),
|
|
606
|
+
'period': z.number().readonly().optional(),
|
|
607
|
+
})).readonly().readonly().describe('`tailSway`, `breath`, `flap`, `swim`, `bob`.'),
|
|
608
|
+
'scale': z.number().readonly().optional().describe('Overall size in world units (default 1).'),
|
|
609
|
+
'preview': z.object({
|
|
610
|
+
'yaw': z.number().readonly().optional(),
|
|
611
|
+
'pitch': z.number().readonly().optional(),
|
|
612
|
+
}).readonly().optional().describe('The panel\'s default view of it.'),
|
|
613
|
+
'refine': z.record(z.string(), z.number()).readonly().readonly().optional().describe('Refine-path (Blender) knobs; ignored by the live builder.'),
|
|
614
|
+
}).readonly().optional(),
|
|
615
|
+
})]).readonly(),
|
|
616
|
+
})).readonly(),
|
|
617
|
+
'picked': z.number().readonly().optional().describe('Index the user picked, once picked.'),
|
|
618
|
+
})).readonly().describe('Open (unpicked) and recent appearance proposals, newest first.'),
|
|
619
|
+
'versions': z.array(z.object({
|
|
620
|
+
'status': z.union([z.literal("current"), z.literal("rejected"), z.literal("candidate"), z.literal("past")]).readonly(),
|
|
621
|
+
'passed': z.number().readonly().optional().describe('Test cases that passed when this version was checked.'),
|
|
622
|
+
'version': z.number().readonly(),
|
|
623
|
+
'at': z.string().readonly(),
|
|
624
|
+
'fingerprint': z.string().readonly(),
|
|
625
|
+
'by': z.union([z.literal("user"), z.literal("agent"), z.literal("turn")]).readonly().optional().describe('Who cut it: the user (检查并发版 / 提交), the agent (\\`game_publish\\`), or the end-of-turn check. Absent on older versions.'),
|
|
626
|
+
'note': z.string().readonly().optional().describe('One line about what changed (the turn\'s last words, or the plugin\'s own note).'),
|
|
627
|
+
})).readonly(),
|
|
628
|
+
'log': z.array(z.object({
|
|
629
|
+
'at': z.string().readonly(),
|
|
630
|
+
'text': z.string().readonly(),
|
|
631
|
+
})).readonly(),
|
|
632
|
+
'restyleTo': z.string().readonly().optional().describe('Set while a style change waits for its candidate (decision: a restyle always goes through a candidate).'),
|
|
633
|
+
'candidateDiff': z.union([z.literal(null), z.object({
|
|
634
|
+
'changed': z.array(z.string()).readonly(),
|
|
635
|
+
'added': z.array(z.string()).readonly(),
|
|
636
|
+
})]).readonly().describe('What the waiting candidate changed against the live version, by element id (the play area\'s diff rings).'),
|
|
637
|
+
})]).readonly(),
|
|
638
|
+
'projects': z.array(z.object({
|
|
639
|
+
'id': z.string().readonly(),
|
|
640
|
+
'title': z.string().readonly(),
|
|
641
|
+
'root': z.string().readonly(),
|
|
642
|
+
'createdAt': z.string().readonly(),
|
|
643
|
+
'updatedAt': z.string().readonly(),
|
|
644
|
+
})).readonly(),
|
|
645
|
+
}))
|
|
646
|
+
let _khorsheed_dsh_game_game_turnReport_parameter_0$schema$value
|
|
647
|
+
const _khorsheed_dsh_game_game_turnReport_parameter_0$schema = () => (_khorsheed_dsh_game_game_turnReport_parameter_0$schema$value ??= z.string())
|
|
648
|
+
let _khorsheed_dsh_game_game_turnReport_parameter_1$schema$value
|
|
649
|
+
const _khorsheed_dsh_game_game_turnReport_parameter_1$schema = () => (_khorsheed_dsh_game_game_turnReport_parameter_1$schema$value ??= z.object({
|
|
650
|
+
'turn': z.number(),
|
|
651
|
+
}))
|
|
652
|
+
let _khorsheed_dsh_game_game_turnReport_result$schema$value
|
|
653
|
+
const _khorsheed_dsh_game_game_turnReport_result$schema = () => (_khorsheed_dsh_game_game_turnReport_result$schema$value ??= z.union([z.literal(null), z.object({
|
|
654
|
+
'turn': z.number().readonly(),
|
|
655
|
+
'projectId': z.string().readonly(),
|
|
656
|
+
'title': z.string().readonly(),
|
|
657
|
+
'at': z.string().readonly(),
|
|
658
|
+
'version': z.union([z.literal(null), z.object({
|
|
659
|
+
'kind': z.union([z.literal("candidate"), z.literal("deployed")]).readonly(),
|
|
660
|
+
'version': z.number().readonly(),
|
|
661
|
+
})]).readonly().describe('A version that became live (or a candidate) during the turn.'),
|
|
662
|
+
'check': z.union([z.literal(null), z.object({
|
|
663
|
+
'ok': z.boolean().readonly(),
|
|
664
|
+
'fixes': z.number().readonly(),
|
|
665
|
+
'gaveUp': z.boolean().readonly(),
|
|
666
|
+
'passed': z.number().readonly(),
|
|
667
|
+
'failures': z.number().readonly(),
|
|
668
|
+
})]).readonly().describe('The turn\'s end-of-turn check, when one ran.'),
|
|
669
|
+
'elements': z.array(z.object({
|
|
670
|
+
'id': z.string().readonly(),
|
|
671
|
+
'name': z.string().readonly(),
|
|
672
|
+
'what': z.union([z.literal("removed"), z.literal("new"), z.literal("look"), z.literal("fields")]).readonly(),
|
|
673
|
+
'fields': z.array(z.string()).readonly().optional(),
|
|
674
|
+
'looks': z.object({
|
|
675
|
+
'before': z.union([z.literal(null), z.string()]).readonly(),
|
|
676
|
+
'after': z.string().readonly(),
|
|
677
|
+
}).readonly().optional().describe('3D looks before and after the turn (JSON), for the card\'s side-by-side previews.'),
|
|
678
|
+
})).readonly(),
|
|
679
|
+
'chapters': z.array(z.object({
|
|
680
|
+
'id': z.string().readonly(),
|
|
681
|
+
'title': z.string().readonly(),
|
|
682
|
+
})).readonly(),
|
|
683
|
+
'params': z.array(z.object({
|
|
684
|
+
'key': z.string().readonly(),
|
|
685
|
+
'label': z.string().readonly(),
|
|
686
|
+
'from': z.number().readonly().optional(),
|
|
687
|
+
'to': z.number().readonly(),
|
|
688
|
+
})).readonly(),
|
|
689
|
+
'code': z.array(z.string()).readonly().describe('Other changed source files (code, assets, index.html).'),
|
|
690
|
+
'tests': z.array(z.string()).readonly(),
|
|
691
|
+
})]))
|
|
692
|
+
let _khorsheed_dsh_game_game_versionBundle_parameter_0$schema$value
|
|
693
|
+
const _khorsheed_dsh_game_game_versionBundle_parameter_0$schema = () => (_khorsheed_dsh_game_game_versionBundle_parameter_0$schema$value ??= z.object({
|
|
694
|
+
'projectId': z.string(),
|
|
695
|
+
'version': z.number(),
|
|
696
|
+
}))
|
|
697
|
+
let _khorsheed_dsh_game_game_versionBundle_result$schema$value
|
|
698
|
+
const _khorsheed_dsh_game_game_versionBundle_result$schema = () => (_khorsheed_dsh_game_game_versionBundle_result$schema$value ??= z.union([z.object({
|
|
699
|
+
'ok': z.literal(false).readonly(),
|
|
700
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
701
|
+
}), z.object({
|
|
702
|
+
'ok': z.literal(true).readonly(),
|
|
703
|
+
'bundle': z.object({
|
|
704
|
+
'projectId': z.string().readonly(),
|
|
705
|
+
'version': z.number().readonly(),
|
|
706
|
+
'files': z.record(z.string(), z.union([z.object({
|
|
707
|
+
'type': z.string().readonly(),
|
|
708
|
+
'text': z.string().readonly(),
|
|
709
|
+
}), z.object({
|
|
710
|
+
'type': z.string().readonly(),
|
|
711
|
+
'b64': z.string().readonly(),
|
|
712
|
+
})])).readonly().readonly(),
|
|
713
|
+
}).readonly(),
|
|
714
|
+
})]))
|
|
715
|
+
let _khorsheed_dsh_game_game_workingFile_parameter_0$schema$value
|
|
716
|
+
const _khorsheed_dsh_game_game_workingFile_parameter_0$schema = () => (_khorsheed_dsh_game_game_workingFile_parameter_0$schema$value ??= z.object({
|
|
717
|
+
'projectId': z.string(),
|
|
718
|
+
'path': z.string(),
|
|
719
|
+
}))
|
|
720
|
+
let _khorsheed_dsh_game_game_workingFile_result$schema$value
|
|
721
|
+
const _khorsheed_dsh_game_game_workingFile_result$schema = () => (_khorsheed_dsh_game_game_workingFile_result$schema$value ??= z.union([z.object({
|
|
722
|
+
'ok': z.literal(false).readonly(),
|
|
723
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
724
|
+
}), z.object({
|
|
725
|
+
'ok': z.literal(true).readonly(),
|
|
726
|
+
'file': z.union([z.object({
|
|
727
|
+
'type': z.string().readonly(),
|
|
728
|
+
'text': z.string().readonly(),
|
|
729
|
+
}), z.object({
|
|
730
|
+
'type': z.string().readonly(),
|
|
731
|
+
'b64': z.string().readonly(),
|
|
732
|
+
})]).readonly(),
|
|
733
|
+
})]))
|
|
734
|
+
let _khorsheed_dsh_game_game_writeChapter_parameter_0$schema$value
|
|
735
|
+
const _khorsheed_dsh_game_game_writeChapter_parameter_0$schema = () => (_khorsheed_dsh_game_game_writeChapter_parameter_0$schema$value ??= z.string())
|
|
736
|
+
let _khorsheed_dsh_game_game_writeChapter_parameter_1$schema$value
|
|
737
|
+
const _khorsheed_dsh_game_game_writeChapter_parameter_1$schema = () => (_khorsheed_dsh_game_game_writeChapter_parameter_1$schema$value ??= z.object({
|
|
738
|
+
'projectId': z.string(),
|
|
739
|
+
'chapterId': z.string(),
|
|
740
|
+
'text': z.string(),
|
|
741
|
+
}))
|
|
742
|
+
let _khorsheed_dsh_game_game_writeChapter_result$schema$value
|
|
743
|
+
const _khorsheed_dsh_game_game_writeChapter_result$schema = () => (_khorsheed_dsh_game_game_writeChapter_result$schema$value ??= z.union([z.object({
|
|
744
|
+
'ok': z.literal(false).readonly(),
|
|
745
|
+
'error': z.union([z.literal("not-found"), z.literal("denied"), z.literal("io"), z.literal("unbound"), z.literal("invalid"), z.literal("no-version"), z.literal("not-a-project"), z.literal("is-workspace"), z.literal("trash-failed")]).readonly(),
|
|
746
|
+
}), z.object({
|
|
747
|
+
'ok': z.literal(true).readonly(),
|
|
748
|
+
})]))
|
|
749
|
+
let _khorsheed_dsh_game_game_bind_parameter_0_strict$schema$value
|
|
750
|
+
const _khorsheed_dsh_game_game_bind_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_bind_parameter_0_strict$schema$value ??= z.string())
|
|
751
|
+
let _khorsheed_dsh_game_game_bind_parameter_1_strict$schema$value
|
|
752
|
+
const _khorsheed_dsh_game_game_bind_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_bind_parameter_1_strict$schema$value ??= z.strictObject({
|
|
753
|
+
'projectId': z.union([z.literal(null), z.string()]),
|
|
754
|
+
}))
|
|
755
|
+
let _khorsheed_dsh_game_game_bundle_parameter_0_strict$schema$value
|
|
756
|
+
const _khorsheed_dsh_game_game_bundle_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_bundle_parameter_0_strict$schema$value ??= z.strictObject({
|
|
757
|
+
'projectId': z.string(),
|
|
758
|
+
'which': z.union([z.literal("current"), z.literal("candidate")]).optional(),
|
|
759
|
+
}))
|
|
760
|
+
let _khorsheed_dsh_game_game_changes_parameter_0_strict$schema$value
|
|
761
|
+
const _khorsheed_dsh_game_game_changes_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_changes_parameter_0_strict$schema$value ??= z.strictObject({
|
|
762
|
+
'projectId': z.string(),
|
|
763
|
+
}))
|
|
764
|
+
let _khorsheed_dsh_game_game_checkShot_parameter_0_strict$schema$value
|
|
765
|
+
const _khorsheed_dsh_game_game_checkShot_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_checkShot_parameter_0_strict$schema$value ??= z.strictObject({
|
|
766
|
+
'projectId': z.string(),
|
|
767
|
+
'version': z.number().optional(),
|
|
768
|
+
}))
|
|
769
|
+
let _khorsheed_dsh_game_game_commit_parameter_0_strict$schema$value
|
|
770
|
+
const _khorsheed_dsh_game_game_commit_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_commit_parameter_0_strict$schema$value ??= z.string())
|
|
771
|
+
let _khorsheed_dsh_game_game_commit_parameter_1_strict$schema$value
|
|
772
|
+
const _khorsheed_dsh_game_game_commit_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_commit_parameter_1_strict$schema$value ??= z.strictObject({
|
|
773
|
+
'projectId': z.string(),
|
|
774
|
+
}))
|
|
775
|
+
let _khorsheed_dsh_game_game_confirm_parameter_0_strict$schema$value
|
|
776
|
+
const _khorsheed_dsh_game_game_confirm_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_confirm_parameter_0_strict$schema$value ??= z.string())
|
|
777
|
+
let _khorsheed_dsh_game_game_confirm_parameter_1_strict$schema$value
|
|
778
|
+
const _khorsheed_dsh_game_game_confirm_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_confirm_parameter_1_strict$schema$value ??= z.strictObject({
|
|
779
|
+
'projectId': z.string(),
|
|
780
|
+
}))
|
|
781
|
+
let _khorsheed_dsh_game_game_deleteProject_parameter_0_strict$schema$value
|
|
782
|
+
const _khorsheed_dsh_game_game_deleteProject_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_deleteProject_parameter_0_strict$schema$value ??= z.string())
|
|
783
|
+
let _khorsheed_dsh_game_game_deleteProject_parameter_1_strict$schema$value
|
|
784
|
+
const _khorsheed_dsh_game_game_deleteProject_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_deleteProject_parameter_1_strict$schema$value ??= z.strictObject({
|
|
785
|
+
'projectId': z.string(),
|
|
786
|
+
'mode': z.union([z.literal("trash"), z.literal("forget")]),
|
|
787
|
+
}))
|
|
788
|
+
let _khorsheed_dsh_game_game_diff_parameter_0_strict$schema$value
|
|
789
|
+
const _khorsheed_dsh_game_game_diff_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_diff_parameter_0_strict$schema$value ??= z.strictObject({
|
|
790
|
+
'projectId': z.string(),
|
|
791
|
+
'from': z.number(),
|
|
792
|
+
'to': z.number(),
|
|
793
|
+
}))
|
|
794
|
+
let _khorsheed_dsh_game_game_dropPending_parameter_0_strict$schema$value
|
|
795
|
+
const _khorsheed_dsh_game_game_dropPending_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_dropPending_parameter_0_strict$schema$value ??= z.string())
|
|
796
|
+
let _khorsheed_dsh_game_game_dropPending_parameter_1_strict$schema$value
|
|
797
|
+
const _khorsheed_dsh_game_game_dropPending_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_dropPending_parameter_1_strict$schema$value ??= z.strictObject({
|
|
798
|
+
'projectId': z.string(),
|
|
799
|
+
'key': z.string(),
|
|
800
|
+
}))
|
|
801
|
+
let _khorsheed_dsh_game_game_editElement_parameter_0_strict$schema$value
|
|
802
|
+
const _khorsheed_dsh_game_game_editElement_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_editElement_parameter_0_strict$schema$value ??= z.string())
|
|
803
|
+
let _khorsheed_dsh_game_game_editElement_parameter_1_strict$schema$value
|
|
804
|
+
const _khorsheed_dsh_game_game_editElement_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_editElement_parameter_1_strict$schema$value ??= z.strictObject({
|
|
805
|
+
'projectId': z.string(),
|
|
806
|
+
'elementId': z.string(),
|
|
807
|
+
'look': z.string().optional(),
|
|
808
|
+
'fields': z.string().optional(),
|
|
809
|
+
}))
|
|
810
|
+
let _khorsheed_dsh_game_game_finalizeParams_parameter_0_strict$schema$value
|
|
811
|
+
const _khorsheed_dsh_game_game_finalizeParams_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_finalizeParams_parameter_0_strict$schema$value ??= z.string())
|
|
812
|
+
let _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema$value
|
|
813
|
+
const _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema$value ??= z.strictObject({
|
|
814
|
+
'projectId': z.string(),
|
|
815
|
+
}))
|
|
816
|
+
let _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema$value
|
|
817
|
+
const _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema$value ??= z.string())
|
|
818
|
+
let _khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema$value
|
|
819
|
+
const _khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema$value ??= z.strictObject({
|
|
820
|
+
'projectId': z.string(),
|
|
821
|
+
'version': z.number(),
|
|
822
|
+
'seconds': z.number(),
|
|
823
|
+
'errors': z.array(z.string()),
|
|
824
|
+
}))
|
|
825
|
+
let _khorsheed_dsh_game_game_pickProposal_parameter_0_strict$schema$value
|
|
826
|
+
const _khorsheed_dsh_game_game_pickProposal_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_pickProposal_parameter_0_strict$schema$value ??= z.string())
|
|
827
|
+
let _khorsheed_dsh_game_game_pickProposal_parameter_1_strict$schema$value
|
|
828
|
+
const _khorsheed_dsh_game_game_pickProposal_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_pickProposal_parameter_1_strict$schema$value ??= z.strictObject({
|
|
829
|
+
'projectId': z.string(),
|
|
830
|
+
'elementId': z.string(),
|
|
831
|
+
'at': z.string(),
|
|
832
|
+
'index': z.number(),
|
|
833
|
+
}))
|
|
834
|
+
let _khorsheed_dsh_game_game_reject_parameter_0_strict$schema$value
|
|
835
|
+
const _khorsheed_dsh_game_game_reject_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_reject_parameter_0_strict$schema$value ??= z.string())
|
|
836
|
+
let _khorsheed_dsh_game_game_reject_parameter_1_strict$schema$value
|
|
837
|
+
const _khorsheed_dsh_game_game_reject_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_reject_parameter_1_strict$schema$value ??= z.strictObject({
|
|
838
|
+
'projectId': z.string(),
|
|
839
|
+
'reason': z.string(),
|
|
840
|
+
}))
|
|
841
|
+
let _khorsheed_dsh_game_game_requestRestyle_parameter_0_strict$schema$value
|
|
842
|
+
const _khorsheed_dsh_game_game_requestRestyle_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_requestRestyle_parameter_0_strict$schema$value ??= z.string())
|
|
843
|
+
let _khorsheed_dsh_game_game_requestRestyle_parameter_1_strict$schema$value
|
|
844
|
+
const _khorsheed_dsh_game_game_requestRestyle_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_requestRestyle_parameter_1_strict$schema$value ??= z.strictObject({
|
|
845
|
+
'projectId': z.string(),
|
|
846
|
+
'styleId': z.string(),
|
|
847
|
+
}))
|
|
848
|
+
let _khorsheed_dsh_game_game_resetParams_parameter_0_strict$schema$value
|
|
849
|
+
const _khorsheed_dsh_game_game_resetParams_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_resetParams_parameter_0_strict$schema$value ??= z.string())
|
|
850
|
+
let _khorsheed_dsh_game_game_resetParams_parameter_1_strict$schema$value
|
|
851
|
+
const _khorsheed_dsh_game_game_resetParams_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_resetParams_parameter_1_strict$schema$value ??= z.strictObject({
|
|
852
|
+
'projectId': z.string(),
|
|
853
|
+
}))
|
|
854
|
+
let _khorsheed_dsh_game_game_rollback_parameter_0_strict$schema$value
|
|
855
|
+
const _khorsheed_dsh_game_game_rollback_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_rollback_parameter_0_strict$schema$value ??= z.string())
|
|
856
|
+
let _khorsheed_dsh_game_game_rollback_parameter_1_strict$schema$value
|
|
857
|
+
const _khorsheed_dsh_game_game_rollback_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_rollback_parameter_1_strict$schema$value ??= z.strictObject({
|
|
858
|
+
'projectId': z.string(),
|
|
859
|
+
'version': z.number(),
|
|
860
|
+
}))
|
|
861
|
+
let _khorsheed_dsh_game_game_setAutoConfirm_parameter_0_strict$schema$value
|
|
862
|
+
const _khorsheed_dsh_game_game_setAutoConfirm_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_setAutoConfirm_parameter_0_strict$schema$value ??= z.string())
|
|
863
|
+
let _khorsheed_dsh_game_game_setAutoConfirm_parameter_1_strict$schema$value
|
|
864
|
+
const _khorsheed_dsh_game_game_setAutoConfirm_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_setAutoConfirm_parameter_1_strict$schema$value ??= z.strictObject({
|
|
865
|
+
'projectId': z.string(),
|
|
866
|
+
'on': z.boolean(),
|
|
867
|
+
}))
|
|
868
|
+
let _khorsheed_dsh_game_game_setOnePager_parameter_0_strict$schema$value
|
|
869
|
+
const _khorsheed_dsh_game_game_setOnePager_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_setOnePager_parameter_0_strict$schema$value ??= z.string())
|
|
870
|
+
let _khorsheed_dsh_game_game_setOnePager_parameter_1_strict$schema$value
|
|
871
|
+
const _khorsheed_dsh_game_game_setOnePager_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_setOnePager_parameter_1_strict$schema$value ??= z.strictObject({
|
|
872
|
+
'projectId': z.string(),
|
|
873
|
+
'pitch': z.string().optional(),
|
|
874
|
+
'elementTypes': z.string().optional(),
|
|
875
|
+
'pillars': z.string().optional(),
|
|
876
|
+
}))
|
|
877
|
+
let _khorsheed_dsh_game_game_setParam_parameter_0_strict$schema$value
|
|
878
|
+
const _khorsheed_dsh_game_game_setParam_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_setParam_parameter_0_strict$schema$value ??= z.string())
|
|
879
|
+
let _khorsheed_dsh_game_game_setParam_parameter_1_strict$schema$value
|
|
880
|
+
const _khorsheed_dsh_game_game_setParam_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_setParam_parameter_1_strict$schema$value ??= z.strictObject({
|
|
881
|
+
'projectId': z.string(),
|
|
882
|
+
'key': z.string(),
|
|
883
|
+
'value': z.number(),
|
|
884
|
+
}))
|
|
885
|
+
let _khorsheed_dsh_game_game_state_parameter_0_strict$schema$value
|
|
886
|
+
const _khorsheed_dsh_game_game_state_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_state_parameter_0_strict$schema$value ??= z.string())
|
|
887
|
+
let _khorsheed_dsh_game_game_turnReport_parameter_0_strict$schema$value
|
|
888
|
+
const _khorsheed_dsh_game_game_turnReport_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_turnReport_parameter_0_strict$schema$value ??= z.string())
|
|
889
|
+
let _khorsheed_dsh_game_game_turnReport_parameter_1_strict$schema$value
|
|
890
|
+
const _khorsheed_dsh_game_game_turnReport_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_turnReport_parameter_1_strict$schema$value ??= z.strictObject({
|
|
891
|
+
'turn': z.number(),
|
|
892
|
+
}))
|
|
893
|
+
let _khorsheed_dsh_game_game_versionBundle_parameter_0_strict$schema$value
|
|
894
|
+
const _khorsheed_dsh_game_game_versionBundle_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_versionBundle_parameter_0_strict$schema$value ??= z.strictObject({
|
|
895
|
+
'projectId': z.string(),
|
|
896
|
+
'version': z.number(),
|
|
897
|
+
}))
|
|
898
|
+
let _khorsheed_dsh_game_game_workingFile_parameter_0_strict$schema$value
|
|
899
|
+
const _khorsheed_dsh_game_game_workingFile_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_workingFile_parameter_0_strict$schema$value ??= z.strictObject({
|
|
900
|
+
'projectId': z.string(),
|
|
901
|
+
'path': z.string(),
|
|
902
|
+
}))
|
|
903
|
+
let _khorsheed_dsh_game_game_writeChapter_parameter_0_strict$schema$value
|
|
904
|
+
const _khorsheed_dsh_game_game_writeChapter_parameter_0_strict$schema = () => (_khorsheed_dsh_game_game_writeChapter_parameter_0_strict$schema$value ??= z.string())
|
|
905
|
+
let _khorsheed_dsh_game_game_writeChapter_parameter_1_strict$schema$value
|
|
906
|
+
const _khorsheed_dsh_game_game_writeChapter_parameter_1_strict$schema = () => (_khorsheed_dsh_game_game_writeChapter_parameter_1_strict$schema$value ??= z.strictObject({
|
|
907
|
+
'projectId': z.string(),
|
|
908
|
+
'chapterId': z.string(),
|
|
909
|
+
'text': z.string(),
|
|
910
|
+
}))
|
|
911
|
+
|
|
912
|
+
const $remote = createTypertRemoteInfo({
|
|
913
|
+
package: '@khorsheed/dsh-game',
|
|
914
|
+
methods: {
|
|
915
|
+
'game/bind': {
|
|
916
|
+
service: 'gameRemote',
|
|
917
|
+
description: 'Bind the session to a project, or unbind with `projectId: null`.',
|
|
918
|
+
invocation: { kind: 'direct' },
|
|
919
|
+
parameters: [
|
|
920
|
+
{
|
|
921
|
+
name: 'sessionId',
|
|
922
|
+
source: 'json',
|
|
923
|
+
codec: {
|
|
924
|
+
mode: 'strict',
|
|
925
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
926
|
+
create: _khorsheed_dsh_game_game_bind_parameter_0$schema,
|
|
927
|
+
schema: _khorsheed_dsh_game_game_bind_parameter_0$schema(),
|
|
928
|
+
jsonSchema: {"type":"string"},
|
|
929
|
+
},
|
|
930
|
+
strictCodec: {
|
|
931
|
+
mode: 'strict',
|
|
932
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
933
|
+
create: _khorsheed_dsh_game_game_bind_parameter_0_strict$schema,
|
|
934
|
+
schema: _khorsheed_dsh_game_game_bind_parameter_0_strict$schema(),
|
|
935
|
+
jsonSchema: {"type":"string"},
|
|
936
|
+
},
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
name: 'request',
|
|
940
|
+
source: 'json',
|
|
941
|
+
codec: {
|
|
942
|
+
mode: 'strict',
|
|
943
|
+
typeSymbol: '@khorsheed/dsh-game#game/bind:request',
|
|
944
|
+
create: _khorsheed_dsh_game_game_bind_parameter_1$schema,
|
|
945
|
+
schema: _khorsheed_dsh_game_game_bind_parameter_1$schema(),
|
|
946
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"oneOf":[{"type":"null","const":null},{"type":"string"}]}},"required":["projectId"],"additionalProperties":true},
|
|
947
|
+
},
|
|
948
|
+
strictCodec: {
|
|
949
|
+
mode: 'strict',
|
|
950
|
+
typeSymbol: '@khorsheed/dsh-game#game/bind:request',
|
|
951
|
+
create: _khorsheed_dsh_game_game_bind_parameter_1_strict$schema,
|
|
952
|
+
schema: _khorsheed_dsh_game_game_bind_parameter_1_strict$schema(),
|
|
953
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"oneOf":[{"type":"null","const":null},{"type":"string"}]}},"required":["projectId"],"additionalProperties":false},
|
|
954
|
+
},
|
|
955
|
+
},
|
|
956
|
+
],
|
|
957
|
+
result: {
|
|
958
|
+
mode: 'strict',
|
|
959
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
960
|
+
create: _khorsheed_dsh_game_game_bind_result$schema,
|
|
961
|
+
schema: _khorsheed_dsh_game_game_bind_result$schema(),
|
|
962
|
+
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
|
+
},
|
|
964
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":67,"column":3},
|
|
965
|
+
},
|
|
966
|
+
'game/bundle': {
|
|
967
|
+
service: 'gameRemote',
|
|
968
|
+
description: 'A version\'s files for the play area.',
|
|
969
|
+
invocation: { kind: 'direct' },
|
|
970
|
+
parameters: [
|
|
971
|
+
{
|
|
972
|
+
name: 'request',
|
|
973
|
+
source: 'json',
|
|
974
|
+
codec: {
|
|
975
|
+
mode: 'strict',
|
|
976
|
+
typeSymbol: '@khorsheed/dsh-game#game/bundle:request',
|
|
977
|
+
create: _khorsheed_dsh_game_game_bundle_parameter_0$schema,
|
|
978
|
+
schema: _khorsheed_dsh_game_game_bundle_parameter_0$schema(),
|
|
979
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"which":{"type":"string","enum":["current","candidate"]}},"required":["projectId"],"additionalProperties":true},
|
|
980
|
+
},
|
|
981
|
+
strictCodec: {
|
|
982
|
+
mode: 'strict',
|
|
983
|
+
typeSymbol: '@khorsheed/dsh-game#game/bundle:request',
|
|
984
|
+
create: _khorsheed_dsh_game_game_bundle_parameter_0_strict$schema,
|
|
985
|
+
schema: _khorsheed_dsh_game_game_bundle_parameter_0_strict$schema(),
|
|
986
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"which":{"type":"string","enum":["current","candidate"]}},"required":["projectId"],"additionalProperties":false},
|
|
987
|
+
},
|
|
988
|
+
},
|
|
989
|
+
],
|
|
990
|
+
result: {
|
|
991
|
+
mode: 'strict',
|
|
992
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
993
|
+
create: _khorsheed_dsh_game_game_bundle_result$schema,
|
|
994
|
+
schema: _khorsheed_dsh_game_game_bundle_result$schema(),
|
|
995
|
+
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
996
|
+
},
|
|
997
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":79,"column":3},
|
|
998
|
+
},
|
|
999
|
+
'game/changes': {
|
|
1000
|
+
service: 'gameRemote',
|
|
1001
|
+
description: 'What the working files hold that the play area does not (the commit bar polls it).',
|
|
1002
|
+
invocation: { kind: 'direct' },
|
|
1003
|
+
parameters: [
|
|
1004
|
+
{
|
|
1005
|
+
name: 'request',
|
|
1006
|
+
source: 'json',
|
|
1007
|
+
codec: {
|
|
1008
|
+
mode: 'strict',
|
|
1009
|
+
typeSymbol: '@khorsheed/dsh-game#game/changes:request',
|
|
1010
|
+
create: _khorsheed_dsh_game_game_changes_parameter_0$schema,
|
|
1011
|
+
schema: _khorsheed_dsh_game_game_changes_parameter_0$schema(),
|
|
1012
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1013
|
+
},
|
|
1014
|
+
strictCodec: {
|
|
1015
|
+
mode: 'strict',
|
|
1016
|
+
typeSymbol: '@khorsheed/dsh-game#game/changes:request',
|
|
1017
|
+
create: _khorsheed_dsh_game_game_changes_parameter_0_strict$schema,
|
|
1018
|
+
schema: _khorsheed_dsh_game_game_changes_parameter_0_strict$schema(),
|
|
1019
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1020
|
+
},
|
|
1021
|
+
},
|
|
1022
|
+
],
|
|
1023
|
+
result: {
|
|
1024
|
+
mode: 'strict',
|
|
1025
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1026
|
+
create: _khorsheed_dsh_game_game_changes_result$schema,
|
|
1027
|
+
schema: _khorsheed_dsh_game_game_changes_result$schema(),
|
|
1028
|
+
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
|
+
},
|
|
1030
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":91,"column":3},
|
|
1031
|
+
},
|
|
1032
|
+
'game/checkShot': {
|
|
1033
|
+
service: 'gameRemote',
|
|
1034
|
+
description: 'The last check\'s screenshot.',
|
|
1035
|
+
invocation: { kind: 'direct' },
|
|
1036
|
+
parameters: [
|
|
1037
|
+
{
|
|
1038
|
+
name: 'request',
|
|
1039
|
+
source: 'json',
|
|
1040
|
+
codec: {
|
|
1041
|
+
mode: 'strict',
|
|
1042
|
+
typeSymbol: '@khorsheed/dsh-game#game/checkShot:request',
|
|
1043
|
+
create: _khorsheed_dsh_game_game_checkShot_parameter_0$schema,
|
|
1044
|
+
schema: _khorsheed_dsh_game_game_checkShot_parameter_0$schema(),
|
|
1045
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId"],"additionalProperties":true},
|
|
1046
|
+
},
|
|
1047
|
+
strictCodec: {
|
|
1048
|
+
mode: 'strict',
|
|
1049
|
+
typeSymbol: '@khorsheed/dsh-game#game/checkShot:request',
|
|
1050
|
+
create: _khorsheed_dsh_game_game_checkShot_parameter_0_strict$schema,
|
|
1051
|
+
schema: _khorsheed_dsh_game_game_checkShot_parameter_0_strict$schema(),
|
|
1052
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId"],"additionalProperties":false},
|
|
1053
|
+
},
|
|
1054
|
+
},
|
|
1055
|
+
],
|
|
1056
|
+
result: {
|
|
1057
|
+
mode: 'strict',
|
|
1058
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1059
|
+
create: _khorsheed_dsh_game_game_checkShot_result$schema,
|
|
1060
|
+
schema: _khorsheed_dsh_game_game_checkShot_result$schema(),
|
|
1061
|
+
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
|
+
},
|
|
1063
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":198,"column":3},
|
|
1064
|
+
},
|
|
1065
|
+
'game/commit': {
|
|
1066
|
+
service: 'gameRemote',
|
|
1067
|
+
description: '检查并发版: check the working files and cut a version (by the user) carrying every change.',
|
|
1068
|
+
invocation: { kind: 'direct' },
|
|
1069
|
+
parameters: [
|
|
1070
|
+
{
|
|
1071
|
+
name: 'sessionId',
|
|
1072
|
+
source: 'json',
|
|
1073
|
+
codec: {
|
|
1074
|
+
mode: 'strict',
|
|
1075
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1076
|
+
create: _khorsheed_dsh_game_game_commit_parameter_0$schema,
|
|
1077
|
+
schema: _khorsheed_dsh_game_game_commit_parameter_0$schema(),
|
|
1078
|
+
jsonSchema: {"type":"string"},
|
|
1079
|
+
},
|
|
1080
|
+
strictCodec: {
|
|
1081
|
+
mode: 'strict',
|
|
1082
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1083
|
+
create: _khorsheed_dsh_game_game_commit_parameter_0_strict$schema,
|
|
1084
|
+
schema: _khorsheed_dsh_game_game_commit_parameter_0_strict$schema(),
|
|
1085
|
+
jsonSchema: {"type":"string"},
|
|
1086
|
+
},
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
name: 'request',
|
|
1090
|
+
source: 'json',
|
|
1091
|
+
codec: {
|
|
1092
|
+
mode: 'strict',
|
|
1093
|
+
typeSymbol: '@khorsheed/dsh-game#game/commit:request',
|
|
1094
|
+
create: _khorsheed_dsh_game_game_commit_parameter_1$schema,
|
|
1095
|
+
schema: _khorsheed_dsh_game_game_commit_parameter_1$schema(),
|
|
1096
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1097
|
+
},
|
|
1098
|
+
strictCodec: {
|
|
1099
|
+
mode: 'strict',
|
|
1100
|
+
typeSymbol: '@khorsheed/dsh-game#game/commit:request',
|
|
1101
|
+
create: _khorsheed_dsh_game_game_commit_parameter_1_strict$schema,
|
|
1102
|
+
schema: _khorsheed_dsh_game_game_commit_parameter_1_strict$schema(),
|
|
1103
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1104
|
+
},
|
|
1105
|
+
},
|
|
1106
|
+
],
|
|
1107
|
+
result: {
|
|
1108
|
+
mode: 'strict',
|
|
1109
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1110
|
+
create: _khorsheed_dsh_game_game_commit_result$schema,
|
|
1111
|
+
schema: _khorsheed_dsh_game_game_commit_result$schema(),
|
|
1112
|
+
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
|
+
},
|
|
1114
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":97,"column":9},
|
|
1115
|
+
},
|
|
1116
|
+
'game/confirm': {
|
|
1117
|
+
service: 'gameRemote',
|
|
1118
|
+
description: 'Promote the candidate into the play area.',
|
|
1119
|
+
invocation: { kind: 'direct' },
|
|
1120
|
+
parameters: [
|
|
1121
|
+
{
|
|
1122
|
+
name: 'sessionId',
|
|
1123
|
+
source: 'json',
|
|
1124
|
+
codec: {
|
|
1125
|
+
mode: 'strict',
|
|
1126
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1127
|
+
create: _khorsheed_dsh_game_game_confirm_parameter_0$schema,
|
|
1128
|
+
schema: _khorsheed_dsh_game_game_confirm_parameter_0$schema(),
|
|
1129
|
+
jsonSchema: {"type":"string"},
|
|
1130
|
+
},
|
|
1131
|
+
strictCodec: {
|
|
1132
|
+
mode: 'strict',
|
|
1133
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1134
|
+
create: _khorsheed_dsh_game_game_confirm_parameter_0_strict$schema,
|
|
1135
|
+
schema: _khorsheed_dsh_game_game_confirm_parameter_0_strict$schema(),
|
|
1136
|
+
jsonSchema: {"type":"string"},
|
|
1137
|
+
},
|
|
1138
|
+
},
|
|
1139
|
+
{
|
|
1140
|
+
name: 'request',
|
|
1141
|
+
source: 'json',
|
|
1142
|
+
codec: {
|
|
1143
|
+
mode: 'strict',
|
|
1144
|
+
typeSymbol: '@khorsheed/dsh-game#game/confirm:request',
|
|
1145
|
+
create: _khorsheed_dsh_game_game_confirm_parameter_1$schema,
|
|
1146
|
+
schema: _khorsheed_dsh_game_game_confirm_parameter_1$schema(),
|
|
1147
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1148
|
+
},
|
|
1149
|
+
strictCodec: {
|
|
1150
|
+
mode: 'strict',
|
|
1151
|
+
typeSymbol: '@khorsheed/dsh-game#game/confirm:request',
|
|
1152
|
+
create: _khorsheed_dsh_game_game_confirm_parameter_1_strict$schema,
|
|
1153
|
+
schema: _khorsheed_dsh_game_game_confirm_parameter_1_strict$schema(),
|
|
1154
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1155
|
+
},
|
|
1156
|
+
},
|
|
1157
|
+
],
|
|
1158
|
+
result: {
|
|
1159
|
+
mode: 'strict',
|
|
1160
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1161
|
+
create: _khorsheed_dsh_game_game_confirm_result$schema,
|
|
1162
|
+
schema: _khorsheed_dsh_game_game_confirm_result$schema(),
|
|
1163
|
+
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
|
+
},
|
|
1165
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":85,"column":9},
|
|
1166
|
+
},
|
|
1167
|
+
'game/deleteProject': {
|
|
1168
|
+
service: 'gameRemote',
|
|
1169
|
+
description: 'Delete a project: `trash` moves its folder to the system trash, `forget` only removes it from the plugin.',
|
|
1170
|
+
invocation: { kind: 'direct' },
|
|
1171
|
+
parameters: [
|
|
1172
|
+
{
|
|
1173
|
+
name: 'sessionId',
|
|
1174
|
+
source: 'json',
|
|
1175
|
+
codec: {
|
|
1176
|
+
mode: 'strict',
|
|
1177
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1178
|
+
create: _khorsheed_dsh_game_game_deleteProject_parameter_0$schema,
|
|
1179
|
+
schema: _khorsheed_dsh_game_game_deleteProject_parameter_0$schema(),
|
|
1180
|
+
jsonSchema: {"type":"string"},
|
|
1181
|
+
},
|
|
1182
|
+
strictCodec: {
|
|
1183
|
+
mode: 'strict',
|
|
1184
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1185
|
+
create: _khorsheed_dsh_game_game_deleteProject_parameter_0_strict$schema,
|
|
1186
|
+
schema: _khorsheed_dsh_game_game_deleteProject_parameter_0_strict$schema(),
|
|
1187
|
+
jsonSchema: {"type":"string"},
|
|
1188
|
+
},
|
|
1189
|
+
},
|
|
1190
|
+
{
|
|
1191
|
+
name: 'request',
|
|
1192
|
+
source: 'json',
|
|
1193
|
+
codec: {
|
|
1194
|
+
mode: 'strict',
|
|
1195
|
+
typeSymbol: '@khorsheed/dsh-game#game/deleteProject:request',
|
|
1196
|
+
create: _khorsheed_dsh_game_game_deleteProject_parameter_1$schema,
|
|
1197
|
+
schema: _khorsheed_dsh_game_game_deleteProject_parameter_1$schema(),
|
|
1198
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"mode":{"type":"string","enum":["trash","forget"]}},"required":["projectId","mode"],"additionalProperties":true},
|
|
1199
|
+
},
|
|
1200
|
+
strictCodec: {
|
|
1201
|
+
mode: 'strict',
|
|
1202
|
+
typeSymbol: '@khorsheed/dsh-game#game/deleteProject:request',
|
|
1203
|
+
create: _khorsheed_dsh_game_game_deleteProject_parameter_1_strict$schema,
|
|
1204
|
+
schema: _khorsheed_dsh_game_game_deleteProject_parameter_1_strict$schema(),
|
|
1205
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"mode":{"type":"string","enum":["trash","forget"]}},"required":["projectId","mode"],"additionalProperties":false},
|
|
1206
|
+
},
|
|
1207
|
+
},
|
|
1208
|
+
],
|
|
1209
|
+
result: {
|
|
1210
|
+
mode: 'strict',
|
|
1211
|
+
typeSymbol: '@khorsheed/dsh-game/types#DeleteProjectResult',
|
|
1212
|
+
create: _khorsheed_dsh_game_game_deleteProject_result$schema,
|
|
1213
|
+
schema: _khorsheed_dsh_game_game_deleteProject_result$schema(),
|
|
1214
|
+
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
|
+
},
|
|
1216
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":61,"column":9},
|
|
1217
|
+
},
|
|
1218
|
+
'game/diff': {
|
|
1219
|
+
service: 'gameRemote',
|
|
1220
|
+
description: 'Files that differ between two versions.',
|
|
1221
|
+
invocation: { kind: 'direct' },
|
|
1222
|
+
parameters: [
|
|
1223
|
+
{
|
|
1224
|
+
name: 'request',
|
|
1225
|
+
source: 'json',
|
|
1226
|
+
codec: {
|
|
1227
|
+
mode: 'strict',
|
|
1228
|
+
typeSymbol: '@khorsheed/dsh-game#game/diff:request',
|
|
1229
|
+
create: _khorsheed_dsh_game_game_diff_parameter_0$schema,
|
|
1230
|
+
schema: _khorsheed_dsh_game_game_diff_parameter_0$schema(),
|
|
1231
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"from":{"type":"number"},"to":{"type":"number"}},"required":["projectId","from","to"],"additionalProperties":true},
|
|
1232
|
+
},
|
|
1233
|
+
strictCodec: {
|
|
1234
|
+
mode: 'strict',
|
|
1235
|
+
typeSymbol: '@khorsheed/dsh-game#game/diff:request',
|
|
1236
|
+
create: _khorsheed_dsh_game_game_diff_parameter_0_strict$schema,
|
|
1237
|
+
schema: _khorsheed_dsh_game_game_diff_parameter_0_strict$schema(),
|
|
1238
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"from":{"type":"number"},"to":{"type":"number"}},"required":["projectId","from","to"],"additionalProperties":false},
|
|
1239
|
+
},
|
|
1240
|
+
},
|
|
1241
|
+
],
|
|
1242
|
+
result: {
|
|
1243
|
+
mode: 'strict',
|
|
1244
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1245
|
+
create: _khorsheed_dsh_game_game_diff_result$schema,
|
|
1246
|
+
schema: _khorsheed_dsh_game_game_diff_result$schema(),
|
|
1247
|
+
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
|
+
},
|
|
1249
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":192,"column":3},
|
|
1250
|
+
},
|
|
1251
|
+
'game/dropPending': {
|
|
1252
|
+
service: 'gameRemote',
|
|
1253
|
+
description: 'Drop one pending change (the dock\'s ×).',
|
|
1254
|
+
invocation: { kind: 'direct' },
|
|
1255
|
+
parameters: [
|
|
1256
|
+
{
|
|
1257
|
+
name: 'sessionId',
|
|
1258
|
+
source: 'json',
|
|
1259
|
+
codec: {
|
|
1260
|
+
mode: 'strict',
|
|
1261
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1262
|
+
create: _khorsheed_dsh_game_game_dropPending_parameter_0$schema,
|
|
1263
|
+
schema: _khorsheed_dsh_game_game_dropPending_parameter_0$schema(),
|
|
1264
|
+
jsonSchema: {"type":"string"},
|
|
1265
|
+
},
|
|
1266
|
+
strictCodec: {
|
|
1267
|
+
mode: 'strict',
|
|
1268
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1269
|
+
create: _khorsheed_dsh_game_game_dropPending_parameter_0_strict$schema,
|
|
1270
|
+
schema: _khorsheed_dsh_game_game_dropPending_parameter_0_strict$schema(),
|
|
1271
|
+
jsonSchema: {"type":"string"},
|
|
1272
|
+
},
|
|
1273
|
+
},
|
|
1274
|
+
{
|
|
1275
|
+
name: 'request',
|
|
1276
|
+
source: 'json',
|
|
1277
|
+
codec: {
|
|
1278
|
+
mode: 'strict',
|
|
1279
|
+
typeSymbol: '@khorsheed/dsh-game#game/dropPending:request',
|
|
1280
|
+
create: _khorsheed_dsh_game_game_dropPending_parameter_1$schema,
|
|
1281
|
+
schema: _khorsheed_dsh_game_game_dropPending_parameter_1$schema(),
|
|
1282
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"key":{"type":"string"}},"required":["projectId","key"],"additionalProperties":true},
|
|
1283
|
+
},
|
|
1284
|
+
strictCodec: {
|
|
1285
|
+
mode: 'strict',
|
|
1286
|
+
typeSymbol: '@khorsheed/dsh-game#game/dropPending:request',
|
|
1287
|
+
create: _khorsheed_dsh_game_game_dropPending_parameter_1_strict$schema,
|
|
1288
|
+
schema: _khorsheed_dsh_game_game_dropPending_parameter_1_strict$schema(),
|
|
1289
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"key":{"type":"string"}},"required":["projectId","key"],"additionalProperties":false},
|
|
1290
|
+
},
|
|
1291
|
+
},
|
|
1292
|
+
],
|
|
1293
|
+
result: {
|
|
1294
|
+
mode: 'strict',
|
|
1295
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1296
|
+
create: _khorsheed_dsh_game_game_dropPending_result$schema,
|
|
1297
|
+
schema: _khorsheed_dsh_game_game_dropPending_result$schema(),
|
|
1298
|
+
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
|
+
},
|
|
1300
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":115,"column":9},
|
|
1301
|
+
},
|
|
1302
|
+
'game/editElement': {
|
|
1303
|
+
service: 'gameRemote',
|
|
1304
|
+
description: 'Edit one element\'s look (JSON text) and/or scalar fields (JSON text of an object).',
|
|
1305
|
+
invocation: { kind: 'direct' },
|
|
1306
|
+
parameters: [
|
|
1307
|
+
{
|
|
1308
|
+
name: 'sessionId',
|
|
1309
|
+
source: 'json',
|
|
1310
|
+
codec: {
|
|
1311
|
+
mode: 'strict',
|
|
1312
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1313
|
+
create: _khorsheed_dsh_game_game_editElement_parameter_0$schema,
|
|
1314
|
+
schema: _khorsheed_dsh_game_game_editElement_parameter_0$schema(),
|
|
1315
|
+
jsonSchema: {"type":"string"},
|
|
1316
|
+
},
|
|
1317
|
+
strictCodec: {
|
|
1318
|
+
mode: 'strict',
|
|
1319
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1320
|
+
create: _khorsheed_dsh_game_game_editElement_parameter_0_strict$schema,
|
|
1321
|
+
schema: _khorsheed_dsh_game_game_editElement_parameter_0_strict$schema(),
|
|
1322
|
+
jsonSchema: {"type":"string"},
|
|
1323
|
+
},
|
|
1324
|
+
},
|
|
1325
|
+
{
|
|
1326
|
+
name: 'request',
|
|
1327
|
+
source: 'json',
|
|
1328
|
+
codec: {
|
|
1329
|
+
mode: 'strict',
|
|
1330
|
+
typeSymbol: '@khorsheed/dsh-game#game/editElement:request',
|
|
1331
|
+
create: _khorsheed_dsh_game_game_editElement_parameter_1$schema,
|
|
1332
|
+
schema: _khorsheed_dsh_game_game_editElement_parameter_1$schema(),
|
|
1333
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"elementId":{"type":"string"},"look":{"type":"string"},"fields":{"type":"string"}},"required":["projectId","elementId"],"additionalProperties":true},
|
|
1334
|
+
},
|
|
1335
|
+
strictCodec: {
|
|
1336
|
+
mode: 'strict',
|
|
1337
|
+
typeSymbol: '@khorsheed/dsh-game#game/editElement:request',
|
|
1338
|
+
create: _khorsheed_dsh_game_game_editElement_parameter_1_strict$schema,
|
|
1339
|
+
schema: _khorsheed_dsh_game_game_editElement_parameter_1_strict$schema(),
|
|
1340
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"elementId":{"type":"string"},"look":{"type":"string"},"fields":{"type":"string"}},"required":["projectId","elementId"],"additionalProperties":false},
|
|
1341
|
+
},
|
|
1342
|
+
},
|
|
1343
|
+
],
|
|
1344
|
+
result: {
|
|
1345
|
+
mode: 'strict',
|
|
1346
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1347
|
+
create: _khorsheed_dsh_game_game_editElement_result$schema,
|
|
1348
|
+
schema: _khorsheed_dsh_game_game_editElement_result$schema(),
|
|
1349
|
+
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
|
+
},
|
|
1351
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":139,"column":9},
|
|
1352
|
+
},
|
|
1353
|
+
'game/finalizeParams': {
|
|
1354
|
+
service: 'gameRemote',
|
|
1355
|
+
description: '定稿: write slider values into game.json.',
|
|
1356
|
+
invocation: { kind: 'direct' },
|
|
1357
|
+
parameters: [
|
|
1358
|
+
{
|
|
1359
|
+
name: 'sessionId',
|
|
1360
|
+
source: 'json',
|
|
1361
|
+
codec: {
|
|
1362
|
+
mode: 'strict',
|
|
1363
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1364
|
+
create: _khorsheed_dsh_game_game_finalizeParams_parameter_0$schema,
|
|
1365
|
+
schema: _khorsheed_dsh_game_game_finalizeParams_parameter_0$schema(),
|
|
1366
|
+
jsonSchema: {"type":"string"},
|
|
1367
|
+
},
|
|
1368
|
+
strictCodec: {
|
|
1369
|
+
mode: 'strict',
|
|
1370
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1371
|
+
create: _khorsheed_dsh_game_game_finalizeParams_parameter_0_strict$schema,
|
|
1372
|
+
schema: _khorsheed_dsh_game_game_finalizeParams_parameter_0_strict$schema(),
|
|
1373
|
+
jsonSchema: {"type":"string"},
|
|
1374
|
+
},
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
name: 'request',
|
|
1378
|
+
source: 'json',
|
|
1379
|
+
codec: {
|
|
1380
|
+
mode: 'strict',
|
|
1381
|
+
typeSymbol: '@khorsheed/dsh-game#game/finalizeParams:request',
|
|
1382
|
+
create: _khorsheed_dsh_game_game_finalizeParams_parameter_1$schema,
|
|
1383
|
+
schema: _khorsheed_dsh_game_game_finalizeParams_parameter_1$schema(),
|
|
1384
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1385
|
+
},
|
|
1386
|
+
strictCodec: {
|
|
1387
|
+
mode: 'strict',
|
|
1388
|
+
typeSymbol: '@khorsheed/dsh-game#game/finalizeParams:request',
|
|
1389
|
+
create: _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema,
|
|
1390
|
+
schema: _khorsheed_dsh_game_game_finalizeParams_parameter_1_strict$schema(),
|
|
1391
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1392
|
+
},
|
|
1393
|
+
},
|
|
1394
|
+
],
|
|
1395
|
+
result: {
|
|
1396
|
+
mode: 'strict',
|
|
1397
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1398
|
+
create: _khorsheed_dsh_game_game_finalizeParams_result$schema,
|
|
1399
|
+
schema: _khorsheed_dsh_game_game_finalizeParams_result$schema(),
|
|
1400
|
+
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
|
+
},
|
|
1402
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":127,"column":9},
|
|
1403
|
+
},
|
|
1404
|
+
'game/logPlay': {
|
|
1405
|
+
service: 'gameRemote',
|
|
1406
|
+
description: 'Record one play session into the playtest log.',
|
|
1407
|
+
invocation: { kind: 'direct' },
|
|
1408
|
+
parameters: [
|
|
1409
|
+
{
|
|
1410
|
+
name: 'sessionId',
|
|
1411
|
+
source: 'json',
|
|
1412
|
+
codec: {
|
|
1413
|
+
mode: 'strict',
|
|
1414
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1415
|
+
create: _khorsheed_dsh_game_game_logPlay_parameter_0$schema,
|
|
1416
|
+
schema: _khorsheed_dsh_game_game_logPlay_parameter_0$schema(),
|
|
1417
|
+
jsonSchema: {"type":"string"},
|
|
1418
|
+
},
|
|
1419
|
+
strictCodec: {
|
|
1420
|
+
mode: 'strict',
|
|
1421
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1422
|
+
create: _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema,
|
|
1423
|
+
schema: _khorsheed_dsh_game_game_logPlay_parameter_0_strict$schema(),
|
|
1424
|
+
jsonSchema: {"type":"string"},
|
|
1425
|
+
},
|
|
1426
|
+
},
|
|
1427
|
+
{
|
|
1428
|
+
name: 'request',
|
|
1429
|
+
source: 'json',
|
|
1430
|
+
codec: {
|
|
1431
|
+
mode: 'strict',
|
|
1432
|
+
typeSymbol: '@khorsheed/dsh-game#game/logPlay:request',
|
|
1433
|
+
create: _khorsheed_dsh_game_game_logPlay_parameter_1$schema,
|
|
1434
|
+
schema: _khorsheed_dsh_game_game_logPlay_parameter_1$schema(),
|
|
1435
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"},"seconds":{"type":"number"},"errors":{"type":"array","items":{"type":"string"}}},"required":["projectId","version","seconds","errors"],"additionalProperties":true},
|
|
1436
|
+
},
|
|
1437
|
+
strictCodec: {
|
|
1438
|
+
mode: 'strict',
|
|
1439
|
+
typeSymbol: '@khorsheed/dsh-game#game/logPlay:request',
|
|
1440
|
+
create: _khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema,
|
|
1441
|
+
schema: _khorsheed_dsh_game_game_logPlay_parameter_1_strict$schema(),
|
|
1442
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"},"seconds":{"type":"number"},"errors":{"type":"array","items":{"type":"string"}}},"required":["projectId","version","seconds","errors"],"additionalProperties":false},
|
|
1443
|
+
},
|
|
1444
|
+
},
|
|
1445
|
+
],
|
|
1446
|
+
result: {
|
|
1447
|
+
mode: 'strict',
|
|
1448
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1449
|
+
create: _khorsheed_dsh_game_game_logPlay_result$schema,
|
|
1450
|
+
schema: _khorsheed_dsh_game_game_logPlay_result$schema(),
|
|
1451
|
+
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
|
+
},
|
|
1453
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":109,"column":9},
|
|
1454
|
+
},
|
|
1455
|
+
'game/pickProposal': {
|
|
1456
|
+
service: 'gameRemote',
|
|
1457
|
+
description: 'Pick one appearance variant.',
|
|
1458
|
+
invocation: { kind: 'direct' },
|
|
1459
|
+
parameters: [
|
|
1460
|
+
{
|
|
1461
|
+
name: 'sessionId',
|
|
1462
|
+
source: 'json',
|
|
1463
|
+
codec: {
|
|
1464
|
+
mode: 'strict',
|
|
1465
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1466
|
+
create: _khorsheed_dsh_game_game_pickProposal_parameter_0$schema,
|
|
1467
|
+
schema: _khorsheed_dsh_game_game_pickProposal_parameter_0$schema(),
|
|
1468
|
+
jsonSchema: {"type":"string"},
|
|
1469
|
+
},
|
|
1470
|
+
strictCodec: {
|
|
1471
|
+
mode: 'strict',
|
|
1472
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1473
|
+
create: _khorsheed_dsh_game_game_pickProposal_parameter_0_strict$schema,
|
|
1474
|
+
schema: _khorsheed_dsh_game_game_pickProposal_parameter_0_strict$schema(),
|
|
1475
|
+
jsonSchema: {"type":"string"},
|
|
1476
|
+
},
|
|
1477
|
+
},
|
|
1478
|
+
{
|
|
1479
|
+
name: 'request',
|
|
1480
|
+
source: 'json',
|
|
1481
|
+
codec: {
|
|
1482
|
+
mode: 'strict',
|
|
1483
|
+
typeSymbol: '@khorsheed/dsh-game#game/pickProposal:request',
|
|
1484
|
+
create: _khorsheed_dsh_game_game_pickProposal_parameter_1$schema,
|
|
1485
|
+
schema: _khorsheed_dsh_game_game_pickProposal_parameter_1$schema(),
|
|
1486
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"elementId":{"type":"string"},"at":{"type":"string"},"index":{"type":"number"}},"required":["projectId","elementId","at","index"],"additionalProperties":true},
|
|
1487
|
+
},
|
|
1488
|
+
strictCodec: {
|
|
1489
|
+
mode: 'strict',
|
|
1490
|
+
typeSymbol: '@khorsheed/dsh-game#game/pickProposal:request',
|
|
1491
|
+
create: _khorsheed_dsh_game_game_pickProposal_parameter_1_strict$schema,
|
|
1492
|
+
schema: _khorsheed_dsh_game_game_pickProposal_parameter_1_strict$schema(),
|
|
1493
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"elementId":{"type":"string"},"at":{"type":"string"},"index":{"type":"number"}},"required":["projectId","elementId","at","index"],"additionalProperties":false},
|
|
1494
|
+
},
|
|
1495
|
+
},
|
|
1496
|
+
],
|
|
1497
|
+
result: {
|
|
1498
|
+
mode: 'strict',
|
|
1499
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1500
|
+
create: _khorsheed_dsh_game_game_pickProposal_result$schema,
|
|
1501
|
+
schema: _khorsheed_dsh_game_game_pickProposal_result$schema(),
|
|
1502
|
+
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
|
+
},
|
|
1504
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":156,"column":9},
|
|
1505
|
+
},
|
|
1506
|
+
'game/projectCards': {
|
|
1507
|
+
service: 'gameRemote',
|
|
1508
|
+
description: 'Every project as a switcher card.',
|
|
1509
|
+
invocation: { kind: 'direct' },
|
|
1510
|
+
parameters: [
|
|
1511
|
+
],
|
|
1512
|
+
result: {
|
|
1513
|
+
mode: 'strict',
|
|
1514
|
+
typeSymbol: '@khorsheed/dsh-game#game/projectCards:result',
|
|
1515
|
+
create: _khorsheed_dsh_game_game_projectCards_result$schema,
|
|
1516
|
+
schema: _khorsheed_dsh_game_game_projectCards_result$schema(),
|
|
1517
|
+
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
|
+
},
|
|
1519
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":55,"column":3},
|
|
1520
|
+
},
|
|
1521
|
+
'game/reject': {
|
|
1522
|
+
service: 'gameRemote',
|
|
1523
|
+
description: 'Throw the candidate away.',
|
|
1524
|
+
invocation: { kind: 'direct' },
|
|
1525
|
+
parameters: [
|
|
1526
|
+
{
|
|
1527
|
+
name: 'sessionId',
|
|
1528
|
+
source: 'json',
|
|
1529
|
+
codec: {
|
|
1530
|
+
mode: 'strict',
|
|
1531
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1532
|
+
create: _khorsheed_dsh_game_game_reject_parameter_0$schema,
|
|
1533
|
+
schema: _khorsheed_dsh_game_game_reject_parameter_0$schema(),
|
|
1534
|
+
jsonSchema: {"type":"string"},
|
|
1535
|
+
},
|
|
1536
|
+
strictCodec: {
|
|
1537
|
+
mode: 'strict',
|
|
1538
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1539
|
+
create: _khorsheed_dsh_game_game_reject_parameter_0_strict$schema,
|
|
1540
|
+
schema: _khorsheed_dsh_game_game_reject_parameter_0_strict$schema(),
|
|
1541
|
+
jsonSchema: {"type":"string"},
|
|
1542
|
+
},
|
|
1543
|
+
},
|
|
1544
|
+
{
|
|
1545
|
+
name: 'request',
|
|
1546
|
+
source: 'json',
|
|
1547
|
+
codec: {
|
|
1548
|
+
mode: 'strict',
|
|
1549
|
+
typeSymbol: '@khorsheed/dsh-game#game/reject:request',
|
|
1550
|
+
create: _khorsheed_dsh_game_game_reject_parameter_1$schema,
|
|
1551
|
+
schema: _khorsheed_dsh_game_game_reject_parameter_1$schema(),
|
|
1552
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"reason":{"type":"string"}},"required":["projectId","reason"],"additionalProperties":true},
|
|
1553
|
+
},
|
|
1554
|
+
strictCodec: {
|
|
1555
|
+
mode: 'strict',
|
|
1556
|
+
typeSymbol: '@khorsheed/dsh-game#game/reject:request',
|
|
1557
|
+
create: _khorsheed_dsh_game_game_reject_parameter_1_strict$schema,
|
|
1558
|
+
schema: _khorsheed_dsh_game_game_reject_parameter_1_strict$schema(),
|
|
1559
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"reason":{"type":"string"}},"required":["projectId","reason"],"additionalProperties":false},
|
|
1560
|
+
},
|
|
1561
|
+
},
|
|
1562
|
+
],
|
|
1563
|
+
result: {
|
|
1564
|
+
mode: 'strict',
|
|
1565
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1566
|
+
create: _khorsheed_dsh_game_game_reject_result$schema,
|
|
1567
|
+
schema: _khorsheed_dsh_game_game_reject_result$schema(),
|
|
1568
|
+
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
|
+
},
|
|
1570
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":180,"column":9},
|
|
1571
|
+
},
|
|
1572
|
+
'game/requestRestyle': {
|
|
1573
|
+
service: 'gameRemote',
|
|
1574
|
+
description: 'Mark a pending restyle (the next passing version becomes a candidate).',
|
|
1575
|
+
invocation: { kind: 'direct' },
|
|
1576
|
+
parameters: [
|
|
1577
|
+
{
|
|
1578
|
+
name: 'sessionId',
|
|
1579
|
+
source: 'json',
|
|
1580
|
+
codec: {
|
|
1581
|
+
mode: 'strict',
|
|
1582
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1583
|
+
create: _khorsheed_dsh_game_game_requestRestyle_parameter_0$schema,
|
|
1584
|
+
schema: _khorsheed_dsh_game_game_requestRestyle_parameter_0$schema(),
|
|
1585
|
+
jsonSchema: {"type":"string"},
|
|
1586
|
+
},
|
|
1587
|
+
strictCodec: {
|
|
1588
|
+
mode: 'strict',
|
|
1589
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1590
|
+
create: _khorsheed_dsh_game_game_requestRestyle_parameter_0_strict$schema,
|
|
1591
|
+
schema: _khorsheed_dsh_game_game_requestRestyle_parameter_0_strict$schema(),
|
|
1592
|
+
jsonSchema: {"type":"string"},
|
|
1593
|
+
},
|
|
1594
|
+
},
|
|
1595
|
+
{
|
|
1596
|
+
name: 'request',
|
|
1597
|
+
source: 'json',
|
|
1598
|
+
codec: {
|
|
1599
|
+
mode: 'strict',
|
|
1600
|
+
typeSymbol: '@khorsheed/dsh-game#game/requestRestyle:request',
|
|
1601
|
+
create: _khorsheed_dsh_game_game_requestRestyle_parameter_1$schema,
|
|
1602
|
+
schema: _khorsheed_dsh_game_game_requestRestyle_parameter_1$schema(),
|
|
1603
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"styleId":{"type":"string"}},"required":["projectId","styleId"],"additionalProperties":true},
|
|
1604
|
+
},
|
|
1605
|
+
strictCodec: {
|
|
1606
|
+
mode: 'strict',
|
|
1607
|
+
typeSymbol: '@khorsheed/dsh-game#game/requestRestyle:request',
|
|
1608
|
+
create: _khorsheed_dsh_game_game_requestRestyle_parameter_1_strict$schema,
|
|
1609
|
+
schema: _khorsheed_dsh_game_game_requestRestyle_parameter_1_strict$schema(),
|
|
1610
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"styleId":{"type":"string"}},"required":["projectId","styleId"],"additionalProperties":false},
|
|
1611
|
+
},
|
|
1612
|
+
},
|
|
1613
|
+
],
|
|
1614
|
+
result: {
|
|
1615
|
+
mode: 'strict',
|
|
1616
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1617
|
+
create: _khorsheed_dsh_game_game_requestRestyle_result$schema,
|
|
1618
|
+
schema: _khorsheed_dsh_game_game_requestRestyle_result$schema(),
|
|
1619
|
+
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
|
+
},
|
|
1621
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":174,"column":9},
|
|
1622
|
+
},
|
|
1623
|
+
'game/resetParams': {
|
|
1624
|
+
service: 'gameRemote',
|
|
1625
|
+
description: '还原: drop the slider overrides.',
|
|
1626
|
+
invocation: { kind: 'direct' },
|
|
1627
|
+
parameters: [
|
|
1628
|
+
{
|
|
1629
|
+
name: 'sessionId',
|
|
1630
|
+
source: 'json',
|
|
1631
|
+
codec: {
|
|
1632
|
+
mode: 'strict',
|
|
1633
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1634
|
+
create: _khorsheed_dsh_game_game_resetParams_parameter_0$schema,
|
|
1635
|
+
schema: _khorsheed_dsh_game_game_resetParams_parameter_0$schema(),
|
|
1636
|
+
jsonSchema: {"type":"string"},
|
|
1637
|
+
},
|
|
1638
|
+
strictCodec: {
|
|
1639
|
+
mode: 'strict',
|
|
1640
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1641
|
+
create: _khorsheed_dsh_game_game_resetParams_parameter_0_strict$schema,
|
|
1642
|
+
schema: _khorsheed_dsh_game_game_resetParams_parameter_0_strict$schema(),
|
|
1643
|
+
jsonSchema: {"type":"string"},
|
|
1644
|
+
},
|
|
1645
|
+
},
|
|
1646
|
+
{
|
|
1647
|
+
name: 'request',
|
|
1648
|
+
source: 'json',
|
|
1649
|
+
codec: {
|
|
1650
|
+
mode: 'strict',
|
|
1651
|
+
typeSymbol: '@khorsheed/dsh-game#game/resetParams:request',
|
|
1652
|
+
create: _khorsheed_dsh_game_game_resetParams_parameter_1$schema,
|
|
1653
|
+
schema: _khorsheed_dsh_game_game_resetParams_parameter_1$schema(),
|
|
1654
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1655
|
+
},
|
|
1656
|
+
strictCodec: {
|
|
1657
|
+
mode: 'strict',
|
|
1658
|
+
typeSymbol: '@khorsheed/dsh-game#game/resetParams:request',
|
|
1659
|
+
create: _khorsheed_dsh_game_game_resetParams_parameter_1_strict$schema,
|
|
1660
|
+
schema: _khorsheed_dsh_game_game_resetParams_parameter_1_strict$schema(),
|
|
1661
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1662
|
+
},
|
|
1663
|
+
},
|
|
1664
|
+
],
|
|
1665
|
+
result: {
|
|
1666
|
+
mode: 'strict',
|
|
1667
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1668
|
+
create: _khorsheed_dsh_game_game_resetParams_result$schema,
|
|
1669
|
+
schema: _khorsheed_dsh_game_game_resetParams_result$schema(),
|
|
1670
|
+
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
|
+
},
|
|
1672
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":133,"column":9},
|
|
1673
|
+
},
|
|
1674
|
+
'game/rollback': {
|
|
1675
|
+
service: 'gameRemote',
|
|
1676
|
+
description: 'Put an older version into the play area.',
|
|
1677
|
+
invocation: { kind: 'direct' },
|
|
1678
|
+
parameters: [
|
|
1679
|
+
{
|
|
1680
|
+
name: 'sessionId',
|
|
1681
|
+
source: 'json',
|
|
1682
|
+
codec: {
|
|
1683
|
+
mode: 'strict',
|
|
1684
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1685
|
+
create: _khorsheed_dsh_game_game_rollback_parameter_0$schema,
|
|
1686
|
+
schema: _khorsheed_dsh_game_game_rollback_parameter_0$schema(),
|
|
1687
|
+
jsonSchema: {"type":"string"},
|
|
1688
|
+
},
|
|
1689
|
+
strictCodec: {
|
|
1690
|
+
mode: 'strict',
|
|
1691
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1692
|
+
create: _khorsheed_dsh_game_game_rollback_parameter_0_strict$schema,
|
|
1693
|
+
schema: _khorsheed_dsh_game_game_rollback_parameter_0_strict$schema(),
|
|
1694
|
+
jsonSchema: {"type":"string"},
|
|
1695
|
+
},
|
|
1696
|
+
},
|
|
1697
|
+
{
|
|
1698
|
+
name: 'request',
|
|
1699
|
+
source: 'json',
|
|
1700
|
+
codec: {
|
|
1701
|
+
mode: 'strict',
|
|
1702
|
+
typeSymbol: '@khorsheed/dsh-game#game/rollback:request',
|
|
1703
|
+
create: _khorsheed_dsh_game_game_rollback_parameter_1$schema,
|
|
1704
|
+
schema: _khorsheed_dsh_game_game_rollback_parameter_1$schema(),
|
|
1705
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId","version"],"additionalProperties":true},
|
|
1706
|
+
},
|
|
1707
|
+
strictCodec: {
|
|
1708
|
+
mode: 'strict',
|
|
1709
|
+
typeSymbol: '@khorsheed/dsh-game#game/rollback:request',
|
|
1710
|
+
create: _khorsheed_dsh_game_game_rollback_parameter_1_strict$schema,
|
|
1711
|
+
schema: _khorsheed_dsh_game_game_rollback_parameter_1_strict$schema(),
|
|
1712
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId","version"],"additionalProperties":false},
|
|
1713
|
+
},
|
|
1714
|
+
},
|
|
1715
|
+
],
|
|
1716
|
+
result: {
|
|
1717
|
+
mode: 'strict',
|
|
1718
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1719
|
+
create: _khorsheed_dsh_game_game_rollback_result$schema,
|
|
1720
|
+
schema: _khorsheed_dsh_game_game_rollback_result$schema(),
|
|
1721
|
+
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
|
+
},
|
|
1723
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":186,"column":9},
|
|
1724
|
+
},
|
|
1725
|
+
'game/setAutoConfirm': {
|
|
1726
|
+
service: 'gameRemote',
|
|
1727
|
+
description: 'Switch the project\'s auto-confirm.',
|
|
1728
|
+
invocation: { kind: 'direct' },
|
|
1729
|
+
parameters: [
|
|
1730
|
+
{
|
|
1731
|
+
name: 'sessionId',
|
|
1732
|
+
source: 'json',
|
|
1733
|
+
codec: {
|
|
1734
|
+
mode: 'strict',
|
|
1735
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1736
|
+
create: _khorsheed_dsh_game_game_setAutoConfirm_parameter_0$schema,
|
|
1737
|
+
schema: _khorsheed_dsh_game_game_setAutoConfirm_parameter_0$schema(),
|
|
1738
|
+
jsonSchema: {"type":"string"},
|
|
1739
|
+
},
|
|
1740
|
+
strictCodec: {
|
|
1741
|
+
mode: 'strict',
|
|
1742
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1743
|
+
create: _khorsheed_dsh_game_game_setAutoConfirm_parameter_0_strict$schema,
|
|
1744
|
+
schema: _khorsheed_dsh_game_game_setAutoConfirm_parameter_0_strict$schema(),
|
|
1745
|
+
jsonSchema: {"type":"string"},
|
|
1746
|
+
},
|
|
1747
|
+
},
|
|
1748
|
+
{
|
|
1749
|
+
name: 'request',
|
|
1750
|
+
source: 'json',
|
|
1751
|
+
codec: {
|
|
1752
|
+
mode: 'strict',
|
|
1753
|
+
typeSymbol: '@khorsheed/dsh-game#game/setAutoConfirm:request',
|
|
1754
|
+
create: _khorsheed_dsh_game_game_setAutoConfirm_parameter_1$schema,
|
|
1755
|
+
schema: _khorsheed_dsh_game_game_setAutoConfirm_parameter_1$schema(),
|
|
1756
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"on":{"type":"boolean"}},"required":["projectId","on"],"additionalProperties":true},
|
|
1757
|
+
},
|
|
1758
|
+
strictCodec: {
|
|
1759
|
+
mode: 'strict',
|
|
1760
|
+
typeSymbol: '@khorsheed/dsh-game#game/setAutoConfirm:request',
|
|
1761
|
+
create: _khorsheed_dsh_game_game_setAutoConfirm_parameter_1_strict$schema,
|
|
1762
|
+
schema: _khorsheed_dsh_game_game_setAutoConfirm_parameter_1_strict$schema(),
|
|
1763
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"on":{"type":"boolean"}},"required":["projectId","on"],"additionalProperties":false},
|
|
1764
|
+
},
|
|
1765
|
+
},
|
|
1766
|
+
],
|
|
1767
|
+
result: {
|
|
1768
|
+
mode: 'strict',
|
|
1769
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1770
|
+
create: _khorsheed_dsh_game_game_setAutoConfirm_result$schema,
|
|
1771
|
+
schema: _khorsheed_dsh_game_game_setAutoConfirm_result$schema(),
|
|
1772
|
+
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
|
+
},
|
|
1774
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":103,"column":9},
|
|
1775
|
+
},
|
|
1776
|
+
'game/setOnePager': {
|
|
1777
|
+
service: 'gameRemote',
|
|
1778
|
+
description: 'Edit the one-pager (game.json pitch / element types / pillars).',
|
|
1779
|
+
invocation: { kind: 'direct' },
|
|
1780
|
+
parameters: [
|
|
1781
|
+
{
|
|
1782
|
+
name: 'sessionId',
|
|
1783
|
+
source: 'json',
|
|
1784
|
+
codec: {
|
|
1785
|
+
mode: 'strict',
|
|
1786
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1787
|
+
create: _khorsheed_dsh_game_game_setOnePager_parameter_0$schema,
|
|
1788
|
+
schema: _khorsheed_dsh_game_game_setOnePager_parameter_0$schema(),
|
|
1789
|
+
jsonSchema: {"type":"string"},
|
|
1790
|
+
},
|
|
1791
|
+
strictCodec: {
|
|
1792
|
+
mode: 'strict',
|
|
1793
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1794
|
+
create: _khorsheed_dsh_game_game_setOnePager_parameter_0_strict$schema,
|
|
1795
|
+
schema: _khorsheed_dsh_game_game_setOnePager_parameter_0_strict$schema(),
|
|
1796
|
+
jsonSchema: {"type":"string"},
|
|
1797
|
+
},
|
|
1798
|
+
},
|
|
1799
|
+
{
|
|
1800
|
+
name: 'request',
|
|
1801
|
+
source: 'json',
|
|
1802
|
+
codec: {
|
|
1803
|
+
mode: 'strict',
|
|
1804
|
+
typeSymbol: '@khorsheed/dsh-game#game/setOnePager:request',
|
|
1805
|
+
create: _khorsheed_dsh_game_game_setOnePager_parameter_1$schema,
|
|
1806
|
+
schema: _khorsheed_dsh_game_game_setOnePager_parameter_1$schema(),
|
|
1807
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"pitch":{"type":"string"},"elementTypes":{"type":"string"},"pillars":{"type":"string"}},"required":["projectId"],"additionalProperties":true},
|
|
1808
|
+
},
|
|
1809
|
+
strictCodec: {
|
|
1810
|
+
mode: 'strict',
|
|
1811
|
+
typeSymbol: '@khorsheed/dsh-game#game/setOnePager:request',
|
|
1812
|
+
create: _khorsheed_dsh_game_game_setOnePager_parameter_1_strict$schema,
|
|
1813
|
+
schema: _khorsheed_dsh_game_game_setOnePager_parameter_1_strict$schema(),
|
|
1814
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"pitch":{"type":"string"},"elementTypes":{"type":"string"},"pillars":{"type":"string"}},"required":["projectId"],"additionalProperties":false},
|
|
1815
|
+
},
|
|
1816
|
+
},
|
|
1817
|
+
],
|
|
1818
|
+
result: {
|
|
1819
|
+
mode: 'strict',
|
|
1820
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1821
|
+
create: _khorsheed_dsh_game_game_setOnePager_result$schema,
|
|
1822
|
+
schema: _khorsheed_dsh_game_game_setOnePager_result$schema(),
|
|
1823
|
+
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
|
+
},
|
|
1825
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":168,"column":9},
|
|
1826
|
+
},
|
|
1827
|
+
'game/setParam': {
|
|
1828
|
+
service: 'gameRemote',
|
|
1829
|
+
description: 'Set one slider value (user layer).',
|
|
1830
|
+
invocation: { kind: 'direct' },
|
|
1831
|
+
parameters: [
|
|
1832
|
+
{
|
|
1833
|
+
name: 'sessionId',
|
|
1834
|
+
source: 'json',
|
|
1835
|
+
codec: {
|
|
1836
|
+
mode: 'strict',
|
|
1837
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1838
|
+
create: _khorsheed_dsh_game_game_setParam_parameter_0$schema,
|
|
1839
|
+
schema: _khorsheed_dsh_game_game_setParam_parameter_0$schema(),
|
|
1840
|
+
jsonSchema: {"type":"string"},
|
|
1841
|
+
},
|
|
1842
|
+
strictCodec: {
|
|
1843
|
+
mode: 'strict',
|
|
1844
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1845
|
+
create: _khorsheed_dsh_game_game_setParam_parameter_0_strict$schema,
|
|
1846
|
+
schema: _khorsheed_dsh_game_game_setParam_parameter_0_strict$schema(),
|
|
1847
|
+
jsonSchema: {"type":"string"},
|
|
1848
|
+
},
|
|
1849
|
+
},
|
|
1850
|
+
{
|
|
1851
|
+
name: 'request',
|
|
1852
|
+
source: 'json',
|
|
1853
|
+
codec: {
|
|
1854
|
+
mode: 'strict',
|
|
1855
|
+
typeSymbol: '@khorsheed/dsh-game#game/setParam:request',
|
|
1856
|
+
create: _khorsheed_dsh_game_game_setParam_parameter_1$schema,
|
|
1857
|
+
schema: _khorsheed_dsh_game_game_setParam_parameter_1$schema(),
|
|
1858
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"key":{"type":"string"},"value":{"type":"number"}},"required":["projectId","key","value"],"additionalProperties":true},
|
|
1859
|
+
},
|
|
1860
|
+
strictCodec: {
|
|
1861
|
+
mode: 'strict',
|
|
1862
|
+
typeSymbol: '@khorsheed/dsh-game#game/setParam:request',
|
|
1863
|
+
create: _khorsheed_dsh_game_game_setParam_parameter_1_strict$schema,
|
|
1864
|
+
schema: _khorsheed_dsh_game_game_setParam_parameter_1_strict$schema(),
|
|
1865
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"key":{"type":"string"},"value":{"type":"number"}},"required":["projectId","key","value"],"additionalProperties":false},
|
|
1866
|
+
},
|
|
1867
|
+
},
|
|
1868
|
+
],
|
|
1869
|
+
result: {
|
|
1870
|
+
mode: 'strict',
|
|
1871
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1872
|
+
create: _khorsheed_dsh_game_game_setParam_result$schema,
|
|
1873
|
+
schema: _khorsheed_dsh_game_game_setParam_result$schema(),
|
|
1874
|
+
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
|
+
},
|
|
1876
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":121,"column":9},
|
|
1877
|
+
},
|
|
1878
|
+
'game/state': {
|
|
1879
|
+
service: 'gameRemote',
|
|
1880
|
+
description: 'The session\'s bound project (full view) and the project list.',
|
|
1881
|
+
invocation: { kind: 'direct' },
|
|
1882
|
+
parameters: [
|
|
1883
|
+
{
|
|
1884
|
+
name: 'sessionId',
|
|
1885
|
+
source: 'json',
|
|
1886
|
+
codec: {
|
|
1887
|
+
mode: 'strict',
|
|
1888
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1889
|
+
create: _khorsheed_dsh_game_game_state_parameter_0$schema,
|
|
1890
|
+
schema: _khorsheed_dsh_game_game_state_parameter_0$schema(),
|
|
1891
|
+
jsonSchema: {"type":"string"},
|
|
1892
|
+
},
|
|
1893
|
+
strictCodec: {
|
|
1894
|
+
mode: 'strict',
|
|
1895
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1896
|
+
create: _khorsheed_dsh_game_game_state_parameter_0_strict$schema,
|
|
1897
|
+
schema: _khorsheed_dsh_game_game_state_parameter_0_strict$schema(),
|
|
1898
|
+
jsonSchema: {"type":"string"},
|
|
1899
|
+
},
|
|
1900
|
+
},
|
|
1901
|
+
],
|
|
1902
|
+
result: {
|
|
1903
|
+
mode: 'strict',
|
|
1904
|
+
typeSymbol: '@khorsheed/dsh-game/types#SessionGameState',
|
|
1905
|
+
create: _khorsheed_dsh_game_game_state_result$schema,
|
|
1906
|
+
schema: _khorsheed_dsh_game_game_state_result$schema(),
|
|
1907
|
+
jsonSchemaError: 'typert tool schema: unsupported selected tuple type',
|
|
1908
|
+
},
|
|
1909
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":43,"column":3},
|
|
1910
|
+
},
|
|
1911
|
+
'game/turnReport': {
|
|
1912
|
+
service: 'gameRemote',
|
|
1913
|
+
description: 'What one of the session\'s turns changed (null when nothing, or not recorded).',
|
|
1914
|
+
invocation: { kind: 'direct' },
|
|
1915
|
+
parameters: [
|
|
1916
|
+
{
|
|
1917
|
+
name: 'sessionId',
|
|
1918
|
+
source: 'json',
|
|
1919
|
+
codec: {
|
|
1920
|
+
mode: 'strict',
|
|
1921
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1922
|
+
create: _khorsheed_dsh_game_game_turnReport_parameter_0$schema,
|
|
1923
|
+
schema: _khorsheed_dsh_game_game_turnReport_parameter_0$schema(),
|
|
1924
|
+
jsonSchema: {"type":"string"},
|
|
1925
|
+
},
|
|
1926
|
+
strictCodec: {
|
|
1927
|
+
mode: 'strict',
|
|
1928
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
1929
|
+
create: _khorsheed_dsh_game_game_turnReport_parameter_0_strict$schema,
|
|
1930
|
+
schema: _khorsheed_dsh_game_game_turnReport_parameter_0_strict$schema(),
|
|
1931
|
+
jsonSchema: {"type":"string"},
|
|
1932
|
+
},
|
|
1933
|
+
},
|
|
1934
|
+
{
|
|
1935
|
+
name: 'request',
|
|
1936
|
+
source: 'json',
|
|
1937
|
+
codec: {
|
|
1938
|
+
mode: 'strict',
|
|
1939
|
+
typeSymbol: '@khorsheed/dsh-game#game/turnReport:request',
|
|
1940
|
+
create: _khorsheed_dsh_game_game_turnReport_parameter_1$schema,
|
|
1941
|
+
schema: _khorsheed_dsh_game_game_turnReport_parameter_1$schema(),
|
|
1942
|
+
jsonSchema: {"type":"object","properties":{"turn":{"type":"number"}},"required":["turn"],"additionalProperties":true},
|
|
1943
|
+
},
|
|
1944
|
+
strictCodec: {
|
|
1945
|
+
mode: 'strict',
|
|
1946
|
+
typeSymbol: '@khorsheed/dsh-game#game/turnReport:request',
|
|
1947
|
+
create: _khorsheed_dsh_game_game_turnReport_parameter_1_strict$schema,
|
|
1948
|
+
schema: _khorsheed_dsh_game_game_turnReport_parameter_1_strict$schema(),
|
|
1949
|
+
jsonSchema: {"type":"object","properties":{"turn":{"type":"number"}},"required":["turn"],"additionalProperties":false},
|
|
1950
|
+
},
|
|
1951
|
+
},
|
|
1952
|
+
],
|
|
1953
|
+
result: {
|
|
1954
|
+
mode: 'strict',
|
|
1955
|
+
typeSymbol: '@khorsheed/dsh-game#game/turnReport:result',
|
|
1956
|
+
create: _khorsheed_dsh_game_game_turnReport_result$schema,
|
|
1957
|
+
schema: _khorsheed_dsh_game_game_turnReport_result$schema(),
|
|
1958
|
+
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
|
+
},
|
|
1960
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":49,"column":3},
|
|
1961
|
+
},
|
|
1962
|
+
'game/versionBundle': {
|
|
1963
|
+
service: 'gameRemote',
|
|
1964
|
+
description: 'A specific version\'s files (rollback preview, export).',
|
|
1965
|
+
invocation: { kind: 'direct' },
|
|
1966
|
+
parameters: [
|
|
1967
|
+
{
|
|
1968
|
+
name: 'request',
|
|
1969
|
+
source: 'json',
|
|
1970
|
+
codec: {
|
|
1971
|
+
mode: 'strict',
|
|
1972
|
+
typeSymbol: '@khorsheed/dsh-game#game/versionBundle:request',
|
|
1973
|
+
create: _khorsheed_dsh_game_game_versionBundle_parameter_0$schema,
|
|
1974
|
+
schema: _khorsheed_dsh_game_game_versionBundle_parameter_0$schema(),
|
|
1975
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId","version"],"additionalProperties":true},
|
|
1976
|
+
},
|
|
1977
|
+
strictCodec: {
|
|
1978
|
+
mode: 'strict',
|
|
1979
|
+
typeSymbol: '@khorsheed/dsh-game#game/versionBundle:request',
|
|
1980
|
+
create: _khorsheed_dsh_game_game_versionBundle_parameter_0_strict$schema,
|
|
1981
|
+
schema: _khorsheed_dsh_game_game_versionBundle_parameter_0_strict$schema(),
|
|
1982
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"version":{"type":"number"}},"required":["projectId","version"],"additionalProperties":false},
|
|
1983
|
+
},
|
|
1984
|
+
},
|
|
1985
|
+
],
|
|
1986
|
+
result: {
|
|
1987
|
+
mode: 'strict',
|
|
1988
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
1989
|
+
create: _khorsheed_dsh_game_game_versionBundle_result$schema,
|
|
1990
|
+
schema: _khorsheed_dsh_game_game_versionBundle_result$schema(),
|
|
1991
|
+
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
1992
|
+
},
|
|
1993
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":204,"column":3},
|
|
1994
|
+
},
|
|
1995
|
+
'game/workingFile': {
|
|
1996
|
+
service: 'gameRemote',
|
|
1997
|
+
description: 'One working build file, for a panel preview ahead of any version.',
|
|
1998
|
+
invocation: { kind: 'direct' },
|
|
1999
|
+
parameters: [
|
|
2000
|
+
{
|
|
2001
|
+
name: 'request',
|
|
2002
|
+
source: 'json',
|
|
2003
|
+
codec: {
|
|
2004
|
+
mode: 'strict',
|
|
2005
|
+
typeSymbol: '@khorsheed/dsh-game#game/workingFile:request',
|
|
2006
|
+
create: _khorsheed_dsh_game_game_workingFile_parameter_0$schema,
|
|
2007
|
+
schema: _khorsheed_dsh_game_game_workingFile_parameter_0$schema(),
|
|
2008
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"path":{"type":"string"}},"required":["projectId","path"],"additionalProperties":true},
|
|
2009
|
+
},
|
|
2010
|
+
strictCodec: {
|
|
2011
|
+
mode: 'strict',
|
|
2012
|
+
typeSymbol: '@khorsheed/dsh-game#game/workingFile:request',
|
|
2013
|
+
create: _khorsheed_dsh_game_game_workingFile_parameter_0_strict$schema,
|
|
2014
|
+
schema: _khorsheed_dsh_game_game_workingFile_parameter_0_strict$schema(),
|
|
2015
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"path":{"type":"string"}},"required":["projectId","path"],"additionalProperties":false},
|
|
2016
|
+
},
|
|
2017
|
+
},
|
|
2018
|
+
],
|
|
2019
|
+
result: {
|
|
2020
|
+
mode: 'strict',
|
|
2021
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
2022
|
+
create: _khorsheed_dsh_game_game_workingFile_result$schema,
|
|
2023
|
+
schema: _khorsheed_dsh_game_game_workingFile_result$schema(),
|
|
2024
|
+
jsonSchemaError: 'typert tool schema: selected union branches overlap or have no required discriminator',
|
|
2025
|
+
},
|
|
2026
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":73,"column":3},
|
|
2027
|
+
},
|
|
2028
|
+
'game/writeChapter': {
|
|
2029
|
+
service: 'gameRemote',
|
|
2030
|
+
description: 'Write a design chapter.',
|
|
2031
|
+
invocation: { kind: 'direct' },
|
|
2032
|
+
parameters: [
|
|
2033
|
+
{
|
|
2034
|
+
name: 'sessionId',
|
|
2035
|
+
source: 'json',
|
|
2036
|
+
codec: {
|
|
2037
|
+
mode: 'strict',
|
|
2038
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
2039
|
+
create: _khorsheed_dsh_game_game_writeChapter_parameter_0$schema,
|
|
2040
|
+
schema: _khorsheed_dsh_game_game_writeChapter_parameter_0$schema(),
|
|
2041
|
+
jsonSchema: {"type":"string"},
|
|
2042
|
+
},
|
|
2043
|
+
strictCodec: {
|
|
2044
|
+
mode: 'strict',
|
|
2045
|
+
typeSymbol: '@deepseek-ai/dsh-session/types#SessionId',
|
|
2046
|
+
create: _khorsheed_dsh_game_game_writeChapter_parameter_0_strict$schema,
|
|
2047
|
+
schema: _khorsheed_dsh_game_game_writeChapter_parameter_0_strict$schema(),
|
|
2048
|
+
jsonSchema: {"type":"string"},
|
|
2049
|
+
},
|
|
2050
|
+
},
|
|
2051
|
+
{
|
|
2052
|
+
name: 'request',
|
|
2053
|
+
source: 'json',
|
|
2054
|
+
codec: {
|
|
2055
|
+
mode: 'strict',
|
|
2056
|
+
typeSymbol: '@khorsheed/dsh-game#game/writeChapter:request',
|
|
2057
|
+
create: _khorsheed_dsh_game_game_writeChapter_parameter_1$schema,
|
|
2058
|
+
schema: _khorsheed_dsh_game_game_writeChapter_parameter_1$schema(),
|
|
2059
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"chapterId":{"type":"string"},"text":{"type":"string"}},"required":["projectId","chapterId","text"],"additionalProperties":true},
|
|
2060
|
+
},
|
|
2061
|
+
strictCodec: {
|
|
2062
|
+
mode: 'strict',
|
|
2063
|
+
typeSymbol: '@khorsheed/dsh-game#game/writeChapter:request',
|
|
2064
|
+
create: _khorsheed_dsh_game_game_writeChapter_parameter_1_strict$schema,
|
|
2065
|
+
schema: _khorsheed_dsh_game_game_writeChapter_parameter_1_strict$schema(),
|
|
2066
|
+
jsonSchema: {"type":"object","properties":{"projectId":{"type":"string"},"chapterId":{"type":"string"},"text":{"type":"string"}},"required":["projectId","chapterId","text"],"additionalProperties":false},
|
|
2067
|
+
},
|
|
2068
|
+
},
|
|
2069
|
+
],
|
|
2070
|
+
result: {
|
|
2071
|
+
mode: 'strict',
|
|
2072
|
+
typeSymbol: '@khorsheed/dsh-game/types#GameResult',
|
|
2073
|
+
create: _khorsheed_dsh_game_game_writeChapter_result$schema,
|
|
2074
|
+
schema: _khorsheed_dsh_game_game_writeChapter_result$schema(),
|
|
2075
|
+
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
|
+
},
|
|
2077
|
+
sourceLocation: {"file":"packages/game/src/remote.ts","line":162,"column":9},
|
|
2078
|
+
},
|
|
2079
|
+
},
|
|
2080
|
+
}, z)
|
|
2081
|
+
|
|
2082
|
+
export const TYPERT = {
|
|
2083
|
+
package: '@khorsheed/dsh-game',
|
|
2084
|
+
face: 'host',
|
|
2085
|
+
schemas: [
|
|
2086
|
+
],
|
|
2087
|
+
get invocations() { return $remote.descriptors },
|
|
2088
|
+
model: {
|
|
2089
|
+
"services": [
|
|
2090
|
+
{
|
|
2091
|
+
"description": "The `game` wire namespace.",
|
|
2092
|
+
"summary": "The `game` wire namespace.",
|
|
2093
|
+
"tags": [],
|
|
2094
|
+
"jsDoc": "/** The `game` wire namespace. */",
|
|
2095
|
+
"key": "gameRemote",
|
|
2096
|
+
"exportName": "GameRemoteService",
|
|
2097
|
+
"members": [
|
|
2098
|
+
{
|
|
2099
|
+
"kind": "method",
|
|
2100
|
+
"name": "state",
|
|
2101
|
+
"signature": "@Remote('state') state(sessionId: SessionId): Promise<SessionGameState>",
|
|
2102
|
+
"summary": "The session's bound project (full view) and the project list.",
|
|
2103
|
+
"jsDoc": "/** The session's bound project (full view) and the project list. */"
|
|
2104
|
+
},
|
|
2105
|
+
{
|
|
2106
|
+
"kind": "method",
|
|
2107
|
+
"name": "turnReport",
|
|
2108
|
+
"signature": "@Remote('turnReport') turnReport(sessionId: SessionId, request: { turn: number }): Promise<TurnReport | null>",
|
|
2109
|
+
"summary": "What one of the session's turns changed (null when nothing, or not recorded).",
|
|
2110
|
+
"jsDoc": "/** What one of the session's turns changed (null when nothing, or not recorded). */"
|
|
2111
|
+
},
|
|
2112
|
+
{
|
|
2113
|
+
"kind": "method",
|
|
2114
|
+
"name": "projectCards",
|
|
2115
|
+
"signature": "@Remote('projectCards') projectCards(): Promise<ProjectCard[]>",
|
|
2116
|
+
"summary": "Every project as a switcher card.",
|
|
2117
|
+
"jsDoc": "/** Every project as a switcher card. */"
|
|
2118
|
+
},
|
|
2119
|
+
{
|
|
2120
|
+
"kind": "method",
|
|
2121
|
+
"name": "deleteProject",
|
|
2122
|
+
"signature": "@Remote('deleteProject') async deleteProject(sessionId: SessionId, request: { projectId: string; mode: 'trash' | 'forget' }): Promise<DeleteProjectResult>",
|
|
2123
|
+
"summary": "Delete a project: `trash` moves its folder to the system trash, `forget` only removes it from the plugin.",
|
|
2124
|
+
"jsDoc": "/** Delete a project: `trash` moves its folder to the system trash, `forget` only removes it from the plugin. */"
|
|
2125
|
+
},
|
|
2126
|
+
{
|
|
2127
|
+
"kind": "method",
|
|
2128
|
+
"name": "bind",
|
|
2129
|
+
"signature": "@Remote('bind') bind(sessionId: SessionId, request: { projectId: string | null }): Promise<GameResult>",
|
|
2130
|
+
"summary": "Bind the session to a project, or unbind with `projectId: null`.",
|
|
2131
|
+
"jsDoc": "/** Bind the session to a project, or unbind with `projectId: null`. */"
|
|
2132
|
+
},
|
|
2133
|
+
{
|
|
2134
|
+
"kind": "method",
|
|
2135
|
+
"name": "workingFile",
|
|
2136
|
+
"signature": "@Remote('workingFile') workingFile(request: { projectId: string; path: string }): Promise<GameResult<{ readonly ok: true; readonly file: BundleFile }>>",
|
|
2137
|
+
"summary": "One working build file, for a panel preview ahead of any version.",
|
|
2138
|
+
"jsDoc": "/** One working build file, for a panel preview ahead of any version. */"
|
|
2139
|
+
},
|
|
2140
|
+
{
|
|
2141
|
+
"kind": "method",
|
|
2142
|
+
"name": "bundle",
|
|
2143
|
+
"signature": "@Remote('bundle') bundle(request: { projectId: string; which?: 'current' | 'candidate' }): Promise<GameResult<{ readonly ok: true; readonly bundle: PlayBundle }>>",
|
|
2144
|
+
"summary": "A version's files for the play area.",
|
|
2145
|
+
"jsDoc": "/** A version's files for the play area. */"
|
|
2146
|
+
},
|
|
2147
|
+
{
|
|
2148
|
+
"kind": "method",
|
|
2149
|
+
"name": "confirm",
|
|
2150
|
+
"signature": "@Remote('confirm') async confirm(sessionId: SessionId, request: { projectId: string }): Promise<GameResult<{ readonly ok: true; readonly version: number }>>",
|
|
2151
|
+
"summary": "Promote the candidate into the play area.",
|
|
2152
|
+
"jsDoc": "/** Promote the candidate into the play area. */"
|
|
2153
|
+
},
|
|
2154
|
+
{
|
|
2155
|
+
"kind": "method",
|
|
2156
|
+
"name": "changes",
|
|
2157
|
+
"signature": "@Remote('changes') changes(request: { projectId: string }): Promise<GameResult<WorkingChanges & { readonly ok: true }>>",
|
|
2158
|
+
"summary": "What the working files hold that the play area does not (the commit bar polls it).",
|
|
2159
|
+
"jsDoc": "/** What the working files hold that the play area does not (the commit bar polls it). */"
|
|
2160
|
+
},
|
|
2161
|
+
{
|
|
2162
|
+
"kind": "method",
|
|
2163
|
+
"name": "commit",
|
|
2164
|
+
"signature": "@Remote('commit') async commit(sessionId: SessionId, request: { projectId: string }): Promise<GameResult<CommitResult>>",
|
|
2165
|
+
"summary": "检查并发版: check the working files and cut a version (by the user) carrying every change.",
|
|
2166
|
+
"jsDoc": "/** 检查并发版: check the working files and cut a version (by the user) carrying every change. */"
|
|
2167
|
+
},
|
|
2168
|
+
{
|
|
2169
|
+
"kind": "method",
|
|
2170
|
+
"name": "setAutoConfirm",
|
|
2171
|
+
"signature": "@Remote('setAutoConfirm') async setAutoConfirm(sessionId: SessionId, request: { projectId: string; on: boolean }): Promise<GameResult>",
|
|
2172
|
+
"summary": "Switch the project's auto-confirm.",
|
|
2173
|
+
"jsDoc": "/** Switch the project's auto-confirm. */"
|
|
2174
|
+
},
|
|
2175
|
+
{
|
|
2176
|
+
"kind": "method",
|
|
2177
|
+
"name": "logPlay",
|
|
2178
|
+
"signature": "@Remote('logPlay') async logPlay(sessionId: SessionId, request: { projectId: string; version: number; seconds: number; errors: string[] }): Promise<GameResult>",
|
|
2179
|
+
"summary": "Record one play session into the playtest log.",
|
|
2180
|
+
"jsDoc": "/** Record one play session into the playtest log. */"
|
|
2181
|
+
},
|
|
2182
|
+
{
|
|
2183
|
+
"kind": "method",
|
|
2184
|
+
"name": "dropPending",
|
|
2185
|
+
"signature": "@Remote('dropPending') async dropPending(sessionId: SessionId, request: { projectId: string; key: string }): Promise<GameResult>",
|
|
2186
|
+
"summary": "Drop one pending change (the dock's ×).",
|
|
2187
|
+
"jsDoc": "/** Drop one pending change (the dock's ×). */"
|
|
2188
|
+
},
|
|
2189
|
+
{
|
|
2190
|
+
"kind": "method",
|
|
2191
|
+
"name": "setParam",
|
|
2192
|
+
"signature": "@Remote('setParam') async setParam(sessionId: SessionId, request: { projectId: string; key: string; value: number }): Promise<GameResult>",
|
|
2193
|
+
"summary": "Set one slider value (user layer).",
|
|
2194
|
+
"jsDoc": "/** Set one slider value (user layer). */"
|
|
2195
|
+
},
|
|
2196
|
+
{
|
|
2197
|
+
"kind": "method",
|
|
2198
|
+
"name": "finalizeParams",
|
|
2199
|
+
"signature": "@Remote('finalizeParams') async finalizeParams(sessionId: SessionId, request: { projectId: string }): Promise<GameResult>",
|
|
2200
|
+
"summary": "定稿: write slider values into game.json.",
|
|
2201
|
+
"jsDoc": "/** 定稿: write slider values into game.json. */"
|
|
2202
|
+
},
|
|
2203
|
+
{
|
|
2204
|
+
"kind": "method",
|
|
2205
|
+
"name": "resetParams",
|
|
2206
|
+
"signature": "@Remote('resetParams') async resetParams(sessionId: SessionId, request: { projectId: string }): Promise<GameResult>",
|
|
2207
|
+
"summary": "还原: drop the slider overrides.",
|
|
2208
|
+
"jsDoc": "/** 还原: drop the slider overrides. */"
|
|
2209
|
+
},
|
|
2210
|
+
{
|
|
2211
|
+
"kind": "method",
|
|
2212
|
+
"name": "editElement",
|
|
2213
|
+
"signature": "@Remote('editElement') async editElement(sessionId: SessionId, request: { projectId: string; elementId: string; look?: string; fields?: string }): Promise<GameResult<{ readonly ok: true; readonly elementJson: string }>>",
|
|
2214
|
+
"summary": "Edit one element's look (JSON text) and/or scalar fields (JSON text of an object).",
|
|
2215
|
+
"jsDoc": "/** Edit one element's look (JSON text) and/or scalar fields (JSON text of an object). */"
|
|
2216
|
+
},
|
|
2217
|
+
{
|
|
2218
|
+
"kind": "method",
|
|
2219
|
+
"name": "pickProposal",
|
|
2220
|
+
"signature": "@Remote('pickProposal') async pickProposal(sessionId: SessionId, request: { projectId: string; elementId: string; at: string; index: number }): Promise<GameResult>",
|
|
2221
|
+
"summary": "Pick one appearance variant.",
|
|
2222
|
+
"jsDoc": "/** Pick one appearance variant. */"
|
|
2223
|
+
},
|
|
2224
|
+
{
|
|
2225
|
+
"kind": "method",
|
|
2226
|
+
"name": "writeChapter",
|
|
2227
|
+
"signature": "@Remote('writeChapter') async writeChapter(sessionId: SessionId, request: { projectId: string; chapterId: string; text: string }): Promise<GameResult>",
|
|
2228
|
+
"summary": "Write a design chapter.",
|
|
2229
|
+
"jsDoc": "/** Write a design chapter. */"
|
|
2230
|
+
},
|
|
2231
|
+
{
|
|
2232
|
+
"kind": "method",
|
|
2233
|
+
"name": "setOnePager",
|
|
2234
|
+
"signature": "@Remote('setOnePager') async setOnePager(sessionId: SessionId, request: { projectId: string; pitch?: string; elementTypes?: string; pillars?: string }): Promise<GameResult>",
|
|
2235
|
+
"summary": "Edit the one-pager (game.json pitch / element types / pillars).",
|
|
2236
|
+
"jsDoc": "/** Edit the one-pager (game.json pitch / element types / pillars). */"
|
|
2237
|
+
},
|
|
2238
|
+
{
|
|
2239
|
+
"kind": "method",
|
|
2240
|
+
"name": "requestRestyle",
|
|
2241
|
+
"signature": "@Remote('requestRestyle') async requestRestyle(sessionId: SessionId, request: { projectId: string; styleId: string }): Promise<GameResult>",
|
|
2242
|
+
"summary": "Mark a pending restyle (the next passing version becomes a candidate).",
|
|
2243
|
+
"jsDoc": "/** Mark a pending restyle (the next passing version becomes a candidate). */"
|
|
2244
|
+
},
|
|
2245
|
+
{
|
|
2246
|
+
"kind": "method",
|
|
2247
|
+
"name": "reject",
|
|
2248
|
+
"signature": "@Remote('reject') async reject(sessionId: SessionId, request: { projectId: string; reason: string }): Promise<GameResult>",
|
|
2249
|
+
"summary": "Throw the candidate away.",
|
|
2250
|
+
"jsDoc": "/** Throw the candidate away. */"
|
|
2251
|
+
},
|
|
2252
|
+
{
|
|
2253
|
+
"kind": "method",
|
|
2254
|
+
"name": "rollback",
|
|
2255
|
+
"signature": "@Remote('rollback') async rollback(sessionId: SessionId, request: { projectId: string; version: number }): Promise<GameResult>",
|
|
2256
|
+
"summary": "Put an older version into the play area.",
|
|
2257
|
+
"jsDoc": "/** Put an older version into the play area. */"
|
|
2258
|
+
},
|
|
2259
|
+
{
|
|
2260
|
+
"kind": "method",
|
|
2261
|
+
"name": "diff",
|
|
2262
|
+
"signature": "@Remote('diff') diff(request: { projectId: string; from: number; to: number }): Promise<GameResult<{ readonly ok: true; readonly diff: VersionDiff }>>",
|
|
2263
|
+
"summary": "Files that differ between two versions.",
|
|
2264
|
+
"jsDoc": "/** Files that differ between two versions. */"
|
|
2265
|
+
},
|
|
2266
|
+
{
|
|
2267
|
+
"kind": "method",
|
|
2268
|
+
"name": "checkShot",
|
|
2269
|
+
"signature": "@Remote('checkShot') checkShot(request: { projectId: string; version?: number }): Promise<GameResult<{ readonly ok: true; readonly webp: string }>>",
|
|
2270
|
+
"summary": "The last check's screenshot.",
|
|
2271
|
+
"jsDoc": "/** The last check's screenshot. */"
|
|
2272
|
+
},
|
|
2273
|
+
{
|
|
2274
|
+
"kind": "method",
|
|
2275
|
+
"name": "versionBundle",
|
|
2276
|
+
"signature": "@Remote('versionBundle') versionBundle(request: { projectId: string; version: number }): Promise<GameResult<{ readonly ok: true; readonly bundle: PlayBundle }>>",
|
|
2277
|
+
"summary": "A specific version's files (rollback preview, export).",
|
|
2278
|
+
"jsDoc": "/** A specific version's files (rollback preview, export). */"
|
|
2279
|
+
}
|
|
2280
|
+
],
|
|
2281
|
+
"types": [
|
|
2282
|
+
{
|
|
2283
|
+
"name": "AnyLook",
|
|
2284
|
+
"declaration": "export type AnyLook = ElementLook | Look3D;"
|
|
2285
|
+
},
|
|
2286
|
+
{
|
|
2287
|
+
"name": "BodyBase",
|
|
2288
|
+
"declaration": "export type BodyBase = typeof BODY_BASES[number];"
|
|
2289
|
+
},
|
|
2290
|
+
{
|
|
2291
|
+
"name": "BoneTweak",
|
|
2292
|
+
"declaration": "export interface BoneTweak {\n readonly scale?: number | readonly [number, number, number];\n readonly rotate?: readonly [number, number, number];\n}"
|
|
2293
|
+
},
|
|
2294
|
+
{
|
|
2295
|
+
"name": "Branded",
|
|
2296
|
+
"declaration": "export type Branded<B extends string> = string & { readonly [BRAND]: B; };"
|
|
2297
|
+
},
|
|
2298
|
+
{
|
|
2299
|
+
"name": "BundleFile",
|
|
2300
|
+
"declaration": "export type BundleFile = { readonly type: string; readonly text: string; } | { readonly type: string; readonly b64: string; };"
|
|
2301
|
+
},
|
|
2302
|
+
{
|
|
2303
|
+
"name": "ChapterStatus",
|
|
2304
|
+
"declaration": "export type ChapterStatus = 'todo' | 'draft' | 'done';"
|
|
2305
|
+
},
|
|
2306
|
+
{
|
|
2307
|
+
"name": "ChapterView",
|
|
2308
|
+
"declaration": "export interface ChapterView {\n readonly id: string;\n readonly title: string;\n readonly file: string;\n readonly status: ChapterStatus;\n readonly text: string;\n readonly generated: boolean;\n readonly mtime: number;\n}"
|
|
2309
|
+
},
|
|
2310
|
+
{
|
|
2311
|
+
"name": "CheckFailure",
|
|
2312
|
+
"declaration": "export interface CheckFailure {\n readonly where: string;\n readonly message: string;\n}"
|
|
2313
|
+
},
|
|
2314
|
+
{
|
|
2315
|
+
"name": "CheckRecord",
|
|
2316
|
+
"declaration": "export interface CheckRecord {\n readonly fingerprint: string;\n readonly at: string;\n readonly ok: boolean;\n readonly failures: readonly CheckFailure[];\n readonly passed: number;\n readonly skipped?: string;\n readonly attempt: number;\n readonly gaveUp?: boolean;\n}"
|
|
2317
|
+
},
|
|
2318
|
+
{
|
|
2319
|
+
"name": "CommitResult",
|
|
2320
|
+
"declaration": "export type CommitResult = { readonly ok: true; readonly kind: 'deployed' | 'candidate'; readonly version: number; } | { readonly ok: true; readonly kind: 'failed'; readonly failures: readonly { readonly where: string; readonly message: string; }[]; } | { readonly ok: true; readonly kind: 'unchanged' | 'no-entry'; };"
|
|
2321
|
+
},
|
|
2322
|
+
{
|
|
2323
|
+
"name": "DeleteProjectResult",
|
|
2324
|
+
"declaration": "export type DeleteProjectResult = { readonly ok: true; readonly trashedTo?: string; } | { readonly ok: false; readonly error: GameError; readonly reason?: string; };"
|
|
2325
|
+
},
|
|
2326
|
+
{
|
|
2327
|
+
"name": "ElementLook",
|
|
2328
|
+
"declaration": "export interface ElementLook {\n readonly palette: readonly string[];\n readonly states: Readonly<Record<string, readonly string[]>>;\n}"
|
|
2329
|
+
},
|
|
2330
|
+
{
|
|
2331
|
+
"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}"
|
|
2333
|
+
},
|
|
2334
|
+
{
|
|
2335
|
+
"name": "GameError",
|
|
2336
|
+
"declaration": "export type GameError = 'not-found' | 'unbound' | 'denied' | 'invalid' | 'no-version' | 'io' | 'not-a-project' | 'is-workspace' | 'trash-failed';"
|
|
2337
|
+
},
|
|
2338
|
+
{
|
|
2339
|
+
"name": "GameFailure",
|
|
2340
|
+
"declaration": "export interface GameFailure {\n readonly ok: false;\n readonly error: GameError;\n}"
|
|
2341
|
+
},
|
|
2342
|
+
{
|
|
2343
|
+
"name": "GameManifest",
|
|
2344
|
+
"declaration": "export interface GameManifest {\n readonly schema: 1;\n readonly id: string;\n readonly title: string;\n readonly pitch: string;\n readonly elementTypes: readonly string[];\n readonly artStyle: string;\n readonly pillars: readonly string[];\n readonly autoConfirm: boolean;\n readonly params: readonly GameParam[];\n readonly palette: readonly string[];\n readonly createdAt: string;\n readonly runtime?: KitRef;\n readonly style3d?: Style3D;\n}"
|
|
2345
|
+
},
|
|
2346
|
+
{
|
|
2347
|
+
"name": "GameParam",
|
|
2348
|
+
"declaration": "export interface GameParam {\n readonly key: string;\n readonly label: string;\n readonly min: number;\n readonly max: number;\n readonly step: number;\n readonly value: number;\n readonly unit?: string;\n}"
|
|
2349
|
+
},
|
|
2350
|
+
{
|
|
2351
|
+
"name": "GameResult",
|
|
2352
|
+
"declaration": "export type GameResult<T extends { readonly ok: true; } = { readonly ok: true; }> = T | GameFailure;"
|
|
2353
|
+
},
|
|
2354
|
+
{
|
|
2355
|
+
"name": "GltfLook",
|
|
2356
|
+
"declaration": "export interface GltfLook {\n readonly kind: 'gltf';\n readonly src: string;\n readonly scale?: number;\n readonly material?: 'toon' | 'original';\n readonly outline?: boolean;\n readonly animation?: string;\n readonly preview?: PreviewAngle;\n readonly tint?: Readonly<Record<string, string>>;\n readonly bones?: Readonly<Record<string, BoneTweak>>;\n readonly morphs?: Readonly<Record<string, number>>;\n readonly recipe?: Parts3DLook;\n}"
|
|
2357
|
+
},
|
|
2358
|
+
{
|
|
2359
|
+
"name": "KitId",
|
|
2360
|
+
"declaration": "export type KitId = '2d-canvas' | '3d-three';"
|
|
2361
|
+
},
|
|
2362
|
+
{
|
|
2363
|
+
"name": "KitRef",
|
|
2364
|
+
"declaration": "export interface KitRef {\n readonly kit: KitId;\n readonly version: number;\n}"
|
|
2365
|
+
},
|
|
2366
|
+
{
|
|
2367
|
+
"name": "LogEntry",
|
|
2368
|
+
"declaration": "export interface LogEntry {\n readonly at: string;\n readonly text: string;\n}"
|
|
2369
|
+
},
|
|
2370
|
+
{
|
|
2371
|
+
"name": "Look3D",
|
|
2372
|
+
"declaration": "export type Look3D = Parts3DLook | GltfLook;"
|
|
2373
|
+
},
|
|
2374
|
+
{
|
|
2375
|
+
"name": "LookProposal",
|
|
2376
|
+
"declaration": "export interface LookProposal {\n readonly elementId: string;\n readonly at: string;\n readonly request: string;\n readonly variants: readonly { readonly label: string; readonly note: string; readonly look: AnyLook; }[];\n readonly picked?: number;\n}"
|
|
2377
|
+
},
|
|
2378
|
+
{
|
|
2379
|
+
"name": "MotionSpec",
|
|
2380
|
+
"declaration": "export interface MotionSpec {\n readonly amplitude?: number;\n readonly period?: number;\n}"
|
|
2381
|
+
},
|
|
2382
|
+
{
|
|
2383
|
+
"name": "Parts3DLook",
|
|
2384
|
+
"declaration": "export interface Parts3DLook {\n readonly kind: 'parts3d';\n readonly base: BodyBase | (string & {});\n readonly proportions: Readonly<Record<string, number>>;\n readonly parts: readonly PartSpec[];\n readonly palette: Readonly<Record<string, string>>;\n readonly motion: Readonly<Record<string, MotionSpec>>;\n readonly scale?: number;\n readonly preview?: PreviewAngle;\n readonly refine?: Readonly<Record<string, number>>;\n}"
|
|
2385
|
+
},
|
|
2386
|
+
{
|
|
2387
|
+
"name": "PartSpec",
|
|
2388
|
+
"declaration": "export interface PartSpec {\n readonly type: PartType | (string & {});\n readonly count?: number;\n readonly size?: number;\n readonly length?: number;\n readonly fan?: number;\n readonly thickness?: number;\n readonly color?: string;\n readonly style?: string;\n readonly extra?: Readonly<Record<string, number | string>>;\n}"
|
|
2389
|
+
},
|
|
2390
|
+
{
|
|
2391
|
+
"name": "PartType",
|
|
2392
|
+
"declaration": "export type PartType = typeof PART_TYPES[number];"
|
|
2393
|
+
},
|
|
2394
|
+
{
|
|
2395
|
+
"name": "PendingChange",
|
|
2396
|
+
"declaration": "export interface PendingChange {\n readonly key: string;\n readonly text: string;\n}"
|
|
2397
|
+
},
|
|
2398
|
+
{
|
|
2399
|
+
"name": "PlayBundle",
|
|
2400
|
+
"declaration": "export interface PlayBundle {\n readonly projectId: string;\n readonly version: number;\n readonly files: Readonly<Record<string, BundleFile>>;\n}"
|
|
2401
|
+
},
|
|
2402
|
+
{
|
|
2403
|
+
"name": "PreviewAngle",
|
|
2404
|
+
"declaration": "export interface PreviewAngle {\n readonly yaw?: number;\n readonly pitch?: number;\n}"
|
|
2405
|
+
},
|
|
2406
|
+
{
|
|
2407
|
+
"name": "ProjectCard",
|
|
2408
|
+
"declaration": "export interface ProjectCard {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly updatedAt: string;\n readonly pitch: string;\n readonly artStyle: string;\n readonly version: number | null;\n readonly elements: number;\n readonly thumb?: string;\n}"
|
|
2409
|
+
},
|
|
2410
|
+
{
|
|
2411
|
+
"name": "ProjectRow",
|
|
2412
|
+
"declaration": "export interface ProjectRow {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly createdAt: string;\n readonly updatedAt: string;\n}"
|
|
2413
|
+
},
|
|
2414
|
+
{
|
|
2415
|
+
"name": "ProjectView",
|
|
2416
|
+
"declaration": "export interface ProjectView {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly manifest: GameManifest | null;\n readonly manifestError?: string;\n readonly chapters: readonly ChapterView[];\n readonly elements: readonly ElementView[];\n readonly elementErrors: readonly CheckFailure[];\n readonly current: VersionRecord | null;\n readonly candidate: VersionRecord | null;\n readonly lastCheck: CheckRecord | null;\n readonly hasEntry: boolean;\n readonly paramOverrides: Readonly<Record<string, number>>;\n readonly pending: readonly PendingChange[];\n readonly uncommitted: readonly PendingChange[];\n readonly proposals: readonly LookProposal[];\n readonly versions: readonly VersionRow[];\n readonly log: readonly LogEntry[];\n readonly restyleTo?: string;\n readonly candidateDiff: { readonly changed: readonly string[]; readonly added: readonly string[]; } | null;\n}"
|
|
2417
|
+
},
|
|
2418
|
+
{
|
|
2419
|
+
"name": "SceneStyle3D",
|
|
2420
|
+
"declaration": "export interface SceneStyle3D {\n readonly bg?: string;\n readonly ground?: string;\n readonly ground2?: string;\n readonly water?: string;\n readonly fog?: readonly [number, number];\n readonly light?: number;\n}"
|
|
2421
|
+
},
|
|
2422
|
+
{
|
|
2423
|
+
"name": "SessionGameState",
|
|
2424
|
+
"declaration": "export interface SessionGameState {\n readonly bound: ProjectView | null;\n readonly projects: readonly ProjectRow[];\n}"
|
|
2425
|
+
},
|
|
2426
|
+
{
|
|
2427
|
+
"name": "SessionId",
|
|
2428
|
+
"declaration": "export type SessionId = Branded<'SessionId'>;"
|
|
2429
|
+
},
|
|
2430
|
+
{
|
|
2431
|
+
"name": "Style3D",
|
|
2432
|
+
"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}"
|
|
2433
|
+
},
|
|
2434
|
+
{
|
|
2435
|
+
"name": "TurnReport",
|
|
2436
|
+
"declaration": "export interface TurnReport {\n readonly turn: number;\n readonly projectId: string;\n readonly title: string;\n readonly at: string;\n readonly version: { readonly kind: 'deployed' | 'candidate'; readonly version: number; } | null;\n readonly check: { readonly ok: boolean; readonly fixes: number; readonly gaveUp: boolean; readonly passed: number; readonly failures: number; } | null;\n readonly elements: readonly { readonly id: string; readonly name: string; readonly what: 'new' | 'removed' | 'look' | 'fields'; readonly fields?: readonly string[]; readonly looks?: { readonly before: string | null; readonly after: string; }; }[];\n readonly chapters: readonly { readonly id: string; readonly title: string; }[];\n readonly params: readonly { readonly key: string; readonly label: string; readonly from?: number; readonly to: number; }[];\n readonly code: readonly string[];\n readonly tests: readonly string[];\n}"
|
|
2437
|
+
},
|
|
2438
|
+
{
|
|
2439
|
+
"name": "VersionDiff",
|
|
2440
|
+
"declaration": "export interface VersionDiff {\n readonly added: readonly string[];\n readonly removed: readonly string[];\n readonly changed: readonly string[];\n}"
|
|
2441
|
+
},
|
|
2442
|
+
{
|
|
2443
|
+
"name": "VersionRecord",
|
|
2444
|
+
"declaration": "export interface VersionRecord {\n readonly version: number;\n readonly at: string;\n readonly fingerprint: string;\n readonly by?: VersionSource;\n readonly note?: string;\n}"
|
|
2445
|
+
},
|
|
2446
|
+
{
|
|
2447
|
+
"name": "VersionRow",
|
|
2448
|
+
"declaration": "export interface VersionRow extends VersionRecord {\n readonly status: VersionStatus;\n readonly passed?: number;\n}"
|
|
2449
|
+
},
|
|
2450
|
+
{
|
|
2451
|
+
"name": "VersionSource",
|
|
2452
|
+
"declaration": "export type VersionSource = 'user' | 'agent' | 'turn';"
|
|
2453
|
+
},
|
|
2454
|
+
{
|
|
2455
|
+
"name": "VersionStatus",
|
|
2456
|
+
"declaration": "export type VersionStatus = 'current' | 'candidate' | 'rejected' | 'past';"
|
|
2457
|
+
},
|
|
2458
|
+
{
|
|
2459
|
+
"name": "WorkingChanges",
|
|
2460
|
+
"declaration": "export interface WorkingChanges {\n readonly against: number | null;\n readonly hasEntry: boolean;\n readonly count: number;\n readonly files: readonly { readonly path: string; readonly kind: 'added' | 'changed' | 'removed'; }[];\n readonly lastAt: string | null;\n readonly busy: 'turn' | 'recent' | null;\n readonly edits: readonly PendingChange[];\n readonly failed: readonly { readonly where: string; readonly message: string; }[] | null;\n}"
|
|
2461
|
+
}
|
|
2462
|
+
]
|
|
2463
|
+
},
|
|
2464
|
+
{
|
|
2465
|
+
"description": "The game service core.",
|
|
2466
|
+
"summary": "The game service core.",
|
|
2467
|
+
"tags": [],
|
|
2468
|
+
"jsDoc": "/** The game service core. */",
|
|
2469
|
+
"key": "gameStore",
|
|
2470
|
+
"exportName": "GameService",
|
|
2471
|
+
"members": [
|
|
2472
|
+
{
|
|
2473
|
+
"kind": "property",
|
|
2474
|
+
"name": "stateRoot",
|
|
2475
|
+
"signature": "readonly stateRoot: string"
|
|
2476
|
+
},
|
|
2477
|
+
{
|
|
2478
|
+
"kind": "method",
|
|
2479
|
+
"name": "dispose",
|
|
2480
|
+
"signature": "async dispose(): Promise<void>",
|
|
2481
|
+
"summary": "Release the checker's browser.",
|
|
2482
|
+
"jsDoc": "/** Release the checker's browser. */"
|
|
2483
|
+
},
|
|
2484
|
+
{
|
|
2485
|
+
"kind": "method",
|
|
2486
|
+
"name": "subscribe",
|
|
2487
|
+
"signature": "subscribe(listener: (projectId: string) => void): () => void",
|
|
2488
|
+
"summary": "Subscribe to project changes (the Remote face forwards nothing yet; specs and hooks use it).",
|
|
2489
|
+
"jsDoc": "/** Subscribe to project changes (the Remote face forwards nothing yet; specs and hooks use it). */"
|
|
2490
|
+
},
|
|
2491
|
+
{
|
|
2492
|
+
"kind": "method",
|
|
2493
|
+
"name": "listProjects",
|
|
2494
|
+
"signature": "async listProjects(): Promise<ProjectRow[]>",
|
|
2495
|
+
"summary": "Every registered project, most recently updated first.",
|
|
2496
|
+
"jsDoc": "/** Every registered project, most recently updated first. */"
|
|
2497
|
+
},
|
|
2498
|
+
{
|
|
2499
|
+
"kind": "method",
|
|
2500
|
+
"name": "turnBaseline",
|
|
2501
|
+
"signature": "async turnBaseline(sessionId: string): Promise<TurnBaseline | undefined>",
|
|
2502
|
+
"summary": "Snapshot the bound project when a turn starts (undefined when unbound).",
|
|
2503
|
+
"jsDoc": "/** Snapshot the bound project when a turn starts (undefined when unbound). */"
|
|
2504
|
+
},
|
|
2505
|
+
{
|
|
2506
|
+
"kind": "method",
|
|
2507
|
+
"name": "recordTurn",
|
|
2508
|
+
"signature": "async recordTurn(sessionId: string, turn: number, base: TurnBaseline): Promise<TurnReport | undefined>",
|
|
2509
|
+
"summary": "Compare the project with its turn-start snapshot and store what the turn changed.",
|
|
2510
|
+
"jsDoc": "/**\n * Compare the project with its turn-start snapshot and store what the turn\n * changed. Nothing is stored for a turn that changed nothing.\n */"
|
|
2511
|
+
},
|
|
2512
|
+
{
|
|
2513
|
+
"kind": "method",
|
|
2514
|
+
"name": "turnReport",
|
|
2515
|
+
"signature": "async turnReport(sessionId: string, turn: number): Promise<TurnReport | null>",
|
|
2516
|
+
"summary": "A stored turn report.",
|
|
2517
|
+
"jsDoc": "/** A stored turn report. */"
|
|
2518
|
+
},
|
|
2519
|
+
{
|
|
2520
|
+
"kind": "method",
|
|
2521
|
+
"name": "projectCards",
|
|
2522
|
+
"signature": "async projectCards(): Promise<ProjectCard[]>",
|
|
2523
|
+
"summary": "Every project as a switcher card (manifest summary, live version, last screenshot), most recent first.",
|
|
2524
|
+
"jsDoc": "/** Every project as a switcher card (manifest summary, live version, last screenshot), most recent first. */"
|
|
2525
|
+
},
|
|
2526
|
+
{
|
|
2527
|
+
"kind": "method",
|
|
2528
|
+
"name": "boundProject",
|
|
2529
|
+
"signature": "async boundProject(sessionId: string): Promise<ProjectRow | undefined>",
|
|
2530
|
+
"summary": "The project a session is bound to, if any.",
|
|
2531
|
+
"jsDoc": "/** The project a session is bound to, if any. */"
|
|
2532
|
+
},
|
|
2533
|
+
{
|
|
2534
|
+
"kind": "method",
|
|
2535
|
+
"name": "bind",
|
|
2536
|
+
"signature": "async bind(sessionId: string, projectId: string | null): Promise<GameResult>",
|
|
2537
|
+
"summary": "Bind a session to a project (or unbind with null).",
|
|
2538
|
+
"jsDoc": "/** Bind a session to a project (or unbind with null). */"
|
|
2539
|
+
},
|
|
2540
|
+
{
|
|
2541
|
+
"kind": "method",
|
|
2542
|
+
"name": "adopt",
|
|
2543
|
+
"signature": "async adopt(root: string): Promise<GameResult<{ readonly ok: true; readonly project: ProjectRow }>>",
|
|
2544
|
+
"summary": "Register an existing folder that holds a `game.json` (a project copied in, or one whose registry row was lost).",
|
|
2545
|
+
"jsDoc": "/**\n * Register an existing folder that holds a `game.json` (a project copied\n * in, or one whose registry row was lost).\n */"
|
|
2546
|
+
},
|
|
2547
|
+
{
|
|
2548
|
+
"kind": "method",
|
|
2549
|
+
"name": "deleteProject",
|
|
2550
|
+
"signature": "async deleteProject(projectId: string, mode: 'trash' | 'forget', session: Session | undefined): Promise<DeleteProjectResult>",
|
|
2551
|
+
"summary": "Delete a project from the panel.",
|
|
2552
|
+
"jsDoc": "/**\n * Delete a project from the panel. `trash` takes it out of the plugin\n * (registry row and every session binding) AND moves its folder to the\n * system trash — complete, yet recoverable; `forget` only takes it out of\n * the plugin and leaves the folder (re-adopt with `game_open path`).\n *\n * Guards, checked before anything changes: the folder must still hold the\n * project's own `game.json` (never trash an arbitrary directory a registry\n * row happens to point at), must not be the calling session's workspace\n * itself, and a read-only session may do neither. A failed move changes\n * nothing, so the panel can offer `forget` instead.\n */"
|
|
2553
|
+
},
|
|
2554
|
+
{
|
|
2555
|
+
"kind": "method",
|
|
2556
|
+
"name": "create",
|
|
2557
|
+
"signature": "async create( request: CreateRequest, session: Session, ): Promise<{ ok: true; project: ProjectRow } | { ok: false; missing: readonly string[] } | { ok: false; error: string }>",
|
|
2558
|
+
"summary": "Create a project in the session's workspace behind the light gate, and bind the session to it.",
|
|
2559
|
+
"jsDoc": "/**\n * Create a project in the session's workspace behind the light gate, and\n * bind the session to it.\n * @param request - the gate's inputs.\n * @param session - the calling session (its workspace and fence).\n * @returns the new row, the gate's missing items, or a failure.\n */"
|
|
2560
|
+
},
|
|
2561
|
+
{
|
|
2562
|
+
"kind": "method",
|
|
2563
|
+
"name": "view",
|
|
2564
|
+
"signature": "async view(projectId: string): Promise<ProjectView | undefined>",
|
|
2565
|
+
"summary": "Everything the panel and `game_read` show about one project.",
|
|
2566
|
+
"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
|
+
},
|
|
2568
|
+
{
|
|
2569
|
+
"kind": "method",
|
|
2570
|
+
"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. */"
|
|
2574
|
+
},
|
|
2575
|
+
{
|
|
2576
|
+
"kind": "method",
|
|
2577
|
+
"name": "workingFile",
|
|
2578
|
+
"signature": "async workingFile(projectId: string, path: string): Promise<GameResult<{ readonly ok: true; readonly file: BundleFile }>>",
|
|
2579
|
+
"summary": "One build file as it is in the working folder now (a model the user just exported, say), for a panel preview ahead of any version.",
|
|
2580
|
+
"jsDoc": "/**\n * One build file as it is in the working folder now (a model the user just\n * exported, say), for a panel preview ahead of any version. Build files only,\n * inside the project, 8 MB at most.\n */"
|
|
2581
|
+
},
|
|
2582
|
+
{
|
|
2583
|
+
"kind": "method",
|
|
2584
|
+
"name": "bundle",
|
|
2585
|
+
"signature": "async bundle(projectId: string, which: 'current' | 'candidate' = 'current'): Promise<GameResult<{ readonly ok: true; readonly bundle: PlayBundle }>>",
|
|
2586
|
+
"summary": "The files of a deployed (or candidate) version, for the play area.",
|
|
2587
|
+
"jsDoc": "/** The files of a deployed (or candidate) version, for the play area. */"
|
|
2588
|
+
},
|
|
2589
|
+
{
|
|
2590
|
+
"kind": "method",
|
|
2591
|
+
"name": "versionBundle",
|
|
2592
|
+
"signature": "async versionBundle(projectId: string, version: number): Promise<GameResult<{ readonly ok: true; readonly bundle: PlayBundle }>>",
|
|
2593
|
+
"summary": "One specific version's files.",
|
|
2594
|
+
"jsDoc": "/** One specific version's files. */"
|
|
2595
|
+
},
|
|
2596
|
+
{
|
|
2597
|
+
"kind": "method",
|
|
2598
|
+
"name": "checkTurn",
|
|
2599
|
+
"signature": "async checkTurn(session: Session, attempt: number, cap: number, by: VersionSource = 'turn'): Promise<TurnCheckOutcome>",
|
|
2600
|
+
"summary": "The end-of-turn evaluation for a bound session: skip when nothing playable changed since the last check, else run the checks, persist the record, and on a pass deploy (auto-confirm) or leave a candidate.",
|
|
2601
|
+
"jsDoc": "/**\n * The end-of-turn evaluation for a bound session: skip when nothing\n * playable changed since the last check, else run the checks, persist the\n * record, and on a pass deploy (auto-confirm) or leave a candidate.\n * @param session - the session whose turn is closing.\n * @param attempt - which automatic fix round this is (0 = the turn's own work).\n * @param cap - the fix-round cap (a failure at the cap is recorded as given up).\n * @returns what the hook should do.\n */"
|
|
2602
|
+
},
|
|
2603
|
+
{
|
|
2604
|
+
"kind": "method",
|
|
2605
|
+
"name": "commit",
|
|
2606
|
+
"signature": "async commit(projectId: string, session: Session | undefined): Promise<GameResult<CommitResult>>",
|
|
2607
|
+
"summary": "提交为新版本: the user commits the panel edits sitting in the working files.",
|
|
2608
|
+
"jsDoc": "/**\n * 提交为新版本: the user commits the panel edits sitting in the working\n * files. Runs the same checks as the end of a turn (no fix cap — nothing\n * is steered); a pass cuts the version, whose note lists the edits.\n */"
|
|
2609
|
+
},
|
|
2610
|
+
{
|
|
2611
|
+
"kind": "method",
|
|
2612
|
+
"name": "confirm",
|
|
2613
|
+
"signature": "async confirm(projectId: string, session: Session | undefined): Promise<GameResult<{ readonly ok: true; readonly version: number }>>",
|
|
2614
|
+
"summary": "Promote the candidate to current (the user's 确认 when auto-confirm is off).",
|
|
2615
|
+
"jsDoc": "/** Promote the candidate to current (the user's 确认 when auto-confirm is off). */"
|
|
2616
|
+
},
|
|
2617
|
+
{
|
|
2618
|
+
"kind": "method",
|
|
2619
|
+
"name": "setAutoConfirm",
|
|
2620
|
+
"signature": "async setAutoConfirm(projectId: string, on: boolean, session: Session | undefined): Promise<GameResult>",
|
|
2621
|
+
"summary": "Turn auto-confirm on or off in `game.json` (the panel's switch).",
|
|
2622
|
+
"jsDoc": "/**\n * Turn auto-confirm on or off in `game.json` (the panel's switch). The\n * manifest is the project's own file, so this goes through node behind the\n * same writable check.\n */"
|
|
2623
|
+
},
|
|
2624
|
+
{
|
|
2625
|
+
"kind": "method",
|
|
2626
|
+
"name": "reject",
|
|
2627
|
+
"signature": "async reject(projectId: string, reason: string, session: Session | undefined): Promise<GameResult>",
|
|
2628
|
+
"summary": "Throw the candidate away (the user's 退回); the model hears about it on the next send.",
|
|
2629
|
+
"jsDoc": "/** Throw the candidate away (the user's 退回); the model hears about it on the next send. */"
|
|
2630
|
+
},
|
|
2631
|
+
{
|
|
2632
|
+
"kind": "method",
|
|
2633
|
+
"name": "rollback",
|
|
2634
|
+
"signature": "async rollback(projectId: string, version: number, session: Session | undefined): Promise<GameResult>",
|
|
2635
|
+
"summary": "Put an older version back into the play area.",
|
|
2636
|
+
"jsDoc": "/** Put an older version back into the play area. */"
|
|
2637
|
+
},
|
|
2638
|
+
{
|
|
2639
|
+
"kind": "method",
|
|
2640
|
+
"name": "diff",
|
|
2641
|
+
"signature": "async diff(projectId: string, from: number, to: number): Promise<GameResult<{ readonly ok: true; readonly diff: VersionDiff }>>",
|
|
2642
|
+
"summary": "Files that differ between two versions' snapshots.",
|
|
2643
|
+
"jsDoc": "/** Files that differ between two versions' snapshots. */"
|
|
2644
|
+
},
|
|
2645
|
+
{
|
|
2646
|
+
"kind": "method",
|
|
2647
|
+
"name": "setTurnActive",
|
|
2648
|
+
"signature": "setTurnActive(sessionId: string, active: boolean): void",
|
|
2649
|
+
"summary": "The turn hooks report a bound session's turn starting and ending.",
|
|
2650
|
+
"jsDoc": "/** The turn hooks report a bound session's turn starting and ending. */"
|
|
2651
|
+
},
|
|
2652
|
+
{
|
|
2653
|
+
"kind": "method",
|
|
2654
|
+
"name": "changes",
|
|
2655
|
+
"signature": "async changes(projectId: string): Promise<GameResult<WorkingChanges & { readonly ok: true }>>",
|
|
2656
|
+
"summary": "What the working files hold that the play area does not: build files added, changed or removed against the waiting candidate (else the live version), whoever wrote them — the panel, the agent, a CLI member, the user's own editor.",
|
|
2657
|
+
"jsDoc": "/**\n * What the working files hold that the play area does not: build files\n * added, changed or removed against the waiting candidate (else the live\n * version), whoever wrote them — the panel, the agent, a CLI member, the\n * user's own editor. Modification times pick the suspects; only those are\n * compared byte for byte, so an unchanged project costs a stat walk.\n */"
|
|
2658
|
+
},
|
|
2659
|
+
{
|
|
2660
|
+
"kind": "method",
|
|
2661
|
+
"name": "clearPending",
|
|
2662
|
+
"signature": "async clearPending(projectId: string): Promise<void>",
|
|
2663
|
+
"summary": "The agent has read the pending list (`game_read`): it is no longer news.",
|
|
2664
|
+
"jsDoc": "/** The agent has read the pending list (`game_read`): it is no longer news. */"
|
|
2665
|
+
},
|
|
2666
|
+
{
|
|
2667
|
+
"kind": "method",
|
|
2668
|
+
"name": "dropPending",
|
|
2669
|
+
"signature": "async dropPending(projectId: string, key: string, session: Session | undefined): Promise<GameResult>",
|
|
2670
|
+
"summary": "Drop one pending change by key (the dock's ×).",
|
|
2671
|
+
"jsDoc": "/** Drop one pending change by key (the dock's ×). */"
|
|
2672
|
+
},
|
|
2673
|
+
{
|
|
2674
|
+
"kind": "method",
|
|
2675
|
+
"name": "clearSent",
|
|
2676
|
+
"signature": "async clearSent(sessionId: string, text: string): Promise<number>",
|
|
2677
|
+
"summary": "The user sent a message carrying the panel's change list (it starts with {@link PANEL_CHANGES_MARK}): drop exactly the changes it lists.",
|
|
2678
|
+
"jsDoc": "/**\n * The user sent a message carrying the panel's change list (it starts\n * with {@link PANEL_CHANGES_MARK}): drop exactly the changes it lists.\n * Changes made after the list was written stay pending.\n * @param sessionId - the sending session.\n * @param text - the user message's text.\n * @returns how many changes were cleared.\n */"
|
|
2679
|
+
},
|
|
2680
|
+
{
|
|
2681
|
+
"kind": "method",
|
|
2682
|
+
"name": "setParam",
|
|
2683
|
+
"signature": "async setParam(projectId: string, key: string, value: number, session: Session | undefined): Promise<GameResult>",
|
|
2684
|
+
"summary": "Set one slider value (user layer; the play frame gets it live from the panel).",
|
|
2685
|
+
"jsDoc": "/** Set one slider value (user layer; the play frame gets it live from the panel). */"
|
|
2686
|
+
},
|
|
2687
|
+
{
|
|
2688
|
+
"kind": "method",
|
|
2689
|
+
"name": "finalizeParams",
|
|
2690
|
+
"signature": "async finalizeParams(projectId: string, session: Session | undefined): Promise<GameResult>",
|
|
2691
|
+
"summary": "定稿: write the slider values into game.json as the new defaults.",
|
|
2692
|
+
"jsDoc": "/** 定稿: write the slider values into game.json as the new defaults. */"
|
|
2693
|
+
},
|
|
2694
|
+
{
|
|
2695
|
+
"kind": "method",
|
|
2696
|
+
"name": "resetParams",
|
|
2697
|
+
"signature": "async resetParams(projectId: string, session: Session | undefined): Promise<GameResult>",
|
|
2698
|
+
"summary": "还原: drop every slider override.",
|
|
2699
|
+
"jsDoc": "/** 还原: drop every slider override. */"
|
|
2700
|
+
},
|
|
2701
|
+
{
|
|
2702
|
+
"kind": "method",
|
|
2703
|
+
"name": "editElement",
|
|
2704
|
+
"signature": "async editElement( projectId: string, elementId: string, patch: { look?: unknown; fields?: Record<string, string | number | boolean | null> }, session: Session | undefined, note?: string, ): Promise<GameResult<{ readonly ok: true; readonly element: Record<string, unknown> }>>",
|
|
2705
|
+
"summary": "Edit one element in the working files — its look, or scalar fields (`lore`, the 设定 text, included).",
|
|
2706
|
+
"jsDoc": "/**\n * Edit one element in the working files — its look, or scalar fields\n * (`lore`, the 设定 text, included). The play area keeps its version until\n * the user commits (`commit`); the edit is listed as uncommitted, and as\n * pending for the agent.\n */"
|
|
2707
|
+
},
|
|
2708
|
+
{
|
|
2709
|
+
"kind": "method",
|
|
2710
|
+
"name": "writeChapter",
|
|
2711
|
+
"signature": "async writeChapter(projectId: string, chapterId: string, text: string, session: Session | undefined): Promise<GameResult>",
|
|
2712
|
+
"summary": "Write one design chapter (the user's direct edit).",
|
|
2713
|
+
"jsDoc": "/** Write one design chapter (the user's direct edit). */"
|
|
2714
|
+
},
|
|
2715
|
+
{
|
|
2716
|
+
"kind": "method",
|
|
2717
|
+
"name": "setOnePager",
|
|
2718
|
+
"signature": "async setOnePager(projectId: string, patch: { pitch?: string; elementTypes?: string; pillars?: string }, session: Session | undefined): Promise<GameResult>",
|
|
2719
|
+
"summary": "Edit the one-pager in game.json (pitch, element types, pillars) — the user's direct edit.",
|
|
2720
|
+
"jsDoc": "/** Edit the one-pager in game.json (pitch, element types, pillars) — the user's direct edit. */"
|
|
2721
|
+
},
|
|
2722
|
+
{
|
|
2723
|
+
"kind": "method",
|
|
2724
|
+
"name": "requestRestyle",
|
|
2725
|
+
"signature": "async requestRestyle(projectId: string, styleId: string, session: Session | undefined): Promise<GameResult>",
|
|
2726
|
+
"summary": "Ask for a restyle: the next passing version becomes a candidate.",
|
|
2727
|
+
"jsDoc": "/** Ask for a restyle: the next passing version becomes a candidate. The panel puts the request into the composer. */"
|
|
2728
|
+
},
|
|
2729
|
+
{
|
|
2730
|
+
"kind": "method",
|
|
2731
|
+
"name": "proposeLooks",
|
|
2732
|
+
"signature": "async proposeLooks( sessionId: string, elementId: string, request: string, variants: readonly { label?: string; note?: string; look: unknown }[], ): Promise<{ ok: true; count: number; name: string } | { ok: false; error: string }>",
|
|
2733
|
+
"summary": "Store up to 3 appearance variants for an element (the `game_propose` tool); the user picks one in the panel.",
|
|
2734
|
+
"jsDoc": "/**\n * Store up to 3 appearance variants for an element (the `game_propose`\n * tool); the user picks one in the panel.\n */"
|
|
2735
|
+
},
|
|
2736
|
+
{
|
|
2737
|
+
"kind": "method",
|
|
2738
|
+
"name": "pickProposal",
|
|
2739
|
+
"signature": "async pickProposal(projectId: string, elementId: string, at: string, index: number, session: Session | undefined): Promise<GameResult>",
|
|
2740
|
+
"summary": "The user picks a variant: it replaces the element's look at once; the others stay in the history.",
|
|
2741
|
+
"jsDoc": "/** The user picks a variant: it replaces the element's look at once; the others stay in the history. */"
|
|
2742
|
+
},
|
|
2743
|
+
{
|
|
2744
|
+
"kind": "method",
|
|
2745
|
+
"name": "checkShot",
|
|
2746
|
+
"signature": "async checkShot(projectId: string, version?: number): Promise<GameResult<{ readonly ok: true; readonly webp: string }>>",
|
|
2747
|
+
"summary": "The last check's screenshot (webp, base64), if any.",
|
|
2748
|
+
"jsDoc": "/** The last check's screenshot (webp, base64), if any. */"
|
|
2749
|
+
},
|
|
2750
|
+
{
|
|
2751
|
+
"kind": "method",
|
|
2752
|
+
"name": "logPlay",
|
|
2753
|
+
"signature": "async logPlay(projectId: string, entry: { version: number; seconds: number; errors: readonly string[] }, session: Session | undefined): Promise<GameResult>",
|
|
2754
|
+
"summary": "Record what the panel saw during one play session (errors, length).",
|
|
2755
|
+
"jsDoc": "/** Record what the panel saw during one play session (errors, length). */"
|
|
2756
|
+
}
|
|
2757
|
+
],
|
|
2758
|
+
"types": [
|
|
2759
|
+
{
|
|
2760
|
+
"name": "AfterScheduleRecord",
|
|
2761
|
+
"declaration": "export interface AfterScheduleRecord {\n readonly id: ScheduleId;\n readonly kind: 'after';\n readonly title: string;\n readonly prompt: string;\n readonly afterSeconds: number;\n readonly scheduledAt: string;\n}"
|
|
2762
|
+
},
|
|
2763
|
+
{
|
|
2764
|
+
"name": "AgentCancelCause",
|
|
2765
|
+
"declaration": "export type AgentCancelCause = { readonly kind: 'user'; } | { readonly kind: 'parent'; } | { readonly kind: 'hook'; readonly reason: string; } | { readonly kind: 'disposed'; };"
|
|
2766
|
+
},
|
|
2767
|
+
{
|
|
2768
|
+
"name": "AgentMessageSource",
|
|
2769
|
+
"declaration": "export interface AgentMessageSource {\n readonly kind: 'agent-message';\n readonly form: 'relay';\n readonly senderSessionId: SessionId;\n}"
|
|
2770
|
+
},
|
|
2771
|
+
{
|
|
2772
|
+
"name": "AllowedModelRoute",
|
|
2773
|
+
"declaration": "export interface AllowedModelRoute {\n readonly provider: string;\n readonly model: string;\n}"
|
|
2774
|
+
},
|
|
2775
|
+
{
|
|
2776
|
+
"name": "AnyLook",
|
|
2777
|
+
"declaration": "export type AnyLook = ElementLook | Look3D;"
|
|
2778
|
+
},
|
|
2779
|
+
{
|
|
2780
|
+
"name": "ApprovalOutcome",
|
|
2781
|
+
"declaration": "export type ApprovalOutcome = 'allowed-once' | 'rejected' | 'cancelled' | 'unavailable';"
|
|
2782
|
+
},
|
|
2783
|
+
{
|
|
2784
|
+
"name": "ApprovalPolicy",
|
|
2785
|
+
"declaration": "export type ApprovalPolicy = 'ask' | 'never';"
|
|
2786
|
+
},
|
|
2787
|
+
{
|
|
2788
|
+
"name": "ApprovalRequestId",
|
|
2789
|
+
"declaration": "export type ApprovalRequestId = Branded<'ApprovalRequestId'>;"
|
|
2790
|
+
},
|
|
2791
|
+
{
|
|
2792
|
+
"name": "AssistantMessage",
|
|
2793
|
+
"declaration": "export interface AssistantMessage extends MessageBase {\n readonly role: 'assistant';\n readonly source: ModelMessageSource;\n}"
|
|
2794
|
+
},
|
|
2795
|
+
{
|
|
2796
|
+
"name": "AssistantProviderMetadata",
|
|
2797
|
+
"declaration": "export interface AssistantProviderMetadata {\n provider: string;\n model: string;\n replayState?: unknown;\n}"
|
|
2798
|
+
},
|
|
2799
|
+
{
|
|
2800
|
+
"name": "AssistantStreamRecord",
|
|
2801
|
+
"declaration": "export type AssistantStreamRecord = { readonly type: 'text-chunks'; readonly time0: number; readonly index: number; readonly dt: readonly number[]; readonly texts: readonly string[]; } | { readonly type: 'reasoning-chunks'; readonly time0: number; readonly index: number; readonly dt: readonly number[]; readonly texts: readonly string[]; } | { readonly type: 'tool-call-chunks'; readonly time0: number; readonly index: number; readonly dt: readonly number[]; readonly id: ToolCallId; readonly name?: string; readonly args: readonly string[]; } | { readonly type: 'chunk'; readonly time: number; readonly chunk: StreamChunk; };"
|
|
2802
|
+
},
|
|
2803
|
+
{
|
|
2804
|
+
"name": "AtScheduleRecord",
|
|
2805
|
+
"declaration": "export interface AtScheduleRecord {\n readonly id: ScheduleId;\n readonly kind: 'at';\n readonly title: string;\n readonly prompt: string;\n readonly scheduledAt: string;\n}"
|
|
2806
|
+
},
|
|
2807
|
+
{
|
|
2808
|
+
"name": "AttachmentId",
|
|
2809
|
+
"declaration": "export type AttachmentId = Branded<'AttachmentId'>;"
|
|
2810
|
+
},
|
|
2811
|
+
{
|
|
2812
|
+
"name": "BodyBase",
|
|
2813
|
+
"declaration": "export type BodyBase = typeof BODY_BASES[number];"
|
|
2814
|
+
},
|
|
2815
|
+
{
|
|
2816
|
+
"name": "BoneTweak",
|
|
2817
|
+
"declaration": "export interface BoneTweak {\n readonly scale?: number | readonly [number, number, number];\n readonly rotate?: readonly [number, number, number];\n}"
|
|
2818
|
+
},
|
|
2819
|
+
{
|
|
2820
|
+
"name": "Branded",
|
|
2821
|
+
"declaration": "export type Branded<B extends string> = string & { readonly [BRAND]: B; };"
|
|
2822
|
+
},
|
|
2823
|
+
{
|
|
2824
|
+
"name": "BrandedNumber",
|
|
2825
|
+
"declaration": "export type BrandedNumber<B extends string> = number & { readonly [BRAND]: B; };"
|
|
2826
|
+
},
|
|
2827
|
+
{
|
|
2828
|
+
"name": "BundleFile",
|
|
2829
|
+
"declaration": "export type BundleFile = { readonly type: string; readonly text: string; } | { readonly type: string; readonly b64: string; };"
|
|
2830
|
+
},
|
|
2831
|
+
{
|
|
2832
|
+
"name": "ChapterStatus",
|
|
2833
|
+
"declaration": "export type ChapterStatus = 'todo' | 'draft' | 'done';"
|
|
2834
|
+
},
|
|
2835
|
+
{
|
|
2836
|
+
"name": "ChapterView",
|
|
2837
|
+
"declaration": "export interface ChapterView {\n readonly id: string;\n readonly title: string;\n readonly file: string;\n readonly status: ChapterStatus;\n readonly text: string;\n readonly generated: boolean;\n readonly mtime: number;\n}"
|
|
2838
|
+
},
|
|
2839
|
+
{
|
|
2840
|
+
"name": "CheckFailure",
|
|
2841
|
+
"declaration": "export interface CheckFailure {\n readonly where: string;\n readonly message: string;\n}"
|
|
2842
|
+
},
|
|
2843
|
+
{
|
|
2844
|
+
"name": "CheckRecord",
|
|
2845
|
+
"declaration": "export interface CheckRecord {\n readonly fingerprint: string;\n readonly at: string;\n readonly ok: boolean;\n readonly failures: readonly CheckFailure[];\n readonly passed: number;\n readonly skipped?: string;\n readonly attempt: number;\n readonly gaveUp?: boolean;\n}"
|
|
2846
|
+
},
|
|
2847
|
+
{
|
|
2848
|
+
"name": "CommandId",
|
|
2849
|
+
"declaration": "export type CommandId = Branded<'CommandId'>;"
|
|
2850
|
+
},
|
|
2851
|
+
{
|
|
2852
|
+
"name": "CommandSource",
|
|
2853
|
+
"declaration": "export type CommandSource = CommandSourceMap[keyof CommandSourceMap];"
|
|
2854
|
+
},
|
|
2855
|
+
{
|
|
2856
|
+
"name": "CommandSourceMap",
|
|
2857
|
+
"declaration": "export interface CommandSourceMap {\n user: { kind: 'user'; };\n}"
|
|
2858
|
+
},
|
|
2859
|
+
{
|
|
2860
|
+
"name": "CommitResult",
|
|
2861
|
+
"declaration": "export type CommitResult = { readonly ok: true; readonly kind: 'deployed' | 'candidate'; readonly version: number; } | { readonly ok: true; readonly kind: 'failed'; readonly failures: readonly { readonly where: string; readonly message: string; }[]; } | { readonly ok: true; readonly kind: 'unchanged' | 'no-entry'; };"
|
|
2862
|
+
},
|
|
2863
|
+
{
|
|
2864
|
+
"name": "CompactionCheckpointSource",
|
|
2865
|
+
"declaration": "export type CompactionCheckpointSource = typeof COMPACT_CHECKPOINT_MARKER & { readonly compactionId: CompactionId; readonly sourceCommandId?: CommandId; };"
|
|
2866
|
+
},
|
|
2867
|
+
{
|
|
2868
|
+
"name": "CompactionId",
|
|
2869
|
+
"declaration": "export type CompactionId = Branded<'CompactionId'>;"
|
|
2870
|
+
},
|
|
2871
|
+
{
|
|
2872
|
+
"name": "ContentBlock",
|
|
2873
|
+
"declaration": "export type ContentBlock = ContentBlockMap[ContentBlockType];"
|
|
2874
|
+
},
|
|
2875
|
+
{
|
|
2876
|
+
"name": "ContentBlockMap",
|
|
2877
|
+
"declaration": "export interface ContentBlockMap {\n text: TextBlock;\n reasoning: ReasoningBlock;\n image: ImageBlock;\n file: FileBlock;\n 'tool-call': ToolCallBlock;\n 'tool-addition': ToolAdditionBlock;\n 'tool-removal': ToolRemovalBlock;\n}"
|
|
2878
|
+
},
|
|
2879
|
+
{
|
|
2880
|
+
"name": "ContentBlockType",
|
|
2881
|
+
"declaration": "export type ContentBlockType = keyof ContentBlockMap;"
|
|
2882
|
+
},
|
|
2883
|
+
{
|
|
2884
|
+
"name": "ContextFormed",
|
|
2885
|
+
"declaration": "export type ContextFormed = { readonly form?: never; } | { readonly form: 'instructions'; } | { readonly form: 'catalog'; } | { readonly form: 'snapshot'; readonly sections: readonly ContextSnapshotSection[]; } | { readonly form: 'notice'; readonly summary: string; } | { readonly form: 'relay'; } | { readonly form: 'recall'; };"
|
|
2886
|
+
},
|
|
2887
|
+
{
|
|
2888
|
+
"name": "ContextSnapshotSection",
|
|
2889
|
+
"declaration": "export interface ContextSnapshotSection {\n readonly name: string;\n readonly text: string;\n}"
|
|
2890
|
+
},
|
|
2891
|
+
{
|
|
2892
|
+
"name": "ContinuableSubagentDescriptorData",
|
|
2893
|
+
"declaration": "export interface ContinuableSubagentDescriptorData extends SubagentDescriptorBase {\n readonly mode: 'continuable';\n readonly label: string;\n readonly agentProvider?: string;\n readonly agentModel?: string;\n readonly agentReasoningEffort?: ReasoningEffortId;\n readonly persona?: string;\n readonly toolFilter?: ToolRestriction;\n}"
|
|
2894
|
+
},
|
|
2895
|
+
{
|
|
2896
|
+
"name": "CreateRequest",
|
|
2897
|
+
"declaration": "export interface CreateRequest {\n readonly runtime?: string | undefined;\n readonly title?: string | undefined;\n readonly pitch?: string | undefined;\n readonly elementTypes?: readonly string[] | string | undefined;\n readonly artStyle?: string | undefined;\n readonly pillars?: readonly string[] | string | undefined;\n}"
|
|
2898
|
+
},
|
|
2899
|
+
{
|
|
2900
|
+
"name": "DeleteProjectResult",
|
|
2901
|
+
"declaration": "export type DeleteProjectResult = { readonly ok: true; readonly trashedTo?: string; } | { readonly ok: false; readonly error: GameError; readonly reason?: string; };"
|
|
2902
|
+
},
|
|
2903
|
+
{
|
|
2904
|
+
"name": "DeveloperMessage",
|
|
2905
|
+
"declaration": "export interface DeveloperMessage extends MessageBase {\n readonly role: 'developer';\n}"
|
|
2906
|
+
},
|
|
2907
|
+
{
|
|
2908
|
+
"name": "ElementLook",
|
|
2909
|
+
"declaration": "export interface ElementLook {\n readonly palette: readonly string[];\n readonly states: Readonly<Record<string, readonly string[]>>;\n}"
|
|
2910
|
+
},
|
|
2911
|
+
{
|
|
2912
|
+
"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}"
|
|
2914
|
+
},
|
|
2915
|
+
{
|
|
2916
|
+
"name": "EpochHeader",
|
|
2917
|
+
"declaration": "export interface EpochHeader {\n config: LlmCallConfig;\n adapterDefaults?: LlmCallConfigAdapterDefaults;\n tools?: ToolSchema[];\n system?: never;\n}"
|
|
2918
|
+
},
|
|
2919
|
+
{
|
|
2920
|
+
"name": "EveryScheduleDispatchChange",
|
|
2921
|
+
"declaration": "export interface EveryScheduleDispatchChange {\n readonly version: 1;\n readonly operation: 'dispatch';\n readonly id: ScheduleId;\n readonly acceptedAt: string;\n}"
|
|
2922
|
+
},
|
|
2923
|
+
{
|
|
2924
|
+
"name": "EveryScheduleRecord",
|
|
2925
|
+
"declaration": "export interface EveryScheduleRecord {\n readonly id: ScheduleId;\n readonly kind: 'every';\n readonly title: string;\n readonly prompt: string;\n readonly everySeconds: number;\n readonly scheduledAt: string;\n}"
|
|
2926
|
+
},
|
|
2927
|
+
{
|
|
2928
|
+
"name": "FeedbackCategory",
|
|
2929
|
+
"declaration": "export type FeedbackCategory = 'task-result' | 'instruction-following' | 'product-interaction' | 'service-stability' | 'resource-cost' | 'security-privacy-permission' | 'other';"
|
|
2930
|
+
},
|
|
2931
|
+
{
|
|
2932
|
+
"name": "FeedbackRecord",
|
|
2933
|
+
"declaration": "export interface FeedbackRecord {\n readonly text?: string;\n readonly category?: FeedbackCategory;\n}"
|
|
2934
|
+
},
|
|
2935
|
+
{
|
|
2936
|
+
"name": "FileAttachmentRef",
|
|
2937
|
+
"declaration": "export interface FileAttachmentRef {\n attachmentId: AttachmentId;\n name: string;\n bytes: number;\n}"
|
|
2938
|
+
},
|
|
2939
|
+
{
|
|
2940
|
+
"name": "FileBlock",
|
|
2941
|
+
"declaration": "export interface FileBlock {\n type: 'file';\n attachment: FileAttachmentRef;\n}"
|
|
2942
|
+
},
|
|
2943
|
+
{
|
|
2944
|
+
"name": "FinishReason",
|
|
2945
|
+
"declaration": "export type FinishReason = FinishReasonMap[keyof FinishReasonMap];"
|
|
2946
|
+
},
|
|
2947
|
+
{
|
|
2948
|
+
"name": "FinishReasonMap",
|
|
2949
|
+
"declaration": "export interface FinishReasonMap {\n stop: { kind: 'stop'; };\n 'tool-calls': { kind: 'tool-calls'; };\n 'max-tokens': { kind: 'max-tokens'; };\n aborted: { kind: 'aborted'; failure: LlmFailure; };\n error: { kind: 'error'; failure: LlmFailure; };\n}"
|
|
2950
|
+
},
|
|
2951
|
+
{
|
|
2952
|
+
"name": "GameError",
|
|
2953
|
+
"declaration": "export type GameError = 'not-found' | 'unbound' | 'denied' | 'invalid' | 'no-version' | 'io' | 'not-a-project' | 'is-workspace' | 'trash-failed';"
|
|
2954
|
+
},
|
|
2955
|
+
{
|
|
2956
|
+
"name": "GameFailure",
|
|
2957
|
+
"declaration": "export interface GameFailure {\n readonly ok: false;\n readonly error: GameError;\n}"
|
|
2958
|
+
},
|
|
2959
|
+
{
|
|
2960
|
+
"name": "GameManifest",
|
|
2961
|
+
"declaration": "export interface GameManifest {\n readonly schema: 1;\n readonly id: string;\n readonly title: string;\n readonly pitch: string;\n readonly elementTypes: readonly string[];\n readonly artStyle: string;\n readonly pillars: readonly string[];\n readonly autoConfirm: boolean;\n readonly params: readonly GameParam[];\n readonly palette: readonly string[];\n readonly createdAt: string;\n readonly runtime?: KitRef;\n readonly style3d?: Style3D;\n}"
|
|
2962
|
+
},
|
|
2963
|
+
{
|
|
2964
|
+
"name": "GameMessageOp",
|
|
2965
|
+
"declaration": "export type GameMessageOp = { readonly op: 'check-failed'; readonly attempt: number; readonly cap: number; readonly failures: readonly { where: string; message: string; }[]; } | { readonly op: 'attached'; readonly items: readonly string[]; };"
|
|
2966
|
+
},
|
|
2967
|
+
{
|
|
2968
|
+
"name": "GameParam",
|
|
2969
|
+
"declaration": "export interface GameParam {\n readonly key: string;\n readonly label: string;\n readonly min: number;\n readonly max: number;\n readonly step: number;\n readonly value: number;\n readonly unit?: string;\n}"
|
|
2970
|
+
},
|
|
2971
|
+
{
|
|
2972
|
+
"name": "GameResult",
|
|
2973
|
+
"declaration": "export type GameResult<T extends { readonly ok: true; } = { readonly ok: true; }> = T | GameFailure;"
|
|
2974
|
+
},
|
|
2975
|
+
{
|
|
2976
|
+
"name": "GltfLook",
|
|
2977
|
+
"declaration": "export interface GltfLook {\n readonly kind: 'gltf';\n readonly src: string;\n readonly scale?: number;\n readonly material?: 'toon' | 'original';\n readonly outline?: boolean;\n readonly animation?: string;\n readonly preview?: PreviewAngle;\n readonly tint?: Readonly<Record<string, string>>;\n readonly bones?: Readonly<Record<string, BoneTweak>>;\n readonly morphs?: Readonly<Record<string, number>>;\n readonly recipe?: Parts3DLook;\n}"
|
|
2978
|
+
},
|
|
2979
|
+
{
|
|
2980
|
+
"name": "GoalBlockReason",
|
|
2981
|
+
"declaration": "export interface GoalBlockReason {\n readonly code: string;\n readonly message: string;\n}"
|
|
2982
|
+
},
|
|
2983
|
+
{
|
|
2984
|
+
"name": "GoalChangeMeta",
|
|
2985
|
+
"declaration": "export type GoalChangeMeta = GoalSnapshotChangeMeta | GoalClearChangeMeta;"
|
|
2986
|
+
},
|
|
2987
|
+
{
|
|
2988
|
+
"name": "GoalClearChangeMeta",
|
|
2989
|
+
"declaration": "export interface GoalClearChangeMeta {\n readonly kind: 'goal/change';\n readonly version: 1;\n readonly operation: 'clear';\n readonly cleared: GoalRef;\n readonly clearedAt: number;\n}"
|
|
2990
|
+
},
|
|
2991
|
+
{
|
|
2992
|
+
"name": "GoalId",
|
|
2993
|
+
"declaration": "export type GoalId = Branded<'GoalId'>;"
|
|
2994
|
+
},
|
|
2995
|
+
{
|
|
2996
|
+
"name": "GoalMessageSource",
|
|
2997
|
+
"declaration": "export interface GoalMessageSource {\n readonly kind: 'goal';\n readonly goalId: GoalId;\n readonly revision: number;\n readonly round: number;\n}"
|
|
2998
|
+
},
|
|
2999
|
+
{
|
|
3000
|
+
"name": "GoalOperation",
|
|
3001
|
+
"declaration": "export type GoalOperation = 'create' | 'edit' | 'pause' | 'resume' | 'complete' | 'block' | 'clear';"
|
|
3002
|
+
},
|
|
3003
|
+
{
|
|
3004
|
+
"name": "GoalPhase",
|
|
3005
|
+
"declaration": "export type GoalPhase = 'active' | 'paused' | 'blocked' | 'complete';"
|
|
3006
|
+
},
|
|
3007
|
+
{
|
|
3008
|
+
"name": "GoalRef",
|
|
3009
|
+
"declaration": "export interface GoalRef {\n readonly id: GoalId;\n readonly revision: number;\n}"
|
|
3010
|
+
},
|
|
3011
|
+
{
|
|
3012
|
+
"name": "GoalSnapshot",
|
|
3013
|
+
"declaration": "export interface GoalSnapshot extends GoalRef {\n readonly objective: string;\n readonly phase: GoalPhase;\n readonly blockedReason?: GoalBlockReason;\n readonly maxGoalRounds: number;\n}"
|
|
3014
|
+
},
|
|
3015
|
+
{
|
|
3016
|
+
"name": "GoalSnapshotChangeMeta",
|
|
3017
|
+
"declaration": "export interface GoalSnapshotChangeMeta {\n readonly kind: 'goal/change';\n readonly version: 1;\n readonly operation: Exclude<GoalOperation, 'clear'>;\n readonly goal: GoalSnapshot;\n readonly roundsStarted: number;\n readonly createdAt: number;\n readonly updatedAt: number;\n}"
|
|
3018
|
+
},
|
|
3019
|
+
{
|
|
3020
|
+
"name": "ImageAttachmentRef",
|
|
3021
|
+
"declaration": "export interface ImageAttachmentRef {\n attachmentId: AttachmentId;\n mediaType: ImageMediaType;\n bytes: number;\n width: number;\n height: number;\n name?: string;\n originalDimensions?: { width: number; height: number; };\n}"
|
|
3022
|
+
},
|
|
3023
|
+
{
|
|
3024
|
+
"name": "ImageBlock",
|
|
3025
|
+
"declaration": "export interface ImageBlock {\n type: 'image';\n attachment: ImageAttachmentRef;\n offloaded?: true;\n}"
|
|
3026
|
+
},
|
|
3027
|
+
{
|
|
3028
|
+
"name": "ImageMediaType",
|
|
3029
|
+
"declaration": "export type ImageMediaType = 'image/png' | 'image/jpeg' | 'image/webp' | 'image/gif';"
|
|
3030
|
+
},
|
|
3031
|
+
{
|
|
3032
|
+
"name": "ImageOffloadTarget",
|
|
3033
|
+
"declaration": "export interface ImageOffloadTarget {\n seq: SessionSeq;\n imageIndexes: number[];\n}"
|
|
3034
|
+
},
|
|
3035
|
+
{
|
|
3036
|
+
"name": "InboxTarget",
|
|
3037
|
+
"declaration": "export type InboxTarget = 'next-turn' | 'next-step';"
|
|
3038
|
+
},
|
|
3039
|
+
{
|
|
3040
|
+
"name": "JobId",
|
|
3041
|
+
"declaration": "export type JobId = Branded<'JobId'>;"
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"name": "JobOutcome",
|
|
3045
|
+
"declaration": "export interface JobOutcome {\n status: 'completed' | 'killed' | 'failed';\n detail?: string;\n result?: string;\n}"
|
|
3046
|
+
},
|
|
3047
|
+
{
|
|
3048
|
+
"name": "JobRegisteredData",
|
|
3049
|
+
"declaration": "export interface JobRegisteredData {\n readonly jobId: JobId;\n readonly owner: SessionId;\n readonly kind: string;\n readonly label: string;\n readonly startedAt: number;\n readonly toolCall?: JobToolCall;\n}"
|
|
3050
|
+
},
|
|
3051
|
+
{
|
|
3052
|
+
"name": "JobSettleCause",
|
|
3053
|
+
"declaration": "export type JobSettleCause = 'producer' | 'kill' | 'teardown';"
|
|
3054
|
+
},
|
|
3055
|
+
{
|
|
3056
|
+
"name": "JobSettledData",
|
|
3057
|
+
"declaration": "export interface JobSettledData extends JobRegisteredData {\n readonly finishedAt: number;\n readonly status: JobOutcome['status'];\n readonly cause: JobSettleCause;\n readonly producerReported: boolean;\n readonly detail?: string;\n}"
|
|
3058
|
+
},
|
|
3059
|
+
{
|
|
3060
|
+
"name": "JobToolCall",
|
|
3061
|
+
"declaration": "export interface JobToolCall {\n readonly callId: SessionEventMap['tool/call']['callId'];\n readonly rootCallId: SessionEventMap['tool/call']['callId'];\n}"
|
|
3062
|
+
},
|
|
3063
|
+
{
|
|
3064
|
+
"name": "JsonValue",
|
|
3065
|
+
"declaration": "export type JsonValue = null | boolean | number | string | JsonValue[] | { [key: string]: JsonValue; };"
|
|
3066
|
+
},
|
|
3067
|
+
{
|
|
3068
|
+
"name": "KitId",
|
|
3069
|
+
"declaration": "export type KitId = '2d-canvas' | '3d-three';"
|
|
3070
|
+
},
|
|
3071
|
+
{
|
|
3072
|
+
"name": "KitRef",
|
|
3073
|
+
"declaration": "export interface KitRef {\n readonly kit: KitId;\n readonly version: number;\n}"
|
|
3074
|
+
},
|
|
3075
|
+
{
|
|
3076
|
+
"name": "KnownCatalogMode",
|
|
3077
|
+
"declaration": "export type KnownCatalogMode = { readonly mode: 'one-shot'; readonly label?: string; } | { readonly mode: 'continuable'; readonly label: string; };"
|
|
3078
|
+
},
|
|
3079
|
+
{
|
|
3080
|
+
"name": "LegacyAfterScheduleRecord",
|
|
3081
|
+
"declaration": "export interface LegacyAfterScheduleRecord extends Omit<AfterScheduleRecord, 'title'> {\n readonly title?: string;\n}"
|
|
3082
|
+
},
|
|
3083
|
+
{
|
|
3084
|
+
"name": "LegacyAtScheduleRecord",
|
|
3085
|
+
"declaration": "export interface LegacyAtScheduleRecord extends Omit<AtScheduleRecord, 'title'> {\n readonly title?: string;\n}"
|
|
3086
|
+
},
|
|
3087
|
+
{
|
|
3088
|
+
"name": "LegacyEveryScheduleRecord",
|
|
3089
|
+
"declaration": "export interface LegacyEveryScheduleRecord extends Omit<EveryScheduleRecord, 'title'> {\n readonly title?: string;\n}"
|
|
3090
|
+
},
|
|
3091
|
+
{
|
|
3092
|
+
"name": "LegacyScheduleRecord",
|
|
3093
|
+
"declaration": "export type LegacyScheduleRecord = LegacyAfterScheduleRecord | LegacyAtScheduleRecord | LegacyEveryScheduleRecord;"
|
|
3094
|
+
},
|
|
3095
|
+
{
|
|
3096
|
+
"name": "LlmCallConfig",
|
|
3097
|
+
"declaration": "export interface LlmCallConfig extends LlmCallControls {\n provider: string;\n model: string;\n}"
|
|
3098
|
+
},
|
|
3099
|
+
{
|
|
3100
|
+
"name": "LlmCallConfigAdapterDefaults",
|
|
3101
|
+
"declaration": "export interface LlmCallConfigAdapterDefaults {\n reasoningEffort?: true;\n maxTokens?: true;\n}"
|
|
3102
|
+
},
|
|
3103
|
+
{
|
|
3104
|
+
"name": "LlmCallControls",
|
|
3105
|
+
"declaration": "export interface LlmCallControls {\n reasoningEffort?: ReasoningEffortId;\n temperature?: number;\n maxTokens?: number;\n stop?: string[];\n}"
|
|
3106
|
+
},
|
|
3107
|
+
{
|
|
3108
|
+
"name": "LlmFailure",
|
|
3109
|
+
"declaration": "export interface LlmFailure {\n readonly message: string;\n readonly code: string;\n readonly status?: number;\n readonly providerRetryAfterMs?: number;\n readonly requestId?: ProviderRequestId;\n readonly offloadImages?: number;\n}"
|
|
3110
|
+
},
|
|
3111
|
+
{
|
|
3112
|
+
"name": "LlmRetryEventData",
|
|
3113
|
+
"declaration": "export type LlmRetryEventData = { retryId: RetryId; turn: number; step: number; provider: string; mode: 'normal'; policyKey: string; retry: number; maxRetries: number; delayMs: number; failure: LlmFailure; } | { retryId: RetryId; turn: number; step: number; provider: string; mode: 'always'; policyKey: string; retry: number; delayMs: number; failure: LlmFailure; };"
|
|
3114
|
+
},
|
|
3115
|
+
{
|
|
3116
|
+
"name": "LlmRetryStartedEventData",
|
|
3117
|
+
"declaration": "export interface LlmRetryStartedEventData {\n retryId: RetryId;\n turn: number;\n step: number;\n retry: number;\n}"
|
|
3118
|
+
},
|
|
3119
|
+
{
|
|
3120
|
+
"name": "LocalAgentStreamCheckpoint",
|
|
3121
|
+
"declaration": "export interface LocalAgentStreamCheckpoint extends Omit<LocalAgentStreamItem, 'revision'> {\n sessionId: string;\n opening?: boolean;\n closed?: boolean;\n append: boolean;\n}"
|
|
3122
|
+
},
|
|
3123
|
+
{
|
|
3124
|
+
"name": "LocalAgentStreamItem",
|
|
3125
|
+
"declaration": "export interface LocalAgentStreamItem {\n id: string;\n turn: number;\n step: number;\n kind: 'think' | 'text';\n text: string;\n revision: number;\n receivedAt: number;\n}"
|
|
3126
|
+
},
|
|
3127
|
+
{
|
|
3128
|
+
"name": "LogEntry",
|
|
3129
|
+
"declaration": "export interface LogEntry {\n readonly at: string;\n readonly text: string;\n}"
|
|
3130
|
+
},
|
|
3131
|
+
{
|
|
3132
|
+
"name": "Look3D",
|
|
3133
|
+
"declaration": "export type Look3D = Parts3DLook | GltfLook;"
|
|
3134
|
+
},
|
|
3135
|
+
{
|
|
3136
|
+
"name": "LookProposal",
|
|
3137
|
+
"declaration": "export interface LookProposal {\n readonly elementId: string;\n readonly at: string;\n readonly request: string;\n readonly variants: readonly { readonly label: string; readonly note: string; readonly look: AnyLook; }[];\n readonly picked?: number;\n}"
|
|
3138
|
+
},
|
|
3139
|
+
{
|
|
3140
|
+
"name": "Message",
|
|
3141
|
+
"declaration": "export type Message = MessageRoleMap[keyof MessageRoleMap];"
|
|
3142
|
+
},
|
|
3143
|
+
{
|
|
3144
|
+
"name": "MessageBase",
|
|
3145
|
+
"declaration": "export interface MessageBase {\n readonly id: MessageId;\n readonly content: readonly ContentBlock[];\n readonly source: MessageSource;\n}"
|
|
3146
|
+
},
|
|
3147
|
+
{
|
|
3148
|
+
"name": "MessageFeedbackDelete",
|
|
3149
|
+
"declaration": "export interface MessageFeedbackDelete {\n readonly sessionId: SessionId;\n readonly messageId: MessageId;\n}"
|
|
3150
|
+
},
|
|
3151
|
+
{
|
|
3152
|
+
"name": "MessageFeedbackItem",
|
|
3153
|
+
"declaration": "export interface MessageFeedbackItem {\n readonly messageId: MessageId;\n readonly rating: MessageFeedbackRating;\n readonly note?: string;\n readonly category?: FeedbackCategory;\n readonly version: MessageFeedbackVersion;\n readonly createdAt: number;\n readonly updatedAt: number;\n}"
|
|
3154
|
+
},
|
|
3155
|
+
{
|
|
3156
|
+
"name": "MessageFeedbackPut",
|
|
3157
|
+
"declaration": "export interface MessageFeedbackPut {\n readonly sessionId: SessionId;\n readonly item: MessageFeedbackItem;\n}"
|
|
3158
|
+
},
|
|
3159
|
+
{
|
|
3160
|
+
"name": "MessageFeedbackRating",
|
|
3161
|
+
"declaration": "export type MessageFeedbackRating = 'positive' | 'negative';"
|
|
3162
|
+
},
|
|
3163
|
+
{
|
|
3164
|
+
"name": "MessageFeedbackVersion",
|
|
3165
|
+
"declaration": "export type MessageFeedbackVersion = Branded<'MessageFeedbackVersion'>;"
|
|
3166
|
+
},
|
|
3167
|
+
{
|
|
3168
|
+
"name": "MessageId",
|
|
3169
|
+
"declaration": "export type MessageId = Branded<'MessageId'>;"
|
|
3170
|
+
},
|
|
3171
|
+
{
|
|
3172
|
+
"name": "MessageRoleMap",
|
|
3173
|
+
"declaration": "export interface MessageRoleMap {\n system: SystemMessage;\n developer: DeveloperMessage;\n user: UserMessage;\n assistant: AssistantMessage;\n tool: ToolResultMessage;\n}"
|
|
3174
|
+
},
|
|
3175
|
+
{
|
|
3176
|
+
"name": "MessageSource",
|
|
3177
|
+
"declaration": "export type MessageSource = MessageSourceMap[keyof MessageSourceMap];"
|
|
3178
|
+
},
|
|
3179
|
+
{
|
|
3180
|
+
"name": "MessageSourceMap",
|
|
3181
|
+
"declaration": "export interface MessageSourceMap {\n user: { kind: 'user'; };\n model: ModelMessageSource;\n tool: ToolMessageSource;\n 'system-prompt': SystemPromptMessageSource;\n 'model-selection': { kind: 'model-selection'; } & ContextFormed;\n 'runtime-context': { kind: 'runtime-context'; } & ContextFormed;\n 'working-directory': { kind: 'working-directory'; };\n 'user-approval': { kind: 'user-approval'; } & ContextFormed;\n 'ptc-mode': { kind: 'ptc-mode'; };\n 'tool-registry': { kind: 'tool-registry'; };\n 'user-rpc': { kind: 'user'; rpcId: SessionRequestId; clientTimeZone?: string; principal?: Principal; };\n 'agent-message': AgentMessageSource;\n 'subagent-settled': SubagentSettledMessageSource;\n 'skill-invocation': SkillInvocationSource;\n 'compact-checkpoint': CompactionCheckpointSource;\n 'cordis-host-runner': { kind: 'cordis-host-runner'; };\n 'team-message': TeamMessageSource;\n 'user-question-reply': { kind: 'user-question-reply'; callId: ToolCallId; outcome: 'answered'; };\n goal: GoalMessageSource;\n 'plan-mode': { kind: 'plan-mode'; } & ContextFormed;\n schedule: { kind: 'schedule'; } & ContextFormed;\n 'session-reference': SessionReferenceSource;\n webhook: { readonly kind: 'webhook'; readonly provider: string; readonly source: WebhookSourceId; readonly deliveryId: WebhookDeliveryId; readonly ruleId: WebhookRuleId; readonly form: 'notice'; readonly summary: string; };\n 'message-tools': { kind: 'message-tools'; readonly op?: MessageToolsOp; } & ContextFormed;\n 'dsh-game': { kind: 'dsh-game'; plugin: '@khorsheed/dsh-game'; } & ContextFormed & Partial<GameMessageOp>;\n room: { kind: 'room'; } & ContextFormed;\n 'room-help': { kind: 'room-help'; plugin: '@khorsheed/dsh-room'; help: string; room: string; roomTitle: string; from: string; op: 'request' | 'message'; text: string; } & ContextFormed;\n sidechat: { kind: 'sidechat'; } & ContextFormed;\n worktrees: { kind: 'worktrees'; } & ContextFormed;\n}"
|
|
3182
|
+
},
|
|
3183
|
+
{
|
|
3184
|
+
"name": "MessageToolsOp",
|
|
3185
|
+
"declaration": "export type MessageToolsOp = 'edit' | 'edit-trigger' | 'restore-assistant';"
|
|
3186
|
+
},
|
|
3187
|
+
{
|
|
3188
|
+
"name": "ModelMessageSource",
|
|
3189
|
+
"declaration": "export interface ModelMessageSource extends AssistantProviderMetadata {\n kind: 'model';\n}"
|
|
3190
|
+
},
|
|
3191
|
+
{
|
|
3192
|
+
"name": "ModelSelection",
|
|
3193
|
+
"declaration": "export interface ModelSelection {\n readonly provider: string;\n readonly model: string;\n readonly reasoningEffort?: string;\n}"
|
|
3194
|
+
},
|
|
3195
|
+
{
|
|
3196
|
+
"name": "MotionSpec",
|
|
3197
|
+
"declaration": "export interface MotionSpec {\n readonly amplitude?: number;\n readonly period?: number;\n}"
|
|
3198
|
+
},
|
|
3199
|
+
{
|
|
3200
|
+
"name": "OneShotScheduleDispatchChange",
|
|
3201
|
+
"declaration": "export interface OneShotScheduleDispatchChange {\n readonly version: 1;\n readonly operation: 'dispatch';\n readonly id: ScheduleId;\n}"
|
|
3202
|
+
},
|
|
3203
|
+
{
|
|
3204
|
+
"name": "OneShotSubagentDescriptorData",
|
|
3205
|
+
"declaration": "export interface OneShotSubagentDescriptorData extends SubagentDescriptorBase {\n readonly mode: 'one-shot';\n readonly label?: string;\n}"
|
|
3206
|
+
},
|
|
3207
|
+
{
|
|
3208
|
+
"name": "OptionalSessionSeq",
|
|
3209
|
+
"declaration": "export type OptionalSessionSeq = SessionSeq | null;"
|
|
3210
|
+
},
|
|
3211
|
+
{
|
|
3212
|
+
"name": "Parts3DLook",
|
|
3213
|
+
"declaration": "export interface Parts3DLook {\n readonly kind: 'parts3d';\n readonly base: BodyBase | (string & {});\n readonly proportions: Readonly<Record<string, number>>;\n readonly parts: readonly PartSpec[];\n readonly palette: Readonly<Record<string, string>>;\n readonly motion: Readonly<Record<string, MotionSpec>>;\n readonly scale?: number;\n readonly preview?: PreviewAngle;\n readonly refine?: Readonly<Record<string, number>>;\n}"
|
|
3214
|
+
},
|
|
3215
|
+
{
|
|
3216
|
+
"name": "PartSpec",
|
|
3217
|
+
"declaration": "export interface PartSpec {\n readonly type: PartType | (string & {});\n readonly count?: number;\n readonly size?: number;\n readonly length?: number;\n readonly fan?: number;\n readonly thickness?: number;\n readonly color?: string;\n readonly style?: string;\n readonly extra?: Readonly<Record<string, number | string>>;\n}"
|
|
3218
|
+
},
|
|
3219
|
+
{
|
|
3220
|
+
"name": "PartType",
|
|
3221
|
+
"declaration": "export type PartType = typeof PART_TYPES[number];"
|
|
3222
|
+
},
|
|
3223
|
+
{
|
|
3224
|
+
"name": "PendingChange",
|
|
3225
|
+
"declaration": "export interface PendingChange {\n readonly key: string;\n readonly text: string;\n}"
|
|
3226
|
+
},
|
|
3227
|
+
{
|
|
3228
|
+
"name": "PlanAttempt",
|
|
3229
|
+
"declaration": "export interface PlanAttempt {\n id: string;\n deliveryId: string;\n number: number;\n status: 'queued' | 'running' | 'submitted' | 'accepted' | 'rejected' | 'failed' | 'cancelled' | 'uncertain';\n createdAt: number;\n startedAt?: number;\n settledAt?: number;\n submission?: PlanEvidence;\n review?: { decision: 'accepted' | 'rework'; by: string; reason: string; references: string[]; time: number; };\n error?: string;\n retry?: { by: string; reason: string; time: number; };\n}"
|
|
3230
|
+
},
|
|
3231
|
+
{
|
|
3232
|
+
"name": "PlanBudget",
|
|
3233
|
+
"declaration": "export interface PlanBudget {\n maxParallel: number;\n maxAttempts: number;\n maxAttemptsPerTask: number;\n maxActiveMs: number;\n}"
|
|
3234
|
+
},
|
|
3235
|
+
{
|
|
3236
|
+
"name": "PlanEvidence",
|
|
3237
|
+
"declaration": "export interface PlanEvidence {\n summary: string;\n references: string[];\n artifacts: string[];\n}"
|
|
3238
|
+
},
|
|
3239
|
+
{
|
|
3240
|
+
"name": "PlanTask",
|
|
3241
|
+
"declaration": "export interface PlanTask {\n id: string;\n title: string;\n stageId: string;\n parentId?: string;\n kind: 'group' | 'task';\n ownerMemberId?: string;\n instruction: string;\n criteria: string[];\n inputRefs: string[];\n artifactPaths: string[];\n dependsOn: string[];\n status: 'pending' | 'running' | 'submitted' | 'accepted' | 'failed' | 'cancelled';\n attempts: PlanAttempt[];\n}"
|
|
3242
|
+
},
|
|
3243
|
+
{
|
|
3244
|
+
"name": "PlayBundle",
|
|
3245
|
+
"declaration": "export interface PlayBundle {\n readonly projectId: string;\n readonly version: number;\n readonly files: Readonly<Record<string, BundleFile>>;\n}"
|
|
3246
|
+
},
|
|
3247
|
+
{
|
|
3248
|
+
"name": "PreviewAngle",
|
|
3249
|
+
"declaration": "export interface PreviewAngle {\n readonly yaw?: number;\n readonly pitch?: number;\n}"
|
|
3250
|
+
},
|
|
3251
|
+
{
|
|
3252
|
+
"name": "Principal",
|
|
3253
|
+
"declaration": "export type Principal = PrincipalMap[keyof PrincipalMap];"
|
|
3254
|
+
},
|
|
3255
|
+
{
|
|
3256
|
+
"name": "PrincipalMap",
|
|
3257
|
+
"declaration": "export interface PrincipalMap {\n owner: { readonly kind: 'owner'; };\n}"
|
|
3258
|
+
},
|
|
3259
|
+
{
|
|
3260
|
+
"name": "ProjectCard",
|
|
3261
|
+
"declaration": "export interface ProjectCard {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly updatedAt: string;\n readonly pitch: string;\n readonly artStyle: string;\n readonly version: number | null;\n readonly elements: number;\n readonly thumb?: string;\n}"
|
|
3262
|
+
},
|
|
3263
|
+
{
|
|
3264
|
+
"name": "ProjectRow",
|
|
3265
|
+
"declaration": "export interface ProjectRow {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly createdAt: string;\n readonly updatedAt: string;\n}"
|
|
3266
|
+
},
|
|
3267
|
+
{
|
|
3268
|
+
"name": "ProjectView",
|
|
3269
|
+
"declaration": "export interface ProjectView {\n readonly id: string;\n readonly title: string;\n readonly root: string;\n readonly manifest: GameManifest | null;\n readonly manifestError?: string;\n readonly chapters: readonly ChapterView[];\n readonly elements: readonly ElementView[];\n readonly elementErrors: readonly CheckFailure[];\n readonly current: VersionRecord | null;\n readonly candidate: VersionRecord | null;\n readonly lastCheck: CheckRecord | null;\n readonly hasEntry: boolean;\n readonly paramOverrides: Readonly<Record<string, number>>;\n readonly pending: readonly PendingChange[];\n readonly uncommitted: readonly PendingChange[];\n readonly proposals: readonly LookProposal[];\n readonly versions: readonly VersionRow[];\n readonly log: readonly LogEntry[];\n readonly restyleTo?: string;\n readonly candidateDiff: { readonly changed: readonly string[]; readonly added: readonly string[]; } | null;\n}"
|
|
3270
|
+
},
|
|
3271
|
+
{
|
|
3272
|
+
"name": "ProviderRequestId",
|
|
3273
|
+
"declaration": "export type ProviderRequestId = Branded<'ProviderRequestId'>;"
|
|
3274
|
+
},
|
|
3275
|
+
{
|
|
3276
|
+
"name": "PtcDispatchEventData",
|
|
3277
|
+
"declaration": "export interface PtcDispatchEventData extends PtcDispatchStartEventData {\n isError: boolean;\n content: ContentBlock[];\n meta?: JsonValue;\n error?: { name: string; code: string; reason?: string; };\n}"
|
|
3278
|
+
},
|
|
3279
|
+
{
|
|
3280
|
+
"name": "PtcDispatchStartEventData",
|
|
3281
|
+
"declaration": "export interface PtcDispatchStartEventData {\n rootCallId: ToolCallId;\n parentCallId: ToolCallId;\n subCallId: ToolCallId;\n name: string;\n arguments: unknown;\n}"
|
|
3282
|
+
},
|
|
3283
|
+
{
|
|
3284
|
+
"name": "ReasoningBlock",
|
|
3285
|
+
"declaration": "export interface ReasoningBlock {\n type: 'reasoning';\n text: string;\n}"
|
|
3286
|
+
},
|
|
3287
|
+
{
|
|
3288
|
+
"name": "ReasoningEffortId",
|
|
3289
|
+
"declaration": "export type ReasoningEffortId = Branded<'ReasoningEffortId'>;"
|
|
3290
|
+
},
|
|
3291
|
+
{
|
|
3292
|
+
"name": "ReplayEnvelope",
|
|
3293
|
+
"declaration": "export interface ReplayEnvelope {\n response: unknown;\n blocks?: readonly unknown[];\n}"
|
|
3294
|
+
},
|
|
3295
|
+
{
|
|
3296
|
+
"name": "RequestContext",
|
|
3297
|
+
"declaration": "export interface RequestContext {\n provider: string;\n model: string;\n contextWindow?: number;\n systemPromptUpdate?: SystemPromptUpdate;\n}"
|
|
3298
|
+
},
|
|
3299
|
+
{
|
|
3300
|
+
"name": "RequestHeaderReason",
|
|
3301
|
+
"declaration": "export type RequestHeaderReason = 'initial' | 'resume' | 'change' | 'series';"
|
|
3302
|
+
},
|
|
3303
|
+
{
|
|
3304
|
+
"name": "RetryId",
|
|
3305
|
+
"declaration": "export type RetryId = Branded<'RetryId'>;"
|
|
3306
|
+
},
|
|
3307
|
+
{
|
|
3308
|
+
"name": "RoomApprovalEvent",
|
|
3309
|
+
"declaration": "export interface RoomApprovalEvent {\n readonly id: string;\n readonly member: string;\n readonly memberId: string;\n readonly tool: string;\n readonly reason?: string;\n}"
|
|
3310
|
+
},
|
|
3311
|
+
{
|
|
3312
|
+
"name": "RoomApprovalResolvedEvent",
|
|
3313
|
+
"declaration": "export interface RoomApprovalResolvedEvent {\n readonly id: string;\n readonly outcome: 'allowed-once' | 'rejected' | 'cancelled';\n}"
|
|
3314
|
+
},
|
|
3315
|
+
{
|
|
3316
|
+
"name": "RoomCoordinatorEvent",
|
|
3317
|
+
"declaration": "export interface RoomCoordinatorEvent {\n readonly version: 1;\n readonly memberId: string;\n readonly revision: number;\n readonly previousMemberId: string;\n readonly handoff: string;\n}"
|
|
3318
|
+
},
|
|
3319
|
+
{
|
|
3320
|
+
"name": "RoomCreatedEvent",
|
|
3321
|
+
"declaration": "export interface RoomCreatedEvent {\n readonly version: 1;\n}"
|
|
3322
|
+
},
|
|
3323
|
+
{
|
|
3324
|
+
"name": "RoomDecisionCall",
|
|
3325
|
+
"declaration": "export interface RoomDecisionCall {\n readonly model: string;\n readonly latencyMs?: number;\n readonly cached?: boolean;\n readonly inputTokens?: number;\n readonly outputTokens?: number;\n readonly request: { readonly state: RoomJsonValue; readonly questions: RoomJsonValue; };\n readonly response?: RoomJsonValue;\n readonly failure?: { readonly reason: string; readonly detail?: string; };\n}"
|
|
3326
|
+
},
|
|
3327
|
+
{
|
|
3328
|
+
"name": "RoomDecisionEvent",
|
|
3329
|
+
"declaration": "export interface RoomDecisionEvent {\n readonly id: string;\n readonly scenario: RoomDecisionScenario;\n readonly outcome: string;\n readonly rule?: string;\n readonly probability?: number;\n readonly call?: RoomDecisionCall;\n readonly about: { readonly message?: string; readonly task?: { readonly number: number; readonly title: string; }; readonly from?: string; readonly to?: string; };\n}"
|
|
3330
|
+
},
|
|
3331
|
+
{
|
|
3332
|
+
"name": "RoomDecisionScenario",
|
|
3333
|
+
"declaration": "export type RoomDecisionScenario = 'task-filing' | 'report-timing';"
|
|
3334
|
+
},
|
|
3335
|
+
{
|
|
3336
|
+
"name": "RoomDeliveryStateEvent",
|
|
3337
|
+
"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
|
+
},
|
|
3339
|
+
{
|
|
3340
|
+
"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}"
|
|
3342
|
+
},
|
|
3343
|
+
{
|
|
3344
|
+
"name": "RoomExecutionMetadataEvent",
|
|
3345
|
+
"declaration": "export interface RoomExecutionMetadataEvent {\n readonly runId: string;\n readonly model?: string;\n readonly effort?: string;\n readonly tokens?: number;\n readonly usage?: RoomRunUsage;\n}"
|
|
3346
|
+
},
|
|
3347
|
+
{
|
|
3348
|
+
"name": "RoomGoalEvent",
|
|
3349
|
+
"declaration": "export interface RoomGoalEvent {\n readonly text: string;\n}"
|
|
3350
|
+
},
|
|
3351
|
+
{
|
|
3352
|
+
"name": "RoomHeldDispatch",
|
|
3353
|
+
"declaration": "export interface RoomHeldDispatch {\n readonly origin: 'coordinator' | 'member' | 'report' | 'help';\n readonly help?: RoomHelpOrigin;\n readonly from?: string;\n readonly kind?: 'task' | 'notify';\n readonly hop: number;\n readonly inReplyTo?: number;\n readonly replyTo?: string;\n readonly reportFor?: string;\n readonly plan?: { readonly goalId: string; };\n readonly note?: string;\n readonly task?: string;\n readonly parent?: string;\n}"
|
|
3354
|
+
},
|
|
3355
|
+
{
|
|
3356
|
+
"name": "RoomHelpEvent",
|
|
3357
|
+
"declaration": "export interface RoomHelpEvent {\n readonly id: string;\n readonly from: string;\n readonly fromName: string;\n readonly target: { readonly sessionId: string; readonly title: string; readonly room?: true; readonly member?: string; };\n readonly text: string;\n}"
|
|
3358
|
+
},
|
|
3359
|
+
{
|
|
3360
|
+
"name": "RoomHelpInEvent",
|
|
3361
|
+
"declaration": "export interface RoomHelpInEvent extends RoomHelpOrigin {\n readonly member: string;\n readonly text: string;\n readonly op: 'request' | 'message';\n readonly held?: true;\n}"
|
|
3362
|
+
},
|
|
3363
|
+
{
|
|
3364
|
+
"name": "RoomHelpMessageEvent",
|
|
3365
|
+
"declaration": "export interface RoomHelpMessageEvent {\n readonly help: string;\n readonly kind: 'question' | 'reply' | 'message';\n readonly text: string;\n readonly handoff?: string;\n readonly fallback?: true;\n}"
|
|
3366
|
+
},
|
|
3367
|
+
{
|
|
3368
|
+
"name": "RoomHelpOrigin",
|
|
3369
|
+
"declaration": "export interface RoomHelpOrigin {\n readonly id: string;\n readonly room: string;\n readonly roomTitle: string;\n readonly from: string;\n}"
|
|
3370
|
+
},
|
|
3371
|
+
{
|
|
3372
|
+
"name": "RoomHelpStateEvent",
|
|
3373
|
+
"declaration": "export interface RoomHelpStateEvent {\n readonly help: string;\n readonly state: RoomHelpStatus;\n readonly error?: string;\n}"
|
|
3374
|
+
},
|
|
3375
|
+
{
|
|
3376
|
+
"name": "RoomHelpStatus",
|
|
3377
|
+
"declaration": "export type RoomHelpStatus = 'queued' | 'running' | 'asking' | 'replied' | 'failed';"
|
|
3378
|
+
},
|
|
3379
|
+
{
|
|
3380
|
+
"name": "RoomHoldReason",
|
|
3381
|
+
"declaration": "export type RoomHoldReason = 'confirm' | 'hop-limit' | 'paused';"
|
|
3382
|
+
},
|
|
3383
|
+
{
|
|
3384
|
+
"name": "RoomJobStoppedEvent",
|
|
3385
|
+
"declaration": "export interface RoomJobStoppedEvent {\n readonly task: string;\n}"
|
|
3386
|
+
},
|
|
3387
|
+
{
|
|
3388
|
+
"name": "RoomJsonValue",
|
|
3389
|
+
"declaration": "export type RoomJsonValue = null | boolean | number | string | RoomJsonValue[] | { [key: string]: RoomJsonValue; };"
|
|
3390
|
+
},
|
|
3391
|
+
{
|
|
3392
|
+
"name": "RoomMemberAddedEvent",
|
|
3393
|
+
"declaration": "export interface RoomMemberAddedEvent {\n readonly id?: string;\n readonly name: string;\n readonly kind: 'main-agent' | 'cli' | 'native';\n readonly provider?: string;\n readonly preset?: string;\n readonly instructions?: string;\n readonly role?: string;\n readonly invitedBy: 'human' | 'agent';\n readonly cwd?: string;\n readonly model?: string;\n readonly effort?: string;\n readonly childSessionId?: SessionId;\n}"
|
|
3394
|
+
},
|
|
3395
|
+
{
|
|
3396
|
+
"name": "RoomMemberRemovedEvent",
|
|
3397
|
+
"declaration": "export interface RoomMemberRemovedEvent {\n readonly name: string;\n}"
|
|
3398
|
+
},
|
|
3399
|
+
{
|
|
3400
|
+
"name": "RoomMemberUpdatedEvent",
|
|
3401
|
+
"declaration": "export interface RoomMemberUpdatedEvent {\n readonly name: string;\n readonly rename?: string;\n readonly instructions?: string | null;\n readonly role?: string | null;\n readonly cwd?: string | null;\n readonly model?: string | null;\n readonly effort?: string | null;\n readonly childSessionId?: SessionId;\n}"
|
|
3402
|
+
},
|
|
3403
|
+
{
|
|
3404
|
+
"name": "RoomPlan",
|
|
3405
|
+
"declaration": "export interface RoomPlan {\n version: 1;\n id: string;\n revision: number;\n objective: string;\n status: 'draft' | 'running' | 'paused' | 'completed' | 'cancelled';\n reason?: string;\n budget: PlanBudget;\n activeMs: number;\n resumedAt?: number;\n stages: { id: string; title: string; }[];\n tasks: PlanTask[];\n completion?: PlanEvidence;\n requests: { id: string; signature: string; }[];\n}"
|
|
3406
|
+
},
|
|
3407
|
+
{
|
|
3408
|
+
"name": "RoomQuestionAnswer",
|
|
3409
|
+
"declaration": "export interface RoomQuestionAnswer {\n readonly id: string;\n readonly selected: readonly string[];\n readonly custom?: string;\n}"
|
|
3410
|
+
},
|
|
3411
|
+
{
|
|
3412
|
+
"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}"
|
|
3414
|
+
},
|
|
3415
|
+
{
|
|
3416
|
+
"name": "RoomQuestionItem",
|
|
3417
|
+
"declaration": "export interface RoomQuestionItem {\n readonly id: string;\n readonly question: string;\n readonly header?: string;\n readonly options?: readonly RoomQuestionOption[];\n readonly multiSelect?: boolean;\n}"
|
|
3418
|
+
},
|
|
3419
|
+
{
|
|
3420
|
+
"name": "RoomQuestionOption",
|
|
3421
|
+
"declaration": "export interface RoomQuestionOption {\n readonly label: string;\n readonly description?: string;\n}"
|
|
3422
|
+
},
|
|
3423
|
+
{
|
|
3424
|
+
"name": "RoomQuestionResolvedEvent",
|
|
3425
|
+
"declaration": "export interface RoomQuestionResolvedEvent {\n readonly id: string;\n readonly outcome: 'answered' | 'cancelled';\n readonly answers?: readonly RoomQuestionAnswer[];\n}"
|
|
3426
|
+
},
|
|
3427
|
+
{
|
|
3428
|
+
"name": "RoomRelayEvent",
|
|
3429
|
+
"declaration": "export interface RoomRelayEvent {\n readonly id: string;\n readonly from: string;\n readonly to: string;\n readonly content: string;\n readonly provenance?: Record<string, RoomJsonValue>;\n readonly reason?: RoomHoldReason;\n readonly intent?: RoomHeldDispatch;\n}"
|
|
3430
|
+
},
|
|
3431
|
+
{
|
|
3432
|
+
"name": "RoomRelayResolvedEvent",
|
|
3433
|
+
"declaration": "export interface RoomRelayResolvedEvent {\n readonly id: string;\n readonly state: 'confirmed' | 'dismissed' | 'sent';\n}"
|
|
3434
|
+
},
|
|
3435
|
+
{
|
|
3436
|
+
"name": "RoomReportGateEvent",
|
|
3437
|
+
"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
|
+
},
|
|
3439
|
+
{
|
|
3440
|
+
"name": "RoomRunStateEvent",
|
|
3441
|
+
"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}"
|
|
3442
|
+
},
|
|
3443
|
+
{
|
|
3444
|
+
"name": "RoomRunUsage",
|
|
3445
|
+
"declaration": "export interface RoomRunUsage {\n readonly inputTokens: number;\n readonly outputTokens: number;\n readonly cacheReadTokens?: number;\n readonly cacheWriteTokens?: number;\n readonly reasoningTokens?: number;\n}"
|
|
3446
|
+
},
|
|
3447
|
+
{
|
|
3448
|
+
"name": "RoomSettingsEvent",
|
|
3449
|
+
"declaration": "export interface RoomSettingsEvent {\n readonly memberMessages?: 'free' | 'confirm';\n readonly hopLimit?: number;\n readonly paused?: boolean;\n readonly reportTiming?: 'judge' | 'each';\n readonly autoTaskFiling?: boolean;\n readonly reportThreshold?: number;\n readonly reportWaitMinutes?: number;\n readonly helpReminderMinutes?: number;\n}"
|
|
3450
|
+
},
|
|
3451
|
+
{
|
|
3452
|
+
"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}"
|
|
3454
|
+
},
|
|
3455
|
+
{
|
|
3456
|
+
"name": "RoomTaskAddedEvent",
|
|
3457
|
+
"declaration": "export interface RoomTaskAddedEvent {\n readonly deliveryId?: string;\n readonly id: string;\n readonly member: string;\n readonly title: string;\n readonly status: 'pending' | 'in_progress';\n readonly blockedBy?: string;\n}"
|
|
3458
|
+
},
|
|
3459
|
+
{
|
|
3460
|
+
"name": "RoomTaskEditedEvent",
|
|
3461
|
+
"declaration": "export interface RoomTaskEditedEvent {\n readonly id: string;\n readonly title?: string;\n readonly blockedBy?: string | null;\n readonly member?: string;\n}"
|
|
3462
|
+
},
|
|
3463
|
+
{
|
|
3464
|
+
"name": "RoomTaskLinkEvent",
|
|
3465
|
+
"declaration": "export interface RoomTaskLinkEvent {\n readonly message: string;\n readonly task: string;\n readonly by: 'human' | 'coordinator' | 'model';\n readonly probability?: number;\n}"
|
|
3466
|
+
},
|
|
3467
|
+
{
|
|
3468
|
+
"name": "RoomTaskUpdatedEvent",
|
|
3469
|
+
"declaration": "export interface RoomTaskUpdatedEvent {\n readonly id: string;\n readonly status: 'in_progress' | 'done' | 'cancelled' | 'failed';\n}"
|
|
3470
|
+
},
|
|
3471
|
+
{
|
|
3472
|
+
"name": "SandboxMode",
|
|
3473
|
+
"declaration": "export type SandboxMode = 'read-only' | 'workspace-write' | 'danger-full-access';"
|
|
3474
|
+
},
|
|
3475
|
+
{
|
|
3476
|
+
"name": "SceneStyle3D",
|
|
3477
|
+
"declaration": "export interface SceneStyle3D {\n readonly bg?: string;\n readonly ground?: string;\n readonly ground2?: string;\n readonly water?: string;\n readonly fog?: readonly [number, number];\n readonly light?: number;\n}"
|
|
3478
|
+
},
|
|
3479
|
+
{
|
|
3480
|
+
"name": "ScheduleChange",
|
|
3481
|
+
"declaration": "export type ScheduleChange = ScheduleCreateChange | ScheduleDeleteChange | ScheduleDispatchChange;"
|
|
3482
|
+
},
|
|
3483
|
+
{
|
|
3484
|
+
"name": "ScheduleCreateChange",
|
|
3485
|
+
"declaration": "export interface ScheduleCreateChange {\n readonly version: 1;\n readonly operation: 'create';\n readonly schedule: LegacyScheduleRecord;\n}"
|
|
3486
|
+
},
|
|
3487
|
+
{
|
|
3488
|
+
"name": "ScheduleDeleteChange",
|
|
3489
|
+
"declaration": "export interface ScheduleDeleteChange {\n readonly version: 1;\n readonly operation: 'delete';\n readonly id: ScheduleId;\n}"
|
|
3490
|
+
},
|
|
3491
|
+
{
|
|
3492
|
+
"name": "ScheduleDispatchChange",
|
|
3493
|
+
"declaration": "export type ScheduleDispatchChange = OneShotScheduleDispatchChange | EveryScheduleDispatchChange;"
|
|
3494
|
+
},
|
|
3495
|
+
{
|
|
3496
|
+
"name": "ScheduleId",
|
|
3497
|
+
"declaration": "export type ScheduleId = Branded<'ScheduleId'>;"
|
|
3498
|
+
},
|
|
3499
|
+
{
|
|
3500
|
+
"name": "Session",
|
|
3501
|
+
"declaration": "export class Session {\n get surface(): SessionSurface;\n readonly header: SessionHeader;\n readonly inheritedEventCount: SessionLogOffset;\n get id(): SessionId;\n readonly firstLiveSeq: SessionLogOffset;\n readonly firstLifecycleSeq: SessionLogOffset;\n eventAt(seq: SessionSeq): SessionEvent | undefined;\n snapshotEvents(fromSeq: SessionLogOffset = SessionLogOffset(0), toSeqExclusive: SessionLogOffset = this.seq): readonly SessionEvent[];\n ownEvents(): readonly SessionEvent[];\n isOwnSeq(seq: SessionSeq): boolean;\n get seq(): SessionLogOffset;\n append<T extends SessionEventType>(type: T, data: SessionEventMap[T], ...opts: T extends SurfaceEventType ? [opts: SurfaceIntent<T>] : []): SessionEvent<T>;\n requestHeader(): EpochHeader | undefined;\n requestContext(): RequestContext | undefined;\n toolHistory(): ToolHistory;\n deriveMessages(): Message[];\n deriveEventMessage(event: SessionEvent): Message | null;\n}"
|
|
3502
|
+
},
|
|
3503
|
+
{
|
|
3504
|
+
"name": "SessionEvent",
|
|
3505
|
+
"declaration": "export type SessionEvent<T extends SessionEventType = SessionEventType> = { [K in SessionEventType]: { type: K; seq: SessionSeq; time: number; data: SessionEventMap[K]; ignorable?: true; } & (K extends SurfaceEventType ? SurfaceIntent<K> : { surfaceOp?: never; sourceEventSeqs?: never; }) }[T];"
|
|
3506
|
+
},
|
|
3507
|
+
{
|
|
3508
|
+
"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}"
|
|
3510
|
+
},
|
|
3511
|
+
{
|
|
3512
|
+
"name": "SessionEventType",
|
|
3513
|
+
"declaration": "export type SessionEventType = keyof SessionEventMap;"
|
|
3514
|
+
},
|
|
3515
|
+
{
|
|
3516
|
+
"name": "SessionGameState",
|
|
3517
|
+
"declaration": "export interface SessionGameState {\n readonly bound: ProjectView | null;\n readonly projects: readonly ProjectRow[];\n}"
|
|
3518
|
+
},
|
|
3519
|
+
{
|
|
3520
|
+
"name": "SessionHeader",
|
|
3521
|
+
"declaration": "export interface SessionHeader {\n readonly version: typeof SESSION_FORMAT_VERSION;\n readonly id: SessionId;\n readonly createdAt: number;\n readonly cwd?: string;\n readonly parentSession?: SessionId;\n readonly isSeeded: boolean;\n readonly origin?: 'subagent';\n readonly delegationDepth?: number;\n readonly agentPreset?: string;\n}"
|
|
3522
|
+
},
|
|
3523
|
+
{
|
|
3524
|
+
"name": "SessionId",
|
|
3525
|
+
"declaration": "export type SessionId = Branded<'SessionId'>;"
|
|
3526
|
+
},
|
|
3527
|
+
{
|
|
3528
|
+
"name": "SessionLogOffset",
|
|
3529
|
+
"declaration": "export type SessionLogOffset = BrandedNumber<'SessionLogOffset'>;"
|
|
3530
|
+
},
|
|
3531
|
+
{
|
|
3532
|
+
"name": "SessionReferenceSource",
|
|
3533
|
+
"declaration": "export interface SessionReferenceSource {\n kind: 'session-reference';\n form: 'recall';\n version: 1;\n references: { sessionId: string; label: string; capturedFormatVersion?: number; capturedThroughSeq: OptionalSessionSeq; compacted: boolean; originalMessages: number; retainedMessages: number; omittedMessages: number; omittedBytes: number; truncated: boolean; inputIndex: number; }[];\n}"
|
|
3534
|
+
},
|
|
3535
|
+
{
|
|
3536
|
+
"name": "SessionRequestId",
|
|
3537
|
+
"declaration": "export type SessionRequestId = Branded<'session-request-id'>;"
|
|
3538
|
+
},
|
|
3539
|
+
{
|
|
3540
|
+
"name": "SessionSeq",
|
|
3541
|
+
"declaration": "export type SessionSeq = BrandedNumber<'SessionSeq'>;"
|
|
3542
|
+
},
|
|
3543
|
+
{
|
|
3544
|
+
"name": "SessionSurface",
|
|
3545
|
+
"declaration": "export interface SessionSurface {\n readonly nodes: readonly SessionSeq[];\n readonly replaceGeneration: number;\n readonly contentGeneration: number;\n}"
|
|
3546
|
+
},
|
|
3547
|
+
{
|
|
3548
|
+
"name": "SessionTitleEventData",
|
|
3549
|
+
"declaration": "export interface SessionTitleEventData {\n readonly title: string;\n readonly messageSeqs: SessionSeq[];\n readonly source: SessionTitleSource;\n}"
|
|
3550
|
+
},
|
|
3551
|
+
{
|
|
3552
|
+
"name": "SessionTitleModelIdentity",
|
|
3553
|
+
"declaration": "export interface SessionTitleModelIdentity {\n readonly provider: string;\n readonly model: string;\n}"
|
|
3554
|
+
},
|
|
3555
|
+
{
|
|
3556
|
+
"name": "SessionTitleProviderId",
|
|
3557
|
+
"declaration": "export type SessionTitleProviderId = Branded<'SessionTitleProviderId'>;"
|
|
3558
|
+
},
|
|
3559
|
+
{
|
|
3560
|
+
"name": "SessionTitleSource",
|
|
3561
|
+
"declaration": "export type SessionTitleSource = { readonly kind: 'fallback'; } | { readonly kind: 'provider'; readonly provider: SessionTitleProviderId; readonly model?: SessionTitleModelIdentity; } | { readonly kind: 'user'; };"
|
|
3562
|
+
},
|
|
3563
|
+
{
|
|
3564
|
+
"name": "SkillInvocationSource",
|
|
3565
|
+
"declaration": "export interface SkillInvocationSource {\n readonly kind: 'skill-invocation';\n readonly name: string;\n readonly form: 'instructions';\n}"
|
|
3566
|
+
},
|
|
3567
|
+
{
|
|
3568
|
+
"name": "StreamChunk",
|
|
3569
|
+
"declaration": "export type StreamChunk = { type: 'block-start'; index: number; blockType: ContentBlockType; } | { type: 'text-delta'; index: number; text: string; } | { type: 'reasoning-delta'; index: number; text: string; } | { type: 'tool-call-delta'; index: number; id: ToolCallId; name?: string; argumentsDelta: string; } | { type: 'block-end'; index: number; block: ContentBlock; } | { type: 'usage'; usage: TokenUsage; } | { type: 'finish'; reason: FinishReason; replayState?: ReplayEnvelope; };"
|
|
3570
|
+
},
|
|
3571
|
+
{
|
|
3572
|
+
"name": "Style3D",
|
|
3573
|
+
"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}"
|
|
3574
|
+
},
|
|
3575
|
+
{
|
|
3576
|
+
"name": "SubagentCatalogEvent",
|
|
3577
|
+
"declaration": "export type SubagentCatalogEvent = { readonly childId: SessionId; readonly childCreatedAt: number; } & (({ readonly version: 0; } & KnownCatalogMode) | ({ readonly version: 1; } & (KnownCatalogMode | { readonly mode: 'unknown'; readonly label?: string; })) | { readonly version: 2; readonly mode: 'external'; readonly label?: string; });"
|
|
3578
|
+
},
|
|
3579
|
+
{
|
|
3580
|
+
"name": "SubagentDescriptorBase",
|
|
3581
|
+
"declaration": "export interface SubagentDescriptorBase {\n readonly version: number;\n readonly mode: 'one-shot' | 'continuable';\n readonly provider: string;\n}"
|
|
3582
|
+
},
|
|
3583
|
+
{
|
|
3584
|
+
"name": "SubagentDescriptorData",
|
|
3585
|
+
"declaration": "export type SubagentDescriptorData = OneShotSubagentDescriptorData | ContinuableSubagentDescriptorData;"
|
|
3586
|
+
},
|
|
3587
|
+
{
|
|
3588
|
+
"name": "SubagentSettledMessageSource",
|
|
3589
|
+
"declaration": "export interface SubagentSettledMessageSource {\n readonly kind: 'subagent-settled';\n readonly form: 'notice';\n readonly summary: string;\n readonly senderSessionId: SessionId;\n}"
|
|
3590
|
+
},
|
|
3591
|
+
{
|
|
3592
|
+
"name": "SurfaceEventType",
|
|
3593
|
+
"declaration": "export type SurfaceEventType = 'system/message' | 'developer/message' | 'user/message' | 'assistant/message' | 'tool/result';"
|
|
3594
|
+
},
|
|
3595
|
+
{
|
|
3596
|
+
"name": "SurfaceIntent",
|
|
3597
|
+
"declaration": "export type SurfaceIntent<T extends SurfaceEventType = SurfaceEventType> = { surfaceOp: SurfaceOp; } & (T extends 'assistant/message' ? { sourceEventSeqs?: never; } : { sourceEventSeqs?: SessionSeq[]; });"
|
|
3598
|
+
},
|
|
3599
|
+
{
|
|
3600
|
+
"name": "SurfaceOp",
|
|
3601
|
+
"declaration": "export type SurfaceOp = 'append' | { op: 'replace'; startSeq: SessionSeq; endSeq: SessionSeq; };"
|
|
3602
|
+
},
|
|
3603
|
+
{
|
|
3604
|
+
"name": "SystemMessage",
|
|
3605
|
+
"declaration": "export interface SystemMessage extends MessageBase {\n readonly role: 'system';\n readonly source: MessageSourceMap['system-prompt'];\n}"
|
|
3606
|
+
},
|
|
3607
|
+
{
|
|
3608
|
+
"name": "SystemPromptMessageSource",
|
|
3609
|
+
"declaration": "export interface SystemPromptMessageSource {\n kind: 'system-prompt';\n}"
|
|
3610
|
+
},
|
|
3611
|
+
{
|
|
3612
|
+
"name": "SystemPromptUpdate",
|
|
3613
|
+
"declaration": "export type SystemPromptUpdate = 'in-history';"
|
|
3614
|
+
},
|
|
3615
|
+
{
|
|
3616
|
+
"name": "TeamId",
|
|
3617
|
+
"declaration": "export type TeamId = Branded<'TeamId'>;"
|
|
3618
|
+
},
|
|
3619
|
+
{
|
|
3620
|
+
"name": "TeamMemberPhase",
|
|
3621
|
+
"declaration": "export type TeamMemberPhase = 'provisioning' | 'active' | 'failed';"
|
|
3622
|
+
},
|
|
3623
|
+
{
|
|
3624
|
+
"name": "TeamMemberSnapshot",
|
|
3625
|
+
"declaration": "export interface TeamMemberSnapshot {\n readonly id: SessionId;\n readonly name: string;\n readonly description: string;\n readonly provider: string;\n readonly context: 'fresh' | 'fork';\n readonly phase: TeamMemberPhase;\n readonly error?: string;\n}"
|
|
3626
|
+
},
|
|
3627
|
+
{
|
|
3628
|
+
"name": "TeamMessageId",
|
|
3629
|
+
"declaration": "export type TeamMessageId = Branded<'TeamMessageId'>;"
|
|
3630
|
+
},
|
|
3631
|
+
{
|
|
3632
|
+
"name": "TeamMessageSnapshot",
|
|
3633
|
+
"declaration": "export interface TeamMessageSnapshot {\n readonly id: TeamMessageId;\n readonly senderId: SessionId;\n readonly senderName: string;\n readonly targetId: SessionId;\n readonly content: ContentBlock[];\n}"
|
|
3634
|
+
},
|
|
3635
|
+
{
|
|
3636
|
+
"name": "TeamMessageSource",
|
|
3637
|
+
"declaration": "export interface TeamMessageSource {\n readonly kind: 'team-message';\n readonly teamId: TeamId;\n readonly messageId: TeamMessageId;\n readonly senderId: SessionId;\n readonly senderName: string;\n}"
|
|
3638
|
+
},
|
|
3639
|
+
{
|
|
3640
|
+
"name": "TeamTaskId",
|
|
3641
|
+
"declaration": "export type TeamTaskId = Branded<'TeamTaskId'>;"
|
|
3642
|
+
},
|
|
3643
|
+
{
|
|
3644
|
+
"name": "TeamTaskSnapshot",
|
|
3645
|
+
"declaration": "export interface TeamTaskSnapshot {\n readonly id: TeamTaskId;\n readonly revision: number;\n readonly subject: string;\n readonly description: string;\n readonly status: TeamTaskStatus;\n readonly ownerId?: SessionId;\n readonly blockedBy: TeamTaskId[];\n readonly writeScopes: string[];\n}"
|
|
3646
|
+
},
|
|
3647
|
+
{
|
|
3648
|
+
"name": "TeamTaskStatus",
|
|
3649
|
+
"declaration": "export type TeamTaskStatus = 'pending' | 'in_progress' | 'completed' | 'deleted';"
|
|
3650
|
+
},
|
|
3651
|
+
{
|
|
3652
|
+
"name": "TextBlock",
|
|
3653
|
+
"declaration": "export interface TextBlock {\n type: 'text';\n text: string;\n}"
|
|
3654
|
+
},
|
|
3655
|
+
{
|
|
3656
|
+
"name": "TodoItem",
|
|
3657
|
+
"declaration": "export interface TodoItem {\n content: string;\n status: 'pending' | 'in_progress' | 'completed';\n}"
|
|
3658
|
+
},
|
|
3659
|
+
{
|
|
3660
|
+
"name": "TokenUsage",
|
|
3661
|
+
"declaration": "export interface TokenUsage {\n inputTokens: number;\n outputTokens: number;\n totalTokens?: number;\n cacheReadTokens?: number;\n cacheWriteTokens?: number;\n reasoningTokens?: number;\n}"
|
|
3662
|
+
},
|
|
3663
|
+
{
|
|
3664
|
+
"name": "ToolAdditionBlock",
|
|
3665
|
+
"declaration": "export interface ToolAdditionBlock {\n type: 'tool-addition';\n toolName: string;\n tool?: never;\n}"
|
|
3666
|
+
},
|
|
3667
|
+
{
|
|
3668
|
+
"name": "ToolCallBlock",
|
|
3669
|
+
"declaration": "export interface ToolCallBlock {\n type: 'tool-call';\n id: ToolCallId;\n name: string;\n arguments: string;\n}"
|
|
3670
|
+
},
|
|
3671
|
+
{
|
|
3672
|
+
"name": "ToolCallId",
|
|
3673
|
+
"declaration": "export type ToolCallId = Branded<'ToolCallId'>;"
|
|
3674
|
+
},
|
|
3675
|
+
{
|
|
3676
|
+
"name": "ToolHistory",
|
|
3677
|
+
"declaration": "export interface ToolHistory {\n readonly tools: readonly ToolSchema[];\n readonly updates: readonly { readonly messageId: MessageId; readonly additions: readonly ToolSchema[]; }[];\n}"
|
|
3678
|
+
},
|
|
3679
|
+
{
|
|
3680
|
+
"name": "ToolMessageSource",
|
|
3681
|
+
"declaration": "export interface ToolMessageSource {\n kind: 'tool';\n callId: ToolCallId;\n}"
|
|
3682
|
+
},
|
|
3683
|
+
{
|
|
3684
|
+
"name": "ToolRemovalBlock",
|
|
3685
|
+
"declaration": "export interface ToolRemovalBlock {\n type: 'tool-removal';\n toolName: string;\n}"
|
|
3686
|
+
},
|
|
3687
|
+
{
|
|
3688
|
+
"name": "ToolRestriction",
|
|
3689
|
+
"declaration": "export interface ToolRestriction {\n readonly allow?: readonly string[];\n readonly deny?: readonly string[];\n}"
|
|
3690
|
+
},
|
|
3691
|
+
{
|
|
3692
|
+
"name": "ToolResultMessage",
|
|
3693
|
+
"declaration": "export interface ToolResultMessage extends MessageBase {\n readonly role: 'tool';\n readonly source: ToolMessageSource;\n readonly toolCallId: ToolCallId;\n readonly isError?: boolean;\n}"
|
|
3694
|
+
},
|
|
3695
|
+
{
|
|
3696
|
+
"name": "ToolSchema",
|
|
3697
|
+
"declaration": "export interface ToolSchema {\n deferLoading?: true;\n name: string;\n description: string;\n parameters: Record<string, unknown>;\n}"
|
|
3698
|
+
},
|
|
3699
|
+
{
|
|
3700
|
+
"name": "TurnBaseline",
|
|
3701
|
+
"declaration": "export interface TurnBaseline {\n readonly at: number;\n readonly projectId: string;\n readonly files: ReadonlyMap<string, string>;\n readonly elements: ReadonlyMap<string, { name: string; json: string; look: string; fields: Record<string, string>; }>;\n readonly params: Readonly<Record<string, number>>;\n readonly current: number | undefined;\n readonly candidate: number | undefined;\n}"
|
|
3702
|
+
},
|
|
3703
|
+
{
|
|
3704
|
+
"name": "TurnCheckOutcome",
|
|
3705
|
+
"declaration": "export type TurnCheckOutcome = { readonly kind: 'skip'; } | { readonly kind: 'pass'; readonly record: CheckRecord; readonly deployed: VersionRecord | null; readonly candidate: VersionRecord | null; } | { readonly kind: 'fail'; readonly record: CheckRecord; };"
|
|
3706
|
+
},
|
|
3707
|
+
{
|
|
3708
|
+
"name": "TurnEndCancelCause",
|
|
3709
|
+
"declaration": "export type TurnEndCancelCause = AgentCancelCause | { readonly kind: 'legacy'; };"
|
|
3710
|
+
},
|
|
3711
|
+
{
|
|
3712
|
+
"name": "TurnEndReason",
|
|
3713
|
+
"declaration": "export type TurnEndReason = TurnEndReasonMap[keyof TurnEndReasonMap];"
|
|
3714
|
+
},
|
|
3715
|
+
{
|
|
3716
|
+
"name": "TurnEndReasonMap",
|
|
3717
|
+
"declaration": "export interface TurnEndReasonMap {\n completed: { kind: 'completed'; };\n aborted: { kind: 'aborted'; reason: TurnEndCancelCause; };\n blocked: { kind: 'blocked'; };\n error: { kind: 'error'; error: LlmFailure; };\n 'max-tokens': { kind: 'max-tokens'; };\n interrupted: { kind: 'interrupted'; };\n forked: { kind: 'forked'; };\n}"
|
|
3718
|
+
},
|
|
3719
|
+
{
|
|
3720
|
+
"name": "TurnReport",
|
|
3721
|
+
"declaration": "export interface TurnReport {\n readonly turn: number;\n readonly projectId: string;\n readonly title: string;\n readonly at: string;\n readonly version: { readonly kind: 'deployed' | 'candidate'; readonly version: number; } | null;\n readonly check: { readonly ok: boolean; readonly fixes: number; readonly gaveUp: boolean; readonly passed: number; readonly failures: number; } | null;\n readonly elements: readonly { readonly id: string; readonly name: string; readonly what: 'new' | 'removed' | 'look' | 'fields'; readonly fields?: readonly string[]; readonly looks?: { readonly before: string | null; readonly after: string; }; }[];\n readonly chapters: readonly { readonly id: string; readonly title: string; }[];\n readonly params: readonly { readonly key: string; readonly label: string; readonly from?: number; readonly to: number; }[];\n readonly code: readonly string[];\n readonly tests: readonly string[];\n}"
|
|
3722
|
+
},
|
|
3723
|
+
{
|
|
3724
|
+
"name": "UserMessage",
|
|
3725
|
+
"declaration": "export interface UserMessage extends MessageBase {\n readonly role: 'user';\n}"
|
|
3726
|
+
},
|
|
3727
|
+
{
|
|
3728
|
+
"name": "VersionDiff",
|
|
3729
|
+
"declaration": "export interface VersionDiff {\n readonly added: readonly string[];\n readonly removed: readonly string[];\n readonly changed: readonly string[];\n}"
|
|
3730
|
+
},
|
|
3731
|
+
{
|
|
3732
|
+
"name": "VersionRecord",
|
|
3733
|
+
"declaration": "export interface VersionRecord {\n readonly version: number;\n readonly at: string;\n readonly fingerprint: string;\n readonly by?: VersionSource;\n readonly note?: string;\n}"
|
|
3734
|
+
},
|
|
3735
|
+
{
|
|
3736
|
+
"name": "VersionRow",
|
|
3737
|
+
"declaration": "export interface VersionRow extends VersionRecord {\n readonly status: VersionStatus;\n readonly passed?: number;\n}"
|
|
3738
|
+
},
|
|
3739
|
+
{
|
|
3740
|
+
"name": "VersionSource",
|
|
3741
|
+
"declaration": "export type VersionSource = 'user' | 'agent' | 'turn';"
|
|
3742
|
+
},
|
|
3743
|
+
{
|
|
3744
|
+
"name": "VersionStatus",
|
|
3745
|
+
"declaration": "export type VersionStatus = 'current' | 'candidate' | 'rejected' | 'past';"
|
|
3746
|
+
},
|
|
3747
|
+
{
|
|
3748
|
+
"name": "WebhookDeliveryId",
|
|
3749
|
+
"declaration": "export type WebhookDeliveryId = Branded<'WebhookDeliveryId'>;"
|
|
3750
|
+
},
|
|
3751
|
+
{
|
|
3752
|
+
"name": "WebhookRuleId",
|
|
3753
|
+
"declaration": "export type WebhookRuleId = Branded<'WebhookRuleId'>;"
|
|
3754
|
+
},
|
|
3755
|
+
{
|
|
3756
|
+
"name": "WebhookSourceId",
|
|
3757
|
+
"declaration": "export type WebhookSourceId = Branded<'WebhookSourceId'>;"
|
|
3758
|
+
},
|
|
3759
|
+
{
|
|
3760
|
+
"name": "WorkingChanges",
|
|
3761
|
+
"declaration": "export interface WorkingChanges {\n readonly against: number | null;\n readonly hasEntry: boolean;\n readonly count: number;\n readonly files: readonly { readonly path: string; readonly kind: 'added' | 'changed' | 'removed'; }[];\n readonly lastAt: string | null;\n readonly busy: 'turn' | 'recent' | null;\n readonly edits: readonly PendingChange[];\n readonly failed: readonly { readonly where: string; readonly message: string; }[] | null;\n}"
|
|
3762
|
+
}
|
|
3763
|
+
]
|
|
3764
|
+
}
|
|
3765
|
+
],
|
|
3766
|
+
"events": [],
|
|
3767
|
+
"objects": []
|
|
3768
|
+
},
|
|
3769
|
+
}
|