iterate 0.2.7 → 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.
- package/README.md +86 -76
- package/THIRD_PARTY_NOTICES.md +55 -0
- package/bin/iterate.js +11 -3
- package/dist/api-url-B6404M82.mjs +17 -0
- package/dist/api-url-B6404M82.mjs.map +1 -0
- package/dist/app-ref-BipL0feU.mjs +35 -0
- package/dist/app-ref-BipL0feU.mjs.map +1 -0
- package/dist/app-ref-C1CrgXqX.mjs +7 -0
- package/dist/app-ref-C1CrgXqX.mjs.map +1 -0
- package/dist/app-ref-DYai_om1.mjs +7 -0
- package/dist/app-ref-DYai_om1.mjs.map +1 -0
- package/dist/cli-D0c-pDL_.mjs +1010 -0
- package/dist/cli-D0c-pDL_.mjs.map +1 -0
- package/dist/client.d.ts +3 -0
- package/dist/client.mjs +4 -0
- package/dist/cloudflare-BTm90gQ4.mjs +951 -0
- package/dist/cloudflare-BTm90gQ4.mjs.map +1 -0
- package/dist/contract-s4FW4eES.mjs +309 -0
- package/dist/contract-s4FW4eES.mjs.map +1 -0
- package/dist/document-review/index.d.ts +5 -0
- package/dist/document-review/types.d.ts +107 -0
- package/dist/document-review.mjs +7015 -0
- package/dist/document-review.mjs.map +1 -0
- package/dist/durable-object-processor-durability-CNsTjAJS.mjs +205 -0
- package/dist/durable-object-processor-durability-CNsTjAJS.mjs.map +1 -0
- package/dist/idempotency-DleloJNt.mjs +28 -0
- package/dist/idempotency-DleloJNt.mjs.map +1 -0
- package/dist/index.mjs +1 -1
- package/dist/itx/api-url.d.ts +6 -0
- package/dist/itx/itx-node-client.d.ts +65 -0
- package/dist/itx/itx-session.d.ts +215 -0
- package/dist/itx/owned-rpc-session.d.ts +14 -0
- package/dist/itx/query-client.d.ts +10 -0
- package/dist/itx-api.generated.d.ts +6195 -0
- package/dist/itx-session-sjud8GiT.mjs +534 -0
- package/dist/itx-session-sjud8GiT.mjs.map +1 -0
- package/dist/live-state-BJNqOwFw.mjs +299 -0
- package/dist/live-state-BJNqOwFw.mjs.map +1 -0
- package/dist/next/api.d.ts +479 -0
- package/dist/next/api.mjs +0 -0
- package/dist/next/app-server.d.ts +44 -0
- package/dist/next/app-server.mjs +479 -0
- package/dist/next/app-server.mjs.map +1 -0
- package/dist/next/app-session.d.ts +49 -0
- package/dist/next/app-session.mjs +238 -0
- package/dist/next/app-session.mjs.map +1 -0
- package/dist/next/app.d.ts +29 -0
- package/dist/next/app.mjs +141 -0
- package/dist/next/app.mjs.map +1 -0
- package/dist/next/client/live-state.d.ts +63 -0
- package/dist/next/client/oauth.d.ts +12 -0
- package/dist/next/client/react.d.ts +109 -0
- package/dist/next/client/socket.d.ts +6 -0
- package/dist/next/client.mjs +156 -0
- package/dist/next/client.mjs.map +1 -0
- package/dist/next/expression.d.ts +146 -0
- package/dist/next/expression.mjs +399 -0
- package/dist/next/expression.mjs.map +1 -0
- package/dist/next/lib.d.ts +56 -0
- package/dist/next/lib.mjs +199 -0
- package/dist/next/lib.mjs.map +1 -0
- package/dist/next/oauth-scopes.d.ts +32 -0
- package/dist/next/oauth-scopes.mjs +40 -0
- package/dist/next/oauth-scopes.mjs.map +1 -0
- package/dist/next/oauth.mjs +29 -0
- package/dist/next/oauth.mjs.map +1 -0
- package/dist/next/principal.d.ts +64 -0
- package/dist/next/principal.mjs +98 -0
- package/dist/next/principal.mjs.map +1 -0
- package/dist/next/project-ingress.d.ts +37 -0
- package/dist/next/project-ingress.mjs +75 -0
- package/dist/next/project-ingress.mjs.map +1 -0
- package/dist/next/react.mjs +285 -0
- package/dist/next/react.mjs.map +1 -0
- package/dist/next/sdk/auth.d.ts +5 -0
- package/dist/next/sdk/index.d.ts +112 -0
- package/dist/next/sdk.mjs +139 -0
- package/dist/next/sdk.mjs.map +1 -0
- package/dist/next/stream/processor.d.ts +378 -0
- package/dist/next/stream/processor.mjs +582 -0
- package/dist/next/stream/processor.mjs.map +1 -0
- package/dist/next/stream/run.d.ts +58 -0
- package/dist/next/stream/run.mjs +40 -0
- package/dist/next/stream/run.mjs.map +1 -0
- package/dist/next-node.d.ts +15 -0
- package/dist/next-node.mjs +51 -0
- package/dist/next-node.mjs.map +1 -0
- package/dist/node.d.ts +3 -0
- package/dist/node.mjs +185 -0
- package/dist/node.mjs.map +1 -0
- package/dist/processor-host-capabilities-BMFH3KTM.mjs +56 -0
- package/dist/processor-host-capabilities-BMFH3KTM.mjs.map +1 -0
- package/dist/processors/cloudflare.d.ts +3 -0
- package/dist/processors/durable-object-processor-durability.d.ts +79 -0
- package/dist/processors/event-consumption-metrics.d.ts +82 -0
- package/dist/processors/idempotency.d.ts +13 -0
- package/dist/processors/index.d.ts +12 -0
- package/dist/processors/processor-contracts.d.ts +342 -0
- package/dist/processors/processor-facet.d.ts +186 -0
- package/dist/processors/processor-host-capabilities.d.ts +60 -0
- package/dist/processors/prompt-sections.d.ts +17 -0
- package/dist/processors/rpc-types.d.ts +515 -0
- package/dist/processors/schemas.d.ts +102 -0
- package/dist/processors/stream-handle.d.ts +45 -0
- package/dist/processors/stream-processor-keepalive.d.ts +95 -0
- package/dist/processors/stream-processor-registry.d.ts +233 -0
- package/dist/processors/stream-processor-runner.d.ts +289 -0
- package/dist/processors/stream-processor.d.ts +339 -0
- package/dist/processors/stream-runtime-metrics.d.ts +107 -0
- package/dist/processors/testing.d.ts +302 -0
- package/dist/processors-BoNyeBfQ.mjs +10 -0
- package/dist/processors-BoNyeBfQ.mjs.map +1 -0
- package/dist/processors-cloudflare.mjs +3 -0
- package/dist/processors-testing.mjs +435 -0
- package/dist/processors-testing.mjs.map +1 -0
- package/dist/processors.mjs +52 -0
- package/dist/processors.mjs.map +1 -0
- package/dist/protocol-DnK_f2m6.mjs +251 -0
- package/dist/protocol-DnK_f2m6.mjs.map +1 -0
- package/dist/sdk/capnweb/index.d.ts +2 -0
- package/dist/sdk/capnweb/live-state/compact.d.ts +5 -0
- package/dist/sdk/capnweb/live-state/diff.d.ts +41 -0
- package/dist/sdk/capnweb/live-state/engine.d.ts +44 -0
- package/dist/sdk/capnweb/live-state/index.d.ts +41 -0
- package/dist/sdk/capnweb/live-state/protocol.d.ts +87 -0
- package/dist/sdk/capnweb/live-state/retain.d.ts +23 -0
- package/dist/sdk/capnweb/live-state/store.d.ts +20 -0
- package/dist/sdk/capnweb/live-state/types.d.ts +11 -0
- package/dist/sdk/capnweb/react.d.ts +45 -0
- package/dist/sdk/capnweb/react.mjs +316 -0
- package/dist/sdk/capnweb/react.mjs.map +1 -0
- package/dist/sdk/capnweb.mjs +4 -0
- package/dist/sdk/itx/react.d.ts +191 -0
- package/dist/sdk/itx/react.mjs +383 -0
- package/dist/sdk/itx/react.mjs.map +1 -0
- package/dist/sdk-DMB-IM11.mjs +933 -0
- package/dist/sdk-DMB-IM11.mjs.map +1 -0
- package/dist/sdk.d.ts +339 -0
- package/dist/sdk.mjs +2 -0
- package/dist/serve-itx.d.ts +46 -0
- package/dist/starter-apps/flake-dashboard/app-ref.d.ts +31 -0
- package/dist/starter-apps/flake-dashboard/configured-worker.mjs +1055 -0
- package/dist/starter-apps/flake-dashboard/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/flake-dashboard/contract.d.ts +4839 -0
- package/dist/starter-apps/flake-dashboard/contract.mjs +2 -0
- package/dist/starter-apps/flake-dashboard/index.d.ts +17 -0
- package/dist/starter-apps/flake-dashboard/index.mjs +56 -0
- package/dist/starter-apps/flake-dashboard/index.mjs.map +1 -0
- package/dist/starter-apps/flake-dashboard/worker.d.ts +4607 -0
- package/dist/starter-apps/github-ai-linter/ai-linter.d.ts +8914 -0
- package/dist/starter-apps/github-ai-linter/configured-worker.mjs +17987 -0
- package/dist/starter-apps/github-ai-linter/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/github-ai-linter/contract.d.ts +9193 -0
- package/dist/starter-apps/github-ai-linter/index.d.ts +10 -0
- package/dist/starter-apps/github-ai-linter/index.mjs +36 -0
- package/dist/starter-apps/github-ai-linter/index.mjs.map +1 -0
- package/dist/starter-apps/github-ai-linter/prompt.d.ts +13 -0
- package/dist/starter-apps/github-ai-linter/review-bot.d.ts +808 -0
- package/dist/starter-apps/github-ai-linter/rules.d.ts +34 -0
- package/dist/starter-apps/github-ai-linter/worker-ref.d.ts +19 -0
- package/dist/starter-apps/github-ai-linter/worker.d.ts +19 -0
- package/dist/starter-apps/github-ai-linter/worker.mjs +947 -0
- package/dist/starter-apps/github-ai-linter/worker.mjs.map +1 -0
- package/dist/starter-apps/guestbook/app-ref.d.ts +27 -0
- package/dist/starter-apps/guestbook/client.d.ts +7 -0
- package/dist/starter-apps/guestbook/client.mjs +59 -0
- package/dist/starter-apps/guestbook/configured-worker.mjs +205 -0
- package/dist/starter-apps/guestbook/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/guestbook/index.d.ts +9 -0
- package/dist/starter-apps/guestbook/index.mjs +31 -0
- package/dist/starter-apps/guestbook/index.mjs.map +1 -0
- package/dist/starter-apps/guestbook/processor.d.ts +2267 -0
- package/dist/starter-apps/guestbook/worker.d.ts +26 -0
- package/dist/starter-apps/guestbook/worker.mjs +191 -0
- package/dist/starter-apps/guestbook/worker.mjs.map +1 -0
- package/dist/starter-apps/media/configured-worker.mjs +577 -0
- package/dist/starter-apps/media/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/media/index.mjs +36 -0
- package/dist/starter-apps/media/index.mjs.map +1 -0
- package/dist/starter-apps/media/ref.mjs +20 -0
- package/dist/starter-apps/media/ref.mjs.map +1 -0
- package/dist/starter-apps/media/worker.mjs +579 -0
- package/dist/starter-apps/media/worker.mjs.map +1 -0
- package/dist/starter-apps/notes/configured-worker.mjs +6134 -0
- package/dist/starter-apps/notes/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/notes/index.mjs +23 -0
- package/dist/starter-apps/notes/index.mjs.map +1 -0
- package/dist/starter-apps/notes/ref.mjs +21 -0
- package/dist/starter-apps/notes/ref.mjs.map +1 -0
- package/dist/starter-apps/notes/worker.mjs +427 -0
- package/dist/starter-apps/notes/worker.mjs.map +1 -0
- package/dist/starter-apps/todo/client.mjs +59 -0
- package/dist/starter-apps/todo/configured-worker.mjs +2864 -0
- package/dist/starter-apps/todo/configured-worker.mjs.map +1 -0
- package/dist/starter-apps/todo/index.d.ts +8 -0
- package/dist/starter-apps/todo/index.mjs +29 -0
- package/dist/starter-apps/todo/index.mjs.map +1 -0
- package/dist/stream-processor-keepalive-DAQTP6m3.mjs +2082 -0
- package/dist/stream-processor-keepalive-DAQTP6m3.mjs.map +1 -0
- package/dist/usingCtx-inzbY1Qz.mjs +57 -0
- package/dist/usingCtx-mZx5nsAW.mjs +11800 -0
- package/dist/usingCtx-mZx5nsAW.mjs.map +1 -0
- package/dist/worker-ref-DZxPDmb_.mjs +390 -0
- package/dist/worker-ref-DZxPDmb_.mjs.map +1 -0
- package/menubar/Iterate.entitlements +12 -0
- package/menubar/Iterate.swift +914 -0
- package/menubar/IterateIcon.swift +145 -0
- package/menubar/README.md +28 -0
- package/menubar/build-menubar-app.sh +59 -0
- package/package.json +235 -18
- package/dist/cli-DMS4kJph.mjs +0 -868
- package/dist/cli-DMS4kJph.mjs.map +0 -1
- package/dist/config-DtnR7Lv7.mjs +0 -170
- package/dist/config-DtnR7Lv7.mjs.map +0 -1
- package/dist/index.d.mts.map +0 -1
- package/dist/stream-tui/agent-chat-terminal.d.mts +0 -1
- package/dist/stream-tui/agent-chat-terminal.mjs +0 -933
- package/dist/stream-tui/agent-chat-terminal.mjs.map +0 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ItxBinding, StreamEvent } from "../../sdk.ts";
|
|
2
|
+
import { type GithubAiLinterConfig } from "./worker-ref.ts";
|
|
3
|
+
export type { GithubAiLinterConfig } from "./worker-ref.ts";
|
|
4
|
+
export declare const GithubAiLinter: {
|
|
5
|
+
create(env: {
|
|
6
|
+
ITX: ItxBinding;
|
|
7
|
+
}, config: GithubAiLinterConfig): {
|
|
8
|
+
processEvent(event: StreamEvent): Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { t as _usingCtx } from "../../usingCtx-inzbY1Qz.mjs";
|
|
2
|
+
import { r as reviewBotSubscriptionEvent, t as REVIEW_BOT_SUBSCRIPTION_NAME } from "../../worker-ref-DZxPDmb_.mjs";
|
|
3
|
+
//#region src/starter-apps/github-ai-linter/index.ts
|
|
4
|
+
const GithubAiLinter = { create(env, config) {
|
|
5
|
+
return { async processEvent(event) {
|
|
6
|
+
try {
|
|
7
|
+
var _usingCtx$1 = _usingCtx();
|
|
8
|
+
const linkedConnection = event.type === "events.iterate.com/repo/github-link-configured" ? event.payload?.connection : void 0;
|
|
9
|
+
if (event.type === "events.iterate.com/repo/github-link-configured" && (typeof linkedConnection !== "string" || linkedConnection.length === 0)) return;
|
|
10
|
+
if (event.type !== "events.iterate.com/repo/github-link-configured" && (event.type !== "events.iterate.com/project/worker-updated" || event.path !== "/")) return;
|
|
11
|
+
const itx = _usingCtx$1.u(await env.ITX.get());
|
|
12
|
+
let connections;
|
|
13
|
+
if (typeof linkedConnection === "string") connections = [linkedConnection];
|
|
14
|
+
else {
|
|
15
|
+
const repos = await itx.repos.list();
|
|
16
|
+
connections = (await Promise.all(repos.map(async ({ path }) => (await itx.repos.get(path).processor.snapshot()).state.github))).flatMap((link) => link === null ? [] : [link.connection]);
|
|
17
|
+
}
|
|
18
|
+
await Promise.all([...new Set(connections)].map(async (connection) => {
|
|
19
|
+
const connectionStream = itx.streams.get(`/integrations/github/${connection}`);
|
|
20
|
+
const runtime = await connectionStream.runtimeState();
|
|
21
|
+
const existingCutoffMatch = (runtime.coreProcessorState.subscriptions.outbound.byName[REVIEW_BOT_SUBSCRIPTION_NAME]?.configuration.filter?.jsonataCondition)?.match(/^offset > ([0-9]+)(?:\s|$)/);
|
|
22
|
+
const existingCutoff = existingCutoffMatch ? Number(existingCutoffMatch[1]) : null;
|
|
23
|
+
const startAfterOffset = existingCutoff !== null && Number.isSafeInteger(existingCutoff) ? existingCutoff : runtime.coreProcessorState.maxOffset;
|
|
24
|
+
await connectionStream.append(await reviewBotSubscriptionEvent(event, connection, config, startAfterOffset));
|
|
25
|
+
}));
|
|
26
|
+
} catch (_) {
|
|
27
|
+
_usingCtx$1.e = _;
|
|
28
|
+
} finally {
|
|
29
|
+
_usingCtx$1.d();
|
|
30
|
+
}
|
|
31
|
+
} };
|
|
32
|
+
} };
|
|
33
|
+
//#endregion
|
|
34
|
+
export { GithubAiLinter };
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/starter-apps/github-ai-linter/index.ts"],"sourcesContent":["import type { ItxBinding, StreamEvent } from \"../../sdk.ts\";\nimport {\n REVIEW_BOT_SUBSCRIPTION_NAME,\n reviewBotSubscriptionEvent,\n type GithubAiLinterConfig,\n} from \"./worker-ref.ts\";\n\nexport type { GithubAiLinterConfig } from \"./worker-ref.ts\";\n\nexport const GithubAiLinter = {\n create(env: { ITX: ItxBinding }, config: GithubAiLinterConfig) {\n return {\n async processEvent(event: StreamEvent) {\n const linkedConnection =\n event.type === \"events.iterate.com/repo/github-link-configured\"\n ? event.payload?.connection\n : undefined;\n if (\n event.type === \"events.iterate.com/repo/github-link-configured\" &&\n (typeof linkedConnection !== \"string\" || linkedConnection.length === 0)\n ) {\n return;\n }\n if (\n event.type !== \"events.iterate.com/repo/github-link-configured\" &&\n (event.type !== \"events.iterate.com/project/worker-updated\" || event.path !== \"/\")\n ) {\n return;\n }\n\n using itx = await env.ITX.get();\n let connections: string[];\n if (typeof linkedConnection === \"string\") {\n connections = [linkedConnection];\n } else {\n const repos = await itx.repos.list();\n const links = await Promise.all(\n repos.map(\n async ({ path }) => (await itx.repos.get(path).processor.snapshot()).state.github,\n ),\n );\n connections = links.flatMap((link) => (link === null ? [] : [link.connection]));\n }\n await Promise.all(\n [...new Set(connections)].map(async (connection) => {\n const connectionStream = itx.streams.get(`/integrations/github/${connection}`);\n const runtime = await connectionStream.runtimeState();\n const existingCondition =\n runtime.coreProcessorState.subscriptions.outbound.byName[REVIEW_BOT_SUBSCRIPTION_NAME]\n ?.configuration.filter?.jsonataCondition;\n // Both the original cutoff-only condition and the narrowed\n // condition start with this durable boundary. Keep accepting the\n // old shape so the first config refresh upgrades in place without\n // skipping webhooks which arrived since installation.\n const existingCutoffMatch = existingCondition?.match(/^offset > ([0-9]+)(?:\\s|$)/);\n const existingCutoff = existingCutoffMatch ? Number(existingCutoffMatch[1]) : null;\n\n // First configuration deliberately starts at the current head: a\n // semantic project restore must not replay historical webhooks.\n // Later config-worker updates preserve that boundary so a refresh\n // cannot skip webhooks that arrived since the bot was installed.\n const startAfterOffset =\n existingCutoff !== null && Number.isSafeInteger(existingCutoff)\n ? existingCutoff\n : runtime.coreProcessorState.maxOffset;\n await connectionStream.append(\n await reviewBotSubscriptionEvent(event, connection, config, startAfterOffset),\n );\n }),\n );\n },\n };\n },\n};\n"],"mappings":";;;AASA,MAAa,iBAAiB,EAC5B,OAAO,KAA0B,QAA8B;CAC7D,OAAO,EACL,MAAM,aAAa,OAAoB;;;GACrC,MAAM,mBACJ,MAAM,SAAS,mDACX,MAAM,SAAS,aACf,KAAA;GACN,IACE,MAAM,SAAS,qDACd,OAAO,qBAAqB,YAAY,iBAAiB,WAAW,IAErE;GAEF,IACE,MAAM,SAAS,qDACd,MAAM,SAAS,+CAA+C,MAAM,SAAS,MAE9E;GAGF,MAAM,MAAA,YAAA,EAAM,MAAM,IAAI,IAAI,IAAI,CAAA;GAC9B,IAAI;GACJ,IAAI,OAAO,qBAAqB,UAC9B,cAAc,CAAC,gBAAgB;QAC1B;IACL,MAAM,QAAQ,MAAM,IAAI,MAAM,KAAK;IAMnC,eAAc,MALM,QAAQ,IAC1B,MAAM,IACJ,OAAO,EAAE,YAAY,MAAM,IAAI,MAAM,IAAI,IAAI,CAAC,CAAC,UAAU,SAAS,EAAA,CAAG,MAAM,MAC7E,CACF,EAAA,CACoB,SAAS,SAAU,SAAS,OAAO,CAAC,IAAI,CAAC,KAAK,UAAU,CAAE;GAChF;GACA,MAAM,QAAQ,IACZ,CAAC,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO,eAAe;IAClD,MAAM,mBAAmB,IAAI,QAAQ,IAAI,wBAAwB,YAAY;IAC7E,MAAM,UAAU,MAAM,iBAAiB,aAAa;IAQpD,MAAM,uBANJ,QAAQ,mBAAmB,cAAc,SAAS,OAAO,6BAA6B,EAClF,cAAc,QAAQ,iBAAA,EAKmB,MAAM,4BAA4B;IACjF,MAAM,iBAAiB,sBAAsB,OAAO,oBAAoB,EAAE,IAAI;IAM9E,MAAM,mBACJ,mBAAmB,QAAQ,OAAO,cAAc,cAAc,IAC1D,iBACA,QAAQ,mBAAmB;IACjC,MAAM,iBAAiB,OACrB,MAAM,2BAA2B,OAAO,YAAY,QAAQ,gBAAgB,CAC9E;GACF,CAAC,CACH;;;;;;CACF,EACF;AACF,EACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { GithubAiLinterAnalysisRequested } from "./contract.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Bump this whenever the durable developer policy or task protocol changes in
|
|
4
|
+
* a way that should re-analyse an otherwise unchanged head. Keeping the
|
|
5
|
+
* version beside the prompt avoids hiding prompt identity in deployment state.
|
|
6
|
+
*/
|
|
7
|
+
export declare const githubAiLinterPromptVersion = "5";
|
|
8
|
+
export declare const githubAiLinterAgentPolicy: string;
|
|
9
|
+
export declare function githubAiLinterTask(input: {
|
|
10
|
+
analysis: GithubAiLinterAnalysisRequested;
|
|
11
|
+
analysisRequestOffset: number;
|
|
12
|
+
streamPath: string;
|
|
13
|
+
}): string;
|