wicked-crew 0.7.46 → 0.7.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/dist/api/capture.d.ts +2 -2
  2. package/dist/api/delivery-index.d.ts +21 -0
  3. package/dist/api/delivery-index.d.ts.map +1 -1
  4. package/dist/api/delivery-index.js +36 -0
  5. package/dist/api/delivery-index.js.map +1 -1
  6. package/dist/api/elicitation-cache.d.ts +12 -0
  7. package/dist/api/elicitation-cache.d.ts.map +1 -1
  8. package/dist/api/elicitation-cache.js +17 -1
  9. package/dist/api/elicitation-cache.js.map +1 -1
  10. package/dist/api/eval-sample.d.ts +6 -6
  11. package/dist/api/governance-steering.d.ts.map +1 -1
  12. package/dist/api/governance-steering.js +1 -0
  13. package/dist/api/governance-steering.js.map +1 -1
  14. package/dist/api/mcp.d.ts +4 -4
  15. package/dist/api/policy-landing.d.ts +55 -0
  16. package/dist/api/policy-landing.d.ts.map +1 -0
  17. package/dist/api/policy-landing.js +174 -0
  18. package/dist/api/policy-landing.js.map +1 -0
  19. package/dist/api/recording.d.ts +228 -0
  20. package/dist/api/recording.d.ts.map +1 -0
  21. package/dist/api/recording.js +1140 -0
  22. package/dist/api/recording.js.map +1 -0
  23. package/dist/api/routes.d.ts +31 -39
  24. package/dist/api/routes.d.ts.map +1 -1
  25. package/dist/api/routes.js +264 -104
  26. package/dist/api/routes.js.map +1 -1
  27. package/dist/api/run-timing-index.d.ts +17 -0
  28. package/dist/api/run-timing-index.d.ts.map +1 -1
  29. package/dist/api/run-timing-index.js +43 -1
  30. package/dist/api/run-timing-index.js.map +1 -1
  31. package/dist/api/server.d.ts +12 -0
  32. package/dist/api/server.d.ts.map +1 -1
  33. package/dist/api/server.js +74 -1
  34. package/dist/api/server.js.map +1 -1
  35. package/dist/api/testing.d.ts +4 -4
  36. package/dist/api/testing.d.ts.map +1 -1
  37. package/dist/api/testing.js +3 -0
  38. package/dist/api/testing.js.map +1 -1
  39. package/dist/api/watch-routes.d.ts +30 -0
  40. package/dist/api/watch-routes.d.ts.map +1 -0
  41. package/dist/api/watch-routes.js +104 -0
  42. package/dist/api/watch-routes.js.map +1 -0
  43. package/dist/campaigns/routes.d.ts +2 -2
  44. package/dist/cli/index.d.ts.map +1 -1
  45. package/dist/cli/index.js +4 -1
  46. package/dist/cli/index.js.map +1 -1
  47. package/dist/core/adapter.d.ts +36 -0
  48. package/dist/core/adapter.d.ts.map +1 -1
  49. package/dist/core/adapter.js +177 -5
  50. package/dist/core/adapter.js.map +1 -1
  51. package/dist/core/run-identity.js +1 -1
  52. package/dist/core/run-identity.js.map +1 -1
  53. package/dist/core/walkthrough-root.d.ts +21 -0
  54. package/dist/core/walkthrough-root.d.ts.map +1 -0
  55. package/dist/core/walkthrough-root.js +66 -0
  56. package/dist/core/walkthrough-root.js.map +1 -0
  57. package/dist/decisions/derive.d.ts +79 -0
  58. package/dist/decisions/derive.d.ts.map +1 -0
  59. package/dist/decisions/derive.js +282 -0
  60. package/dist/decisions/derive.js.map +1 -0
  61. package/dist/decisions/events.d.ts +23 -0
  62. package/dist/decisions/events.d.ts.map +1 -0
  63. package/dist/decisions/events.js +22 -0
  64. package/dist/decisions/events.js.map +1 -0
  65. package/dist/decisions/ingest.d.ts +28 -0
  66. package/dist/decisions/ingest.d.ts.map +1 -0
  67. package/dist/decisions/ingest.js +92 -0
  68. package/dist/decisions/ingest.js.map +1 -0
  69. package/dist/decisions/land.d.ts +100 -0
  70. package/dist/decisions/land.d.ts.map +1 -0
  71. package/dist/decisions/land.js +466 -0
  72. package/dist/decisions/land.js.map +1 -0
  73. package/dist/decisions/ledger.d.ts +60 -0
  74. package/dist/decisions/ledger.d.ts.map +1 -0
  75. package/dist/decisions/ledger.js +246 -0
  76. package/dist/decisions/ledger.js.map +1 -0
  77. package/dist/decisions/routes.d.ts +10 -0
  78. package/dist/decisions/routes.d.ts.map +1 -0
  79. package/dist/decisions/routes.js +141 -0
  80. package/dist/decisions/routes.js.map +1 -0
  81. package/dist/decisions/types.d.ts +120 -0
  82. package/dist/decisions/types.d.ts.map +1 -0
  83. package/dist/decisions/types.js +19 -0
  84. package/dist/decisions/types.js.map +1 -0
  85. package/dist/interactive/draft-events.d.ts.map +1 -1
  86. package/dist/interactive/draft-events.js +1 -0
  87. package/dist/interactive/draft-events.js.map +1 -1
  88. package/dist/projects/events.d.ts.map +1 -1
  89. package/dist/projects/events.js +2 -1
  90. package/dist/projects/events.js.map +1 -1
  91. package/dist/projects/state-home-preflight.d.ts.map +1 -1
  92. package/dist/projects/state-home-preflight.js +3 -0
  93. package/dist/projects/state-home-preflight.js.map +1 -1
  94. package/dist/projects/state-home-registry.d.ts.map +1 -1
  95. package/dist/projects/state-home-registry.js +2 -0
  96. package/dist/projects/state-home-registry.js.map +1 -1
  97. package/dist/projects/state-home.d.ts +6 -0
  98. package/dist/projects/state-home.d.ts.map +1 -1
  99. package/dist/projects/state-home.js +28 -1
  100. package/dist/projects/state-home.js.map +1 -1
  101. package/dist/qe/acceptance.d.ts +45 -4
  102. package/dist/qe/acceptance.d.ts.map +1 -1
  103. package/dist/qe/acceptance.js +93 -4
  104. package/dist/qe/acceptance.js.map +1 -1
  105. package/dist/qe/ledger.d.ts +20 -0
  106. package/dist/qe/ledger.d.ts.map +1 -1
  107. package/dist/qe/ledger.js +34 -0
  108. package/dist/qe/ledger.js.map +1 -1
  109. package/dist/qe/walkthrough-acceptance.d.ts +82 -0
  110. package/dist/qe/walkthrough-acceptance.d.ts.map +1 -0
  111. package/dist/qe/walkthrough-acceptance.js +248 -0
  112. package/dist/qe/walkthrough-acceptance.js.map +1 -0
  113. package/dist/skills/base-skill.d.ts.map +1 -1
  114. package/dist/skills/base-skill.js +3 -2
  115. package/dist/skills/base-skill.js.map +1 -1
  116. package/dist/skills/plugin-source.d.ts +19 -1
  117. package/dist/skills/plugin-source.d.ts.map +1 -1
  118. package/dist/skills/plugin-source.js +31 -2
  119. package/dist/skills/plugin-source.js.map +1 -1
  120. package/dist/skills/runtime.d.ts +11 -2
  121. package/dist/skills/runtime.d.ts.map +1 -1
  122. package/dist/skills/runtime.js +29 -1
  123. package/dist/skills/runtime.js.map +1 -1
  124. package/dist/skills/store.d.ts +14 -1
  125. package/dist/skills/store.d.ts.map +1 -1
  126. package/dist/skills/store.js +19 -5
  127. package/dist/skills/store.js.map +1 -1
  128. package/dist/standing-orders/routes.d.ts +4 -4
  129. package/dist/standing-orders/store.d.ts +2 -2
  130. package/dist/watch/checks/check-failed.d.ts +24 -0
  131. package/dist/watch/checks/check-failed.d.ts.map +1 -0
  132. package/dist/watch/checks/check-failed.js +56 -0
  133. package/dist/watch/checks/check-failed.js.map +1 -0
  134. package/dist/watch/checks/deliver-audit.d.ts +19 -0
  135. package/dist/watch/checks/deliver-audit.d.ts.map +1 -0
  136. package/dist/watch/checks/deliver-audit.js +129 -0
  137. package/dist/watch/checks/deliver-audit.js.map +1 -0
  138. package/dist/watch/checks/index.d.ts +8 -0
  139. package/dist/watch/checks/index.d.ts.map +1 -0
  140. package/dist/watch/checks/index.js +19 -0
  141. package/dist/watch/checks/index.js.map +1 -0
  142. package/dist/watch/checks/lag.d.ts +24 -0
  143. package/dist/watch/checks/lag.d.ts.map +1 -0
  144. package/dist/watch/checks/lag.js +55 -0
  145. package/dist/watch/checks/lag.js.map +1 -0
  146. package/dist/watch/checks/quiet-after-claim.d.ts +17 -0
  147. package/dist/watch/checks/quiet-after-claim.d.ts.map +1 -0
  148. package/dist/watch/checks/quiet-after-claim.js +89 -0
  149. package/dist/watch/checks/quiet-after-claim.js.map +1 -0
  150. package/dist/watch/checks/ungated.d.ts +12 -0
  151. package/dist/watch/checks/ungated.d.ts.map +1 -0
  152. package/dist/watch/checks/ungated.js +64 -0
  153. package/dist/watch/checks/ungated.js.map +1 -0
  154. package/dist/watch/emit.d.ts +122 -0
  155. package/dist/watch/emit.d.ts.map +1 -0
  156. package/dist/watch/emit.js +443 -0
  157. package/dist/watch/emit.js.map +1 -0
  158. package/dist/watch/events.d.ts +21 -0
  159. package/dist/watch/events.d.ts.map +1 -0
  160. package/dist/watch/events.js +21 -0
  161. package/dist/watch/events.js.map +1 -0
  162. package/dist/watch/keys.d.ts +15 -0
  163. package/dist/watch/keys.d.ts.map +1 -0
  164. package/dist/watch/keys.js +23 -0
  165. package/dist/watch/keys.js.map +1 -0
  166. package/dist/watch/lanes.d.ts +41 -0
  167. package/dist/watch/lanes.d.ts.map +1 -0
  168. package/dist/watch/lanes.js +73 -0
  169. package/dist/watch/lanes.js.map +1 -0
  170. package/dist/watch/loader.d.ts +47 -0
  171. package/dist/watch/loader.d.ts.map +1 -0
  172. package/dist/watch/loader.js +178 -0
  173. package/dist/watch/loader.js.map +1 -0
  174. package/dist/watch/registry.d.ts +137 -0
  175. package/dist/watch/registry.d.ts.map +1 -0
  176. package/dist/watch/registry.js +530 -0
  177. package/dist/watch/registry.js.map +1 -0
  178. package/dist/watch/ring.d.ts +32 -0
  179. package/dist/watch/ring.d.ts.map +1 -0
  180. package/dist/watch/ring.js +90 -0
  181. package/dist/watch/ring.js.map +1 -0
  182. package/dist/watch/router.d.ts +25 -0
  183. package/dist/watch/router.d.ts.map +1 -0
  184. package/dist/watch/router.js +87 -0
  185. package/dist/watch/router.js.map +1 -0
  186. package/dist/watch/sources.d.ts +42 -0
  187. package/dist/watch/sources.d.ts.map +1 -0
  188. package/dist/watch/sources.js +104 -0
  189. package/dist/watch/sources.js.map +1 -0
  190. package/dist/watch/types.d.ts +110 -0
  191. package/dist/watch/types.d.ts.map +1 -0
  192. package/dist/watch/types.js +6 -0
  193. package/dist/watch/types.js.map +1 -0
  194. package/endpoint-manifest.json +178 -1
  195. package/package.json +3 -2
  196. package/watch/entries/deliver-audit.json +17 -0
  197. package/watch/entries/quiet-after-claim.json +16 -0
  198. package/watch/entries/registry-check-failed.json +12 -0
  199. package/watch/entries/registry-lagging.json +12 -0
  200. package/watch/entries/ungated.json +13 -0
  201. package/dist/api/demo.d.ts +0 -90
  202. package/dist/api/demo.d.ts.map +0 -1
  203. package/dist/api/demo.js +0 -492
  204. package/dist/api/demo.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 1,
