@tacuchi/agent-workflow-cli 21.11.0 → 21.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,13 +24,14 @@
24
24
  * here a transition advances the run's position and nothing else. That is why the
25
25
  * registry — not this file — is where a new transition is added.
26
26
  */
27
+ import { touchesTheWorld } from "../../domain/capability/effects.js";
27
28
  import { DOCS_BOUNDARY, actionOf, alternativesOf, effectsOf, internalActionOf, proposalContractOf, publishApprovalOf, } from "../../domain/flow/authority.js";
28
29
  import { authorizeTransition, effectApprovalDigest, } from "../../domain/flow/authorization.js";
29
30
  import { PAUSE_LABEL, STOP_LABEL, buildFlowDirective, skippedStepOf, stepOf, } from "../../domain/flow/directive.js";
30
31
  import { bindAction, docsBoundaryBreach, skipReason, } from "../../domain/flow/rules.js";
31
- import { MAX_BOUNDARY_ATTEMPTS, applyTransition, attemptsAt, checkAgainstJourney, positionDigest, skipTransition, withBoundary, withPendingAction, } from "../../domain/flow/run-state.js";
32
+ import { MAX_BOUNDARY_ATTEMPTS, applyTransition, attemptsAt, checkAgainstJourney, degradeTransition, positionDigest, skipTransition, withBoundary, withPendingAction, } from "../../domain/flow/run-state.js";
32
33
  import { buildSemanticRequest, semanticDigest, } from "../semantic-operation/protocol.js";
