@keystrokehq/keystroke 0.0.65 → 0.0.66

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 (35) hide show
  1. package/dist/action.cjs +1 -1
  2. package/dist/action.mjs +1 -1
  3. package/dist/agent.cjs +3 -3
  4. package/dist/agent.mjs +3 -3
  5. package/dist/credentials.cjs +1 -1
  6. package/dist/credentials.mjs +1 -1
  7. package/dist/{dist-CNECye-C.cjs → dist-Bism_aBn.cjs} +3 -3
  8. package/dist/{dist-CNECye-C.cjs.map → dist-Bism_aBn.cjs.map} +1 -1
  9. package/dist/{dist-CfqtAm2a.cjs → dist-D1jOLmXW.cjs} +21 -3
  10. package/dist/{dist-CfqtAm2a.cjs.map → dist-D1jOLmXW.cjs.map} +1 -1
  11. package/dist/{dist-BIzKfLyv.cjs → dist-D5Grf4qu.cjs} +64 -7
  12. package/dist/dist-D5Grf4qu.cjs.map +1 -0
  13. package/dist/{dist-e4hTZORP.mjs → dist-D8tPcFYP.mjs} +3 -3
  14. package/dist/{dist-e4hTZORP.mjs.map → dist-D8tPcFYP.mjs.map} +1 -1
  15. package/dist/{dist-D2apKUWN.mjs → dist-DRPUD4yJ.mjs} +21 -3
  16. package/dist/{dist-D2apKUWN.mjs.map → dist-DRPUD4yJ.mjs.map} +1 -1
  17. package/dist/{dist-DwaQgupy.mjs → dist-D_ZSj4pO.mjs} +64 -7
  18. package/dist/dist-D_ZSj4pO.mjs.map +1 -0
  19. package/dist/index-BeEymXir.d.cts.map +1 -1
  20. package/dist/index-BeEymXir.d.mts.map +1 -1
  21. package/dist/{mistral-C5zeYR8O.cjs → mistral-BGGYz0IH.cjs} +2 -2
  22. package/dist/{mistral-C5zeYR8O.cjs.map → mistral-BGGYz0IH.cjs.map} +1 -1
  23. package/dist/{mistral-CCsOaxvh.mjs → mistral-R2FX6jgL.mjs} +2 -2
  24. package/dist/{mistral-CCsOaxvh.mjs.map → mistral-R2FX6jgL.mjs.map} +1 -1
  25. package/dist/{sse-B2sEoxtv.mjs → sse-CKh7BzLf.mjs} +2 -2
  26. package/dist/{sse-B2sEoxtv.mjs.map → sse-CKh7BzLf.mjs.map} +1 -1
  27. package/dist/{sse-JXoU6noN.cjs → sse-WhoZVnd2.cjs} +2 -2
  28. package/dist/{sse-JXoU6noN.cjs.map → sse-WhoZVnd2.cjs.map} +1 -1
  29. package/dist/trigger.cjs +1 -1
  30. package/dist/trigger.mjs +1 -1
  31. package/dist/workflow.cjs +1 -1
  32. package/dist/workflow.mjs +1 -1
  33. package/package.json +6 -6
  34. package/dist/dist-BIzKfLyv.cjs.map +0 -1
  35. package/dist/dist-DwaQgupy.mjs.map +0 -1
package/dist/action.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_dist = require("./dist-BIzKfLyv.cjs");
2
+ const require_dist = require("./dist-D5Grf4qu.cjs");
3
3
  exports.CREDENTIAL_SCOPE_LEVELS = require_dist.CREDENTIAL_SCOPE_LEVELS;
4
4
  exports.DEFAULT_CREDENTIAL_RESOLUTION_CHAIN = require_dist.DEFAULT_CREDENTIAL_RESOLUTION_CHAIN;
5
5
  exports.actionCoreSchema = require_dist.actionCoreSchema;