3
- "apiTypesVersion": "0.69.0",
3
+ "apiTypesVersion": "0.83.0",
4
4
  "endpoints": [
5
5
  {
6
6
  "method": "GET",
@@ -149,6 +149,85 @@
149
149
  "responseType": null,
150
150
  "statusCodes": []
151
151
  },
152
+ {
153
+ "method": "GET",
154
+ "path": "/api/v1/decisions",
155
+ "requestType": null,
156
+ "responseType": "ListDecisionsResponse",
157
+ "statusCodes": [
158
+ 200,
159
+ 400,
160
+ 403
161
+ ]
162
+ },
163
+ {
164
+ "method": "POST",
165
+ "path": "/api/v1/decisions/:id/dismiss",
166
+ "requestType": "DismissDecisionBody",
167
+ "responseType": "{ ok: true }",
168
+ "statusCodes": [
169
+ 200,
170
+ 400,
171
+ 403,
172
+ 404,
173
+ 409,
174
+ 502
175
+ ]
176
+ },
177
+ {
178
+ "method": "POST",
179
+ "path": "/api/v1/decisions/:id/remember",
180
+ "requestType": "RememberDecisionBody",
181
+ "responseType": "RememberDecisionResponse",
182
+ "statusCodes": [
183
+ 200,
184
+ 400,
185
+ 403,
186
+ 404,
187
+ 409,
188
+ 502
189
+ ]
190
+ },
191
+ {
192
+ "method": "POST",
193
+ "path": "/api/v1/decisions/:id/same",
194
+ "requestType": "SameDecisionBody",
195
+ "responseType": "{ rule_id?: string }",
196
+ "statusCodes": [
197
+ 200,
198
+ 400,
199
+ 403,
200
+ 404,
201
+ 409,
202
+ 502
203
+ ]
204
+ },
205
+ {
206
+ "method": "POST",
207
+ "path": "/api/v1/decisions/:id/undo",
208
+ "requestType": null,
209
+ "responseType": "{ ok: true }",
210
+ "statusCodes": [
211
+ 200,
212
+ 403,
213
+ 404,
214
+ 409,
215
+ 502
216
+ ]
217
+ },
218
+ {
219
+ "method": "POST",
220
+ "path": "/api/v1/decisions/:id/widen",
221
+ "requestType": null,
222
+ "responseType": "{ rule_id: string }",
223
+ "statusCodes": [
224
+ 200,
225
+ 403,
226
+ 404,
227
+ 409,
228
+ 502
229
+ ]
230
+ },
152
231
  {
153
232
  "method": "GET",
154
233
  "path": "/api/v1/deliveries/freeze",
@@ -1143,6 +1222,22 @@
1143
1222
  404
1144
1223
  ]
1145
1224
  },
