@supportpages.io/wtfm 0.0.0-stage → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +23 -0
  3. package/README.md +392 -2
  4. package/dist/actions.d.ts +98 -0
  5. package/dist/actions.js +86 -0
  6. package/dist/actions.js.map +1 -0
  7. package/dist/agent-settings.d.ts +22 -0
  8. package/dist/agent-settings.js +35 -0
  9. package/dist/agent-settings.js.map +1 -0
  10. package/dist/api.d.ts +14 -0
  11. package/dist/api.js +159 -0
  12. package/dist/api.js.map +1 -0
  13. package/dist/article-link.d.ts +16 -0
  14. package/dist/article-link.js +25 -0
  15. package/dist/article-link.js.map +1 -0
  16. package/dist/artifacts.d.ts +45 -0
  17. package/dist/artifacts.js +144 -0
  18. package/dist/artifacts.js.map +1 -0
  19. package/dist/brand.d.ts +4 -0
  20. package/dist/brand.js +9 -0
  21. package/dist/brand.js.map +1 -0
  22. package/dist/bridge.d.ts +2964 -0
  23. package/dist/bridge.js +1036 -0
  24. package/dist/bridge.js.map +1 -0
  25. package/dist/capacity.d.ts +5 -0
  26. package/dist/capacity.js +11 -0
  27. package/dist/capacity.js.map +1 -0
  28. package/dist/credentials.d.ts +13 -0
  29. package/dist/credentials.js +88 -0
  30. package/dist/credentials.js.map +1 -0
  31. package/dist/development-tls.d.ts +8 -0
  32. package/dist/development-tls.js +38 -0
  33. package/dist/development-tls.js.map +1 -0
  34. package/dist/errors.d.ts +15 -0
  35. package/dist/errors.js +18 -0
  36. package/dist/errors.js.map +1 -0
  37. package/dist/export.d.ts +11 -0
  38. package/dist/export.js +91 -0
  39. package/dist/export.js.map +1 -0
  40. package/dist/hosted-operations.d.ts +108 -0
  41. package/dist/hosted-operations.js +120 -0
  42. package/dist/hosted-operations.js.map +1 -0
  43. package/dist/hosting-benefits.d.ts +66 -0
  44. package/dist/hosting-benefits.js +67 -0
  45. package/dist/hosting-benefits.js.map +1 -0
  46. package/dist/index.d.ts +2 -0
  47. package/dist/index.js +49 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/local-inventory.d.ts +22 -0
  50. package/dist/local-inventory.js +59 -0
  51. package/dist/local-inventory.js.map +1 -0
  52. package/dist/local-setup.d.ts +208 -0
  53. package/dist/local-setup.js +140 -0
  54. package/dist/local-setup.js.map +1 -0
  55. package/dist/pairing.d.ts +71 -0
  56. package/dist/pairing.js +235 -0
  57. package/dist/pairing.js.map +1 -0
  58. package/dist/preferences.d.ts +18 -0
  59. package/dist/preferences.js +44 -0
  60. package/dist/preferences.js.map +1 -0
  61. package/dist/progress.d.ts +205 -0
  62. package/dist/progress.js +224 -0
  63. package/dist/progress.js.map +1 -0
  64. package/dist/reminders.d.ts +31 -0
  65. package/dist/reminders.js +73 -0
  66. package/dist/reminders.js.map +1 -0
  67. package/dist/replace-connection.d.ts +6 -0
  68. package/dist/replace-connection.js +77 -0
  69. package/dist/replace-connection.js.map +1 -0
  70. package/dist/repository-actions.d.ts +18 -0
  71. package/dist/repository-actions.js +9 -0
  72. package/dist/repository-actions.js.map +1 -0
  73. package/dist/repository-benefits.d.ts +96 -0
  74. package/dist/repository-benefits.js +64 -0
  75. package/dist/repository-benefits.js.map +1 -0
  76. package/dist/run-update.d.ts +17 -0
  77. package/dist/run-update.js +27 -0
  78. package/dist/run-update.js.map +1 -0
  79. package/dist/runs.d.ts +541 -0
  80. package/dist/runs.js +146 -0
  81. package/dist/runs.js.map +1 -0
  82. package/dist/runtime.d.ts +12 -0
  83. package/dist/runtime.js +58 -0
  84. package/dist/runtime.js.map +1 -0
  85. package/dist/schema.d.ts +277 -0
  86. package/dist/schema.js +66 -0
  87. package/dist/schema.js.map +1 -0
  88. package/dist/server.d.ts +4 -0
  89. package/dist/server.js +298 -0
  90. package/dist/server.js.map +1 -0
  91. package/dist/session.d.ts +1714 -0
  92. package/dist/session.js +619 -0
  93. package/dist/session.js.map +1 -0
  94. package/dist/settings.d.ts +9 -0
  95. package/dist/settings.js +21 -0
  96. package/dist/settings.js.map +1 -0
  97. package/dist/sync.d.ts +495 -0
  98. package/dist/sync.js +191 -0
  99. package/dist/sync.js.map +1 -0
  100. package/dist/telemetry-scrub.d.ts +13 -0
  101. package/dist/telemetry-scrub.js +51 -0
  102. package/dist/telemetry-scrub.js.map +1 -0
  103. package/dist/telemetry.d.ts +73 -0
  104. package/dist/telemetry.js +173 -0
  105. package/dist/telemetry.js.map +1 -0
  106. package/dist/walkthroughs.d.ts +224 -0
  107. package/dist/walkthroughs.js +109 -0
  108. package/dist/walkthroughs.js.map +1 -0
  109. package/dist/workspace.d.ts +14 -0
  110. package/dist/workspace.js +127 -0
  111. package/dist/workspace.js.map +1 -0
  112. package/dist/writer-agent.d.ts +21 -0
  113. package/dist/writer-agent.js +27 -0
  114. package/dist/writer-agent.js.map +1 -0
  115. package/dist/writer-entry.d.ts +171 -0
  116. package/dist/writer-entry.js +233 -0
  117. package/dist/writer-entry.js.map +1 -0
  118. package/dist/writing-style.d.ts +7 -0
  119. package/dist/writing-style.js +52 -0
  120. package/dist/writing-style.js.map +1 -0
  121. package/engine/SYNC.json +4 -0
  122. package/engine/VERSION +1 -0
  123. package/engine/detect-project/README.md +141 -0
  124. package/engine/detect-project/SKILL.md +1421 -0
  125. package/engine/detect-project/assets/desktop/desktop-frame.css +428 -0
  126. package/engine/detect-project/assets/game/game-frame.css +132 -0
  127. package/engine/detect-project/assets/macosui/LICENSE-puppertino.txt +21 -0
  128. package/engine/detect-project/assets/macosui/VERSIONS.txt +1 -0
  129. package/engine/detect-project/assets/macosui/fonts.css +15 -0
  130. package/engine/detect-project/assets/macosui/macos-frame.css +481 -0
  131. package/engine/detect-project/assets/macosui/puppertino.css +2153 -0
  132. package/engine/detect-project/assets/mobileui/LICENSE-fonts.txt +13 -0
  133. package/engine/detect-project/assets/mobileui/LICENSE-framework7.txt +52 -0
  134. package/engine/detect-project/assets/mobileui/VERSIONS.txt +6 -0
  135. package/engine/detect-project/assets/mobileui/device-frame.css +316 -0
  136. package/engine/detect-project/assets/mobileui/f7-color-theme.mjs +1345 -0
  137. package/engine/detect-project/assets/mobileui/f7-icons-names.json +1254 -0
  138. package/engine/detect-project/assets/mobileui/fonts.css +16 -0
  139. package/engine/detect-project/assets/mobileui/framework7-components.css +39 -0
  140. package/engine/detect-project/assets/mobileui/framework7-core.css +5245 -0
  141. package/engine/detect-project/assets/mobileui/icons.css +31 -0
  142. package/engine/detect-project/assets/mobileui/md3-defaults.css +89 -0
  143. package/engine/detect-project/assets/mobileui/platforms.json +46 -0
  144. package/engine/detect-project/assets/tailwind-fallback.css +1729 -0
  145. package/engine/detect-project/assets/webtui/LICENSE-webtui.txt +28 -0
  146. package/engine/detect-project/assets/webtui/VERSIONS.txt +7 -0
  147. package/engine/detect-project/assets/webtui/terminal-frame.css +195 -0
  148. package/engine/detect-project/assets/webtui/theme-catppuccin.css +1 -0
  149. package/engine/detect-project/assets/webtui/theme-everforest.css +1 -0
  150. package/engine/detect-project/assets/webtui/theme-gruvbox.css +1 -0
  151. package/engine/detect-project/assets/webtui/theme-nord.css +1 -0
  152. package/engine/detect-project/assets/webtui/theme-vitesse.css +1 -0
  153. package/engine/detect-project/assets/webtui/themes.json +37 -0
  154. package/engine/detect-project/assets/webtui/webtui-core.css +1 -0
  155. package/engine/detect-project/assets/win32ui/7css.css +2 -0
  156. package/engine/detect-project/assets/win32ui/LICENSE-7css.txt +21 -0
  157. package/engine/detect-project/assets/win32ui/VERSIONS.txt +1 -0
  158. package/engine/detect-project/assets/win32ui/win32-frame.css +278 -0
  159. package/engine/detect-project/package-lock.json +12 -0
  160. package/engine/detect-project/package.json +10 -0
  161. package/engine/detect-project/scripts/apply_runtime_profiles.js +313 -0
  162. package/engine/detect-project/scripts/check_css_health.js +412 -0
  163. package/engine/detect-project/scripts/check_project_map.js +150 -0
  164. package/engine/detect-project/scripts/check_runtime_coverage.js +311 -0
  165. package/engine/detect-project/scripts/check_runtime_recipe_quality.js +184 -0
  166. package/engine/detect-project/scripts/classify_app_type.sh +246 -0
  167. package/engine/detect-project/scripts/classify_surface.sh +95 -0
  168. package/engine/detect-project/scripts/classify_workspace.js +39 -0
  169. package/engine/detect-project/scripts/compile_css.sh +447 -0
  170. package/engine/detect-project/scripts/detect_static.js +645 -0
  171. package/engine/detect-project/scripts/detect_structure.js +187 -0
  172. package/engine/detect-project/scripts/include_census.js +451 -0
  173. package/engine/detect-project/scripts/json_get.js +142 -0
  174. package/engine/detect-project/scripts/merge_json.js +52 -0
  175. package/engine/detect-project/scripts/recommend_model_tier.js +252 -0
  176. package/engine/detect-project/scripts/resolve_route_chains.js +135 -0
  177. package/engine/detect-project/scripts/run_css_build.sh +40 -0
  178. package/engine/detect-project/scripts/sanitize_css.js +83 -0
  179. package/engine/detect-project/scripts/test_classify_surface.js +108 -0
  180. package/engine/detect-project/scripts/test_node_helpers.js +142 -0
  181. package/engine/detect-project/scripts/test_recommend_model_tier.js +119 -0
  182. package/engine/detect-project/scripts/test_resolve_route_chains.js +182 -0
  183. package/engine/detect-project/scripts/test_runtime_coverage.js +323 -0
  184. package/engine/detect-project/scripts/test_runtime_recipe_quality.js +187 -0
  185. package/engine/detect-project/scripts/theme_overrides.js +169 -0
  186. package/engine/detect-project/scripts/write_branding.js +129 -0
  187. package/engine/generate-illustrated-article/SKILL.md +461 -0
  188. package/engine/generate-illustrated-article/contracts/desktop.md +90 -0
  189. package/engine/generate-illustrated-article/contracts/game.md +38 -0
  190. package/engine/generate-illustrated-article/contracts/label-evidence.md +38 -0
  191. package/engine/generate-illustrated-article/contracts/macos.md +79 -0
  192. package/engine/generate-illustrated-article/contracts/mobile.md +40 -0
  193. package/engine/generate-illustrated-article/contracts/terminal.md +29 -0
  194. package/engine/generate-illustrated-article/contracts/win32.md +43 -0
  195. package/engine/generate-illustrated-article/package-lock.json +366 -0
  196. package/engine/generate-illustrated-article/package.json +15 -0
  197. package/engine/generate-illustrated-article/scripts/article_blocks.js +34 -0
  198. package/engine/generate-illustrated-article/scripts/check_article_json.js +105 -0
  199. package/engine/generate-illustrated-article/scripts/emit_walkthrough_signals.js +100 -0
  200. package/engine/generate-illustrated-article/scripts/extract_images.js +187 -0
  201. package/engine/generate-illustrated-article/scripts/generate_content_images.js +376 -0
  202. package/engine/generate-illustrated-article/scripts/include_census.js +451 -0
  203. package/engine/generate-illustrated-article/scripts/inject_assets.js +1691 -0
  204. package/engine/generate-illustrated-article/scripts/jit_mockup_css.js +191 -0
  205. package/engine/generate-illustrated-article/scripts/label_evidence.js +87 -0
  206. package/engine/generate-illustrated-article/scripts/lint_article_copy.js +252 -0
  207. package/engine/generate-illustrated-article/scripts/lint_mockup_fidelity.js +2403 -0
  208. package/engine/generate-illustrated-article/scripts/polish_tickets.js +1148 -0
  209. package/engine/generate-illustrated-article/scripts/related_repos.sh +52 -0
  210. package/engine/generate-illustrated-article/scripts/render_all.js +177 -0
  211. package/engine/generate-illustrated-article/scripts/render_mockup.js +665 -0
  212. package/engine/generate-illustrated-article/scripts/render_ready.js +164 -0
  213. package/engine/generate-illustrated-article/scripts/resolve_workspace.sh +86 -0
  214. package/engine/generate-illustrated-article/scripts/runtime_region_geometry.js +55 -0
  215. package/engine/generate-illustrated-article/scripts/source_paths.js +49 -0
  216. package/engine/generate-illustrated-article/scripts/test_control_visibility.js +30 -0
  217. package/engine/generate-illustrated-article/scripts/test_emit_walkthrough_signals.js +157 -0
  218. package/engine/generate-illustrated-article/scripts/test_generate_content_images.js +168 -0
  219. package/engine/generate-illustrated-article/scripts/test_include_census.js +126 -0
  220. package/engine/generate-illustrated-article/scripts/test_label_evidence.js +49 -0
  221. package/engine/generate-illustrated-article/scripts/test_lint_article_copy.js +138 -0
  222. package/engine/generate-illustrated-article/scripts/test_lint_mockup_fidelity.js +653 -0
  223. package/engine/generate-illustrated-article/scripts/test_node_ports.js +152 -0
  224. package/engine/generate-illustrated-article/scripts/test_polish_tickets.js +481 -0
  225. package/engine/generate-illustrated-article/scripts/test_related_repos.js +64 -0
  226. package/engine/generate-illustrated-article/scripts/test_render_ready.js +85 -0
  227. package/engine/generate-illustrated-article/scripts/test_source_paths.js +68 -0
  228. package/engine/generate-illustrated-article/scripts/trace_hook.js +79 -0
  229. package/engine/generate-illustrated-article/scripts/trace_hook.sh +4 -0
  230. package/engine/generate-illustrated-article/scripts/validate_html.js +114 -0
  231. package/engine/generate-illustrated-article/scripts/watermark.js +69 -0
  232. package/install.sh +14 -0
  233. package/package.json +57 -4
  234. package/scripts/auth.mjs +33 -0
  235. package/scripts/auto-update.mjs +7 -0
  236. package/scripts/build-plugin.mjs +58 -0
  237. package/scripts/build-release.mjs +94 -0
  238. package/scripts/check-release.mjs +40 -0
  239. package/scripts/check-runtime.mjs +10 -0
  240. package/scripts/cli.mjs +8 -0
  241. package/scripts/install.mjs +64 -0
  242. package/scripts/lib/agent-runner.mjs +181 -0
  243. package/scripts/lib/agent-settings.mjs +215 -0
  244. package/scripts/lib/article-skills.mjs +82 -0
  245. package/scripts/lib/auto-update.mjs +50 -0
  246. package/scripts/lib/brand.mjs +9 -0
  247. package/scripts/lib/browser.mjs +12 -0
  248. package/scripts/lib/claude-connection.mjs +33 -0
  249. package/scripts/lib/claude-permissions.mjs +47 -0
  250. package/scripts/lib/claude-plugin.mjs +15 -0
  251. package/scripts/lib/claude-writer.mjs +10 -0
  252. package/scripts/lib/cli-main.mjs +85 -0
  253. package/scripts/lib/cli.mjs +888 -0
  254. package/scripts/lib/codex-config.mjs +51 -0
  255. package/scripts/lib/codex-integration.mjs +61 -0
  256. package/scripts/lib/codex-skill.mjs +34 -0
  257. package/scripts/lib/harness-models.mjs +109 -0
  258. package/scripts/lib/install.mjs +269 -0
  259. package/scripts/lib/managed-writer.mjs +38 -0
  260. package/scripts/lib/planning.mjs +263 -0
  261. package/scripts/lib/prepare-update.mjs +85 -0
  262. package/scripts/lib/refresh-writers.mjs +12 -0
  263. package/scripts/lib/remove.mjs +167 -0
  264. package/scripts/lib/renderer.mjs +34 -0
  265. package/scripts/lib/terminal.mjs +252 -0
  266. package/scripts/lib/uninit.mjs +72 -0
  267. package/scripts/lib/update.mjs +55 -0
  268. package/scripts/lib/writer-recovery.mjs +35 -0
  269. package/scripts/lib/yolo.mjs +362 -0
  270. package/scripts/plugin-session.mjs +65 -0
  271. package/scripts/prepare-update.mjs +12 -0
  272. package/scripts/publish-release.mjs +92 -0
  273. package/scripts/skills/supportpages/SKILL.md +120 -0
  274. package/scripts/smoke-release.mjs +101 -0
  275. package/server.json +27 -0
