iterate 0.2.6 → 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 (218) hide show
  1. package/README.md +86 -76
  2. package/THIRD_PARTY_NOTICES.md +55 -0
  3. package/bin/iterate.js +18 -3
  4. package/dist/api-url-B6404M82.mjs +17 -0
  5. package/dist/api-url-B6404M82.mjs.map +1 -0
  6. package/dist/app-ref-BipL0feU.mjs +35 -0
  7. package/dist/app-ref-BipL0feU.mjs.map +1 -0
  8. package/dist/app-ref-C1CrgXqX.mjs +7 -0
  9. package/dist/app-ref-C1CrgXqX.mjs.map +1 -0
  10. package/dist/app-ref-DYai_om1.mjs +7 -0
  11. package/dist/app-ref-DYai_om1.mjs.map +1 -0
  12. package/dist/cli-D0c-pDL_.mjs +1010 -0
  13. package/dist/cli-D0c-pDL_.mjs.map +1 -0
  14. package/dist/client.d.ts +3 -0
  15. package/dist/client.mjs +4 -0
  16. package/dist/cloudflare-BTm90gQ4.mjs +951 -0
  17. package/dist/cloudflare-BTm90gQ4.mjs.map +1 -0
  18. package/dist/contract-s4FW4eES.mjs +309 -0
  19. package/dist/contract-s4FW4eES.mjs.map +1 -0
  20. package/dist/document-review/index.d.ts +5 -0
  21. package/dist/document-review/types.d.ts +107 -0
  22. package/dist/document-review.mjs +7015 -0
  23. package/dist/document-review.mjs.map +1 -0
  24. package/dist/durable-object-processor-durability-CNsTjAJS.mjs +205 -0
  25. package/dist/durable-object-processor-durability-CNsTjAJS.mjs.map +1 -0
  26. package/dist/idempotency-DleloJNt.mjs +28 -0
  27. package/dist/idempotency-DleloJNt.mjs.map +1 -0
  28. package/dist/index.mjs +1 -1
  29. package/dist/itx/api-url.d.ts +6 -0
  30. package/dist/itx/itx-node-client.d.ts +65 -0
  31. package/dist/itx/itx-session.d.ts +215 -0
  32. package/dist/itx/owned-rpc-session.d.ts +14 -0
  33. package/dist/itx/query-client.d.ts +10 -0
  34. package/dist/itx-api.generated.d.ts +6195 -0
  35. package/dist/itx-session-sjud8GiT.mjs +534 -0
  36. package/dist/itx-session-sjud8GiT.mjs.map +1 -0
  37. package/dist/live-state-BJNqOwFw.mjs +299 -0
  38. package/dist/live-state-BJNqOwFw.mjs.map +1 -0
  39. package/dist/next/api.d.ts +479 -0
  40. package/dist/next/api.mjs +0 -0
  41. package/dist/next/app-server.d.ts +44 -0
  42. package/dist/next/app-server.mjs +479 -0
  43. package/dist/next/app-server.mjs.map +1 -0
  44. package/dist/next/app-session.d.ts +49 -0
  45. package/dist/next/app-session.mjs +238 -0
  46. package/dist/next/app-session.mjs.map +1 -0
  47. package/dist/next/app.d.ts +29 -0
  48. package/dist/next/app.mjs +141 -0
  49. package/dist/next/app.mjs.map +1 -0
  50. package/dist/next/client/live-state.d.ts +63 -0
  51. package/dist/next/client/oauth.d.ts +12 -0
  52. package/dist/next/client/react.d.ts +109 -0
  53. package/dist/next/client/socket.d.ts +6 -0
  54. package/dist/next/client.mjs +156 -0
  55. package/dist/next/client.mjs.map +1 -0
  56. package/dist/next/expression.d.ts +146 -0
  57. package/dist/next/expression.mjs +399 -0
  58. package/dist/next/expression.mjs.map +1 -0
  59. package/dist/next/lib.d.ts +56 -0
  60. package/dist/next/lib.mjs +199 -0
  61. package/dist/next/lib.mjs.map +1 -0
  62. package/dist/next/oauth-scopes.d.ts +32 -0
  63. package/dist/next/oauth-scopes.mjs +40 -0
  64. package/dist/next/oauth-scopes.mjs.map +1 -0
  65. package/dist/next/oauth.mjs +29 -0
  66. package/dist/next/oauth.mjs.map +1 -0
  67. package/dist/next/principal.d.ts +64 -0
  68. package/dist/next/principal.mjs +98 -0
  69. package/dist/next/principal.mjs.map +1 -0
  70. package/dist/next/project-ingress.d.ts +37 -0
  71. package/dist/next/project-ingress.mjs +75 -0
  72. package/dist/next/project-ingress.mjs.map +1 -0
  73. package/dist/next/react.mjs +285 -0
  74. package/dist/next/react.mjs.map +1 -0
  75. package/dist/next/sdk/auth.d.ts +5 -0
  76. package/dist/next/sdk/index.d.ts +112 -0
  77. package/dist/next/sdk.mjs +139 -0
  78. package/dist/next/sdk.mjs.map +1 -0
  79. package/dist/next/stream/processor.d.ts +378 -0
  80. package/dist/next/stream/processor.mjs +582 -0
  81. package/dist/next/stream/processor.mjs.map +1 -0
  82. package/dist/next/stream/run.d.ts +58 -0
  83. package/dist/next/stream/run.mjs +40 -0
  84. package/dist/next/stream/run.mjs.map +1 -0
  85. package/dist/next-node.d.ts +15 -0
  86. package/dist/next-node.mjs +51 -0
  87. package/dist/next-node.mjs.map +1 -0
  88. package/dist/node.d.ts +3 -0
  89. package/dist/node.mjs +185 -0
  90. package/dist/node.mjs.map +1 -0
  91. package/dist/processor-host-capabilities-BMFH3KTM.mjs +56 -0
  92. package/dist/processor-host-capabilities-BMFH3KTM.mjs.map +1 -0
  93. package/dist/processors/cloudflare.d.ts +3 -0
  94. package/dist/processors/durable-object-processor-durability.d.ts +79 -0
  95. package/dist/processors/event-consumption-metrics.d.ts +82 -0
  96. package/dist/processors/idempotency.d.ts +13 -0
  97. package/dist/processors/index.d.ts +12 -0
  98. package/dist/processors/processor-contracts.d.ts +342 -0
  99. package/dist/processors/processor-facet.d.ts +186 -0
  100. package/dist/processors/processor-host-capabilities.d.ts +60 -0
  101. package/dist/processors/prompt-sections.d.ts +17 -0
  102. package/dist/processors/rpc-types.d.ts +515 -0
  103. package/dist/processors/schemas.d.ts +102 -0
  104. package/dist/processors/stream-handle.d.ts +45 -0
  105. package/dist/processors/stream-processor-keepalive.d.ts +95 -0
  106. package/dist/processors/stream-processor-registry.d.ts +233 -0
  107. package/dist/processors/stream-processor-runner.d.ts +289 -0
  108. package/dist/processors/stream-processor.d.ts +339 -0
  109. package/dist/processors/stream-runtime-metrics.d.ts +107 -0
  110. package/dist/processors/testing.d.ts +302 -0
  111. package/dist/processors-BoNyeBfQ.mjs +10 -0
  112. package/dist/processors-BoNyeBfQ.mjs.map +1 -0
  113. package/dist/processors-cloudflare.mjs +3 -0
  114. package/dist/processors-testing.mjs +435 -0
  115. package/dist/processors-testing.mjs.map +1 -0
  116. package/dist/processors.mjs +52 -0
  117. package/dist/processors.mjs.map +1 -0
  118. package/dist/protocol-DnK_f2m6.mjs +251 -0
  119. package/dist/protocol-DnK_f2m6.mjs.map +1 -0
  120. package/dist/sdk/capnweb/index.d.ts +2 -0
  121. package/dist/sdk/capnweb/live-state/compact.d.ts +5 -0
  122. package/dist/sdk/capnweb/live-state/diff.d.ts +41 -0
  123. package/dist/sdk/capnweb/live-state/engine.d.ts +44 -0
  124. package/dist/sdk/capnweb/live-state/index.d.ts +41 -0
  125. package/dist/sdk/capnweb/live-state/protocol.d.ts +87 -0
  126. package/dist/sdk/capnweb/live-state/retain.d.ts +23 -0
  127. package/dist/sdk/capnweb/live-state/store.d.ts +20 -0
  128. package/dist/sdk/capnweb/live-state/types.d.ts +11 -0
  129. package/dist/sdk/capnweb/react.d.ts +45 -0
  130. package/dist/sdk/capnweb/react.mjs +316 -0
  131. package/dist/sdk/capnweb/react.mjs.map +1 -0
  132. package/dist/sdk/capnweb.mjs +4 -0
  133. package/dist/sdk/itx/react.d.ts +191 -0
  134. package/dist/sdk/itx/react.mjs +383 -0
  135. package/dist/sdk/itx/react.mjs.map +1 -0
  136. package/dist/sdk-DMB-IM11.mjs +933 -0
  137. package/dist/sdk-DMB-IM11.mjs.map +1 -0
  138. package/dist/sdk.d.ts +339 -0
  139. package/dist/sdk.mjs +2 -0
  140. package/dist/serve-itx.d.ts +46 -0
  141. package/dist/starter-apps/flake-dashboard/app-ref.d.ts +31 -0
  142. package/dist/starter-apps/flake-dashboard/configured-worker.mjs +1055 -0
  143. package/dist/starter-apps/flake-dashboard/configured-worker.mjs.map +1 -0
  144. package/dist/starter-apps/flake-dashboard/contract.d.ts +4839 -0
  145. package/dist/starter-apps/flake-dashboard/contract.mjs +2 -0
  146. package/dist/starter-apps/flake-dashboard/index.d.ts +17 -0
  147. package/dist/starter-apps/flake-dashboard/index.mjs +56 -0
  148. package/dist/starter-apps/flake-dashboard/index.mjs.map +1 -0
  149. package/dist/starter-apps/flake-dashboard/worker.d.ts +4607 -0
  150. package/dist/starter-apps/github-ai-linter/ai-linter.d.ts +8914 -0
  151. package/dist/starter-apps/github-ai-linter/configured-worker.mjs +17987 -0
  152. package/dist/starter-apps/github-ai-linter/configured-worker.mjs.map +1 -0
  153. package/dist/starter-apps/github-ai-linter/contract.d.ts +9193 -0
  154. package/dist/starter-apps/github-ai-linter/index.d.ts +10 -0
  155. package/dist/starter-apps/github-ai-linter/index.mjs +36 -0
  156. package/dist/starter-apps/github-ai-linter/index.mjs.map +1 -0
  157. package/dist/starter-apps/github-ai-linter/prompt.d.ts +13 -0
  158. package/dist/starter-apps/github-ai-linter/review-bot.d.ts +808 -0
  159. package/dist/starter-apps/github-ai-linter/rules.d.ts +34 -0
  160. package/dist/starter-apps/github-ai-linter/worker-ref.d.ts +19 -0
  161. package/dist/starter-apps/github-ai-linter/worker.d.ts +19 -0
  162. package/dist/starter-apps/github-ai-linter/worker.mjs +947 -0
  163. package/dist/starter-apps/github-ai-linter/worker.mjs.map +1 -0
  164. package/dist/starter-apps/guestbook/app-ref.d.ts +27 -0
  165. package/dist/starter-apps/guestbook/client.d.ts +7 -0
  166. package/dist/starter-apps/guestbook/client.mjs +59 -0
  167. package/dist/starter-apps/guestbook/configured-worker.mjs +205 -0
  168. package/dist/starter-apps/guestbook/configured-worker.mjs.map +1 -0
  169. package/dist/starter-apps/guestbook/index.d.ts +9 -0
  170. package/dist/starter-apps/guestbook/index.mjs +31 -0
  171. package/dist/starter-apps/guestbook/index.mjs.map +1 -0
  172. package/dist/starter-apps/guestbook/processor.d.ts +2267 -0
  173. package/dist/starter-apps/guestbook/worker.d.ts +26 -0
  174. package/dist/starter-apps/guestbook/worker.mjs +191 -0
  175. package/dist/starter-apps/guestbook/worker.mjs.map +1 -0
  176. package/dist/starter-apps/media/configured-worker.mjs +577 -0
  177. package/dist/starter-apps/media/configured-worker.mjs.map +1 -0
  178. package/dist/starter-apps/media/index.mjs +36 -0
  179. package/dist/starter-apps/media/index.mjs.map +1 -0
  180. package/dist/starter-apps/media/ref.mjs +20 -0
  181. package/dist/starter-apps/media/ref.mjs.map +1 -0
  182. package/dist/starter-apps/media/worker.mjs +579 -0
  183. package/dist/starter-apps/media/worker.mjs.map +1 -0
  184. package/dist/starter-apps/notes/configured-worker.mjs +6134 -0
  185. package/dist/starter-apps/notes/configured-worker.mjs.map +1 -0
  186. package/dist/starter-apps/notes/index.mjs +23 -0
  187. package/dist/starter-apps/notes/index.mjs.map +1 -0
  188. package/dist/starter-apps/notes/ref.mjs +21 -0
  189. package/dist/starter-apps/notes/ref.mjs.map +1 -0
  190. package/dist/starter-apps/notes/worker.mjs +427 -0
  191. package/dist/starter-apps/notes/worker.mjs.map +1 -0
  192. package/dist/starter-apps/todo/client.mjs +59 -0
  193. package/dist/starter-apps/todo/configured-worker.mjs +2864 -0
  194. package/dist/starter-apps/todo/configured-worker.mjs.map +1 -0
  195. package/dist/starter-apps/todo/index.d.ts +8 -0
  196. package/dist/starter-apps/todo/index.mjs +29 -0
  197. package/dist/starter-apps/todo/index.mjs.map +1 -0
  198. package/dist/stream-processor-keepalive-DAQTP6m3.mjs +2082 -0
  199. package/dist/stream-processor-keepalive-DAQTP6m3.mjs.map +1 -0
  200. package/dist/usingCtx-inzbY1Qz.mjs +57 -0
  201. package/dist/usingCtx-mZx5nsAW.mjs +11800 -0
  202. package/dist/usingCtx-mZx5nsAW.mjs.map +1 -0
  203. package/dist/worker-ref-DZxPDmb_.mjs +390 -0
  204. package/dist/worker-ref-DZxPDmb_.mjs.map +1 -0
  205. package/menubar/Iterate.entitlements +12 -0
  206. package/menubar/Iterate.swift +914 -0
  207. package/menubar/IterateIcon.swift +145 -0
  208. package/menubar/README.md +28 -0
  209. package/menubar/build-menubar-app.sh +59 -0
  210. package/package.json +235 -18
  211. package/dist/cli-DMS4kJph.mjs +0 -868
  212. package/dist/cli-DMS4kJph.mjs.map +0 -1
  213. package/dist/config-DtnR7Lv7.mjs +0 -170
  214. package/dist/config-DtnR7Lv7.mjs.map +0 -1
  215. package/dist/index.d.mts.map +0 -1
  216. package/dist/stream-tui/agent-chat-terminal.d.mts +0 -1
  217. package/dist/stream-tui/agent-chat-terminal.mjs +0 -933
  218. package/dist/stream-tui/agent-chat-terminal.mjs.map +0 -1