1225
+ {
1226
+ "method": "POST",
1227
+ "path": "/api/v1/runs/:id/demo/export",
1228
+ "requestType": "DemoExportBody",
1229
+ "responseType": "DemoExportResponse",
1230
+ "statusCodes": [
1231
+ 200,
1232
+ 400,
1233
+ 404,
1234
+ 409,
1235
+ 422,
1236
+ 502,
1237
+ 503,
1238
+ 504
1239
+ ]
1240
+ },
1146
1241
  {
1147
1242
  "method": "GET",
1148
1243
  "path": "/api/v1/runs/:id/demo/file",
@@ -1299,6 +1394,45 @@
1299
1394
  "responseType": null,
1300
1395
  "statusCodes": []
1301
1396
  },
1397
+ {
1398
+ "method": "GET",
1399
+ "path": "/api/v1/runs/:id/walkthrough",
1400
+ "requestType": null,
1401
+ "responseType": "WalkthroughView",
1402
+ "statusCodes": [
1403
+ 200,
1404
+ 400,
1405
+ 404
1406
+ ]
1407
+ },
1408
+ {
1409
+ "method": "GET",
1410
+ "path": "/api/v1/runs/:id/walkthrough/file",
1411
+ "requestType": null,
1412
+ "responseType": "binary (video/mp4, image/png, text)",
1413
+ "statusCodes": [
1414
+ 200,
1415
+ 206,
1416
+ 400,
1417
+ 404,
1418
+ 416
1419
+ ]
1420
+ },
1421
+ {
1422
+ "method": "PUT",
1423
+ "path": "/api/v1/runs/:id/walkthrough/storyline",
1424
+ "requestType": "PutStorylineBody",
1425
+ "responseType": "PutStorylineResponse",
1426
+ "statusCodes": [
1427
+ 200,
1428
+ 400,
1429
+ 403,
1430
+ 404,
1431
+ 409,
1432
+ 413,
1433
+ 503
1434
+ ]
1435
+ },
1302
1436
  {
1303
1437
  "method": "POST",
1304
1438
  "path": "/api/v1/runs/archive",
@@ -1652,6 +1786,49 @@
1652
1786
  501
1653
1787
  ]
