terse-cli 0.9.19 → 0.9.21

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 (126) hide show
  1. package/README.md +2 -2
  2. package/dist/cliUi.d.ts +3 -1
  3. package/dist/cliUi.d.ts.map +1 -1
  4. package/dist/cliUi.js +3 -2
  5. package/dist/cliUi.js.map +1 -1
  6. package/dist/commands/actor.d.ts.map +1 -1
  7. package/dist/commands/actor.js +32 -5
  8. package/dist/commands/actor.js.map +1 -1
  9. package/dist/commands/actorGenerate.d.ts.map +1 -1
  10. package/dist/commands/actorGenerate.js +22 -86
  11. package/dist/commands/actorGenerate.js.map +1 -1
  12. package/dist/commands/attach.d.ts +0 -7
  13. package/dist/commands/attach.d.ts.map +1 -1
  14. package/dist/commands/attach.js +220 -189
  15. package/dist/commands/attach.js.map +1 -1
  16. package/dist/commands/deploy.d.ts.map +1 -1
  17. package/dist/commands/deploy.js +15 -3
  18. package/dist/commands/deploy.js.map +1 -1
  19. package/dist/commands/generate.d.ts +0 -4
  20. package/dist/commands/generate.d.ts.map +1 -1
  21. package/dist/commands/generate.js +161 -127
  22. package/dist/commands/generate.js.map +1 -1
  23. package/dist/commands/history.d.ts +0 -15
  24. package/dist/commands/history.d.ts.map +1 -1
  25. package/dist/commands/history.js +139 -105
  26. package/dist/commands/history.js.map +1 -1
  27. package/dist/commands/install.d.ts.map +1 -1
  28. package/dist/commands/install.js +6 -4
  29. package/dist/commands/install.js.map +1 -1
  30. package/dist/commands/integrate.d.ts +0 -48
  31. package/dist/commands/integrate.d.ts.map +1 -1
  32. package/dist/commands/integrate.js +897 -699
  33. package/dist/commands/integrate.js.map +1 -1
  34. package/dist/commands/integrateUse.d.ts +0 -12
  35. package/dist/commands/integrateUse.d.ts.map +1 -1
  36. package/dist/commands/integrateUse.js +132 -98
  37. package/dist/commands/integrateUse.js.map +1 -1
  38. package/dist/commands/listen.d.ts +0 -7
  39. package/dist/commands/listen.d.ts.map +1 -1
  40. package/dist/commands/listen.js +98 -81
  41. package/dist/commands/listen.js.map +1 -1
  42. package/dist/commands/memory.d.ts +0 -21
  43. package/dist/commands/memory.d.ts.map +1 -1
  44. package/dist/commands/memory.js +147 -128
  45. package/dist/commands/memory.js.map +1 -1
  46. package/dist/commands/replay.d.ts +0 -2
  47. package/dist/commands/replay.d.ts.map +1 -1
  48. package/dist/commands/replay.js +37 -28
  49. package/dist/commands/replay.js.map +1 -1
  50. package/dist/commands/resume.d.ts +0 -4
  51. package/dist/commands/resume.d.ts.map +1 -1
  52. package/dist/commands/resume.js +34 -28
  53. package/dist/commands/resume.js.map +1 -1
  54. package/dist/commands/run.d.ts +0 -2
  55. package/dist/commands/run.d.ts.map +1 -1
  56. package/dist/commands/run.js +78 -70
  57. package/dist/commands/run.js.map +1 -1
  58. package/dist/commands/state.d.ts +0 -18
  59. package/dist/commands/state.d.ts.map +1 -1
  60. package/dist/commands/state.js +129 -108
  61. package/dist/commands/state.js.map +1 -1
  62. package/dist/commands/test.d.ts +0 -28
  63. package/dist/commands/test.d.ts.map +1 -1
  64. package/dist/commands/test.js +509 -403
  65. package/dist/commands/test.js.map +1 -1
  66. package/dist/commands/toolRun.d.ts +0 -6
  67. package/dist/commands/toolRun.d.ts.map +1 -1
  68. package/dist/commands/toolRun.js +149 -134
  69. package/dist/commands/toolRun.js.map +1 -1
  70. package/dist/index.js +1 -1
  71. package/dist/index.js.map +1 -1
  72. package/dist/integrationApi.d.ts +0 -15
  73. package/dist/integrationApi.d.ts.map +1 -1
  74. package/dist/integrationApi.js +75 -49
  75. package/dist/integrationApi.js.map +1 -1
  76. package/dist/loadJob.d.ts +0 -11
  77. package/dist/loadJob.d.ts.map +1 -1
  78. package/dist/loadJob.js +54 -46
  79. package/dist/loadJob.js.map +1 -1
  80. package/dist/providers/LanguageProvider.d.ts +0 -29
  81. package/dist/providers/LanguageProvider.d.ts.map +1 -1
  82. package/dist/providers/LanguageProvider.js +3 -0
  83. package/dist/providers/LanguageProvider.js.map +1 -1
  84. package/dist/providers/typescript/TypeScriptProvider.d.ts +0 -24
  85. package/dist/providers/typescript/TypeScriptProvider.d.ts.map +1 -1
  86. package/dist/providers/typescript/TypeScriptProvider.js +113 -113
  87. package/dist/providers/typescript/TypeScriptProvider.js.map +1 -1
  88. package/dist/providers/typescript/runtimes/JobRuntime.d.ts +0 -26
  89. package/dist/providers/typescript/runtimes/JobRuntime.d.ts.map +1 -1
  90. package/dist/providers/typescript/runtimes/JobRuntime.js +51 -18
  91. package/dist/providers/typescript/runtimes/JobRuntime.js.map +1 -1
  92. package/dist/providers/typescript/runtimes/directJobRuntime.d.ts +0 -2
  93. package/dist/providers/typescript/runtimes/directJobRuntime.d.ts.map +1 -1
  94. package/dist/providers/typescript/runtimes/directJobRuntime.js +60 -49
  95. package/dist/providers/typescript/runtimes/directJobRuntime.js.map +1 -1
  96. package/dist/providers/typescript/runtimes/durableJobRuntime.d.ts +0 -2
  97. package/dist/providers/typescript/runtimes/durableJobRuntime.d.ts.map +1 -1
  98. package/dist/providers/typescript/runtimes/durableJobRuntime.js +168 -146
  99. package/dist/providers/typescript/runtimes/durableJobRuntime.js.map +1 -1
  100. package/dist/providers/typescript/runtimes/index.d.ts +0 -3
  101. package/dist/providers/typescript/runtimes/index.d.ts.map +1 -1
  102. package/dist/providers/typescript/runtimes/index.js +5 -2
  103. package/dist/providers/typescript/runtimes/index.js.map +1 -1
  104. package/dist/providers/typescript/runtimes/session.d.ts +0 -4
  105. package/dist/providers/typescript/runtimes/session.d.ts.map +1 -1
  106. package/dist/providers/typescript/runtimes/session.js +78 -64
  107. package/dist/providers/typescript/runtimes/session.js.map +1 -1
  108. package/dist/providers/typescript/terseWorkflow.d.ts +0 -7
  109. package/dist/providers/typescript/terseWorkflow.d.ts.map +1 -1
  110. package/dist/providers/typescript/terseWorkflow.js +12 -7
  111. package/dist/providers/typescript/terseWorkflow.js.map +1 -1
  112. package/dist/runLocalTestJob.d.ts +0 -19
  113. package/dist/runLocalTestJob.d.ts.map +1 -1
  114. package/dist/runLocalTestJob.js +55 -29
  115. package/dist/runLocalTestJob.js.map +1 -1
  116. package/dist/setup.js +1 -1
  117. package/dist/setup.js.map +1 -1
  118. package/dist/sourceArchive.d.ts +1 -1
  119. package/dist/sourceArchive.d.ts.map +1 -1
  120. package/dist/sourceArchive.js +1 -0
  121. package/dist/sourceArchive.js.map +1 -1
  122. package/package.json +3 -4
  123. package/templates/typescript/init/package.json.hbs +1 -2
  124. package/templates/typescript/terse-transport.d.ts +25 -0
  125. package/templates/typescript/terse-transport.js +117 -0
  126. package/templates/typescript/tsconfig.json +13 -0