package/dist/runs.d.ts ADDED
@@ -0,0 +1,541 @@
1
+ import { z } from 'zod';
2
+ import { Workspace } from './workspace.js';
3
+ export declare const processSessionId: `${string}-${string}-${string}-${string}-${string}`;
4
+ export declare const runSchema: z.ZodObject<{
5
+ id: z.ZodUUID;
6
+ local_article_id: z.ZodUUID;
7
+ artifact_dir: z.ZodString;
8
+ started_at: z.ZodString;
9
+ section_id: z.ZodNullable<z.ZodString>;
10
+ status: z.ZodEnum<{
11
+ failed: "failed";
12
+ prepared: "prepared";
13
+ finalized: "finalized";
14
+ cancelled: "cancelled";
15
+ interrupted: "interrupted";
16
+ }>;
17
+ skills_version: z.ZodString;
18
+ article_type: z.ZodOptional<z.ZodString>;
19
+ progress: z.ZodOptional<z.ZodObject<{
20
+ attempt: z.ZodUUID;
21
+ next_attempt: z.ZodOptional<z.ZodUUID>;
22
+ article: z.ZodOptional<z.ZodObject<{
23
+ repository_connection: z.ZodOptional<z.ZodObject<{
24
+ writer: z.ZodOptional<z.ZodObject<{
25
+ version: z.ZodLiteral<1>;
26
+ actions: z.ZodPipe<z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodTransform<Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
27
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
28
+ allowed: boolean;
29
+ execution: "local" | "remote" | "hosted";
30
+ required_scopes: string[];
31
+ next_step: {
32
+ code: string;
33
+ message: string;
34
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
35
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
36
+ url?: string | undefined;
37
+ } | null;
38
+ }>>, Record<string, unknown>>>;
39
+ }, z.core.$strip>>;
40
+ state: z.ZodEnum<{
41
+ not_connected: "not_connected";
42
+ connected: "connected";
43
+ disconnected: "disconnected";
44
+ suspended: "suspended";
45
+ }>;
46
+ connect_url: z.ZodURL;
47
+ capabilities: z.ZodObject<{
48
+ sections: z.ZodBoolean;
49
+ suggestions: z.ZodBoolean;
50
+ code_analysis: z.ZodBoolean;
51
+ maintenance: z.ZodBoolean;
52
+ }, z.core.$strip>;
53
+ }, z.core.$strip>>;
54
+ id: z.ZodString;
55
+ revision: z.ZodString;
56
+ status: z.ZodEnum<{
57
+ draft: "draft";
58
+ published: "published";
59
+ }>;
60
+ editor_url: z.ZodURL;
61
+ public_url: z.ZodNullable<z.ZodURL>;
62
+ }, z.core.$strip>>;
63
+ sequence: z.ZodNumber;
64
+ article_hash: z.ZodOptional<z.ZodString>;
65
+ image_hashes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
66
+ last_heartbeat: z.ZodOptional<z.ZodNumber>;
67
+ open_attempted: z.ZodOptional<z.ZodBoolean>;
68
+ browser_opened: z.ZodOptional<z.ZodBoolean>;
69
+ sync_error: z.ZodOptional<z.ZodString>;
70
+ sync_failures: z.ZodOptional<z.ZodNumber>;
71
+ pending: z.ZodOptional<z.ZodObject<{
72
+ sequence: z.ZodNumber;
73
+ directory: z.ZodString;
74
+ }, z.core.$strip>>;
75
+ }, z.core.$strip>>;
76
+ title: z.ZodOptional<z.ZodString>;
77
+ api_origin: z.ZodOptional<z.ZodString>;
78
+ project_id: z.ZodOptional<z.ZodString>;
79
+ codebase_dir: z.ZodOptional<z.ZodString>;
80
+ prefer_background: z.ZodOptional<z.ZodBoolean>;
81
+ open_when_ready: z.ZodOptional<z.ZodBoolean>;
82
+ execution_mode: z.ZodOptional<z.ZodEnum<{
83
+ background: "background";
84
+ foreground: "foreground";
85
+ }>>;
86
+ host_task_id: z.ZodOptional<z.ZodString>;
87
+ writer_token: z.ZodOptional<z.ZodUUID>;
88
+ writer_started_at: z.ZodOptional<z.ZodISODateTime>;
89
+ writer_completed_at: z.ZodOptional<z.ZodISODateTime>;
90
+ first_writer_started_at: z.ZodOptional<z.ZodISODateTime>;
91
+ ready_for_review_at: z.ZodOptional<z.ZodISODateTime>;
92
+ repository_invitation: z.ZodOptional<z.ZodObject<{
93
+ id: z.ZodString;
94
+ message: z.ZodString;
95
+ connect_url: z.ZodURL;
96
+ }, z.core.$strip>>;
97
+ repository_reminder_checked: z.ZodOptional<z.ZodBoolean>;
98
+ hosting_invitation: z.ZodOptional<z.ZodObject<{
99
+ id: z.ZodString;
100
+ message: z.ZodString;
101
+ }, z.core.$strip>>;
102
+ hosting_reminder_checked: z.ZodOptional<z.ZodBoolean>;
103
+ session_id: z.ZodOptional<z.ZodString>;
104
+ updated_at: z.ZodOptional<z.ZodString>;
105
+ phase: z.ZodOptional<z.ZodEnum<{
106
+ published: "published";
107
+ failed: "failed";
108
+ prepared: "prepared";
109
+ cancelled: "cancelled";
110
+ interrupted: "interrupted";
111
+ writing: "writing";
112
+ finalizing: "finalizing";
113
+ uploading: "uploading";
114
+ upload_failed: "upload_failed";
115
+ ready_for_review: "ready_for_review";
116
+ saved: "saved";
117
+ }>>;
118
+ bundle_dir: z.ZodOptional<z.ZodString>;
119
+ bundle_hash: z.ZodOptional<z.ZodString>;
120
+ local_export: z.ZodOptional<z.ZodObject<{
121
+ directory: z.ZodString;
122
+ markdown_path: z.ZodOptional<z.ZodString>;
123
+ sync_error: z.ZodOptional<z.ZodString>;
124
+ }, z.core.$strip>>;
125
+ export_path: z.ZodOptional<z.ZodString>;
126
+ remote: z.ZodOptional<z.ZodObject<{
127
+ repository_connection: z.ZodOptional<z.ZodObject<{
128
+ writer: z.ZodOptional<z.ZodObject<{
129
+ version: z.ZodLiteral<1>;
130
+ actions: z.ZodPipe<z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodTransform<Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
131
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
132
+ allowed: boolean;
133
+ execution: "local" | "remote" | "hosted";
134
+ required_scopes: string[];
135
+ next_step: {
136
+ code: string;
137
+ message: string;
138
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
139
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
140
+ url?: string | undefined;
141
+ } | null;
142
+ }>>, Record<string, unknown>>>;
143
+ }, z.core.$strip>>;
144
+ state: z.ZodEnum<{
145
+ not_connected: "not_connected";
146
+ connected: "connected";
147
+ disconnected: "disconnected";
148
+ suspended: "suspended";
149
+ }>;
150
+ connect_url: z.ZodURL;
151
+ capabilities: z.ZodObject<{
152
+ sections: z.ZodBoolean;
153
+ suggestions: z.ZodBoolean;
154
+ code_analysis: z.ZodBoolean;
155
+ maintenance: z.ZodBoolean;
156
+ }, z.core.$strip>;
157
+ }, z.core.$strip>>;
158
+ id: z.ZodString;
159
+ revision: z.ZodString;
160
+ status: z.ZodEnum<{
161
+ draft: "draft";
162
+ published: "published";
163
+ }>;
164
+ editor_url: z.ZodURL;
165
+ public_url: z.ZodNullable<z.ZodURL>;
166
+ }, z.core.$strip>>;
167
+ error: z.ZodOptional<z.ZodObject<{
168
+ code: z.ZodString;
169
+ message: z.ZodString;
170
+ }, z.core.$strip>>;
171
+ }, z.core.$strip>;
172
+ export type Run = z.infer<typeof runSchema>;
173
+ export declare function uploadRecovery(run: Run): string;
174
+ export declare class Runs {
175
+ private ws;
176
+ private root;
177
+ private sessionId;
178
+ constructor(ws: Workspace, root: string, sessionId?: `${string}-${string}-${string}-${string}-${string}`);
179
+ read(id: string): Promise<{
180
+ id: string;
181
+ local_article_id: string;
182
+ artifact_dir: string;
183
+ started_at: string;
184
+ section_id: string | null;
185
+ status: "failed" | "prepared" | "finalized" | "cancelled" | "interrupted";
186
+ skills_version: string;
187
+ article_type?: string | undefined;
188
+ progress?: {
189
+ attempt: string;
190
+ sequence: number;
191
+ next_attempt?: string | undefined;
192
+ article?: {
193
+ id: string;
194
+ revision: string;
195
+ status: "draft" | "published";
196
+ editor_url: string;
197
+ public_url: string | null;
198
+ repository_connection?: {
199
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
200
+ connect_url: string;
201
+ capabilities: {
202
+ sections: boolean;
203
+ suggestions: boolean;
204
+ code_analysis: boolean;
205
+ maintenance: boolean;
206
+ };
207
+ writer?: {
208
+ version: 1;
209
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
210
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
211
+ allowed: boolean;
212
+ execution: "local" | "remote" | "hosted";
213
+ required_scopes: string[];
214
+ next_step: {
215
+ code: string;
216
+ message: string;
217
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
218
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
219
+ url?: string | undefined;
220
+ } | null;
221
+ }>>;
222
+ } | undefined;
223
+ } | undefined;
224
+ } | undefined;
225
+ article_hash?: string | undefined;
226
+ image_hashes?: Record<string, string> | undefined;
227
+ last_heartbeat?: number | undefined;
228
+ open_attempted?: boolean | undefined;
229
+ browser_opened?: boolean | undefined;
230
+ sync_error?: string | undefined;
231
+ sync_failures?: number | undefined;
232
+ pending?: {
233
+ sequence: number;
234
+ directory: string;
235
+ } | undefined;
236
+ } | undefined;
237
+ title?: string | undefined;
238
+ api_origin?: string | undefined;
239
+ project_id?: string | undefined;
240
+ codebase_dir?: string | undefined;
241
+ prefer_background?: boolean | undefined;
242
+ open_when_ready?: boolean | undefined;
243
+ execution_mode?: "background" | "foreground" | undefined;
244
+ host_task_id?: string | undefined;
245
+ writer_token?: string | undefined;
246
+ writer_started_at?: string | undefined;
247
+ writer_completed_at?: string | undefined;
248
+ first_writer_started_at?: string | undefined;
249
+ ready_for_review_at?: string | undefined;
250
+ repository_invitation?: {
251
+ id: string;
252
+ message: string;
253
+ connect_url: string;
254
+ } | undefined;
255
+ repository_reminder_checked?: boolean | undefined;
256
+ hosting_invitation?: {
257
+ id: string;
258
+ message: string;
259
+ } | undefined;
260
+ hosting_reminder_checked?: boolean | undefined;
261
+ session_id?: string | undefined;
262
+ updated_at?: string | undefined;
263
+ phase?: "published" | "failed" | "prepared" | "cancelled" | "interrupted" | "writing" | "finalizing" | "uploading" | "upload_failed" | "ready_for_review" | "saved" | undefined;
264
+ bundle_dir?: string | undefined;
265
+ bundle_hash?: string | undefined;
266
+ local_export?: {
267
+ directory: string;
268
+ markdown_path?: string | undefined;
269
+ sync_error?: string | undefined;
270
+ } | undefined;
271
+ export_path?: string | undefined;
272
+ remote?: {
273
+ id: string;
274
+ revision: string;
275
+ status: "draft" | "published";
276
+ editor_url: string;
277
+ public_url: string | null;
278
+ repository_connection?: {
279
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
280
+ connect_url: string;
281
+ capabilities: {
282
+ sections: boolean;
283
+ suggestions: boolean;
284
+ code_analysis: boolean;
285
+ maintenance: boolean;
286
+ };
287
+ writer?: {
288
+ version: 1;
289
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
290
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
291
+ allowed: boolean;
292
+ execution: "local" | "remote" | "hosted";
293
+ required_scopes: string[];
294
+ next_step: {
295
+ code: string;
296
+ message: string;
297
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
298
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
299
+ url?: string | undefined;
300
+ } | null;
301
+ }>>;
302
+ } | undefined;
303
+ } | undefined;
304
+ } | undefined;
305
+ error?: {
306
+ code: string;
307
+ message: string;
308
+ } | undefined;
309
+ }>;
310
+ save(run: Run): Promise<void>;
311
+ blocking(allowedId?: string): Promise<{
312
+ run: {
313
+ id: string;
314
+ local_article_id: string;
315
+ artifact_dir: string;
316
+ started_at: string;
317
+ section_id: string | null;
318
+ status: "failed" | "prepared" | "finalized" | "cancelled" | "interrupted";
319
+ skills_version: string;
320
+ article_type?: string | undefined;
321
+ progress?: {
322
+ attempt: string;
323
+ sequence: number;
324
+ next_attempt?: string | undefined;
325
+ article?: {
326
+ id: string;
327
+ revision: string;
328
+ status: "draft" | "published";
329
+ editor_url: string;
330
+ public_url: string | null;
331
+ repository_connection?: {
332
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
333
+ connect_url: string;
334
+ capabilities: {
335
+ sections: boolean;
336
+ suggestions: boolean;
337
+ code_analysis: boolean;
338
+ maintenance: boolean;
339
+ };
340
+ writer?: {
341
+ version: 1;
342
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
343
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
344
+ allowed: boolean;
345
+ execution: "local" | "remote" | "hosted";
346
+ required_scopes: string[];
347
+ next_step: {
348
+ code: string;
349
+ message: string;
350
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
351
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
352
+ url?: string | undefined;
353
+ } | null;
354
+ }>>;
355
+ } | undefined;
356
+ } | undefined;
357
+ } | undefined;
358
+ article_hash?: string | undefined;
359
+ image_hashes?: Record<string, string> | undefined;
360
+ last_heartbeat?: number | undefined;
361
+ open_attempted?: boolean | undefined;
362
+ browser_opened?: boolean | undefined;
363
+ sync_error?: string | undefined;
364
+ sync_failures?: number | undefined;
365
+ pending?: {
366
+ sequence: number;
367
+ directory: string;
368
+ } | undefined;
369
+ } | undefined;
370
+ title?: string | undefined;
371
+ api_origin?: string | undefined;
372
+ project_id?: string | undefined;
373
+ codebase_dir?: string | undefined;
374
+ prefer_background?: boolean | undefined;
375
+ open_when_ready?: boolean | undefined;
376
+ execution_mode?: "background" | "foreground" | undefined;
377
+ host_task_id?: string | undefined;
378
+ writer_token?: string | undefined;
379
+ writer_started_at?: string | undefined;
380
+ writer_completed_at?: string | undefined;
381
+ first_writer_started_at?: string | undefined;
382
+ ready_for_review_at?: string | undefined;
383
+ repository_invitation?: {
384
+ id: string;
385
+ message: string;
386
+ connect_url: string;
387
+ } | undefined;
388
+ repository_reminder_checked?: boolean | undefined;
389
+ hosting_invitation?: {
390
+ id: string;
391
+ message: string;
392
+ } | undefined;
393
+ hosting_reminder_checked?: boolean | undefined;
394
+ session_id?: string | undefined;
395
+ updated_at?: string | undefined;
396
+ phase?: "published" | "failed" | "prepared" | "cancelled" | "interrupted" | "writing" | "finalizing" | "uploading" | "upload_failed" | "ready_for_review" | "saved" | undefined;
397
+ bundle_dir?: string | undefined;
398
+ bundle_hash?: string | undefined;
399
+ local_export?: {
400
+ directory: string;
401
+ markdown_path?: string | undefined;
402
+ sync_error?: string | undefined;
403
+ } | undefined;
404
+ export_path?: string | undefined;
405
+ remote?: {
406
+ id: string;
407
+ revision: string;
408
+ status: "draft" | "published";
409
+ editor_url: string;
410
+ public_url: string | null;
411
+ repository_connection?: {
412
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
413
+ connect_url: string;
414
+ capabilities: {
415
+ sections: boolean;
416
+ suggestions: boolean;
417
+ code_analysis: boolean;
418
+ maintenance: boolean;
419
+ };
420
+ writer?: {
421
+ version: 1;
422
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
423
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
424
+ allowed: boolean;
425
+ execution: "local" | "remote" | "hosted";
426
+ required_scopes: string[];
427
+ next_step: {
428
+ code: string;
429
+ message: string;
430
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
431
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
432
+ url?: string | undefined;
433
+ } | null;
434
+ }>>;
435
+ } | undefined;
436
+ } | undefined;
437
+ } | undefined;
438
+ error?: {
439
+ code: string;
440
+ message: string;
441
+ } | undefined;
442
+ };
443
+ state_directory: string;
444
+ } | null>;
445
+ assertAvailable(allowedId?: string): Promise<void>;
446
+ progress(id?: string): Promise<{
447
+ open_when_ready: boolean;
448
+ browser_opened: boolean | undefined;
449
+ instructions: string | undefined;
450
+ editor_url: string | null;
451
+ link_message: string;
452
+ link_instructions: string;
453
+ run_id: string;
454
+ title: string | undefined;
455
+ phase: "published" | "failed" | "prepared" | "cancelled" | "interrupted" | "writing" | "finalizing" | "uploading" | "upload_failed" | "ready_for_review" | "saved";
456
+ generation_completed_locally: boolean;
457
+ delivery_pending: boolean;
458
+ recovery: string | undefined;
459
+ artifact_dir: string;
460
+ execution_mode: "background" | "foreground" | undefined;
461
+ host_task_id: string | undefined;
462
+ progress_source: string;
463
+ session_current: boolean;
464
+ started_at: string;
465
+ updated_at: string;
466
+ project_id: string | undefined;
467
+ error: {
468
+ code: string;
469
+ message: string;
470
+ } | undefined;
471
+ article: {
472
+ id: string;
473
+ revision: string;
474
+ status: "draft" | "published";
475
+ editor_url: string;
476
+ public_url: string | null;
477
+ repository_connection?: {
478
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
479
+ connect_url: string;
480
+ capabilities: {
481
+ sections: boolean;
482
+ suggestions: boolean;
483
+ code_analysis: boolean;
484
+ maintenance: boolean;
485
+ };
486
+ writer?: {
487
+ version: 1;
488
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
489
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
490
+ allowed: boolean;
491
+ execution: "local" | "remote" | "hosted";
492
+ required_scopes: string[];
493
+ next_step: {
494
+ code: string;
495
+ message: string;
496
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
497
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
498
+ url?: string | undefined;
499
+ } | null;
500
+ }>>;
501
+ } | undefined;
502
+ } | undefined;
503
+ } | undefined;
504
+ export_path: string | undefined;
505
+ preview: {
506
+ id: string;
507
+ revision: string;
508
+ status: "draft" | "published";
509
+ editor_url: string;
510
+ public_url: string | null;
511
+ repository_connection?: {
512
+ state: "not_connected" | "connected" | "disconnected" | "suspended";
513
+ connect_url: string;
514
+ capabilities: {
515
+ sections: boolean;
516
+ suggestions: boolean;
517
+ code_analysis: boolean;
518
+ maintenance: boolean;
519
+ };
520
+ writer?: {
521
+ version: 1;
522
+ actions: Partial<Record<"read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre", {
523
+ action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
524
+ allowed: boolean;
525
+ execution: "local" | "remote" | "hosted";
526
+ required_scopes: string[];
527
+ next_step: {
528
+ code: string;
529
+ message: string;
530
+ requested_action: "read_articles" | "create_article" | "update_article" | "edit_article" | "publish_article" | "unpublish_article" | "delete_article" | "find_article_gaps" | "suggest_sections" | "recommend_articles" | "review_sections" | "review_recommendations" | "create_video_walkthrough" | "get_operation" | "generate_help_centre";
531
+ missing_scopes?: ("read" | "import" | "publish" | "manage" | "generate")[] | undefined;
532
+ url?: string | undefined;
533
+ } | null;
534
+ }>>;
535
+ } | undefined;
536
+ } | undefined;
537
+ } | undefined;
538
+ local_preview_path: string | undefined;
539
+ synchronization_error: string | undefined;
540
+ } | null>;
541
+ }