1654
1788
  },
1789
+ {
1790
+ "method": "GET",
1791
+ "path": "/api/v1/watch",
1792
+ "requestType": null,
1793
+ "responseType": "WatchFeedResponse",
1794
+ "statusCodes": [
1795
+ 200,
1796
+ 400
1797
+ ]
1798
+ },
1799
+ {
1800
+ "method": "POST",
1801
+ "path": "/api/v1/watch/:watch_id/dismiss",
1802
+ "requestType": null,
1803
+ "responseType": "{ dismissed: true; watch_id: string }",
1804
+ "statusCodes": [
1805
+ 200,
1806
+ 400,
1807
+ 403,
1808
+ 404,
1809
+ 409,
1810
+ 502,
1811
+ 503
1812
+ ]
1813
+ },
1814
+ {
1815
+ "method": "GET",
1816
+ "path": "/api/v1/watch/entries",
1817
+ "requestType": null,
1818
+ "responseType": "{ entries: WatchEntry[] }",
1819
+ "statusCodes": [
1820
+ 200
1821
+ ]
1822
+ },
1823
+ {
1824
+ "method": "GET",
1825
+ "path": "/api/v1/watch/health",
1826
+ "requestType": null,
1827
+ "responseType": "WatchHealth",
1828
+ "statusCodes": [
1829
+ 200
1830
+ ]
1831
+ },
1655
1832
  {
1656
1833
  "method": "GET",
1657
1834
  "path": "/api/v1/whoami",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wicked-crew",
3
- "version": "0.7.46",
3
+ "version": "0.7.47",
4
4
  "description": "wicked-crew daemon — thin REST+WS bridge to the wicked-core engine via wicked-core-ts",
5
5
  "repository": {
6
6
  "type": "git",
@@ -13,6 +13,7 @@
13
13
  "files": [
14
14
  "dist",
15
15
  "skills",
16
+ "watch",
16
17
  "endpoint-manifest.json"
17
18
  ],
18
19
  "scripts": {
@@ -36,7 +37,7 @@
36
37
  "agent-acp-bridges": "^1.1.1",
37
38
  "fastify": "^5.12.1",
38
39
  "pi-acp": "^0.0.32",
39
- "wicked-core-ts": "^0.7.34",
40
+ "wicked-core-ts": "^0.7.35",
40
41
  "wicked-ledger": "^0.4.0",
41
42
  "yaml": "^2.4.2",
42
43
  "zod": "^3.23.0"
@@ -0,0 +1,17 @@
1
+ {
2
+ "id": "deliver-audit",
3
+ "version": 1,
4
+ "on": { "source": "core", "type": "deliverLiftEvaluated" },
5
+ "join": [
6
+ { "source": "core", "type": "repoChecksEvaluated" },
7
+ { "source": "core", "type": "unitOutputCaptured" },
8
+ { "source": "core", "type": "gateEvaluated" }
9
+ ],
10
+ "filter": {},
11
+ "check": "deterministic:deliver_audit",
12
+ "params": {},
13
+ "threshold": {},
14
+ "emit": { "as": "finding", "severity": "high", "watch_kind": "problem", "attach": null, "rate": { "per_run": 5 } },
15
+ "priority": "p1",
16
+ "enabled": true
17
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "id": "quiet-after-claim",
3
+ "version": 1,
4
+ "on": { "source": "watchdog", "type": "workerStalled" },
5
+ "join": [
6
+ { "source": "core", "type": "unitOutputCaptured" },
7
+ { "source": "core", "type": "gateEvaluated" }
8
+ ],
9
+ "filter": {},
10
+ "check": "deterministic:quiet_after_claim",
11
+ "params": {},
12
+ "threshold": {},
13
+ "emit": { "as": "finding", "severity": "medium", "watch_kind": "quiet", "attach": null, "rate": { "per_run": 5 } },
14
+ "priority": "p1",
15
+ "enabled": true
16
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "registry-check-failed",
3
+ "version": 1,
4
+ "on": { "source": "internal", "type": "registry.check_failed" },
5
+ "filter": {},
6
+ "check": "deterministic:check_failed",
7
+ "params": {},
8
+ "threshold": { "failures": 3, "window_minutes": 10 },
9
+ "emit": { "as": "flag", "severity": "info", "watch_kind": "problem", "attach": null, "rate": { "per_run": 5 } },
10
+ "priority": "p0",
11
+ "enabled": true
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "registry-lagging",
3
+ "version": 1,
4
+ "on": { "source": "internal", "type": "registry.tick" },
5
+ "filter": {},
6
+ "check": "deterministic:lag",
7
+ "params": {},
8
+ "threshold": { "queue_depth": 384, "tail_lag_ms": 60000 },
9
+ "emit": { "as": "flag", "severity": "info", "watch_kind": "problem", "attach": null, "rate": { "per_run": 5 } },
10
+ "priority": "p0",
11
+ "enabled": true
12
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "id": "ungated",
3
+ "version": 1,
4
+ "on": { "source": "core", "type": "gateEvaluated" },
5
+ "join": [{ "source": "core", "type": "unitOutputCaptured" }],
6
+ "filter": {},
7
+ "check": "deterministic:ungated",
8
+ "params": {},
9
+ "threshold": {},
10
+ "emit": { "as": "flag", "severity": "info", "watch_kind": "problem", "attach": null, "rate": { "per_run": 5 } },
11
+ "priority": "p1",
12
+ "enabled": true
13
+ }
@@ -1,90 +0,0 @@
1
- /**
2
- * The Demo experience (wicked-studio#373, migration M9b): a demo of a local app, made by a governed
3
- * run of the built-in `demo` preset — the wicked-garden demo skill's plan → record → review.
4
- *
5
- * POST /projects/:id/demo mints the run's DEMO ROOT (a per-run directory on the daemon host),
6
- * writes the brief there, and launches `demo` THROUGH `POST /runs`
7
- * (one launch path), with the root as the run's only extra write root.
8
- * GET /runs/:id/demo what studio shows: the stage, the presenter script and chapter list
9
- * (the plan gate), per-chapter record progress, the contact sheets and
10
- * the reviewer's verdicts (the review gate), and the chaptered MP4.
11
- * GET /runs/:id/demo/file one file of the root (a contact sheet, the MP4 — with Range).
12
- * PUT /runs/:id/demo/script the presenter's edit of `script.md` while the plan gate is open.
13
- *
14
- * The gates are the run's ordinary gates (`POST /runs/:id/gate`): approve, or `request_changes` with a
15
- * note — at the plan gate it re-runs `plan`, at the review gate it rewinds to `record` (re-record one
16
- * chapter). Nothing here decides a gate.
17
- *
18
- * Every file is read from the root the daemon minted for THIS run id, never from a path a caller or a
19
- * worker names: `path` is resolved inside it, symlinks included, and only the deliverable types studio
20
- * renders are served.
21
- */
22
- import type { FastifyInstance } from 'fastify';
23
- import { z } from 'zod';
24
- import type { DemoChapter, DemoFinding, DemoMarker, DemoStage, DemoView } from 'wicked-crew-api-types';
25
- import type { CoreAdapter } from '../core/adapter.js';
26
- import type { SessionView } from '../core/types.js';
27
- /** The preset a demo run launches (wicked-core `builtin_presets`). */
28
- export declare const DEMO_PRESET = "demo";
29
- /** The biggest script studio shows or accepts back: a presenter script is prose. */
30
- export declare const DEMO_SCRIPT_MAX_BYTES: number;
31
- /** Where a demo run's files live: one directory per run, outside every sandbox and state home. */
32
- export declare function demoRootDir(runId: string): string;
33
- /**
34
- * The demo root of each demo launch in flight, keyed by the run id the demo route minted. `POST /runs`
35
- * takes no write roots from its body; it reads this in-process entry, so the root is never something a
36
- * caller can ask for (the capture route's pattern).
37
- */
38
- export declare const demoLaunchRoots: Map<string, string>;
39
- export declare const DemoLaunchSchema: z.ZodObject<{
40
- url: z.ZodEffects<z.ZodString, string, string>;
41
- audience: z.ZodString;
42
- show: z.ZodString;
43
- clisJson: z.ZodOptional<z.ZodString>;
44
- }, "strict", z.ZodTypeAny, {
45
- url: string;
46
- audience: string;
47
- show: string;
48
- clisJson?: string | undefined;
49
- }, {
50
- url: string;
51
- audience: string;
52
- show: string;
53
- clisJson?: string | undefined;
54
- }>;
55
- export declare const DemoScriptSchema: z.ZodObject<{
56
- content: z.ZodString;
57
- }, "strict", z.ZodTypeAny, {
58
- content: string;
59
- }, {
60
- content: string;
61
- }>;
62
- /** The brief the demo run reads (the problem statement stays one short line: worker prompts are capped). */
63
- export declare function demoBrief(root: string, b: {
64
- url: string;
65
- audience: string;
66
- show: string;
67
- }): string;
68
- /** A demo run: launched from the `demo` preset — read off the engine's plan state, or, before the
69
- * launch is scored and `team_plan` exists, off the run's identity (resolved from the launch record). */
70
- export declare function isDemoRun(view: SessionView): boolean;
71
- /** Where the run stands, in the Demo experience's words. */
72
- export declare function demoStage(view: SessionView): DemoStage;
73
- /** `chapters.json` → the chapter list, or `[]` when it is missing or not the plan's shape. */
74
- export declare function parseChapters(raw: string | null): Omit<DemoChapter, 'recorded'>[];
75
- /** `chapters.md` (record.mjs's `| m:ss | Title |` table) → the MP4's chapter markers. */
76
- export declare function parseMarkers(raw: string | null): DemoMarker[];
77
- /** The reviewer's output → its verdict block (the LAST fenced ```json block), or nothing. */
78
- export declare function parseReview(output: string | null): {
79
- verdict: 'accept' | 'changes' | null;
80
- findings: DemoFinding[];
81
- };
82
- /** Everything studio renders for a demo run, read from its root and its units. */
83
- export declare function demoView(adapter: CoreAdapter, view: SessionView): Promise<DemoView>;
84
- /** A single `Range: bytes=a-b` → the inclusive span, `null` for no header, `'bad'` for one we cannot serve. */
85
- export declare function parseRange(header: string | undefined, size: number): {
86
- start: number;
87
- end: number;
88
- } | null | 'bad';
89
- export declare function registerDemoRoutes(app: FastifyInstance, adapter: CoreAdapter): void;
90
- //# sourceMappingURL=demo.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"demo.d.ts","sourceRoot":"","sources":["../../src/api/demo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACT,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,kBAAkB,CAAC;AAM9D,sEAAsE;AACtE,eAAO,MAAM,WAAW,SAAS,CAAC;AAKlC,oFAAoF;AACpF,eAAO,MAAM,qBAAqB,QAAa,CAAC;AAWhD,kGAAkG;AAClG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIjD;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,qBAA4B,CAAC;AAEzD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;EAOlB,CAAC;AAEZ,eAAO,MAAM,gBAAgB;;;;;;EAAoD,CAAC;AAElF,4GAA4G;AAC5G,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAyBlG;AAED;yGACyG;AACzG,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAIpD;AAOD,4DAA4D;AAC5D,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,CAkCtD;AAED,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CA4BjF;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,EAAE,CAS7D;AAID,6FAA6F;AAC7F,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG;IAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;CAAE,CA2BpH;AAuCD,kFAAkF;AAClF,wBAAsB,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAmDzF;AAqBD,+GAA+G;AAC/G,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,GAAG,KAAK,CAiBlH;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAqInF"}