@@ -1 +1 @@
1
- {"version":3,"file":"JobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/JobRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAElE,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACpD,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACvD,8FAA8F;IAC9F,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;CAC1D,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,MAAM,WAAW,UAAU;IACvB,UAAU,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhE,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACpG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAOxD"}
1
+ {"version":3,"file":"JobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/JobRuntime.ts"],"names":[],"mappings":""}
@@ -1,19 +1,52 @@
1
- export function formatErrorDetail(error) {
2
- if (error instanceof Error)
3
- return error.message;
4
- if (typeof error === "string")
5
- return error;
6
- if (error && typeof error === "object") {
7
- return stringifyErrorObject(error);
8
- }
9
- return String(error);
10
- }
11
- function stringifyErrorObject(error) {
12
- try {
13
- return JSON.stringify(error);
14
- }
15
- catch {
16
- return String(error);
17
- }
18
- }
1
+ "use strict";
2
+ // LEGACY-JOBS: Commented out while Terse is actors-only. Uncomment to restore; see the note in terse-sdk/src/index.ts.
3
+ // import type { CreateJobParameters, SessionStreamEvent } from "terse-sdk"
4
+ // import type { SerializedEvent } from "terse-types"
5
+ //
6
+ // import type { SessionHandle } from "../../shared/sessionStream.js"
7
+ //
8
+ // export type RunJobOptions = {
9
+ // verbose?: boolean
10
+ // entryFile?: string
11
+ // projectId?: string
12
+ // onSessionEvent?: (event: SessionStreamEvent) => void
13
+ // pauseUiAround?: <T>(fn: () => Promise<T>) => Promise<T>
14
+ // /** A session stream the caller already opened, so its round trip overlaps loading the job. */
15
+ // session?: Promise<SessionHandle>
16
+ // }
17
+ //
18
+ // export type ResumeRunOptions = {
19
+ // verbose?: boolean
20
+ // pauseUiAround?: <T>(fn: () => Promise<T>) => Promise<T>
21
+ // }
22
+ //
23
+ // export type ResumeHookInput = {
24
+ // token: string
25
+ // payload: unknown
26
+ // }
27
+ //
28
+ // export interface JobRuntime {
29
+ // executeJob(job: CreateJobParameters, runId: string | null, event: SerializedEvent, opts?: RunJobOptions): Promise<void>
30
+ // // Wake a parked run and drive it (timer fired, or recovery).
31
+ // resumeRun(runId: string, opts?: ResumeRunOptions): Promise<void>
32
+ // // Deliver a human response to the run's hook, then drive it (waitForInput answered).
33
+ // resumeRunWithInput(runId: string, input: ResumeHookInput, opts?: ResumeRunOptions): Promise<void>
34
+ // }
35
+ //
36
+ // export function formatErrorDetail(error: unknown): string {
37
+ // if (error instanceof Error) return error.message
38
+ // if (typeof error === "string") return error
39
+ // if (error && typeof error === "object") {
40
+ // return stringifyErrorObject(error)
41
+ // }
42
+ // return String(error)
43
+ // }
44
+ //
45
+ // function stringifyErrorObject(error: object): string {
46
+ // try {
47
+ // return JSON.stringify(error)
48
+ // } catch {
49
+ // return String(error)
50
+ // }
51
+ // }
19
52
  //# sourceMappingURL=JobRuntime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/JobRuntime.ts"],"names":[],"mappings":"AAiCA,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACvC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"JobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/JobRuntime.ts"],"names":[],"mappings":";AAAA,uHAAuH;AACvH,2EAA2E;AAC3E,qDAAqD;AACrD,EAAE;AACF,qEAAqE;AACrE,EAAE;AACF,gCAAgC;AAChC,wBAAwB;AACxB,yBAAyB;AACzB,yBAAyB;AACzB,2DAA2D;AAC3D,8DAA8D;AAC9D,qGAAqG;AACrG,uCAAuC;AACvC,IAAI;AACJ,EAAE;AACF,mCAAmC;AACnC,wBAAwB;AACxB,8DAA8D;AAC9D,IAAI;AACJ,EAAE;AACF,kCAAkC;AAClC,oBAAoB;AACpB,uBAAuB;AACvB,IAAI;AACJ,EAAE;AACF,gCAAgC;AAChC,8HAA8H;AAC9H,oEAAoE;AACpE,uEAAuE;AACvE,4FAA4F;AAC5F,wGAAwG;AACxG,IAAI;AACJ,EAAE;AACF,8DAA8D;AAC9D,uDAAuD;AACvD,kDAAkD;AAClD,gDAAgD;AAChD,6CAA6C;AAC7C,QAAQ;AACR,2BAA2B;AAC3B,IAAI;AACJ,EAAE;AACF,yDAAyD;AACzD,YAAY;AACZ,uCAAuC;AACvC,gBAAgB;AAChB,+BAA+B;AAC/B,QAAQ;AACR,IAAI"}
