@relayflows/sdk 2.0.35 → 2.0.37
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/dist/adapters/base.d.ts +16 -0
- package/dist/adapters/base.d.ts.map +1 -1
- package/dist/adapters/claude.d.ts.map +1 -1
- package/dist/adapters/claude.js +15 -0
- package/dist/adapters/claude.js.map +1 -1
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +4 -0
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/usage-limit.d.ts +2 -0
- package/dist/adapters/usage-limit.d.ts.map +1 -0
- package/dist/adapters/usage-limit.js +17 -0
- package/dist/adapters/usage-limit.js.map +1 -0
- package/dist/authored-activity.d.ts +17 -0
- package/dist/authored-activity.d.ts.map +1 -0
- package/dist/authored-activity.js +218 -0
- package/dist/authored-activity.js.map +1 -0
- package/dist/authored-child-run.d.ts +34 -0
- package/dist/authored-child-run.d.ts.map +1 -0
- package/dist/authored-child-run.js +128 -0
- package/dist/authored-child-run.js.map +1 -0
- package/dist/authored-flow-error.d.ts +32 -3
- package/dist/authored-flow-error.d.ts.map +1 -1
- package/dist/authored-flow-error.js +3 -1
- package/dist/authored-flow-error.js.map +1 -1
- package/dist/authored-flow-executor.d.ts +11 -1
- package/dist/authored-flow-executor.d.ts.map +1 -1
- package/dist/authored-flow-executor.js +32 -1
- package/dist/authored-flow-executor.js.map +1 -1
- package/dist/authored-helper-effect.d.ts.map +1 -1
- package/dist/authored-helper-effect.js +3 -2
- package/dist/authored-helper-effect.js.map +1 -1
- package/dist/authored-mcp.d.ts.map +1 -1
- package/dist/authored-mcp.js +4 -2
- package/dist/authored-mcp.js.map +1 -1
- package/dist/authored-node-entry.js +9 -1
- package/dist/authored-node-entry.js.map +1 -1
- package/dist/authored-node-runner.d.ts.map +1 -1
- package/dist/authored-node-runner.js +42 -9
- package/dist/authored-node-runner.js.map +1 -1
- package/dist/authored-plugin-effect.d.ts.map +1 -1
- package/dist/authored-plugin-effect.js +4 -2
- package/dist/authored-plugin-effect.js.map +1 -1
- package/dist/authored-preflight.d.ts +1 -1
- package/dist/authored-preflight.d.ts.map +1 -1
- package/dist/authored-preflight.js +2 -2
- package/dist/authored-preflight.js.map +1 -1
- package/dist/authored-root.d.ts +12 -7
- package/dist/authored-root.d.ts.map +1 -1
- package/dist/authored-root.js +24 -0
- package/dist/authored-root.js.map +1 -1
- package/dist/authored-step-output.d.ts +24 -8
- package/dist/authored-step-output.d.ts.map +1 -1
- package/dist/authored-step-output.js +81 -15
- package/dist/authored-step-output.js.map +1 -1
- package/dist/authored-subscription-park.d.ts +5 -0
- package/dist/authored-subscription-park.d.ts.map +1 -0
- package/dist/authored-subscription-park.js +47 -0
- package/dist/authored-subscription-park.js.map +1 -0
- package/dist/authored-verdict.d.ts +2 -0
- package/dist/authored-verdict.d.ts.map +1 -1
- package/dist/authored-verdict.js +2 -1
- package/dist/authored-verdict.js.map +1 -1
- package/dist/authored-worker-step.d.ts +1 -1
- package/dist/authored-worker-step.d.ts.map +1 -1
- package/dist/authored-worker-step.js +9 -4
- package/dist/authored-worker-step.js.map +1 -1
- package/dist/cli/check-activities.d.ts +8 -0
- package/dist/cli/check-activities.d.ts.map +1 -0
- package/dist/cli/check-activities.js +155 -0
- package/dist/cli/check-activities.js.map +1 -0
- package/dist/cli/check.d.ts +2 -0
- package/dist/cli/check.d.ts.map +1 -1
- package/dist/cli/check.js +3 -3
- package/dist/cli/check.js.map +1 -1
- package/dist/cli/cli-probe.d.ts +2 -2
- package/dist/cli/cli-probe.d.ts.map +1 -1
- package/dist/cli/cli-probe.js +22 -9
- package/dist/cli/cli-probe.js.map +1 -1
- package/dist/cli/direct-run.d.ts.map +1 -1
- package/dist/cli/direct-run.js +17 -4
- package/dist/cli/direct-run.js.map +1 -1
- package/dist/cli/run.d.ts +18 -5
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +37 -12
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/subscription-report.d.ts +5 -0
- package/dist/cli/subscription-report.d.ts.map +1 -0
- package/dist/cli/subscription-report.js +48 -0
- package/dist/cli/subscription-report.js.map +1 -0
- package/dist/cli-adapter.d.ts +4 -2
- package/dist/cli-adapter.d.ts.map +1 -1
- package/dist/cli-adapter.js +4 -0
- package/dist/cli-adapter.js.map +1 -1
- package/dist/cli.d.ts +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +13 -5
- package/dist/cli.js.map +1 -1
- package/dist/communication/local.d.ts +1 -1
- package/dist/communication/local.d.ts.map +1 -1
- package/dist/communication/local.js +2 -2
- package/dist/communication/local.js.map +1 -1
- package/dist/communication/worker.d.ts +1 -1
- package/dist/communication/worker.d.ts.map +1 -1
- package/dist/communication/worker.js +4 -4
- package/dist/communication/worker.js.map +1 -1
- package/dist/decimal-dollars.d.ts +12 -0
- package/dist/decimal-dollars.d.ts.map +1 -0
- package/dist/decimal-dollars.js +39 -0
- package/dist/decimal-dollars.js.map +1 -0
- package/dist/effect-channel.d.ts.map +1 -1
- package/dist/effect-channel.js +2 -0
- package/dist/effect-channel.js.map +1 -1
- package/dist/failure-kinds.d.ts +2 -2
- package/dist/failure-kinds.d.ts.map +1 -1
- package/dist/failure-kinds.js +2 -0
- package/dist/failure-kinds.js.map +1 -1
- package/dist/helper-instruction.d.ts +3 -0
- package/dist/helper-instruction.d.ts.map +1 -0
- package/dist/helper-instruction.js +3 -0
- package/dist/helper-instruction.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/journal-client.d.ts +21 -3
- package/dist/journal-client.d.ts.map +1 -1
- package/dist/journal-client.js +45 -6
- package/dist/journal-client.js.map +1 -1
- package/dist/journal-reader.d.ts.map +1 -1
- package/dist/journal-reader.js +2 -0
- package/dist/journal-reader.js.map +1 -1
- package/dist/llm-worker.d.ts +2 -1
- package/dist/llm-worker.d.ts.map +1 -1
- package/dist/llm-worker.js +7 -2
- package/dist/llm-worker.js.map +1 -1
- package/dist/local-agent-environment.d.ts +13 -0
- package/dist/local-agent-environment.d.ts.map +1 -0
- package/dist/local-agent-environment.js +104 -0
- package/dist/local-agent-environment.js.map +1 -0
- package/dist/local-agent.d.ts +4 -1
- package/dist/local-agent.d.ts.map +1 -1
- package/dist/local-agent.js +15 -5
- package/dist/local-agent.js.map +1 -1
- package/dist/preflight.d.ts +6 -0
- package/dist/preflight.d.ts.map +1 -1
- package/dist/preflight.js +36 -10
- package/dist/preflight.js.map +1 -1
- package/dist/protocol.d.ts +187 -1
- package/dist/protocol.d.ts.map +1 -1
- package/dist/reported-cost-total.d.ts +41 -0
- package/dist/reported-cost-total.d.ts.map +1 -0
- package/dist/reported-cost-total.js +63 -0
- package/dist/reported-cost-total.js.map +1 -0
- package/dist/reported-cost.d.ts +24 -0
- package/dist/reported-cost.d.ts.map +1 -0
- package/dist/reported-cost.js +49 -0
- package/dist/reported-cost.js.map +1 -0
- package/dist/run-state.d.ts +9 -11
- package/dist/run-state.d.ts.map +1 -1
- package/dist/run-state.js +15 -38
- package/dist/run-state.js.map +1 -1
- package/dist/step-settling.d.ts +11 -0
- package/dist/step-settling.d.ts.map +1 -0
- package/dist/step-settling.js +22 -0
- package/dist/step-settling.js.map +1 -0
- package/dist/worker-cli.d.ts +1 -1
- package/dist/worker-cli.d.ts.map +1 -1
- package/dist/worker-cli.js +3 -3
- package/dist/worker-cli.js.map +1 -1
- package/dist/worker.d.ts +2 -0
- package/dist/worker.d.ts.map +1 -1
- package/dist/worker.js +5 -2
- package/dist/worker.js.map +1 -1
- package/dist/yaml-helper-effect.d.ts.map +1 -1
- package/dist/yaml-helper-effect.js +2 -1
- package/dist/yaml-helper-effect.js.map +1 -1
- package/dist/yaml-helpers.d.ts.map +1 -1
- package/dist/yaml-helpers.js +2 -1
- package/dist/yaml-helpers.js.map +1 -1
- package/package.json +2 -2
- package/src/adapters/base.ts +19 -0
- package/src/adapters/claude.ts +15 -0
- package/src/adapters/codex.ts +6 -0
- package/src/adapters/usage-limit.ts +17 -0
- package/src/authored-activity.ts +251 -0
- package/src/authored-child-run.ts +138 -0
- package/src/authored-flow-error.ts +33 -0
- package/src/authored-flow-executor.ts +44 -1
- package/src/authored-helper-effect.ts +3 -2
- package/src/authored-mcp.ts +4 -2
- package/src/authored-node-entry.ts +11 -2
- package/src/authored-node-runner.ts +43 -9
- package/src/authored-plugin-effect.ts +4 -2
- package/src/authored-preflight.ts +2 -2
- package/src/authored-root.ts +34 -4
- package/src/authored-step-output.ts +88 -15
- package/src/authored-subscription-park.ts +46 -0
- package/src/authored-verdict.ts +2 -1
- package/src/authored-worker-step.ts +9 -3
- package/src/cli/check-activities.ts +144 -0
- package/src/cli/check.ts +6 -3
- package/src/cli/cli-probe.ts +23 -9
- package/src/cli/direct-run.ts +16 -1
- package/src/cli/run.ts +59 -14
- package/src/cli/subscription-report.ts +51 -0
- package/src/cli-adapter.ts +8 -2
- package/src/cli.ts +13 -6
- package/src/communication/local.ts +3 -2
- package/src/communication/worker.ts +7 -4
- package/src/decimal-dollars.ts +38 -0
- package/src/effect-channel.ts +2 -0
- package/src/failure-kinds.ts +2 -0
- package/src/helper-instruction.ts +2 -0
- package/src/index.ts +6 -0
- package/src/journal-client.ts +60 -7
- package/src/journal-reader.ts +2 -0
- package/src/llm-worker.ts +6 -1
- package/src/local-agent-environment.ts +92 -0
- package/src/local-agent.ts +19 -4
- package/src/preflight.ts +46 -10
- package/src/protocol.ts +151 -0
- package/src/reported-cost-total.ts +82 -0
- package/src/reported-cost.ts +51 -0
- package/src/run-state.ts +25 -37
- package/src/step-settling.ts +19 -0
- package/src/worker-cli.ts +3 -2
- package/src/worker.ts +9 -2
- package/src/yaml-helper-effect.ts +2 -1
- package/src/yaml-helpers.ts +2 -1
|
@@ -2,18 +2,34 @@ import { COMPLETION_REASONS, RUN_COMPLETION_REASONS, FLOW_COMPLETION_REASONS } f
|
|
|
2
2
|
import { AuthoredFlowExecutionError } from './authored-flow-error.js';
|
|
3
3
|
import { inspectionHint, renderInspection, renderStepEvidence, stepFailureDetails } from './cli/step-failure.js';
|
|
4
4
|
import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
|
|
5
|
+
import { readChildJournal, waitForTerminalChildRun } from './authored-child-run.js';
|
|
6
|
+
import { settlingCompletion } from './step-settling.js';
|
|
5
7
|
/**
|
|
6
8
|
* Shared by every `f.*` verb that lowers to its own kernel run: find the
|
|
7
9
|
* operation's `step.completed` entry, record it, and refuse anything but a
|
|
8
10
|
* clean success before handing the raw `output` back for verb-specific
|
|
9
11
|
* extraction (a plain string for `f.run`, an `AgentResult` for `f.agent`).
|
|
10
12
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
13
|
+
* The run must be terminal before it is judged. Usually it already is —
|
|
14
|
+
* `f.run`'s `runStart` drives a deterministic step to completion inline, and
|
|
15
|
+
* `f.agent`'s caller has polled one with `classifyOutcome` (cli/run.ts). But a
|
|
16
|
+
* child ADOPTED through its admission key on resume is returned as it stands,
|
|
17
|
+
* possibly mid-attempt or mid-backoff on the request that first started it,
|
|
18
|
+
* so unless the step has already settled as a failure, a run that neither
|
|
19
|
+
* the caller's own kernel answer (`knownStatus`) nor a journaled
|
|
20
|
+
* `run.completed` shows terminal is waited out first (`waitForTerminalChildRun`, bounded by
|
|
21
|
+
* the child's own lease and backoff). A success is never read off a child
|
|
22
|
+
* whose run is not terminal. A child that cannot settle — parked on a worker
|
|
23
|
+
* nobody attached — reports its latest attempt that ran to a failed result,
|
|
24
|
+
* or is refused.
|
|
25
|
+
*
|
|
26
|
+
* The step's verdict is its TERMINAL completion. A retried attempt journals a
|
|
27
|
+
* `step.completed` too — `disposition: retry` (crash recovery's `crashed`, a
|
|
28
|
+
* `worker_error`, a failed gate with iterations left) — and it precedes the
|
|
29
|
+
* attempt that settled the step. Taking the first `step.completed` read that
|
|
30
|
+
* retried attempt's failure as the step's, and failed a child that completed
|
|
31
|
+
* `success`. Only the last completion whose disposition is not `retry` or
|
|
32
|
+
* `park` is read, recorded and indexed.
|
|
17
33
|
*
|
|
18
34
|
* What is NOT delegated to the caller is the run's verdict. A child spec has
|
|
19
35
|
* more than one step whenever the author declared a `.gate()`, and that gate
|
|
@@ -31,14 +47,60 @@ import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
|
|
|
31
47
|
* `f.agent`/`f.llm` already reach through `classifyOutcome`, so both step
|
|
32
48
|
* families report one grammar instead of two divergent ones.
|
|
33
49
|
*/
|
|
34
|
-
export async function readCompletedStepOutput(journal, runId, stepId, journalSteps, context = {}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
50
|
+
export async function readCompletedStepOutput(journal, runId, stepId, journalSteps, context = {},
|
|
51
|
+
// `suspended` (an Event Await boundary, `RunReport.status`) is not terminal:
|
|
52
|
+
// it is judged exactly like a run still in flight.
|
|
53
|
+
knownStatus) {
|
|
54
|
+
let entries = await readChildJournal(journal, runId);
|
|
55
|
+
let completed = terminalCompletion(entries, stepId);
|
|
56
|
+
// A success is never accepted before the child RUN is terminal: a declared
|
|
57
|
+
// gate lowers to a dependent step (`lowerNamedGates`) that may not even have
|
|
58
|
+
// started when the producer's success is journaled, and the run's verdict,
|
|
59
|
+
// not the producer's, is the operation's. Only a settled FAILURE is final
|
|
60
|
+
// on its own — the step has no attempt left.
|
|
61
|
+
// `knownStatus` is the kernel's own answer the caller already holds (the
|
|
62
|
+
// `run.start` receipt, or the outcome `classifyOutcome` polled to): a
|
|
63
|
+
// terminal one is as authoritative as a journaled `run.completed`.
|
|
64
|
+
const settledFailure = completed !== undefined && completed.payload.completionReason !== 'success';
|
|
65
|
+
const terminal = knownStatus === 'completed' || knownStatus === 'failed'
|
|
66
|
+
|| entries.some(entry => runCompletionReason(entry) !== undefined);
|
|
67
|
+
if (!terminal && !settledFailure) {
|
|
68
|
+
const status = await waitForTerminalChildRun(journal, runId, context.signal);
|
|
69
|
+
entries = await readChildJournal(journal, runId);
|
|
70
|
+
completed = terminalCompletion(entries, stepId);
|
|
71
|
+
if (status !== 'completed' && status !== 'failed') {
|
|
72
|
+
if (completed?.payload.completionReason === 'success') {
|
|
73
|
+
throw protocolViolation(runId, `child run for step "${stepId}" is not terminal (status: ${status}); its verdict is still pending`);
|
|
74
|
+
}
|
|
75
|
+
if (completed === undefined) {
|
|
76
|
+
// Nothing will settle the step from here: the child is parked on a
|
|
77
|
+
// worker the caller did not keep attached (a helper drives exactly
|
|
78
|
+
// one attempt, and the retry dispatched after it dies with its
|
|
79
|
+
// connection). The latest attempt that ran to a result — not one the
|
|
80
|
+
// kernel recorded as dead (`completed_by: kernel`,
|
|
81
|
+
// machine/recovery.rs) — is then why the step stands where it does,
|
|
82
|
+
// and is reported as that: never as a success, never silently.
|
|
83
|
+
const attempts = entries.filter((entry) => isStepCompleted(entry, stepId));
|
|
84
|
+
const latest = attempts.filter(entry => entry.payload.completed_by !== 'kernel').at(-1) ?? attempts.at(-1);
|
|
85
|
+
if (latest === undefined || latest.payload.completionReason === 'success') {
|
|
86
|
+
throw protocolViolation(runId, `child run for step "${stepId}" is not terminal (status: ${status})`);
|
|
87
|
+
}
|
|
88
|
+
completed = latest;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
39
91
|
}
|
|
40
|
-
const
|
|
92
|
+
const runReason = entries.map(runCompletionReason).find((value) => value !== undefined);
|
|
41
93
|
const edges = context.stepEdges?.(stepId);
|
|
94
|
+
if (completed === undefined) {
|
|
95
|
+
// Canceled or out of budget while the step was between attempts: the run
|
|
96
|
+
// settled with no terminal completion for the step. That is the run's
|
|
97
|
+
// failure to report, not a malformed journal.
|
|
98
|
+
if (runReason !== undefined && runReason !== 'success') {
|
|
99
|
+
throw await stepFailure(journal, runId, stepId, runReason, context, edges, `journal run for step "${stepId}" completed with ${runReason}`);
|
|
100
|
+
}
|
|
101
|
+
throw protocolViolation(runId, `journal has no terminal step.completed for "${stepId}"`);
|
|
102
|
+
}
|
|
103
|
+
const reason = completed.payload.completionReason;
|
|
42
104
|
journalSteps.push(Object.freeze({ id: stepId, runId, completionReason: reason, ...edges }));
|
|
43
105
|
if (reason !== 'success') {
|
|
44
106
|
throw await stepFailure(journal, runId, stepId, reason, context, edges, `journal step "${stepId}" completed with ${reason}`);
|
|
@@ -49,7 +111,6 @@ export async function readCompletedStepOutput(journal, runId, stepId, journalSte
|
|
|
49
111
|
// verdict. Reading only the producer's entry let a failed gate resolve as
|
|
50
112
|
// though the command had passed — the `|| true` invisibility this module's
|
|
51
113
|
// recording policy exists to remove, reappearing one layer up.
|
|
52
|
-
const runReason = entries.map(runCompletionReason).find((value) => value !== undefined);
|
|
53
114
|
if (runReason !== undefined && runReason !== 'success') {
|
|
54
115
|
throw await stepFailure(journal, runId, stepId, runReason, context, edges, `journal run for step "${stepId}" completed with ${runReason}`);
|
|
55
116
|
}
|
|
@@ -88,7 +149,7 @@ async function stepFailure(journal, runId, stepId, reason, context, edges, heade
|
|
|
88
149
|
return new AuthoredFlowExecutionError('step_failed', message, reason, runId, { ...details, ...where });
|
|
89
150
|
}
|
|
90
151
|
export async function readSuccessfulOutput(journal, outcome, stepId, journalSteps, context = {}) {
|
|
91
|
-
const output = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context)
|
|
152
|
+
const output = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context, outcome.status)
|
|
92
153
|
.catch(relabelCommandTimeout(stepId));
|
|
93
154
|
if (!isRecord(output) || typeof output['stdout_tail'] !== 'string') {
|
|
94
155
|
throw protocolViolation(outcome.run_id, `step "${stepId}" has no string stdout_tail`);
|
|
@@ -108,7 +169,7 @@ export async function readSuccessfulOutput(journal, outcome, stepId, journalStep
|
|
|
108
169
|
* reach an author's `if (!result.ok)` as a real verdict.
|
|
109
170
|
*/
|
|
110
171
|
export async function readRecordedOutcome(journal, outcome, stepId, journalSteps, context = {}) {
|
|
111
|
-
const envelope = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context)
|
|
172
|
+
const envelope = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context, outcome.status)
|
|
112
173
|
.catch(relabelCommandTimeout(stepId));
|
|
113
174
|
const exitCode = isRecord(envelope) ? envelope['exit_code'] : undefined;
|
|
114
175
|
if (!isRecord(envelope) || typeof envelope['stdout_tail'] !== 'string'
|
|
@@ -136,6 +197,11 @@ function relabelCommandTimeout(stepId) {
|
|
|
136
197
|
throw error;
|
|
137
198
|
};
|
|
138
199
|
}
|
|
200
|
+
/** The step's LAST settling completion, when it is well formed. */
|
|
201
|
+
function terminalCompletion(entries, stepId) {
|
|
202
|
+
const settling = settlingCompletion(entries, stepId);
|
|
203
|
+
return isStepCompleted(settling, stepId) ? settling : undefined;
|
|
204
|
+
}
|
|
139
205
|
function isStepCompleted(value, stepId) {
|
|
140
206
|
if (!isRecord(value) || value['entry_type'] !== 'step.completed' || value['step_id'] !== stepId) {
|
|
141
207
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authored-step-output.js","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,uBAAuB,EAA6B,MAAM,qBAAqB,CAAC;AACrI,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAKtE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACjH,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAA0B,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"authored-step-output.js","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { AuthoredFlowSuspension } from './authored-flow-error.js';
|
|
2
|
+
import type { JournalClient } from './journal-client.js';
|
|
3
|
+
/** Recover the handoff report without starting a worker on a still-open wait. */
|
|
4
|
+
export declare function readSubscriptionPark(journal: JournalClient, runId: string): Promise<AuthoredFlowSuspension | undefined>;
|
|
5
|
+
//# sourceMappingURL=authored-subscription-park.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authored-subscription-park.d.ts","sourceRoot":"","sources":["../src/authored-subscription-park.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,iFAAiF;AACjF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GACpC,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAuC7C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/** Recover the handoff report without starting a worker on a still-open wait. */
|
|
2
|
+
export async function readSubscriptionPark(journal, runId) {
|
|
3
|
+
const open = new Map();
|
|
4
|
+
const prepared = new Map();
|
|
5
|
+
let from = 1;
|
|
6
|
+
for (;;) {
|
|
7
|
+
const { entries } = await journal.journalRead(runId, from, 500);
|
|
8
|
+
for (const raw of entries) {
|
|
9
|
+
const entry = raw;
|
|
10
|
+
from = entry.seq + 1;
|
|
11
|
+
const p = entry.payload;
|
|
12
|
+
if (entry.entry_type === 'subscription.prepared')
|
|
13
|
+
prepared.set(String(p['subscription_id']), p);
|
|
14
|
+
if (entry.entry_type === 'wait.event' && entry.step_id === 'authored-root'
|
|
15
|
+
&& typeof p['event_key'] === 'string' && p['event_key'].startsWith('subscription.park:')) {
|
|
16
|
+
const park = JSON.parse(p['event_key'].slice('subscription.park:'.length));
|
|
17
|
+
if (typeof park['subscription_id'] !== 'string'
|
|
18
|
+
|| (park['phase'] !== 'activation' && park['phase'] !== 'event_wait')) {
|
|
19
|
+
throw new Error('malformed durable subscription park');
|
|
20
|
+
}
|
|
21
|
+
open.set(String(p['wait_id']), { subscription_id: park['subscription_id'], phase: park['phase'] });
|
|
22
|
+
}
|
|
23
|
+
if (entry.entry_type === 'wait.completed')
|
|
24
|
+
open.delete(String(p['wait_id']));
|
|
25
|
+
}
|
|
26
|
+
if (entries.length < 500)
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
const park = [...open.values()].at(-1);
|
|
30
|
+
if (park === undefined)
|
|
31
|
+
return undefined;
|
|
32
|
+
const p = prepared.get(park.subscription_id);
|
|
33
|
+
if (p === undefined || typeof p['stream'] !== 'string' || typeof p['deadline_at_ms'] !== 'number') {
|
|
34
|
+
throw new Error('subscription park has no prepared boundary');
|
|
35
|
+
}
|
|
36
|
+
const common = { subscriptionId: park.subscription_id, stream: p['stream'], deadlineAtMs: p['deadline_at_ms'] };
|
|
37
|
+
if (park.phase === 'event_wait')
|
|
38
|
+
return { kind: 'event_wait', ...common };
|
|
39
|
+
if (!Array.isArray(p['event_types']) || !p['event_types'].every(v => typeof v === 'string')
|
|
40
|
+
|| typeof p['settle_ms'] !== 'number' || typeof p['idle_ms'] !== 'number' || typeof p['include_self'] !== 'boolean') {
|
|
41
|
+
throw new Error('subscription park has malformed prepared facts');
|
|
42
|
+
}
|
|
43
|
+
return { kind: 'activation', ...common, eventTypes: p['event_types'], settleMs: p['settle_ms'],
|
|
44
|
+
idleMs: p['idle_ms'], includeSelf: p['include_self'],
|
|
45
|
+
...(p['pattern'] === undefined || p['pattern'] === null ? {} : { pattern: p['pattern'] }) };
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=authored-subscription-park.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authored-subscription-park.js","sourceRoot":"","sources":["../src/authored-subscription-park.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,4 +25,6 @@ export interface AuthoredVerdict {
|
|
|
25
25
|
* output field is the wrong type would replace the answer with a worse one.
|
|
26
26
|
*/
|
|
27
27
|
export declare function authoredVerdictOf(events: readonly JournalEvent[]): AuthoredVerdict | null;
|
|
28
|
+
/** Whether a journal's spawned spec is a real authored root, not a step merely named `authored-root`. */
|
|
29
|
+
export declare function declaresAuthoredRoot(spawned: JournalEvent): boolean;
|
|
28
30
|
//# sourceMappingURL=authored-verdict.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authored-verdict.d.ts","sourceRoot":"","sources":["../src/authored-verdict.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,gCAAgC,CAAC;AAEhE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,eAAe,GAAG,IAAI,CAoBzF"}
|
|
1
|
+
{"version":3,"file":"authored-verdict.d.ts","sourceRoot":"","sources":["../src/authored-verdict.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,gCAAgC,CAAC;AAEhE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,eAAe,GAAG,IAAI,CAoBzF;AAED,yGAAyG;AACzG,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAYnE"}
|
package/dist/authored-verdict.js
CHANGED
|
@@ -55,7 +55,8 @@ export function authoredVerdictOf(events) {
|
|
|
55
55
|
return null;
|
|
56
56
|
return Object.freeze({ reason, ...(detail === undefined ? {} : { detail }) });
|
|
57
57
|
}
|
|
58
|
-
|
|
58
|
+
/** Whether a journal's spawned spec is a real authored root, not a step merely named `authored-root`. */
|
|
59
|
+
export function declaresAuthoredRoot(spawned) {
|
|
59
60
|
const spec = record(record(spawned.payload)?.['spec']);
|
|
60
61
|
const steps = spec?.['steps'];
|
|
61
62
|
if (!Array.isArray(steps))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authored-verdict.js","sourceRoot":"","sources":["../src/authored-verdict.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,+EAA+E;AAC/E,8EAA8E;AAC9E,yEAAyE;AACzE,+EAA+E;AAC/E,mEAAmE;AACnE,oBAAoB;AACpB,EAAE;AACF,8EAA8E;AAC9E,yEAAyE;AACzE,yEAAyE;AACzE,yCAAyC;AAEzC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GAEpB,MAAM,0BAA0B,CAAC;AAGlC,oFAAoF;AACpF,MAAM,CAAC,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAQhE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA+B;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IAC/E,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhD,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACrD,KAAK,CAAC,UAAU,KAAK,gBAAgB,IAAI,KAAK,CAAC,OAAO,KAAK,eAAe,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/E,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAE1E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvE,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC1C,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC1C,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAE5E,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"authored-verdict.js","sourceRoot":"","sources":["../src/authored-verdict.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { type AuthoredWorkerSlots } from './worker-slots.js';
|
|
|
8
8
|
/** Agent and LLM calls share the exact declarative preflight and lease wait. */
|
|
9
9
|
export declare function authoredWorkerRunner(definition: {
|
|
10
10
|
name: string;
|
|
11
|
-
}, journal: JournalClient, flowPath: string, journalSteps: AuthoredFlowJournalStep[], waitOptions: RunLifecycleOptions, localAgentStream?: string, budget?: AuthoredBudget, headerBudget?: unknown, rootRunId?: string, workerCapacity?: number, stepEdges?: AuthoredStepContext['stepEdges'], sharedSlots?: AuthoredWorkerSlots): {
|
|
11
|
+
}, journal: JournalClient, flowPath: string, journalSteps: AuthoredFlowJournalStep[], waitOptions: RunLifecycleOptions, localAgentStream?: string, budget?: AuthoredBudget, headerBudget?: unknown, rootRunId?: string, workerCapacity?: number, stepEdges?: AuthoredStepContext['stepEdges'], sharedSlots?: AuthoredWorkerSlots, agentEnvironment?: NodeJS.ProcessEnv): {
|
|
12
12
|
slots: AuthoredWorkerSlots | undefined;
|
|
13
13
|
/** Refuse every agent/LLM call still waiting for a worker slot (body teardown). */
|
|
14
14
|
stop(reason: unknown): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authored-worker-step.d.ts","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG5F,OAAO,EAAmB,KAAK,mBAAmB,EAAkB,MAAM,cAAc,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAiG,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC7L,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAK3E,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EACtE,YAAY,EAAE,uBAAuB,EAAE,EAAE,WAAW,EAAE,mBAAmB,EACzE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO,EAC1E,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzF,WAAW,CAAC,EAAE,mBAAmB;;
|
|
1
|
+
{"version":3,"file":"authored-worker-step.d.ts","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG5F,OAAO,EAAmB,KAAK,mBAAmB,EAAkB,MAAM,cAAc,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAiG,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC7L,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAK3E,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EACtE,YAAY,EAAE,uBAAuB,EAAE,EAAE,WAAW,EAAE,mBAAmB,EACzE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO,EAC1E,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzF,WAAW,CAAC,EAAE,mBAAmB,EACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC,UAAU;;IA6HlC,mFAAmF;iBACtE,OAAO,GAAG,IAAI;cASX,MAAM,WAAW,YAAY,iBAAiB,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;YAqFhF,MAAM,UAAU,MAAM,YAAY,UAAU,iBAAiB,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;EAmB1G;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,EACrG,OAAO,GAAE,mBAAwB;SAgCX,MAAM,WAAW,MAAM,gCAA8B,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;kBAInG,MAAM,WAAW,MAAM,YAAY,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;EAI5H"}
|
|
@@ -13,7 +13,7 @@ import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
|
|
|
13
13
|
import { authoredWorkerSlots } from './worker-slots.js';
|
|
14
14
|
const WORKSPACE_PERMISSION_ANNOTATION = /:\s*(readonly|readwrite)\s*$/i;
|
|
15
15
|
/** Agent and LLM calls share the exact declarative preflight and lease wait. */
|
|
16
|
-
export function authoredWorkerRunner(definition, journal, flowPath, journalSteps, waitOptions, localAgentStream, budget, headerBudget, rootRunId, workerCapacity, stepEdges, sharedSlots) {
|
|
16
|
+
export function authoredWorkerRunner(definition, journal, flowPath, journalSteps, waitOptions, localAgentStream, budget, headerBudget, rootRunId, workerCapacity, stepEdges, sharedSlots, agentEnvironment) {
|
|
17
17
|
// Sized to the attached local workers, so concurrent calls wait here for a
|
|
18
18
|
// slot instead of being admitted and parked for want of a free worker.
|
|
19
19
|
const ownsSlots = sharedSlots === undefined;
|
|
@@ -22,11 +22,12 @@ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps
|
|
|
22
22
|
agent: slots.agent.scope(),
|
|
23
23
|
llm: slots.llm.scope(),
|
|
24
24
|
};
|
|
25
|
-
const check = authoredPreflight(flowPath);
|
|
25
|
+
const check = authoredPreflight(flowPath, agentEnvironment);
|
|
26
26
|
const context = {
|
|
27
27
|
...(rootRunId === undefined ? {} : { rootRunId }),
|
|
28
28
|
...(waitOptions.dataDir === undefined ? {} : { dataDir: waitOptions.dataDir }),
|
|
29
29
|
...(stepEdges === undefined ? {} : { stepEdges }),
|
|
30
|
+
...(waitOptions.signal === undefined ? {} : { signal: waitOptions.signal }),
|
|
30
31
|
};
|
|
31
32
|
async function run(step) {
|
|
32
33
|
const id = step.id;
|
|
@@ -39,7 +40,11 @@ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps
|
|
|
39
40
|
const { report, flow: resolved } = await check(authoring);
|
|
40
41
|
if (!report.ok || resolved === undefined) {
|
|
41
42
|
const refusal = report.diagnostics.find((diagnostic) => diagnostic.severity === 'refusal');
|
|
42
|
-
|
|
43
|
+
// Environment refusals keep their own kind: folding a usage limit or an
|
|
44
|
+
// outdated CLI into `*_cli_unresolved` reported them as `invalid_spec`,
|
|
45
|
+
// telling the author to fix a flow that was never wrong.
|
|
46
|
+
throw new AuthoredFlowExecutionError(refusal?.kind === 'budget_syntax_invalid' || refusal?.kind === 'cli_outdated'
|
|
47
|
+
|| refusal?.kind === 'provider_usage_limited' ? refusal.kind
|
|
43
48
|
: step.type === 'llm' ? 'llm_cli_unresolved' : 'agent_cli_unresolved', refusal?.message
|
|
44
49
|
?? `flow "${definition.name}" step "${id}": no CLI could be resolved for f.${step.type} `
|
|
45
50
|
+ `(searched for flows.json from "${flowPath}")`);
|
|
@@ -105,7 +110,7 @@ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps
|
|
|
105
110
|
}
|
|
106
111
|
throw new AuthoredFlowExecutionError('step_failed', message, isSurfaceCompletionReason(reason) ? reason : undefined, outcome.run_id, details);
|
|
107
112
|
}
|
|
108
|
-
return readCompletedStepOutput(journal, outcome.run_id, id, journalSteps, context);
|
|
113
|
+
return readCompletedStepOutput(journal, outcome.run_id, id, journalSteps, context, execution.report.status);
|
|
109
114
|
};
|
|
110
115
|
const admissionKey = authoredChildAdmissionKey(rootRunId, id);
|
|
111
116
|
const admit = async () => budget === undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authored-worker-step.js","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authored-worker-step.js","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type CheckExecution } from './check.js';
|
|
2
|
+
/**
|
|
3
|
+
* Fail closed on body-level `f.on` calls that visibly omit an end bound.
|
|
4
|
+
* Dynamic options cannot be proved at check time and are refused here too;
|
|
5
|
+
* runtime validation covers JS callers and values assembled at runtime.
|
|
6
|
+
*/
|
|
7
|
+
export declare function checkAuthoredActivities(path: string): Promise<CheckExecution>;
|
|
8
|
+
//# sourceMappingURL=check-activities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-activities.d.ts","sourceRoot":"","sources":["../../src/cli/check-activities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAErE;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAqCnF"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import ts from 'typescript';
|
|
3
|
+
import { inputFailureReport } from './check.js';
|
|
4
|
+
/**
|
|
5
|
+
* Fail closed on body-level `f.on` calls that visibly omit an end bound.
|
|
6
|
+
* Dynamic options cannot be proved at check time and are refused here too;
|
|
7
|
+
* runtime validation covers JS callers and values assembled at runtime.
|
|
8
|
+
*/
|
|
9
|
+
export async function checkAuthoredActivities(path) {
|
|
10
|
+
try {
|
|
11
|
+
const source = await readFile(path, 'utf8');
|
|
12
|
+
const file = ts.createSourceFile(path, source, ts.ScriptTarget.Latest, true);
|
|
13
|
+
let diagnostic;
|
|
14
|
+
const visit = (node, context) => {
|
|
15
|
+
if (diagnostic !== undefined)
|
|
16
|
+
return;
|
|
17
|
+
if (ts.isCallExpression(node) && isContextOn(node.expression, context)) {
|
|
18
|
+
const options = node.arguments[1];
|
|
19
|
+
if (options === undefined || !ts.isObjectLiteralExpression(options)) {
|
|
20
|
+
diagnostic = 'body-level f.on() requires literal idle and deadline bounds (unbounded_subscription)';
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const keys = new Set(options.properties.flatMap((property) => {
|
|
24
|
+
if (!ts.isPropertyAssignment(property) && !ts.isShorthandPropertyAssignment(property))
|
|
25
|
+
return [];
|
|
26
|
+
return ts.isIdentifier(property.name) || ts.isStringLiteral(property.name) ? [property.name.text] : [];
|
|
27
|
+
}));
|
|
28
|
+
if (!keys.has('idle') || !keys.has('deadline')) {
|
|
29
|
+
diagnostic = 'body-level f.on() requires both idle and deadline bounds (unbounded_subscription)';
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
// A nested function that rebinds a context name is not the flow context.
|
|
34
|
+
const inner = ts.isFunctionLike(node) ? shadow(context, node.parameters) : context;
|
|
35
|
+
ts.forEachChild(node, (child) => visit(child, inner));
|
|
36
|
+
};
|
|
37
|
+
for (const body of authoredBodies(file)) {
|
|
38
|
+
if (body.body !== undefined)
|
|
39
|
+
visit(body.body, contextNames(body));
|
|
40
|
+
}
|
|
41
|
+
if (diagnostic !== undefined) {
|
|
42
|
+
return { report: inputFailureReport({ kind: 'invalid_spec', message: diagnostic }, path) };
|
|
43
|
+
}
|
|
44
|
+
return { report: { ok: true, path, gates: [], resolutions: [], diagnostics: [] } };
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
return { report: inputFailureReport({ kind: 'invalid_spec',
|
|
48
|
+
message: error instanceof Error ? error.message : 'Cannot inspect body-level activities' }, path) };
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Every authored body in this file: the last function argument of a
|
|
53
|
+
* `flow(...)` call, each trigger handler registered with `.on(trigger, body)`
|
|
54
|
+
* on a flow handle, and the default export, inline or named by an identifier
|
|
55
|
+
* declared in the same file. Only these bodies are checked.
|
|
56
|
+
*/
|
|
57
|
+
function authoredBodies(file) {
|
|
58
|
+
const functions = new Map();
|
|
59
|
+
const handles = new Set();
|
|
60
|
+
const isFlowHandle = (node) => {
|
|
61
|
+
if (ts.isIdentifier(node))
|
|
62
|
+
return handles.has(node.text);
|
|
63
|
+
if (!ts.isCallExpression(node))
|
|
64
|
+
return false;
|
|
65
|
+
if (ts.isIdentifier(node.expression))
|
|
66
|
+
return node.expression.text === 'flow';
|
|
67
|
+
return ts.isPropertyAccessExpression(node.expression) && node.expression.name.text === 'on'
|
|
68
|
+
&& isFlowHandle(node.expression.expression);
|
|
69
|
+
};
|
|
70
|
+
const bodies = new Set();
|
|
71
|
+
const references = [];
|
|
72
|
+
const addBody = (node) => {
|
|
73
|
+
if (node === undefined)
|
|
74
|
+
return;
|
|
75
|
+
if (ts.isArrowFunction(node) || ts.isFunctionExpression(node) || ts.isFunctionDeclaration(node))
|
|
76
|
+
bodies.add(node);
|
|
77
|
+
else if (ts.isIdentifier(node))
|
|
78
|
+
references.push(node.text);
|
|
79
|
+
};
|
|
80
|
+
const visit = (node) => {
|
|
81
|
+
if (ts.isFunctionDeclaration(node) && node.name !== undefined)
|
|
82
|
+
functions.set(node.name.text, node);
|
|
83
|
+
if (ts.isVariableDeclaration(node) && ts.isIdentifier(node.name) && node.initializer !== undefined
|
|
84
|
+
&& (ts.isArrowFunction(node.initializer) || ts.isFunctionExpression(node.initializer))) {
|
|
85
|
+
functions.set(node.name.text, node.initializer);
|
|
86
|
+
}
|
|
87
|
+
if (ts.isVariableDeclaration(node) && ts.isIdentifier(node.name) && node.initializer !== undefined
|
|
88
|
+
&& isFlowHandle(node.initializer)) {
|
|
89
|
+
handles.add(node.name.text);
|
|
90
|
+
}
|
|
91
|
+
if (ts.isCallExpression(node) && ts.isIdentifier(node.expression) && node.expression.text === 'flow') {
|
|
92
|
+
addBody(node.arguments[node.arguments.length - 1]);
|
|
93
|
+
}
|
|
94
|
+
if (ts.isCallExpression(node) && ts.isPropertyAccessExpression(node.expression)
|
|
95
|
+
&& node.expression.name.text === 'on' && isFlowHandle(node.expression.expression)) {
|
|
96
|
+
addBody(node.arguments[1]);
|
|
97
|
+
}
|
|
98
|
+
if (ts.isExportAssignment(node) && !node.isExportEquals)
|
|
99
|
+
addBody(node.expression);
|
|
100
|
+
if (ts.isFunctionDeclaration(node) && node.modifiers?.some(m => m.kind === ts.SyntaxKind.DefaultKeyword))
|
|
101
|
+
addBody(node);
|
|
102
|
+
ts.forEachChild(node, visit);
|
|
103
|
+
};
|
|
104
|
+
visit(file);
|
|
105
|
+
for (const name of references) {
|
|
106
|
+
const body = functions.get(name);
|
|
107
|
+
if (body !== undefined)
|
|
108
|
+
bodies.add(body);
|
|
109
|
+
}
|
|
110
|
+
return bodies;
|
|
111
|
+
}
|
|
112
|
+
function contextNames(body) {
|
|
113
|
+
const names = { objects: new Set(), on: new Set() };
|
|
114
|
+
const parameter = body.parameters[0]?.name;
|
|
115
|
+
if (parameter === undefined)
|
|
116
|
+
return names;
|
|
117
|
+
if (ts.isIdentifier(parameter))
|
|
118
|
+
names.objects.add(parameter.text);
|
|
119
|
+
else if (ts.isObjectBindingPattern(parameter)) {
|
|
120
|
+
for (const element of parameter.elements) {
|
|
121
|
+
const key = element.propertyName ?? element.name;
|
|
122
|
+
if (ts.isIdentifier(key) && key.text === 'on' && ts.isIdentifier(element.name))
|
|
123
|
+
names.on.add(element.name.text);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return names;
|
|
127
|
+
}
|
|
128
|
+
function shadow(context, parameters) {
|
|
129
|
+
const bound = new Set();
|
|
130
|
+
const collect = (name) => {
|
|
131
|
+
if (ts.isIdentifier(name))
|
|
132
|
+
bound.add(name.text);
|
|
133
|
+
else
|
|
134
|
+
for (const element of name.elements)
|
|
135
|
+
if (!ts.isOmittedExpression(element))
|
|
136
|
+
collect(element.name);
|
|
137
|
+
};
|
|
138
|
+
for (const parameter of parameters)
|
|
139
|
+
collect(parameter.name);
|
|
140
|
+
if (bound.size === 0)
|
|
141
|
+
return context;
|
|
142
|
+
return {
|
|
143
|
+
objects: new Set([...context.objects].filter(name => !bound.has(name))),
|
|
144
|
+
on: new Set([...context.on].filter(name => !bound.has(name))),
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
function isContextOn(expression, context) {
|
|
148
|
+
if (ts.isIdentifier(expression))
|
|
149
|
+
return context.on.has(expression.text);
|
|
150
|
+
return ts.isPropertyAccessExpression(expression)
|
|
151
|
+
&& ts.isIdentifier(expression.expression)
|
|
152
|
+
&& context.objects.has(expression.expression.text)
|
|
153
|
+
&& expression.name.text === 'on';
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=check-activities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-activities.js","sourceRoot":"","sources":["../../src/cli/check-activities.ts"],"names":[],"mappings":"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"}
|