@@ -0,0 +1,2 @@
1
+ import { a as FlakeKind, c as FlakeTransition, d as FlakeSuiteSummary, i as FlakeDashboardState, l as flakeEventTypes, n as FlakeDashboardConfig, o as FlakeOutcome, r as FlakeDashboardProcessorContract, s as FlakeRecord, t as CheckRunWebhookEvent, u as flakeTransitionThresholds } from "../../contract-s4FW4eES.mjs";
2
+ export { CheckRunWebhookEvent, FlakeDashboardConfig, FlakeDashboardProcessorContract, FlakeDashboardState, FlakeKind, FlakeOutcome, FlakeRecord, FlakeSuiteSummary, FlakeTransition, flakeEventTypes, flakeTransitionThresholds };
@@ -0,0 +1,17 @@
1
+ import type { ItxBinding, StreamEvent } from "../../sdk.ts";
2
+ import type { DepotIngestionConfig } from "./worker.ts";
3
+ export { flakeDashboardCreationEvents, flakesStreamPath } from "./app-ref.ts";
4
+ export declare const FlakeDashboardApp: {
5
+ /**
6
+ * `config.depot` points ingestion at the project's own CI artifact store;
7
+ * omit it to run the dashboard without check_run ingestion (records can
8
+ * still arrive by any other append to /flakes).
9
+ */
10
+ create(env: {
11
+ ITX: Pick<ItxBinding, "get">;
12
+ }, config?: {
13
+ depot?: DepotIngestionConfig;
14
+ }): {
15
+ processEvent(event: StreamEvent): Promise<void>;
16
+ };
17
+ };
@@ -0,0 +1,56 @@
1
+ import { t as CheckRunWebhookEvent } from "../../contract-s4FW4eES.mjs";
2
+ import { t as _usingCtx } from "../../usingCtx-inzbY1Qz.mjs";
3
+ //#region src/starter-apps/flake-dashboard/app-ref.ts
4
+ const flakesStreamPath = "/flakes";
5
+ const flakeDashboardWorkerRef = {
6
+ className: "FlakeDashboardApp",
7
+ durableWorkerKey: "app-flake-dashboard",
8
+ path: "/",
9
+ source: { createWorker: {
10
+ entryPoint: "node_modules/iterate/dist/starter-apps/flake-dashboard/configured-worker.mjs",
11
+ files: {
12
+ include: ["package.json"],
13
+ repoPath: "/repos/config",
14
+ type: "repo"
15
+ }
16
+ } },
17
+ type: "stateful"
18
+ };
19
+ /**
20
+ * The dashboard's birth certificate. Idempotency-keyed so every caller — the
21
+ * worker's lazy initialization AND the CI reporter script, whichever appends
22
+ * first — may offer it; the config values are immutable birth facts.
23
+ */
24
+ function flakeDashboardCreationEvents(config) {
25
+ return [{
26
+ type: "events.iterate.com/flakes/created",
27
+ payload: { config },
28
+ idempotencyKey: "flakes/created"
29
+ }];
30
+ }
31
+ //#endregion
32
+ //#region src/starter-apps/flake-dashboard/index.ts
33
+ const FlakeDashboardApp = {
34
+ /**
35
+ * `config.depot` points ingestion at the project's own CI artifact store;
36
+ * omit it to run the dashboard without check_run ingestion (records can
37
+ * still arrive by any other append to /flakes).
38
+ */
39
+ create(env, config) {
40
+ return { async processEvent(event) {
41
+ try {
42
+ var _usingCtx$1 = _usingCtx();
43
+ if (event.path !== "/flakes" && !CheckRunWebhookEvent.safeParse(event).success) return;
44
+ const project = _usingCtx$1.u(await env.ITX.get());
45
+ await _usingCtx$1.u(project.workers.get(flakeDashboardWorkerRef)).processEvent(event, { depot: config?.depot });
46
+ } catch (_) {
47
+ _usingCtx$1.e = _;
48
+ } finally {
49
+ _usingCtx$1.d();
50
+ }
51
+ } };
52
+ } };
53
+ //#endregion
54
+ export { FlakeDashboardApp, flakeDashboardCreationEvents, flakesStreamPath };
55
+
56
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/starter-apps/flake-dashboard/app-ref.ts","../../../src/starter-apps/flake-dashboard/index.ts"],"sourcesContent":["// The flake dashboard's physical identity and creation facts.\nimport type { StreamEventInput } from \"../../processors/index.ts\";\nimport type { StatefulDynamicWorkerRef } from \"../../sdk.ts\";\n\nexport const flakesStreamPath = \"/flakes\";\n\nexport const flakeDashboardWorkerRef = {\n className: \"FlakeDashboardApp\",\n durableWorkerKey: \"app-flake-dashboard\",\n path: \"/\",\n source: {\n createWorker: {\n entryPoint: \"node_modules/iterate/dist/starter-apps/flake-dashboard/configured-worker.mjs\",\n files: {\n include: [\"package.json\"],\n repoPath: \"/repos/config\",\n type: \"repo\",\n },\n },\n },\n type: \"stateful\",\n} satisfies StatefulDynamicWorkerRef;\n\n/**\n * The dashboard's birth certificate. Idempotency-keyed so every caller — the\n * worker's lazy initialization AND the CI reporter script, whichever appends\n * first — may offer it; the config values are immutable birth facts.\n */\nexport function flakeDashboardCreationEvents(config: {\n repository: { owner: string; repo: string };\n issueTitle: string;\n defaultBranch: string;\n}): StreamEventInput[] {\n return [\n {\n type: \"events.iterate.com/flakes/created\",\n payload: { config },\n idempotencyKey: \"flakes/created\",\n },\n ];\n}\n","import type { DynamicWorkerCapability, ItxBinding, StreamEvent } from \"../../sdk.ts\";\nimport { flakeDashboardWorkerRef, flakesStreamPath } from \"./app-ref.ts\";\nimport { CheckRunWebhookEvent } from \"./contract.ts\";\nimport type { DepotIngestionConfig, FlakeDashboardApp as FlakeDashboardWorker } from \"./worker.ts\";\n\nexport { flakeDashboardCreationEvents, flakesStreamPath } from \"./app-ref.ts\";\n\nexport const FlakeDashboardApp = {\n /**\n * `config.depot` points ingestion at the project's own CI artifact store;\n * omit it to run the dashboard without check_run ingestion (records can\n * still arrive by any other append to /flakes).\n */\n create(env: { ITX: Pick<ItxBinding, \"get\"> }, config?: { depot?: DepotIngestionConfig }) {\n return {\n async processEvent(event: StreamEvent): Promise<void> {\n // Pure routing: /flakes events and completed workflow_run webhooks\n // (CI's credential-free reporting signal) both dispatch to the\n // worker's processEvent; everything else returns before itx opens.\n if (event.path !== flakesStreamPath && !CheckRunWebhookEvent.safeParse(event).success) {\n return;\n }\n using project = await env.ITX.get();\n // workers.get returns an untyped RPC capability; the assertion is the\n // only place to say what answers. It is safe because the ref pins\n // className to FlakeDashboardApp, whose own method surface is exactly\n // what is asserted here (same pattern as the guestbook app).\n using worker = project.workers.get(flakeDashboardWorkerRef) as DynamicWorkerCapability<\n Pick<FlakeDashboardWorker, \"processEvent\">\n >;\n await worker.processEvent(event, { depot: config?.depot });\n },\n };\n },\n};\n"],"mappings":";;;AAIA,MAAa,mBAAmB;AAEhC,MAAa,0BAA0B;CACrC,WAAW;CACX,kBAAkB;CAClB,MAAM;CACN,QAAQ,EACN,cAAc;EACZ,YAAY;EACZ,OAAO;GACL,SAAS,CAAC,cAAc;GACxB,UAAU;GACV,MAAM;EACR;CACF,EACF;CACA,MAAM;AACR;;;;;;AAOA,SAAgB,6BAA6B,QAItB;CACrB,OAAO,CACL;EACE,MAAM;EACN,SAAS,EAAE,OAAO;EAClB,gBAAgB;CAClB,CACF;AACF;;;ACjCA,MAAa,oBAAoB;;;;;;AAM/B,OAAO,KAAuC,QAA2C;CACvF,OAAO,EACL,MAAM,aAAa,OAAmC;;;GAIpD,IAAI,MAAM,SAAA,aAA6B,CAAC,qBAAqB,UAAU,KAAK,CAAC,CAAC,SAC5E;GAEF,MAAM,UAAA,YAAA,EAAU,MAAM,IAAI,IAAI,IAAI,CAAA;GAQlC,MAAA,YAAA,EAHe,QAAQ,QAAQ,IAAI,uBAAuB,CAG/C,CAAC,CAAC,aAAa,OAAO,EAAE,OAAO,QAAQ,MAAM,CAAC;;;;;;CAC3D,EACF;AACF,EACF"}