package/dist/action.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { _ as credentialInputSchema, a as getActionCredentialRequirements, b as normalizeCredentialList, c as isStepInvocation, d as runOutsideActionExecution, f as runWithinActionExecution, g as credential, h as DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, i as executeAction, l as registerWorkflowRunGetter, n as createStepInvocation, o as getWorkflowRunHandle, p as CREDENTIAL_SCOPE_LEVELS, r as defineAction, s as isAction, t as actionCoreSchema, u as resolveActionTool, v as defineCredential, x as toCredentialRequirement, y as isCredentialInput } from "./dist-DwaQgupy.mjs";
1
+ import { _ as credentialInputSchema, a as getActionCredentialRequirements, b as normalizeCredentialList, c as isStepInvocation, d as runOutsideActionExecution, f as runWithinActionExecution, g as credential, h as DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, i as executeAction, l as registerWorkflowRunGetter, n as createStepInvocation, o as getWorkflowRunHandle, p as CREDENTIAL_SCOPE_LEVELS, r as defineAction, s as isAction, t as actionCoreSchema, u as resolveActionTool, v as defineCredential, x as toCredentialRequirement, y as isCredentialInput } from "./dist-D_ZSj4pO.mjs";
2
2
  export { CREDENTIAL_SCOPE_LEVELS, DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, actionCoreSchema, createStepInvocation, credential, credentialInputSchema, defineAction, defineCredential, executeAction, getActionCredentialRequirements, getWorkflowRunHandle, isAction, isCredentialInput, isStepInvocation, normalizeCredentialList, registerWorkflowRunGetter, resolveActionTool, runOutsideActionExecution, runWithinActionExecution, toCredentialRequirement };
package/dist/agent.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_dist$1 = require("./dist-C7Fgk61q.cjs");
3
- const require_dist$2 = require("./dist-BIzKfLyv.cjs");
3
+ const require_dist$2 = require("./dist-D5Grf4qu.cjs");
4
4
  require("./env-api-keys-BFptfIIs.cjs");
5
5
  const require_event_stream = require("./event-stream-CS-ls7wC.cjs");
6
6
  require("./json-parse-DV41_cbO.cjs");
7
- const require_dist$3 = require("./dist-CfqtAm2a.cjs");
7
+ const require_dist$3 = require("./dist-D1jOLmXW.cjs");
8
8
  let zod = require("zod");
9
9
  let node_module = require("node:module");
10
10
  let node_fs = require("node:fs");
@@ -928,7 +928,7 @@ function loadGoogleVertexProviderModule() {
928
928
  return googleVertexProviderModulePromise;
929
929
  }