@@ -1,3 +1 @@
1
- import { type JobRuntime } from "./JobRuntime.js";
2
- export declare const directJobRuntime: JobRuntime;
3
1
  //# sourceMappingURL=directJobRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"directJobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/directJobRuntime.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,UAAU,EAAqB,MAAM,iBAAiB,CAAA;AAGpE,eAAO,MAAM,gBAAgB,EAAE,UA8C9B,CAAA"}
1
+ {"version":3,"file":"directJobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/directJobRuntime.ts"],"names":[],"mappings":""}
@@ -1,50 +1,61 @@
1
- import chalk from "chalk";
2
- import { __buildJobStateAccessor, createSDKTrigger } from "terse-sdk";
3
- import { runWithJobContext } from "terse-sdk/dist/runIdentity/jobContextStore.js";
4
- import { readApiKeyOrBail } from "../../../api.js";
5
- import { CliError } from "../../../cliError.js";
6
- import { BACKEND_URL } from "../../../config.js";
7
- import { formatErrorDetail } from "./JobRuntime.js";
8
- import { withSession } from "./session.js";
9
- export const directJobRuntime = {
10
- async executeJob(job, runId, event, opts) {
11
- const isVerbose = opts?.verbose ?? true;
12
- const pauseUiAround = opts?.pauseUiAround ?? (async (fn) => fn());
13
- const apiKey = readApiKeyOrBail();
14
- const inputEvent = createSDKTrigger(event);
15
- try {
16
- await withSession(apiKey, isVerbose, pauseUiAround, async (sessionId) => {
17
- await runWithJobContext({ sessionId, runId, apiBaseUrl: BACKEND_URL, projectId: opts?.projectId, jobName: job.name }, async () => {
18
- const state = __buildJobStateAccessor(job.states ?? []);
19
- if (job.filter && !(await job.filter(inputEvent, state))) {
20
- if (isVerbose)
21
- console.log(chalk.dim(`\n Job "${job.name}" skipped (filter returned false).\n`));
22
- return;
23
- }
24
- if (isVerbose)
25
- console.log(chalk.cyan(` Job "${job.name}" started`));
26
- await job.onTrigger(inputEvent, state);
27
- });
28
- }, opts?.onSessionEvent, opts?.session);
29
- }
30
- catch (error) {
31
- if (error instanceof CliError)
32
- throw error;
33
- if (error instanceof Error && error.name === "DurableOnlyError") {
34
- throw new CliError("durable_only", error.message, { actionRequired: true });
35
- }
36
- throw new CliError("job_execution_failed", `Job "${job.name}" threw an error.`, { detail: formatErrorDetail(error) });
37
- }
38
- },
39
- async resumeRun() {
40
- throw new CliError("resume_not_durable", "Only durable jobs can be resumed.", {
41
- detail: "This run belongs to a non-durable job — non-durable jobs run to completion and never suspend."
42
- });
43
- },
44
- async resumeRunWithInput() {
45
- throw new CliError("resume_not_durable", "Only durable jobs can be resumed.", {
46
- detail: "This run belongs to a non-durable job — non-durable jobs run to completion and never suspend."
47
- });
48
- }
49
- };
1
+ "use strict";
2
+ // LEGACY-JOBS: Commented out while Terse is actors-only. Uncomment to restore; see the note in terse-sdk/src/index.ts.
3
+ // import chalk from "chalk"
4
+ // import { __buildJobStateAccessor, createSDKTrigger } from "terse-sdk"
5
+ // import { runWithJobContext } from "terse-sdk/dist/runIdentity/jobContextStore.js"
6
+ //
7
+ // import { readApiKeyOrBail } from "../../../api.js"
8
+ // import { CliError } from "../../../cliError.js"
9
+ // import { BACKEND_URL } from "../../../config.js"
10
+ //
11
+ // import { type JobRuntime, formatErrorDetail } from "./JobRuntime.js"
12
+ // import { withSession } from "./session.js"
13
+ //
14
+ // export const directJobRuntime: JobRuntime = {
15
+ // async executeJob(job, runId, event, opts) {
16
+ // const isVerbose = opts?.verbose ?? true
17
+ // const pauseUiAround = opts?.pauseUiAround ?? (async fn => fn())
18
+ // const apiKey = readApiKeyOrBail()
19
+ // const inputEvent = createSDKTrigger(event)
20
+ //
21
+ // try {
22
+ // await withSession(
23
+ // apiKey,
24
+ // isVerbose,
25
+ // pauseUiAround,
26
+ // async sessionId => {
27
+ // await runWithJobContext({ sessionId, runId, apiBaseUrl: BACKEND_URL, projectId: opts?.projectId, jobName: job.name }, async () => {
28
+ // const state = __buildJobStateAccessor(job.states ?? [])
29
+ // if (job.filter && !(await job.filter(inputEvent, state))) {
30
+ // if (isVerbose) console.log(chalk.dim(`\n Job "${job.name}" skipped (filter returned false).\n`))
31
+ // return
32
+ // }
33
+ // if (isVerbose) console.log(chalk.cyan(` Job "${job.name}" started`))
34
+ // await job.onTrigger(inputEvent, state)
35
+ // })
36
+ // },
37
+ // opts?.onSessionEvent,
38
+ // opts?.session
39
+ // )
40
+ // } catch (error) {
41
+ // if (error instanceof CliError) throw error
42
+ // if (error instanceof Error && error.name === "DurableOnlyError") {
43
+ // throw new CliError("durable_only", error.message, { actionRequired: true })
44
+ // }
45
+ // throw new CliError("job_execution_failed", `Job "${job.name}" threw an error.`, { detail: formatErrorDetail(error) })
46
+ // }
47
+ // },
48
+ //
49
+ // async resumeRun() {
50
+ // throw new CliError("resume_not_durable", "Only durable jobs can be resumed.", {
51
+ // detail: "This run belongs to a non-durable job — non-durable jobs run to completion and never suspend."
52
+ // })
53
+ // },
54
+ //
55
+ // async resumeRunWithInput() {
56
+ // throw new CliError("resume_not_durable", "Only durable jobs can be resumed.", {
57
+ // detail: "This run belongs to a non-durable job — non-durable jobs run to completion and never suspend."
58
+ // })
59
+ // }
60
+ // }
50
61
  //# sourceMappingURL=directJobRuntime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"directJobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/directJobRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"directJobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/directJobRuntime.ts"],"names":[],"mappings":";AAAA,uHAAuH;AACvH,4BAA4B;AAC5B,wEAAwE;AACxE,oFAAoF;AACpF,EAAE;AACF,qDAAqD;AACrD,kDAAkD;AAClD,mDAAmD;AACnD,EAAE;AACF,uEAAuE;AACvE,6CAA6C;AAC7C,EAAE;AACF,gDAAgD;AAChD,kDAAkD;AAClD,kDAAkD;AAClD,0EAA0E;AAC1E,4CAA4C;AAC5C,qDAAqD;AACrD,EAAE;AACF,gBAAgB;AAChB,iCAAiC;AACjC,0BAA0B;AAC1B,6BAA6B;AAC7B,iCAAiC;AACjC,uCAAuC;AACvC,0JAA0J;AAC1J,kFAAkF;AAClF,sFAAsF;AACtF,gIAAgI;AAChI,qCAAqC;AACrC,4BAA4B;AAC5B,gGAAgG;AAChG,iEAAiE;AACjE,yBAAyB;AACzB,qBAAqB;AACrB,wCAAwC;AACxC,gCAAgC;AAChC,gBAAgB;AAChB,4BAA4B;AAC5B,yDAAyD;AACzD,iFAAiF;AACjF,8FAA8F;AAC9F,gBAAgB;AAChB,oIAAoI;AACpI,YAAY;AACZ,SAAS;AACT,EAAE;AACF,0BAA0B;AAC1B,0FAA0F;AAC1F,sHAAsH;AACtH,aAAa;AACb,SAAS;AACT,EAAE;AACF,mCAAmC;AACnC,0FAA0F;AAC1F,sHAAsH;AACtH,aAAa;AACb,QAAQ;AACR,IAAI"}