33
- import { sessionNumericCode, sessionSlug } from "../session-resolver.js";
34
+ import { sessionSlug } from "../session-resolver.js";
34
35
  export function advanceFlowRun(input) {
35
36
  const incoherent = checkAgainstJourney(input.state, input.journey);
36
37
  if (incoherent !== null)
@@ -84,15 +85,10 @@ function walk(from, journey) {
84
85
  const decision = journey[index];
85
86
  if (decision === undefined)
86
87
  break;
87
- // A condition that did not fire, or a boundary this run has already tried as
88
- // often as it may. Both pass over the step and both say why — the trace has
89
- // to distinguish "never happened" from "was given up on".
90
- const skipped = skipReason(decision, journey, state.observations) ??
91
- nothingToPublish(state, decision) ??
92
- exhaustionSkip(state, decision);
93
- if (skipped !== null) {
94
- state = skipTransition(state, decision.id);
95
- applied.push(skippedStepOf(decision, skipped));
88
+ const passed = passOver(state, decision, journey);
89
+ if (passed !== null) {
90
+ state = passed.state;
91
+ applied.push(passed.step);
96
92
  continue;
97
93
  }
98
94
  if (decision.authority !== "cli")
@@ -110,6 +106,29 @@ function walk(from, journey) {
110
106
  }
111
107
  return { state, applied };
112
108
  }
109
+ /**
110
+ * How the walk passes over a step it will not apply — or `null` when it must not.
111
+ *
112
+ * A condition that did not fire, and a boundary this run has already tried as
113
+ * often as it may, both leave the step behind and both say why. They are NOT the
114
+ * same fact, and the state records them apart: "the gate never appeared" and
115
+ * "nobody answered it and the retry burned" read identically in a cursor, which
116
+ * is exactly the lie an exhausted boundary used to tell — credited among the
117
+ * applied, filed among the skipped, with no degradation declared anywhere.
118
+ */
119
+ function passOver(state, decision, journey) {
120
+ const conditional = skipReason(decision, journey, state.observations) ?? nothingToPublish(state, decision);
121
+ const degraded = conditional === null ? exhaustionSkip(state, decision) : null;
122
+ const reason = conditional ?? degraded;
123
+ if (reason === null)
124
+ return null;
125
+ return {
126
+ state: degraded === null
127
+ ? skipTransition(state, decision.id)
128
+ : degradeTransition(state, decision.id, degraded),
129
+ step: skippedStepOf(decision, reason),
130
+ };
131
+ }
113
132
  /**
114
133
  * The seal over the exact action emitted.
115
134
  *
@@ -131,7 +150,13 @@ export function actionDigest(action) {
131
150
  function runBinding(state) {
132
151
  return {
133
152
  session: state.session,
134
- code: sessionNumericCode(state.session) ?? state.session,
153
+ // The FOLDER, never the bare number. `--code 047` matches both `047-<slug>`
154
+ // and a legacy `session047-<slug>`, so in a workspace holding both, the
155
+ // invocation this engine seals cannot be satisfied: running it verbatim
156
+ // fails to resolve, and correcting it makes it a different invocation the
157
+ // submit refuses. The folder is the one identity that always resolves to
158
+ // one session, and every `--code` position accepts it.
159
+ code: state.session,
135
160
  // Read off the folder, not off a narration: the run's own session is named
136
161
  // `NNN-<slug>-<flow>`, so the slug the numbering claim needs is already a
137
162
  // fact the engine holds by the time this boundary is emitted.
@@ -208,11 +233,22 @@ function blockedCause(state, stopped, emitted) {
208
233
  message: `'${stopped.id}' agotó sus ${MAX_BOUNDARY_ATTEMPTS} intentos: contestarlo otra vez sería el bucle que la regla evita`,
209
234
  action: degradable
210
235
  ? `${DEGRADE_ACTION}; el próximo 'aw flow advance' lo pasa por alto dejando dicho por qué y sigue con el resto`
211
- : `${DEGRADE_ACTION}, y resolvé este paso fuera de la corrida antes de seguir: saltearlo daría por aprobado un efecto que nadie aprobó, o por hecho algo que nada corrió`,
236
+ : `${DEGRADE_ACTION}, y resolvé este paso fuera de la corrida antes de seguir: saltearlo daría por aprobado un efecto que nadie aprobó, o por hecho algo que nada corrió. Si lo que hay que rehacer es el intento, '${recoverInvocation(state)}' le devuelve los intentos a esta frontera conservando todo lo aplicado`,
212
237
  };
213
238
  }
214
239
  return null;
215
240
  }
241
+ /**
242
+ * The way out of a boundary that cannot be degraded, spelled as a runnable line.
243
+ *
244
+ * The session goes in as the FOLDER, the same identity every other invocation of
245
+ * a directive carries: a bare number matches a legacy folder too, so the one
246
+ * command offered to somebody whose run is stuck must not be one that fails to
247
+ * resolve when they paste it.
248
+ */
249
+ function recoverInvocation(state) {
250
+ return `aw flow recover --session ${state.session}`;
251
+ }
216
252
  /** Where a gap goes when the loop stops re-firing it — the chassis' destination. */
217
253
  const DEGRADE_ACTION = "degradá el gap en vez de reintentarlo: llevalo a '## Open questions' del documento del flow —o al BACKLOG de la sesión si el flow no tiene documento— declarando que ya se intentó";
218
254
  /** Whether this run has already spent every attempt this boundary gets. */
@@ -262,19 +298,81 @@ function nothingToPublish(state, decision) {
262
298
  * is a search, a write or a check credited to nothing. Those stay blocked, and
263
299
  * the block says so. What degrades is what only produces a verdict — a judgment
264
300
  * or a preference — which is exactly the gap the doctrine degrades.
301
+ *
302
+ * A delegated step has ONE way past that exception, and it is narrow twice over.
303
+ * The run's own trace has to say the action RAN and FAILED — "nobody has executed
304
+ * it yet" is a boundary still waiting for real work — AND the step has to be one
305
+ * whose skipping credits nothing: a read. A row that WRITES stays exhausted even
306
+ * with a failure behind it, because the run would go on to declare itself
307
+ * finished while the document it exists to produce was never written, which is
308
+ * the same credit-to-nothing this exception was carved out of. Its way out is not
309
+ * degradation but `aw flow recover`, and the block says so.
265
310
  */
266
311
  function exhaustionSkip(state, decision) {
267
312
  if (!exhausted(state, decision))
268
313
  return null;
269
314
  if (!owned(decision))
270
315
  return null;
271
- if (actionOf(decision) !== null)
316
+ const failure = executionFailure(state, decision.id);
317
+ if (actionOf(decision) !== null && failure === null)
318
+ return null;
319
+ if (failure !== null && touchesTheWorld(effectsOfTransition(state, decision)))
272
320
  return null;
273
321
  if (authorizeTransition(decision, state.authorizations, subjectOf(state, decision)).missing.length >
274
322
  0) {
275
323
  return null;
276
324
  }
277
- return `agotó sus ${MAX_BOUNDARY_ATTEMPTS} intentos: ${DEGRADE_ACTION}`;
325
+ const spent = `agotó sus ${MAX_BOUNDARY_ATTEMPTS} intentos`;
326
+ return failure === null
327
+ ? `${spent}: ${DEGRADE_ACTION}`
328
+ : `su acción se ejecutó y falló (${failure.code}: ${failure.message}) y ${spent}: ${DEGRADE_ACTION}`;
329
+ }
330
+ /**
331
+ * The failure a delegated action of this transition really produced, if any.
332
+ *
333
+ * The LAST event for the transition, not any of them: an action that failed and
334
+ * then succeeded left both events behind, and reading the older one would call a
335
+ * finished step failed. Reads the material trace rather than the attempt history
336
+ * because the two answer different questions — "how many times was this asked"
337
+ * versus "did anything actually run".
338
+ */
339
+ function executionFailure(state, transition) {
340
+ const last = state.events.filter((event) => event.transition === transition).at(-1);
341
+ return last !== undefined && last.kind === "failed" ? last : null;
342
+ }
343
+ /**
344
+ * The attempt a delegated action spends when it RUNS and comes back failed.
345
+ *
346
+ * The hole this closes was measured: five consecutive `aw flow advance` against a
347
+ * blocked internal execution returned the identical error and left the ledger
348
+ * with ZERO rows for that boundary. No attempt was ever recorded, so the cap
349
+ * never applied, so the boundary never degraded — and with no recovery either,
350
+ * the run was stuck for good.
351
+ *
352
+ * It is charged by whoever ran the operation, at the moment its verdict refuses,
353
+ * and NOT on the way into an advance. Charging on the way in cost the person who
354
+ * fixed the cause their real third try — the run degraded the boundary on the
355
+ * advance that would have re-run the now-working action — and it charged the very
356
+ * pause the CLI recommends, since coming back with `aw flow advance` is what the
357
+ * directive tells you to do. A try is a try: the action ran and did not work.
358
+ */
359
+ export function failedExecutionAttempt(state, decision, failure) {
360
+ const seal = boundarySeal(state, decision);
361
+ const prior = state.attempts.filter((past) => past.invocation_id === seal);
362
+ const attempt = prior.length + 1;
363
+ return {
364
+ invocation_id: seal,
365
+ attempt,
366
+ // The failure itself plus the ordinal: two retries of the same broken action
367
+ // are two attempts, and a digest that repeated would make the second one look
368
+ // like a resend of the first.
369
+ request_digest: semanticDigest({
370
+ execution_failure: { transition: decision.id, code: failure.code, message: failure.message },
371
+ attempt,
372
+ }),
373
+ parent_request_digest: prior.find((past) => past.attempt === attempt - 1)?.request_digest ?? null,
374
+ transition: decision.id,
375
+ };
278
376
  }
279
377
  /** The `docs/` folders a flow may write, said the way a person reads it. */
280
378
  function describeAllowance(flow) {
@@ -465,7 +563,7 @@ export function directiveFor(state, resolved, appliedNow, overrides = {}) {
465
563
  approved: state.effects.approved,
466
564
  applied: state.effects.applied,
467
565
  },
468
- nextAction: overrides.nextAction ?? nextActionFor(boundary, resolved),
566
+ nextAction: overrides.nextAction ?? nextActionFor(state, boundary, resolved),
469
567
  });
470
568
  if (!built.ok)
471
569
  return { ok: false, failure: built.failure };
@@ -588,10 +686,26 @@ function choicesFor(kind, stopped, unauthorized) {
588
686
  }
589
687
  return kind === "human" ? humanChoices(stopped) : [];
590
688
  }
591
- function nextActionFor(boundary, resolved) {
689
+ /**
690
+ * What the END of a run says — including what it gave up on along the way.
691
+ *
692
+ * "Nothing pending" was the whole sentence, and a run that degraded a boundary
693
+ * said it too: the gap the loop stopped re-firing left no trace in the one line
694
+ * a reader actually reads, so a run that quietly skipped a step and a run that
695
+ * answered every one of them closed with the identical words. The degradations
696
+ * are in the state either way; this is what makes them impossible to miss.
697
+ */
698
+ function finalAction(state) {
699
+ const degraded = state.degraded ?? [];
700
+ if (degraded.length === 0)
701
+ return "no queda trabajo pendiente en este recorrido";
702
+ const names = degraded.map((one) => `'${one.transition}'`).join(", ");
703
+ return `el recorrido terminó dejando degradadas ${names}: nadie las resolvió y el estado declara la causa de cada una — ${DEGRADE_ACTION}`;
704
+ }
705
+ function nextActionFor(state, boundary, resolved) {
592
706
  const stopped = resolved.stopped;
593
707
  if (stopped === null)
594
- return "no queda trabajo pendiente en este recorrido";
708
+ return finalAction(state);
595
709
  const submit = "respondé con 'aw flow submit' sobre la frontera vigente";
596
710
  switch (boundary.kind) {
597
711
  case "semantic":
@@ -1 +1 @@
1
- {"version":3,"file":"advance.js","sourceRoot":"","sources":["../../../src/application/flow/advance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advance.js","sourceRoot":"","sources":["../../../src/application/flow/advance.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,11 @@
6
6
  * which state, one write.
7
7
  */
8
8
  import { journeyOfFlow } from "../../domain/flow/authority.js";
9
- import { newRunState } from "../../domain/flow/run-state.js";
9
+ import { MAX_BOUNDARY_ATTEMPTS, attemptsAt, checkAgainstJourney, grantAttempts, newRunState, recoveryBlockedAt, } from "../../domain/flow/run-state.js";
10
10
  import { WORKLINE_FLOWS } from "../capability/compose.js";
11
11
  import { recordFlowAdoption } from "../session-custody-recorder.js";
12
12
  import { resolveSessionTarget } from "../session-resolver.js";
13
- import { advanceFlowRun } from "./advance.js";
13
+ import { advanceFlowRun, directiveFor, resolveBoundary } from "./advance.js";
14
14
  import { driveInternalActions } from "./internal-drive.js";
15
15
  import { applyUnderLock, locateRun } from "./run-state-service.js";
16
16
  export async function advanceFlow(fs, paths, input) {
@@ -58,6 +58,104 @@ export async function advanceFlow(fs, paths, input) {
58
58
  return { ok: false, failure: driven.failure };
59
59
  return { ok: true, directive: driven.value };
60
60
  }
61
+ /**
62
+ * Give a boundary that ran out of attempts a way back to being answerable.
63
+ *
64
+ * The only supported exit from an exhausted boundary, and it exists because the
65
+ * alternative in the field was surgery on `.flow-run.json` — which the seal
66
+ * refuses when you edit it and ACCEPTS when you restore an older copy, so the
67
+ * only manual "fix" that worked was also the one that rolled the run back.
68
+ *
69
+ * What it does is deliberately narrow: it forgives the attempts spent at the
70
+ * boundary in force and nothing else. The cursor, the effect ledger, the
71
+ * authorizations, the seated proposal, the trace and every document and artifact
72
+ * of the session are untouched — recovering is not restarting, and a run that
73
+ * came back with its applied transitions rolled back would be a worse outcome
74
+ * than the block it replaces.
75
+ */
76
+ export async function recoverFlowBoundary(fs, paths, input) {
77
+ const resolution = await resolveSessionTarget(fs, paths, {
78
+ ...(input.code !== undefined ? { code: input.code } : {}),
79
+ ...(input.contextId !== undefined ? { contextId: input.contextId } : {}),
80
+ allowClosed: false,
81
+ bind: true,
82
+ });
83
+ if (resolution.outcome !== "resolved")
84
+ return { ok: false, session: resolution };
85
+ const location = locateRun(paths, resolution.session.folder);
86
+ const applied = await applyUnderLock(fs, location, (current) => {
87
+ if (current === null) {
88
+ return {
89
+ ok: false,
90
+ failure: {
91
+ code: "FLOW_RUN_ABSENT",
92
+ message: "no hay corrida que recuperar en esta sesión",
93
+ action: "adoptala primero con 'aw flow advance --flow <flow> --adopt'",
94
+ },
95
+ };
96
+ }
97
+ return recover(current, input.transition ?? null);
98
+ });
99
+ if (!applied.ok)
100
+ return { ok: false, failure: applied.failure };
101
+ return { ok: true, directive: applied.value };
102
+ }
103
+ /**
104
+ * The recovery decision, pure over the state read under the lock.
105
+ *
106
+ * Two refusals and one grant. It does NOT advance afterwards: returning
107
+ * answerability is the whole operation, and walking on from here would mean a
108
+ * command whose job is to unblock could also apply transitions — including,
109
+ * where the boundary is a delegated one, re-running the very action that failed.
110
+ */
111
+ function recover(state, named) {
112
+ const journey = journeyOfFlow(state.flow);
113
+ const incoherent = checkAgainstJourney(state, journey);
114
+ if (incoherent !== null)
115
+ return { ok: false, failure: incoherent };
116
+ const stopped = resolveBoundary(state, journey).stopped;
117
+ if (stopped === null) {
118
+ return refuse("FLOW_RECOVERY_NOT_NEEDED", "el recorrido ya terminó: no hay ninguna frontera trabada", "no queda trabajo pendiente en este recorrido");
119
+ }
120
+ if (named !== null && named !== stopped.id) {
121
+ return refuse("FLOW_RECOVERY_OTHER_BOUNDARY", `la corrida está detenida en '${stopped.id}' y se pidió recuperar '${named}'`, `se recupera la frontera vigente: volvé a invocar sin --transition, o con --transition ${stopped.id}`);
122
+ }
123
+ const spent = attemptsAt(state, stopped.id);
124
+ if (spent < MAX_BOUNDARY_ATTEMPTS) {
125
+ return refuse("FLOW_RECOVERY_NOT_NEEDED", `'${stopped.id}' gastó ${spent} de ${MAX_BOUNDARY_ATTEMPTS} intentos: todavía se contesta`, "respondé la frontera vigente con 'aw flow submit': recuperar no es una forma de saltearla");
126
+ }
127
+ // The guard, and it reads the material trace rather than the effect ledger: the
128
+ // ledger is run-wide and cannot say WHICH boundary applied what. Handing back an
129
+ // answerable boundary whose action already reached the world would invite a
130
+ // second answer on top of a half-applied one — and no attempt is worth that.
131
+ const blocked = recoveryBlockedAt(state, stopped.id);
132
+ if (blocked !== null)
133
+ return refuseRecovery(stopped.id, blocked);
134
+ const recovered = grantAttempts(state, stopped.id, spent);
135
+ const built = directiveFor(recovered, resolveBoundary(recovered, journey), []);
136
+ if (!built.ok)
137
+ return { ok: false, failure: built.failure };
138
+ return { ok: true, state: built.state, value: built.directive };
139
+ }
140
+ /**
141
+ * The two ways a boundary refuses to be handed back, said as what to do next.
142
+ *
143
+ * They are not the same dead end and must not read as one. A boundary that
144
+ * APPLIED something is over: the run has to be repaired outside itself, because
145
+ * a second answer would land on top of an effect that already happened. A
146
+ * boundary whose action was begun and never reported back is the opposite — the
147
+ * missing thing is the verdict, and running the advance produces it.
148
+ */
149
+ function refuseRecovery(transition, blocked) {
150
+ if (blocked.reason === "unverified") {
151
+ return refuse("FLOW_RECOVERY_EXECUTION_UNVERIFIED", `'${transition}' dejó anotado que su acción se iba a ejecutar y nunca registró en qué terminó: nadie puede decir si tocó el mundo`, "no se devuelven intentos sobre una ejecución sin veredicto: corré 'aw flow advance' para que la acción vuelva a correr y deje su resultado, y recuperá después si hace falta");
152
+ }
153
+ const moved = blocked.event;
154
+ return refuse("FLOW_RECOVERY_EFFECTS_APPLIED", `'${transition}' ya ejerció efectos en esta corrida (${moved.operation}): no se devuelven intentos sobre algo que ya ocurrió`, `el estado queda igual: seguí la recuperación que declara la acción de la fila, o llevá el gap a '## Open questions' — ${moved.kind === "failed" ? moved.recovery : "revisá la traza de la corrida"}`);
155
+ }
156
+ function refuse(code, message, action) {
157
+ return { ok: false, failure: { code, message, action } };
158
+ }
61
159
  /**
62
160
  * The state a legacy session gets when it is adopted.
63
161
  *
@@ -1 +1 @@
1
- {"version":3,"file":"flow-service.js","sourceRoot":"","sources":["../../../src/application/flow/flow-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-service.js","sourceRoot":"","sources":["../../../src/application/flow/flow-service.ts"],"names":[],"mappings":"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"}
@@ -32,10 +32,10 @@
32
32
  import { internalActionOf, journeyOfFlow, } from "../../domain/flow/authority.js";
33
33
  import { stepOf } from "../../domain/flow/directive.js";
34
34
  import { executionVerdict } from "../../domain/flow/execution-result.js";
35
- import { applyTransition, withActionAttempted, withBoundary, withEvent, withPendingAction, withProposal, } from "../../domain/flow/run-state.js";
35
+ import { applyTransition, restatesLastEvent, withActionAttempted, withAttempt, withBoundary, withEvent, withPendingAction, withProposal, } from "../../domain/flow/run-state.js";
36
36
  import { semanticDigest } from "../semantic-operation/protocol.js";
37
37
  import { sessionNumericCode } from "../session-resolver.js";
38
- import { advanceFlowRun, directiveFor, effectsOfTransition, resolveBoundary } from "./advance.js";
38
+ import { advanceFlowRun, directiveFor, effectsOfTransition, failedExecutionAttempt, resolveBoundary, } from "./advance.js";
39
39
  import { applyUnderLock } from "./run-state-service.js";
40
40
  /**
41
41
  * How many internal actions one invocation may chain.
@@ -185,12 +185,24 @@ function accept(state, pending, outcome) {
185
185
  // the trace is where "which precondition was missing" has to survive.
186
186
  message: outcome.summary,
187
187
  recovery: verdict.detail.action,
188
+ // What it applied ANYWAY. A failed operation that got partway is the case
189
+ // where handing the boundary back as answerable would put a second answer
190
+ // on top of a half-applied effect, and this is the only record of it.
191
+ effects: [...outcome.effects],
188
192
  };
189
193
  // Re-running `aw flow advance` over a boundary nobody has fixed yet reaches
190
194
  // exactly this point again, and appending the identical event every time would
191
195
  // turn the trace into a retry counter. The same failure, still standing, is one
192
- // fact — the attempt history is where "how many times" belongs.
193
- const failed = repeats(state, failure) ? state : withEvent(state, failure);
196
+ // fact — the attempt history is where "how many times" belongs, and that is
197
+ // charged right below, every time, precisely because the event is not.
198
+ const traced = restatesLastEvent(state, failure) ? state : withEvent(state, failure);
199
+ // The try the cap counts: the action RAN and came back refused. Charged here
200
+ // rather than on the way into the next advance, so somebody who fixes the
201
+ // cause gets the run that would have worked instead of a degradation.
202
+ const failed = withAttempt(traced, failedExecutionAttempt(traced, pending.decision, {
203
+ code: verdict.detail.code,
204
+ message: outcome.summary,
205
+ }));
194
206
  const resolved = resolveBoundary(failed, journey);
195
207
  const built = directiveFor(failed, resolved, [], {
196
208
  ...(verdict.detail.outcome === undefined ? {} : { outcome: verdict.detail.outcome }),
@@ -248,15 +260,6 @@ function accept(state, pending, outcome) {
248
260
  value: { directive: advanced.directive, advanced: true },
249
261
  };
250
262
  }
251
- /** Whether the trace's last event is this same failure, unchanged. */
252
- function repeats(state, failure) {
253
- const last = state.events.at(-1);
254
- if (last === undefined || last.kind !== "failed")
255
- return false;
256
- return (last.transition === failure.transition &&
257
- last.code === failure.code &&
258
- last.message === failure.message);
259
- }
260
263
  /**
261
264
  * The outcome, expressed in the result protocol an external executor would send.
262
265
  *
@@ -1 +1 @@
1
- {"version":3,"file":"internal-drive.js","sourceRoot":"","sources":["../../../src/application/flow/internal-drive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal-drive.js","sourceRoot":"","sources":["../../../src/application/flow/internal-drive.ts"],"names":[],"mappings":"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"}