930
930
  function loadMistralProviderModule() {
931
- mistralProviderModulePromise ||= Promise.resolve().then(() => require("./mistral-C5zeYR8O.cjs")).then((module) => {
931
+ mistralProviderModulePromise ||= Promise.resolve().then(() => require("./mistral-BGGYz0IH.cjs")).then((module) => {
932
932
  const provider = module;
933
933
  return {
934
934
  stream: provider.streamMistral,
package/dist/agent.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  import { $ as Options, $t as IsMap, An as IsSymbol$1, At as Unreachable, Bn as __require, Bt as IsRef$1, Cn as IsMinLength$2, Ct as IsInteger$2, Dn as IsObject$1, Dt as IsCodec, En as IsNumber$1, Et as IsBigInt$2, Fn as Symbols, Ft as IsUnion, G as ensureWorkspaceDir, Gt as IsArray$2, Ht as IsFunction$2, In as guard_exports, It as Union, Jt as IsOptional, K as materializeSandbox, Kt as Base, Ln as __commonJSMin, Lt as IsObject$2, Mn as IsUnsafePropertyKey, Mt as IsEnum$1, Nn as IsValueLike, Nt as IsCyclic, On as IsObjectNotArray$1, Ot as Hash, Pn as Keys$1, Pt as Unknown, Q as Instantiate, Qt as Get$3, Rt as _Object_, Sn as IsMaxLength$2, St as IsIterator$2, Tn as IsNull$1, Tt as IsBoolean$2, Ut as IsConstructor$2, Vt as Ref$1, W as defineSandbox, Wt as IsAsyncIterator$2, X as resolveSandboxRoot, Xt as IsPromise, Y as resolveAppRootFromModule, Yt as Optional, Z as Evaluate$1, Zt as IsSchema$1, _n as IsGreaterThan$1, _t as IsLiteralBigInt, a as createSandbox, an as EveryAll, at as RecordPattern, bn as IsLessEqualThan$1, bt as IsLiteralString, c as defineTool$1, cn as IsAsyncIterator$1, ct as EnumToUnion, d as resolveRunProvider, dn as IsClassInstance, dt as String$1, en as IsSet, et as Compare, fn as IsConstructor$1, ft as IsSymbol$2, gn as IsGreaterEqualThan$1, gt as IsLiteral, hn as IsFunction$1, ht as IsNull$2, i as createJustBashProvider, in as Every$1, it as IsRecord, jn as IsUndefined$1, jt as IsIntersect, kn as IsString$1, kt as hash_exports, ln as IsBigInt$1, lt as TemplateLiteralDecode, mn as IsEqual$1, mt as Number$1, nn as Entries$2, nt as IsVoid, o as defaultWorkspacesRoot, on as HasPropertyKey$1, ot as RecordValue, pn as IsDeepEqual$1, pt as IsNumber$2, q as packAssetDirs, qt as IsBase, r as createInvokeToolBridge, rn as EntriesRegExp, rt as IsUndefined$2, s as defineSkill, sn as IsArray$1, st as IsTuple, tn as IsTypeArray, tt as IsTemplateLiteral, u as materializeSkills, un as IsBoolean$1, ut as IsString$2, vn as IsInteger$1, vt as IsLiteralBoolean, wn as IsMultipleOf$1, wt as Boolean$1, xn as IsLessThan$1, xt as Literal, yn as IsIterator$1, yt as IsLiteralNumber, zn as __exportAll, zt as IsNever } from "./dist-PFUo6XmY.mjs";
2
- import { s as isAction, u as resolveActionTool } from "./dist-DwaQgupy.mjs";
2
+ import { s as isAction, u as resolveActionTool } from "./dist-D_ZSj4pO.mjs";
3
3
  import "./env-api-keys-CdN4tAK8.mjs";
4
4
  import { i as getModel, t as AssistantMessageEventStream } from "./event-stream-C7YBbzsc.mjs";
5
5
  import "./json-parse-CQOxNUrj.mjs";
6
- import { S as isMcp, _ as touchSession, a as buildCredentialRunContext, b as connectMcpStdio, c as isCredentialError, d as MESSAGE_EVENT_TYPE$1, f as appendEvent, g as listMessageEvents, h as getSession, i as withSpan, l as resolveActionCredentials, m as getAgentByRoute, n as getTraceContext, o as captureCredentialToolErrors, p as createSession, s as createCredentialResolver, t as captureConsole, u as resolveMcpTools, v as connectMcpDefinition, x as defineMcp, y as connectMcpServer } from "./dist-D2apKUWN.mjs";
6
+ import { S as isMcp, _ as touchSession, a as buildCredentialRunContext, b as connectMcpStdio, c as isCredentialError, d as MESSAGE_EVENT_TYPE$1, f as appendEvent, g as listMessageEvents, h as getSession, i as withSpan, l as resolveActionCredentials, m as getAgentByRoute, n as getTraceContext, o as captureCredentialToolErrors, p as createSession, s as createCredentialResolver, t as captureConsole, u as resolveMcpTools, v as connectMcpDefinition, x as defineMcp, y as connectMcpServer } from "./dist-DRPUD4yJ.mjs";
7
7
  import { createRequire } from "node:module";
8
8
  import { z } from "zod";
9
9
  import { existsSync, mkdirSync, readFileSync, readdirSync, statSync, writeFileSync } from "node:fs";
@@ -927,7 +927,7 @@ function loadGoogleVertexProviderModule() {
927
927
  return googleVertexProviderModulePromise;
928
928
  }
929
929
  function loadMistralProviderModule() {
930
- mistralProviderModulePromise ||= import("./mistral-CCsOaxvh.mjs").then((module) => {
930
+ mistralProviderModulePromise ||= import("./mistral-R2FX6jgL.mjs").then((module) => {
931
931
  const provider = module;
932
932
  return {
933
933
  stream: provider.streamMistral,
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_dist = require("./dist-BIzKfLyv.cjs");
2
+ const require_dist = require("./dist-D5Grf4qu.cjs");
3
3
  exports.CREDENTIAL_SCOPE_LEVELS = require_dist.CREDENTIAL_SCOPE_LEVELS;
4
4
  exports.DEFAULT_CREDENTIAL_RESOLUTION_CHAIN = require_dist.DEFAULT_CREDENTIAL_RESOLUTION_CHAIN;
5
5
  exports.credential = require_dist.credential;
@@ -1,2 +1,2 @@
1
- import { _ as credentialInputSchema, b as normalizeCredentialList, g as credential, h as DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, p as CREDENTIAL_SCOPE_LEVELS, v as defineCredential, x as toCredentialRequirement, y as isCredentialInput } from "./dist-DwaQgupy.mjs";
1
+ import { _ as credentialInputSchema, b as normalizeCredentialList, g as credential, h as DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, p as CREDENTIAL_SCOPE_LEVELS, v as defineCredential, x as toCredentialRequirement, y as isCredentialInput } from "./dist-D_ZSj4pO.mjs";
2
2
  export { CREDENTIAL_SCOPE_LEVELS, DEFAULT_CREDENTIAL_RESOLUTION_CHAIN, credential, credentialInputSchema, defineCredential, isCredentialInput, normalizeCredentialList, toCredentialRequirement };
@@ -1,6 +1,6 @@
1
1
  const require_dist = require("./dist-C7Fgk61q.cjs");
2
- const require_dist$1 = require("./dist-BIzKfLyv.cjs");
3
- const require_dist$2 = require("./dist-CfqtAm2a.cjs");
2
+ const require_dist$1 = require("./dist-D5Grf4qu.cjs");
3
+ const require_dist$2 = require("./dist-D1jOLmXW.cjs");
4
4
  let zod = require("zod");
5
5
  let node_async_hooks = require("node:async_hooks");
6
6
  //#region ../workflow/dist/index.mjs
@@ -174,4 +174,4 @@ Object.defineProperty(exports, "isWorkflow", {
174
174
  }
175
175
  });
176
176
 
177
- //# sourceMappingURL=dist-CNECye-C.cjs.map
177
+ //# sourceMappingURL=dist-Bism_aBn.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dist-CNECye-C.cjs","names":["z","SandboxDefinitionSchema","normalizeCredentialList","withSpan","logSystem","captureConsole","getActionCredentialRequirements","executeAction","resolveActionCredentials","AsyncLocalStorage","registerWorkflowRunGetter","getTraceContext"],"sources":["../../workflow/dist/index.mjs"],"sourcesContent":["import { z } from \"zod\";\nimport { SandboxDefinitionSchema } from \"@keystrokehq/sandbox\";\nimport { captureConsole, getTraceContext, logSystem, withSpan } from \"@keystrokehq/tracing\";\nimport { executeAction, getActionCredentialRequirements, normalizeCredentialList, registerWorkflowRunGetter } from \"@keystrokehq/action\";\nimport { resolveActionCredentials } from \"@keystrokehq/credentials\";\nimport { AsyncLocalStorage } from \"node:async_hooks\";\n//#region src/workflow-definition.ts\nconst zodSchema = z.custom((v) => v instanceof z.ZodType, \"must be a Zod schema\");\n/** Runtime validation for an unbranded workflow definition. */\nconst workflowCoreSchema = z.object({\n\tkey: z.string().trim().min(1),\n\tname: z.string().optional(),\n\tdescription: z.string().optional(),\n\tsubscription: z.object({ mode: z.enum([\"system\", \"subscribable\"]).optional() }).optional(),\n\tsandbox: SandboxDefinitionSchema.optional(),\n\tinput: zodSchema,\n\toutput: zodSchema,\n\trun: z.function()\n});\nconst WORKFLOW = Symbol.for(\"keystroke.workflow\");\n/**\n* Validates brand + shape via `workflowCoreSchema` so discovery and guards\n* reject malformed definitions.\n*/\nfunction isWorkflow(value) {\n\tif (typeof value !== \"object\" || value === null) return false;\n\tif (!(WORKFLOW in value) || value[WORKFLOW] !== true) return false;\n\treturn workflowCoreSchema.safeParse(value).success;\n}\n//#endregion\n//#region src/define-workflow.ts\nfunction defineWorkflow(def) {\n\tconst result = workflowCoreSchema.safeParse(def);\n\tif (!result.success) throw new Error(`Invalid workflow definition: ${formatIssues(result.error.issues)}`);\n\treturn {\n\t\t...result.data,\n\t\t[WORKFLOW]: true\n\t};\n}\nfunction formatIssues(issues) {\n\treturn issues.map((issue) => {\n\t\treturn `${issue.path.length > 0 ? `${issue.path.join(\".\")}: ` : \"\"}${issue.message}`;\n\t}).join(\"; \");\n}\n//#endregion\n//#region src/create-action-runner.ts\nfunction withCredentialChainOverride(requirements, chain) {\n\tif (!requirements || !chain) return requirements;\n\treturn normalizeCredentialList(requirements).map((requirement) => ({\n\t\t...requirement,\n\t\tchain\n\t}));\n}\nfunction createActionRunner(store, runId, options = {}) {\n\treturn async (action, input, runOptions) => {\n\t\tconst actionKey = runOptions?.id ?? action.key;\n\t\tconst cached = await store.get(runId, actionKey);\n\t\tif (cached !== void 0) {\n\t\t\tawait withSpan({\n\t\t\t\tkind: \"action\",\n\t\t\t\tname: actionKey,\n\t\t\t\trefId: `${runId}:${actionKey}`,\n\t\t\t\tmetadata: {\n\t\t\t\t\trunId,\n\t\t\t\t\tactionKey,\n\t\t\t\t\treplayed: true\n\t\t\t\t}\n\t\t\t}, async () => {\n\t\t\t\tawait logSystem(\"info\", \"action replayed from checkpoint\", {\n\t\t\t\t\trunId,\n\t\t\t\t\tactionKey\n\t\t\t\t});\n\t\t\t});\n\t\t\treturn action.output.parse(cached);\n\t\t}\n\t\treturn withSpan({\n\t\t\tkind: \"action\",\n\t\t\tname: actionKey,\n\t\t\trefId: `${runId}:${actionKey}`,\n\t\t\tmetadata: {\n\t\t\t\trunId,\n\t\t\t\tactionKey\n\t\t\t}\n\t\t}, async () => captureConsole(async () => {\n\t\t\tconst requirements = withCredentialChainOverride(getActionCredentialRequirements(action), runOptions?.credentialChain);\n\t\t\tconst contextOverride = runOptions?.credentialSelection ? { selection: runOptions.credentialSelection } : void 0;\n\t\t\tconst validatedOutput = await executeAction(action, input, requirements?.length ? await resolveActionCredentials(requirements, {\n\t\t\t\tresolveCredentials: options.resolveCredentials,\n\t\t\t\tcontext: options.credentialContext,\n\t\t\t\toauthAdapter: options.oauthAdapter,\n\t\t\t\tconsumer: {\n\t\t\t\t\tkind: \"action\",\n\t\t\t\t\tname: action.key\n\t\t\t\t},\n\t\t\t\tcontextOverride\n\t\t\t}) : {});\n\t\t\tawait store.set(runId, actionKey, validatedOutput);\n\t\t\treturn validatedOutput;\n\t\t}));\n\t};\n}\n//#endregion\n//#region src/memory-action-store.ts\nvar MemoryActionStore = class {\n\trecords = /* @__PURE__ */ new Map();\n\tkey(runId, actionKey) {\n\t\treturn `${runId}:${actionKey}`;\n\t}\n\tasync get(runId, actionKey) {\n\t\treturn this.records.get(this.key(runId, actionKey));\n\t}\n\tasync set(runId, actionKey, output) {\n\t\tthis.records.set(this.key(runId, actionKey), output);\n\t}\n};\n//#endregion\n//#region src/run-context.ts\nconst storage = new AsyncLocalStorage();\nregisterWorkflowRunGetter(() => {\n\tconst store = storage.getStore();\n\tif (!store) return;\n\treturn { actionRunner: store.actionRunner };\n});\nfunction runWithWorkflowContext(store, fn) {\n\treturn storage.run(store, fn);\n}\n//#endregion\n//#region src/execute-workflow.ts\nasync function runWorkflowBody(workflow, validatedInput, ctx, actionRunner) {\n\treturn runWithWorkflowContext({\n\t\tactionRunner,\n\t\trunId: ctx.runId\n\t}, () => captureConsole(async () => workflow.run(validatedInput, ctx)));\n}\nasync function executeWorkflow(workflow, input, options = {}) {\n\tconst runId = options.runId ?? crypto.randomUUID();\n\tconst actionRunner = createActionRunner(options.actionStore ?? options.actionStoreFactory?.() ?? new MemoryActionStore(), runId, {\n\t\tresolveCredentials: options.resolveCredentials,\n\t\tcredentialContext: options.credentialContext,\n\t\toauthAdapter: options.oauthAdapter\n\t});\n\tconst validatedInput = workflow.input.parse(input);\n\tconst ctx = {\n\t\trunId,\n\t\t...options.context\n\t};\n\tif (options.skipWorkflowSpan) return workflow.output.parse(await runWorkflowBody(workflow, validatedInput, ctx, actionRunner));\n\tconst parent = getTraceContext();\n\tconst output = await withSpan({\n\t\tkind: \"workflow_run\",\n\t\tname: workflow.key,\n\t\trefId: runId,\n\t\ttraceId: parent?.traceId ?? runId,\n\t\tmetadata: {\n\t\t\tworkflowKey: workflow.key,\n\t\t\ttrigger: options.context?.trigger ?? \"api\",\n\t\t\t...options.workflowSpanMetadata\n\t\t}\n\t}, () => runWorkflowBody(workflow, validatedInput, ctx, actionRunner));\n\treturn workflow.output.parse(output);\n}\n//#endregion\nexport { MemoryActionStore, defineWorkflow, executeWorkflow, isWorkflow };\n\n//# sourceMappingURL=index.mjs.map"],"mappings":"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"}
1
+ {"version":3,"file":"dist-Bism_aBn.cjs","names":["z","SandboxDefinitionSchema","normalizeCredentialList","withSpan","logSystem","captureConsole","getActionCredentialRequirements","executeAction","resolveActionCredentials","AsyncLocalStorage","registerWorkflowRunGetter","getTraceContext"],"sources":["../../workflow/dist/index.mjs"],"sourcesContent":["import { z } from \"zod\";\nimport { SandboxDefinitionSchema } from \"@keystrokehq/sandbox\";\nimport { captureConsole, getTraceContext, logSystem, withSpan } from \"@keystrokehq/tracing\";\nimport { executeAction, getActionCredentialRequirements, normalizeCredentialList, registerWorkflowRunGetter } from \"@keystrokehq/action\";\nimport { resolveActionCredentials } from \"@keystrokehq/credentials\";\nimport { AsyncLocalStorage } from \"node:async_hooks\";\n//#region src/workflow-definition.ts\nconst zodSchema = z.custom((v) => v instanceof z.ZodType, \"must be a Zod schema\");\n/** Runtime validation for an unbranded workflow definition. */\nconst workflowCoreSchema = z.object({\n\tkey: z.string().trim().min(1),\n\tname: z.string().optional(),\n\tdescription: z.string().optional(),\n\tsubscription: z.object({ mode: z.enum([\"system\", \"subscribable\"]).optional() }).optional(),\n\tsandbox: SandboxDefinitionSchema.optional(),\n\tinput: zodSchema,\n\toutput: zodSchema,\n\trun: z.function()\n});\nconst WORKFLOW = Symbol.for(\"keystroke.workflow\");\n/**\n* Validates brand + shape via `workflowCoreSchema` so discovery and guards\n* reject malformed definitions.\n*/\nfunction isWorkflow(value) {\n\tif (typeof value !== \"object\" || value === null) return false;\n\tif (!(WORKFLOW in value) || value[WORKFLOW] !== true) return false;\n\treturn workflowCoreSchema.safeParse(value).success;\n}\n//#endregion\n//#region src/define-workflow.ts\nfunction defineWorkflow(def) {\n\tconst result = workflowCoreSchema.safeParse(def);\n\tif (!result.success) throw new Error(`Invalid workflow definition: ${formatIssues(result.error.issues)}`);\n\treturn {\n\t\t...result.data,\n\t\t[WORKFLOW]: true\n\t};\n}\nfunction formatIssues(issues) {\n\treturn issues.map((issue) => {\n\t\treturn `${issue.path.length > 0 ? `${issue.path.join(\".\")}: ` : \"\"}${issue.message}`;\n\t}).join(\"; \");\n}\n//#endregion\n//#region src/create-action-runner.ts\nfunction withCredentialChainOverride(requirements, chain) {\n\tif (!requirements || !chain) return requirements;\n\treturn normalizeCredentialList(requirements).map((requirement) => ({\n\t\t...requirement,\n\t\tchain\n\t}));\n}\nfunction createActionRunner(store, runId, options = {}) {\n\treturn async (action, input, runOptions) => {\n\t\tconst actionKey = runOptions?.id ?? action.key;\n\t\tconst cached = await store.get(runId, actionKey);\n\t\tif (cached !== void 0) {\n\t\t\tawait withSpan({\n\t\t\t\tkind: \"action\",\n\t\t\t\tname: actionKey,\n\t\t\t\trefId: `${runId}:${actionKey}`,\n\t\t\t\tmetadata: {\n\t\t\t\t\trunId,\n\t\t\t\t\tactionKey,\n\t\t\t\t\treplayed: true\n\t\t\t\t}\n\t\t\t}, async () => {\n\t\t\t\tawait logSystem(\"info\", \"action replayed from checkpoint\", {\n\t\t\t\t\trunId,\n\t\t\t\t\tactionKey\n\t\t\t\t});\n\t\t\t});\n\t\t\treturn action.output.parse(cached);\n\t\t}\n\t\treturn withSpan({\n\t\t\tkind: \"action\",\n\t\t\tname: actionKey,\n\t\t\trefId: `${runId}:${actionKey}`,\n\t\t\tmetadata: {\n\t\t\t\trunId,\n\t\t\t\tactionKey\n\t\t\t}\n\t\t}, async () => captureConsole(async () => {\n\t\t\tconst requirements = withCredentialChainOverride(getActionCredentialRequirements(action), runOptions?.credentialChain);\n\t\t\tconst contextOverride = runOptions?.credentialSelection ? { selection: runOptions.credentialSelection } : void 0;\n\t\t\tconst validatedOutput = await executeAction(action, input, requirements?.length ? await resolveActionCredentials(requirements, {\n\t\t\t\tresolveCredentials: options.resolveCredentials,\n\t\t\t\tcontext: options.credentialContext,\n\t\t\t\toauthAdapter: options.oauthAdapter,\n\t\t\t\tconsumer: {\n\t\t\t\t\tkind: \"action\",\n\t\t\t\t\tname: action.key\n\t\t\t\t},\n\t\t\t\tcontextOverride\n\t\t\t}) : {});\n\t\t\tawait store.set(runId, actionKey, validatedOutput);\n\t\t\treturn validatedOutput;\n\t\t}));\n\t};\n}\n//#endregion\n//#region src/memory-action-store.ts\nvar MemoryActionStore = class {\n\trecords = /* @__PURE__ */ new Map();\n\tkey(runId, actionKey) {\n\t\treturn `${runId}:${actionKey}`;\n\t}\n\tasync get(runId, actionKey) {\n\t\treturn this.records.get(this.key(runId, actionKey));\n\t}\n\tasync set(runId, actionKey, output) {\n\t\tthis.records.set(this.key(runId, actionKey), output);\n\t}\n};\n//#endregion\n//#region src/run-context.ts\nconst storage = new AsyncLocalStorage();\nregisterWorkflowRunGetter(() => {\n\tconst store = storage.getStore();\n\tif (!store) return;\n\treturn { actionRunner: store.actionRunner };\n});\nfunction runWithWorkflowContext(store, fn) {\n\treturn storage.run(store, fn);\n}\n//#endregion\n//#region src/execute-workflow.ts\nasync function runWorkflowBody(workflow, validatedInput, ctx, actionRunner) {\n\treturn runWithWorkflowContext({\n\t\tactionRunner,\n\t\trunId: ctx.runId\n\t}, () => captureConsole(async () => workflow.run(validatedInput, ctx)));\n}\nasync function executeWorkflow(workflow, input, options = {}) {\n\tconst runId = options.runId ?? crypto.randomUUID();\n\tconst actionRunner = createActionRunner(options.actionStore ?? options.actionStoreFactory?.() ?? new MemoryActionStore(), runId, {\n\t\tresolveCredentials: options.resolveCredentials,\n\t\tcredentialContext: options.credentialContext,\n\t\toauthAdapter: options.oauthAdapter\n\t});\n\tconst validatedInput = workflow.input.parse(input);\n\tconst ctx = {\n\t\trunId,\n\t\t...options.context\n\t};\n\tif (options.skipWorkflowSpan) return workflow.output.parse(await runWorkflowBody(workflow, validatedInput, ctx, actionRunner));\n\tconst parent = getTraceContext();\n\tconst output = await withSpan({\n\t\tkind: \"workflow_run\",\n\t\tname: workflow.key,\n\t\trefId: runId,\n\t\ttraceId: parent?.traceId ?? runId,\n\t\tmetadata: {\n\t\t\tworkflowKey: workflow.key,\n\t\t\ttrigger: options.context?.trigger ?? \"api\",\n\t\t\t...options.workflowSpanMetadata\n\t\t}\n\t}, () => runWorkflowBody(workflow, validatedInput, ctx, actionRunner));\n\treturn workflow.output.parse(output);\n}\n//#endregion\nexport { MemoryActionStore, defineWorkflow, executeWorkflow, isWorkflow };\n\n//# sourceMappingURL=index.mjs.map"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  const require_dist$1 = require("./dist-C7Fgk61q.cjs");
2
- const require_dist$2 = require("./dist-BIzKfLyv.cjs");
2
+ const require_dist$2 = require("./dist-D5Grf4qu.cjs");
3
3
  let node_async_hooks = require("node:async_hooks");
4
4
  require("node:fs");
5
5
  let zod_v3 = require("zod/v3");
@@ -13259,7 +13259,7 @@ async function connectMcpServer(name, options) {
13259
13259
  }
13260
13260
  async function createTransport(url, transport, requestInit, fetchImpl) {
13261
13261
  if (transport === "sse") {
13262
- const { SSEClientTransport } = await Promise.resolve().then(() => require("./sse-JXoU6noN.cjs"));
13262
+ const { SSEClientTransport } = await Promise.resolve().then(() => require("./sse-WhoZVnd2.cjs"));
13263
13263
  return new SSEClientTransport(url, {
13264
13264
  requestInit,
13265
13265
  fetch: fetchImpl
@@ -17340,10 +17340,27 @@ const organizationUsers = pgTable("organization_users", {
17340
17340
  organizationId: text$1("organization_id").notNull().references(() => organizations.id, { onDelete: "cascade" }),
17341
17341
  userId: text$1("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
17342
17342
  role: text$1("role").notNull().$type(),
17343
+ status: text$1("status").notNull().$type().default("active"),
17343
17344
  createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
17344
17345
  updatedAt: timestamp("updated_at", { withTimezone: true }).notNull(),
17345
17346
  deletedAt: timestamp("deleted_at", { withTimezone: true })
17346
17347
  }, (table) => [primaryKey$1({ columns: [table.organizationId, table.userId] }), index$1("organization_users_user_id_idx").on(table.userId)]);
17348
+ const organizationInvitations = pgTable("organization_invitations", {
17349
+ id: text$1("id").primaryKey(),
17350
+ organizationId: text$1("organization_id").notNull().references(() => organizations.id, { onDelete: "cascade" }),
17351
+ userId: text$1("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
17352
+ email: text$1("email").notNull(),
17353
+ role: text$1("role").notNull().$type(),
17354
+ status: text$1("status").notNull().$type(),
17355
+ invitedByUserId: text$1("invited_by_user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
17356
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
17357
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull(),
17358
+ expiresAt: timestamp("expires_at", { withTimezone: true })
17359
+ }, (table) => [
17360
+ index$1("organization_invitations_user_id_idx").on(table.userId),
17361
+ index$1("organization_invitations_organization_id_idx").on(table.organizationId),
17362
+ uniqueIndex$1("organization_invitations_org_user_pending_unique").on(table.organizationId, table.userId).where(sql`${table.status} = 'pending'`)
17363
+ ]);
17347
17364
  const projectStatusEnum = pgEnum("project_status", [
17348
17365
  "inactive",
17349
17366
  "starting",
@@ -17386,6 +17403,7 @@ const secretValues = pgTable("secret_values", {
17386
17403
  buildPgSchema({
17387
17404
  organizations: { pg: organizations },
17388
17405
  organizationUsers: { pg: organizationUsers },
17406
+ organizationInvitations: { pg: organizationInvitations },
17389
17407
  projects: { pg: projects },
17390
17408
  projectArtifacts: { pg: projectArtifacts },
17391
17409
  users: { pg: users },
@@ -18192,4 +18210,4 @@ Object.defineProperty(exports, "zodToJsonSchema", {
18192
18210
  }
18193
18211
  });
18194
18212
 
18195
- //# sourceMappingURL=dist-CfqtAm2a.cjs.map
18213
+ //# sourceMappingURL=dist-D1jOLmXW.cjs.map