@@ -1,3 +1 @@
1
- import { type JobRuntime } from "./JobRuntime.js";
2
- export declare const durableJobRuntime: JobRuntime;
3
1
  //# sourceMappingURL=durableJobRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"durableJobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/durableJobRuntime.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,UAAU,EAAkE,MAAM,iBAAiB,CAAA;AAGjH,eAAO,MAAM,iBAAiB,EAAE,UA0C/B,CAAA"}
1
+ {"version":3,"file":"durableJobRuntime.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/durableJobRuntime.ts"],"names":[],"mappings":""}
@@ -1,147 +1,169 @@
1
- import chalk from "chalk";
2
- import { FileJournalStore, Runtime } from "little-durable";
3
- import path from "node:path";
4
- import { __fetchRegisteredDurableWorkflow, __inputRequestHook, fetchRegisteredJobs } from "terse-sdk";
5
- import { runWithJobContext } from "terse-sdk/dist/runIdentity/jobContextStore.js";
6
- import { ApiRoutes } from "terse-types";
7
- import { fetchWithAuth, readApiKeyOrBail } from "../../../api.js";
8
- import { CliError } from "../../../cliError.js";
9
- import { BACKEND_URL } from "../../../config.js";
10
- import { readProjectConfig } from "../../../projectConfig.js";
11
- import { shouldRunTerseWorkflow } from "../terseWorkflow.js";
12
- import { formatErrorDetail } from "./JobRuntime.js";
13
- import { withSession } from "./session.js";
14
- export const durableJobRuntime = {
15
- async executeJob(job, runId, event, opts) {
16
- if (!runId)
17
- throw new CliError("durable_run_id_missing", "Durable execution requires a run ID.");
18
- const isVerbose = opts?.verbose ?? true;
19
- const pauseUiAround = opts?.pauseUiAround ?? (async (fn) => fn());
20
- const apiKey = readApiKeyOrBail();
21
- try {
22
- await withSession(apiKey, isVerbose, pauseUiAround, async (sessionId) => {
23
- if (isVerbose)
24
- console.log(chalk.cyan(` Job "${job.name}" started`));
25
- const journalStore = createJournalStore();
26
- const runtime = new Runtime({ journalStore });
27
- const context = jobContext({ sessionId, runId, job, projectId: opts?.projectId });
28
- const shouldRun = await shouldRunTerseWorkflow({ job, event, context });
29
- if (!shouldRun)
30
- return;
31
- const workflow = __fetchRegisteredDurableWorkflow(job.name);
32
- if (!workflow)
33
- throw new Error(`No durable workflow was registered for job "${job.name}".`);
34
- const outcome = await runWithJobContext(context, () => runtime.start(workflow, { runId, input: event }).waitForOutcome());
35
- await handleOutcome({ runId, outcome, apiKey });
36
- }, opts?.onSessionEvent, opts?.session);
37
- }
38
- catch (error) {
39
- if (error instanceof CliError)
40
- throw error;
41
- throw new CliError("job_execution_failed", `Job "${job.name}" threw an error.`, { detail: formatErrorDetail(error) });
42
- }
43
- },
44
- async resumeRun(runId, opts) {
45
- return driveResume(runId, opts);
46
- },
47
- async resumeRunWithInput(runId, input, opts) {
48
- return driveResume(runId, opts, input);
49
- }
50
- };
51
- async function driveResume(runId, opts, input) {
52
- const isVerbose = opts?.verbose ?? true;
53
- const pauseUiAround = opts?.pauseUiAround ?? (async (fn) => fn());
54
- const apiKey = readApiKeyOrBail();
55
- try {
56
- await withSession(apiKey, isVerbose, pauseUiAround, async (sessionId) => {
57
- const journalStore = createJournalStore();
58
- const runtime = new Runtime({ journalStore });
59
- const run = await runtime.getRun({ runId });
60
- const job = fetchRegisteredJobs().get(run.workflowName);
61
- if (!job)
62
- throw new Error(`No registered job matches durable workflow "${run.workflowName}".`);
63
- const workflow = __fetchRegisteredDurableWorkflow(job.name);
64
- if (!workflow)
65
- throw new Error(`No durable workflow was registered for job "${job.name}".`);
66
- if (isVerbose)
67
- console.log(chalk.cyan(` Resuming run ${runId}`));
68
- const context = jobContext({ sessionId, runId, job, projectId: readProjectConfig()?.projectId });
69
- const outcome = await runWithJobContext(context, async () => {
70
- const suspension = await runtime.getSuspension({ runId });
71
- if (input) {
72
- if (!suspension || suspension.request.name !== __inputRequestHook.name) {
73
- throw new Error(`No unresolved input wait with token "${input.token}" exists in run "${runId}".`);
74
- }
75
- const request = __inputRequestHook.request.safeParse(suspension.request.payload);
76
- if (!request.success || request.data.token !== input.token) {
77
- throw new Error(`No unresolved input wait with token "${input.token}" exists in run "${runId}".`);
78
- }
79
- const resolution = __inputRequestHook.resolution.parse(input.payload);
80
- return runtime.resumeHook(__inputRequestHook, { runId, workflow, waitId: suspension.waitId, resolution }).waitForOutcome();
81
- }
82
- return suspension?.request.name === "timer"
83
- ? runtime.resumeTimer(workflow, { runId, waitId: suspension.waitId }).waitForOutcome()
84
- : runtime.resume(workflow, { runId }).waitForOutcome();
85
- });
86
- await handleOutcome({ runId, outcome, apiKey });
87
- if (isVerbose && outcome.status === "completed")
88
- console.log(chalk.green(` Run ${runId} completed`));
89
- });
90
- }
91
- catch (error) {
92
- if (error instanceof CliError)
93
- throw error;
94
- throw new CliError("run_resume_failed", `Run "${runId}" could not be resumed.`, { detail: formatErrorDetail(error) });
95
- }
96
- }
97
- function createJournalStore() {
98
- return new FileJournalStore(resolveDataDirectory());
99
- }
100
- function resolveDataDirectory() {
101
- return process.env.TERSE_JOURNAL_ROOT ?? path.join(process.cwd(), ".terse", "data");
102
- }
103
- function jobContext({ sessionId, runId, job, projectId }) {
104
- return {
105
- sessionId,
106
- runId,
107
- apiBaseUrl: BACKEND_URL,
108
- jobName: job.name,
109
- projectId
110
- };
111
- }
112
- async function handleOutcome({ runId, outcome, apiKey }) {
113
- if (outcome.status === "completed")
114
- return;
115
- if (outcome.status === "failed") {
116
- const error = new Error(outcome.error.message);
117
- error.name = outcome.error.name;
118
- throw error;
119
- }
120
- const body = suspendRequest({ runId, suspension: outcome.suspension });
121
- await fetchWithAuth(ApiRoutes.SDK.SUSPEND, apiKey, body, "POST");
122
- }
123
- function suspendRequest({ runId, suspension }) {
124
- const payload = suspension.request.payload;
125
- if (suspension.request.name === "timer") {
126
- if (typeof payload !== "object" || payload === null || Array.isArray(payload) || typeof payload.wakeAt !== "string") {
127
- throw new Error("Timer suspension has an invalid wakeAt.");
128
- }
129
- return {
130
- runId,
131
- kind: "timer",
132
- delaySeconds: Math.max(1, Math.ceil((Date.parse(payload.wakeAt) - Date.now()) / 1_000)),
133
- idempotencyKey: suspension.waitId
134
- };
135
- }
136
- if (suspension.request.name === __inputRequestHook.name) {
137
- const input = __inputRequestHook.request.parse(payload);
138
- return {
139
- runId,
140
- kind: "input",
141
- hookToken: input.token,
142
- idempotencyKey: suspension.waitId
143
- };
144
- }
145
- throw new Error(`Terse does not know how to park hook "${suspension.request.name}".`);
146
- }
1
+ "use strict";
2
+ // LEGACY-JOBS: Commented out while Terse is actors-only. Uncomment to restore; see the note in terse-sdk/src/index.ts.
3
+ // import chalk from "chalk"
4
+ // import { FileJournalStore, Runtime } from "little-durable"
5
+ // import type { JournalStore, RuntimeOutcome, Suspension } from "little-durable"
6
+ // import path from "node:path"
7
+ // import { __fetchRegisteredDurableWorkflow, __inputRequestHook, fetchRegisteredJobs } from "terse-sdk"
8
+ // import type { CreateJobParameters, TerseJobContext } from "terse-sdk"
9
+ // import { runWithJobContext } from "terse-sdk/dist/runIdentity/jobContextStore.js"
10
+ // import type { SdkJobSuspendRequestBody, SdkJobSuspendResponseBody } from "terse-types"
11
+ // import { ApiRoutes } from "terse-types"
12
+ //
13
+ // import { fetchWithAuth, readApiKeyOrBail } from "../../../api.js"
14
+ // import { CliError } from "../../../cliError.js"
15
+ // import { BACKEND_URL } from "../../../config.js"
16
+ // import { readProjectConfig } from "../../../projectConfig.js"
17
+ // import { shouldRunTerseWorkflow } from "../terseWorkflow.js"
18
+ //
19
+ // import { type JobRuntime, type ResumeHookInput, type ResumeRunOptions, formatErrorDetail } from "./JobRuntime.js"
20
+ // import { withSession } from "./session.js"
21
+ //
22
+ // export const durableJobRuntime: JobRuntime = {
23
+ // async executeJob(job, runId, event, opts) {
24
+ // if (!runId) throw new CliError("durable_run_id_missing", "Durable execution requires a run ID.")
25
+ //
26
+ // const isVerbose = opts?.verbose ?? true
27
+ // const pauseUiAround = opts?.pauseUiAround ?? (async fn => fn())
28
+ // const apiKey = readApiKeyOrBail()
29
+ //
30
+ // try {
31
+ // await withSession(
32
+ // apiKey,
33
+ // isVerbose,
34
+ // pauseUiAround,
35
+ // async sessionId => {
36
+ // if (isVerbose) console.log(chalk.cyan(` Job "${job.name}" started`))
37
+ // const journalStore = createJournalStore()
38
+ // const runtime = new Runtime({ journalStore })
39
+ // const context = jobContext({ sessionId, runId, job, projectId: opts?.projectId })
40
+ // const shouldRun = await shouldRunTerseWorkflow({ job, event, context })
41
+ // if (!shouldRun) return
42
+ // const workflow = __fetchRegisteredDurableWorkflow(job.name)
43
+ // if (!workflow) throw new Error(`No durable workflow was registered for job "${job.name}".`)
44
+ //
45
+ // const outcome = await runWithJobContext(context, () => runtime.start(workflow, { runId, input: event }).waitForOutcome())
46
+ // await handleOutcome({ runId, outcome, apiKey })
47
+ // },
48
+ // opts?.onSessionEvent,
49
+ // opts?.session
50
+ // )
51
+ // } catch (error) {
52
+ // if (error instanceof CliError) throw error
53
+ // throw new CliError("job_execution_failed", `Job "${job.name}" threw an error.`, { detail: formatErrorDetail(error) })
54
+ // }
55
+ // },
56
+ //
57
+ // async resumeRun(runId, opts) {
58
+ // return driveResume(runId, opts)
59
+ // },
60
+ //
61
+ // async resumeRunWithInput(runId, input, opts) {
62
+ // return driveResume(runId, opts, input)
63
+ // }
64
+ // }
65
+ //
66
+ // async function driveResume(runId: string, opts: ResumeRunOptions | undefined, input?: ResumeHookInput): Promise<void> {
67
+ // const isVerbose = opts?.verbose ?? true
68
+ // const pauseUiAround = opts?.pauseUiAround ?? (async fn => fn())
69
+ // const apiKey = readApiKeyOrBail()
70
+ //
71
+ // try {
72
+ // await withSession(apiKey, isVerbose, pauseUiAround, async sessionId => {
73
+ // const journalStore = createJournalStore()
74
+ // const runtime = new Runtime({ journalStore })
75
+ // const run = await runtime.getRun({ runId })
76
+ // const job = fetchRegisteredJobs().get(run.workflowName)
77
+ // if (!job) throw new Error(`No registered job matches durable workflow "${run.workflowName}".`)
78
+ // const workflow = __fetchRegisteredDurableWorkflow(job.name)
79
+ // if (!workflow) throw new Error(`No durable workflow was registered for job "${job.name}".`)
80
+ //
81
+ // if (isVerbose) console.log(chalk.cyan(` Resuming run ${runId}`))
82
+ // const context = jobContext({ sessionId, runId, job, projectId: readProjectConfig()?.projectId })
83
+ // const outcome = await runWithJobContext(context, async (): Promise<RuntimeOutcome> => {
84
+ // const suspension = await runtime.getSuspension({ runId })
85
+ //
86
+ // if (input) {
87
+ // if (!suspension || suspension.request.name !== __inputRequestHook.name) {
88
+ // throw new Error(`No unresolved input wait with token "${input.token}" exists in run "${runId}".`)
89
+ // }
90
+ // const request = __inputRequestHook.request.safeParse(suspension.request.payload)
91
+ // if (!request.success || request.data.token !== input.token) {
92
+ // throw new Error(`No unresolved input wait with token "${input.token}" exists in run "${runId}".`)
93
+ // }
94
+ // const resolution = __inputRequestHook.resolution.parse(input.payload)
95
+ // return runtime.resumeHook(__inputRequestHook, { runId, workflow, waitId: suspension.waitId, resolution }).waitForOutcome()
96
+ // }
97
+ //
98
+ // return suspension?.request.name === "timer"
99
+ // ? runtime.resumeTimer(workflow, { runId, waitId: suspension.waitId }).waitForOutcome()
100
+ // : runtime.resume(workflow, { runId }).waitForOutcome()
101
+ // })
102
+ //
103
+ // await handleOutcome({ runId, outcome, apiKey })
104
+ //
105
+ // if (isVerbose && outcome.status === "completed") console.log(chalk.green(` Run ${runId} completed`))
106
+ // })
107
+ // } catch (error) {
108
+ // if (error instanceof CliError) throw error
109
+ // throw new CliError("run_resume_failed", `Run "${runId}" could not be resumed.`, { detail: formatErrorDetail(error) })
110
+ // }
111
+ // }
112
+ //
113
+ // function createJournalStore(): JournalStore {
114
+ // return new FileJournalStore(resolveDataDirectory())
115
+ // }
116
+ //
117
+ // function resolveDataDirectory(): string {
118
+ // return process.env.TERSE_JOURNAL_ROOT ?? path.join(process.cwd(), ".terse", "data")
119
+ // }
120
+ //
121
+ // function jobContext({ sessionId, runId, job, projectId }: { sessionId: string; runId: string; job: CreateJobParameters; projectId?: string }): TerseJobContext {
122
+ // return {
123
+ // sessionId,
124
+ // runId,
125
+ // apiBaseUrl: BACKEND_URL,
126
+ // jobName: job.name,
127
+ // projectId
128
+ // }
129
+ // }
130
+ //
131
+ // async function handleOutcome({ runId, outcome, apiKey }: { runId: string; outcome: RuntimeOutcome; apiKey: string }): Promise<void> {
132
+ // if (outcome.status === "completed") return
133
+ // if (outcome.status === "failed") {
134
+ // const error = new Error(outcome.error.message)
135
+ // error.name = outcome.error.name
136
+ // throw error
137
+ // }
138
+ //
139
+ // const body = suspendRequest({ runId, suspension: outcome.suspension })
140
+ // await fetchWithAuth<SdkJobSuspendResponseBody>(ApiRoutes.SDK.SUSPEND, apiKey, body, "POST")
141
+ // }
142
+ //
143
+ // function suspendRequest({ runId, suspension }: { runId: string; suspension: Suspension }): SdkJobSuspendRequestBody {
144
+ // const payload = suspension.request.payload
145
+ // if (suspension.request.name === "timer") {
146
+ // if (typeof payload !== "object" || payload === null || Array.isArray(payload) || typeof payload.wakeAt !== "string") {
147
+ // throw new Error("Timer suspension has an invalid wakeAt.")
148
+ // }
149
+ // return {
150
+ // runId,
151
+ // kind: "timer",
152
+ // delaySeconds: Math.max(1, Math.ceil((Date.parse(payload.wakeAt) - Date.now()) / 1_000)),
153
+ // idempotencyKey: suspension.waitId
154
+ // }
155
+ // }
156
+ //
157
+ // if (suspension.request.name === __inputRequestHook.name) {
158
+ // const input = __inputRequestHook.request.parse(payload)
159
+ // return {
160
+ // runId,
161
+ // kind: "input",
162
+ // hookToken: input.token,
163
+ // idempotencyKey: suspension.waitId
164
+ // }
165
+ // }
166
+ //
167
+ // throw new Error(`Terse does not know how to park hook "${suspension.request.name}".`)
168
+ // }
147
169
  //# sourceMappingURL=durableJobRuntime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"durableJobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/durableJobRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"durableJobRuntime.js","sourceRoot":"","sources":["../../../../src/providers/typescript/runtimes/durableJobRuntime.ts"],"names":[],"mappings":"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"}