@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.
- package/dist/application/flow/advance.js +132 -18
- package/dist/application/flow/advance.js.map +1 -1
- package/dist/application/flow/flow-service.js +100 -2
- package/dist/application/flow/flow-service.js.map +1 -1
- package/dist/application/flow/internal-drive.js +16 -13
- package/dist/application/flow/internal-drive.js.map +1 -1
- package/dist/application/flow/run-state-service.js +236 -5
- package/dist/application/flow/run-state-service.js.map +1 -1
- package/dist/application/flow/submit.js +90 -35
- package/dist/application/flow/submit.js.map +1 -1
- package/dist/application/paths-service.js +17 -0
- package/dist/application/paths-service.js.map +1 -1
- package/dist/application/session-narrative.js +7 -3
- package/dist/application/session-narrative.js.map +1 -1
- package/dist/application/session-resolver.js +12 -2
- package/dist/application/session-resolver.js.map +1 -1
- package/dist/application/session-resume-service.js +7 -0
- package/dist/application/session-resume-service.js.map +1 -1
- package/dist/cli/commands/flow.js +52 -5
- package/dist/cli/commands/flow.js.map +1 -1
- package/dist/domain/capability/effects.js +13 -0
- package/dist/domain/capability/effects.js.map +1 -1
- package/dist/domain/flow/answer.js +105 -0
- package/dist/domain/flow/answer.js.map +1 -1
- package/dist/domain/flow/run-state.js +215 -11
- package/dist/domain/flow/run-state.js.map +1 -1
- package/package.json +1 -1
- package/skills/w/loops/CHASSIS.md +5 -7
|
@@ -21,6 +21,111 @@ import { isEffectClass } from "../capability/effects.js";
|
|
|
21
21
|
import { CAPABILITY_OUTCOMES, } from "../capability/protocol.js";
|
|
22
22
|
import { proposalContractOf, } from "./authority.js";
|
|
23
23
|
import { STOP_LABEL, isFlowControl } from "./directive.js";
|
|
24
|
+
/**
|
|
25
|
+
* Which rejections COUNT as an attempt at the boundary, and which never reached
|
|
26
|
+
* it.
|
|
27
|
+
*
|
|
28
|
+
* The cap of three exists to stop a gap from being re-fired forever — that is
|
|
29
|
+
* doctrine. What it never meant to protect against is a typo in the envelope, and
|
|
30
|
+
* the difference had a measured cost: hosts spent whole sessions discovering that
|
|
31
|
+
* `outcome` goes at the top level, that a validation carries `id` and not `name`,
|
|
32
|
+
* that an authoring boundary wants its bytes in `artifacts` — and every discovery
|
|
33
|
+
* burned one of the three tries at a boundary they had not yet been able to
|
|
34
|
+
* answer once. Two typos plus one real attempt exhausted a run.
|
|
35
|
+
*
|
|
36
|
+
* So the line is: **did the payload deliver a decision this boundary could
|
|
37
|
+
* weigh?**
|
|
38
|
+
*
|
|
39
|
+
* - `envelope` — nothing was weighed. No payload at all, unparseable JSON, an
|
|
40
|
+
* answer addressed to another boundary (`STALE`), a boundary that expects none,
|
|
41
|
+
* a result that is not a result (`FLOW_RESULT_INVALID`), bytes in the wrong
|
|
42
|
+
* channel or missing from the only channel that carries them
|
|
43
|
+
* (`FLOW_ARTIFACTS_*`, and the path/size refusals the semantic protocol
|
|
44
|
+
* raises). At an execution boundary the decision IS the result and at an
|
|
45
|
+
* authoring one it IS the bytes: with neither there, there is nothing to judge,
|
|
46
|
+
* and charging for it charges for the envelope.
|
|
47
|
+
* - `evaluated` — the decision arrived and did not resolve the gap. A signal
|
|
48
|
+
* outside the declared vocabulary, a label that is not one of the emitted
|
|
49
|
+
* alternatives, an approval over other effects or none at all, a result about a
|
|
50
|
+
* different invocation, an execution that did not complete or left its effect
|
|
51
|
+
* half-applied, a scope naming sources the workspace or the plan does not, a
|
|
52
|
+
* proposal reaching past what its row declares — and an answer that declares
|
|
53
|
+
* nothing at all, which is the feigned convergence the chassis degrades and
|
|
54
|
+
* exactly what the cap is for.
|
|
55
|
+
* - `control` — a real answer that deliberately applies nothing, or the same
|
|
56
|
+
* answer arriving twice. Pausing to compact, stopping the run, and a resend are
|
|
57
|
+
* all decisions somebody made on purpose; charging them would make the flow
|
|
58
|
+
* control the CLI itself offers cost an attempt, which is the loop the cap is
|
|
59
|
+
* supposed to prevent rather than one it is supposed to count.
|
|
60
|
+
*
|
|
61
|
+
* `FLOW_ANSWER_STALE` is the one worth spelling out. It looks like a bad answer
|
|
62
|
+
* and is not: it answers a boundary the run has left, so charging it would spend
|
|
63
|
+
* the CURRENT boundary's budget on a payload that was never about it — and
|
|
64
|
+
* staleness is frequently the engine's own doing, since the run may have moved
|
|
65
|
+
* between the directive and the answer.
|
|
66
|
+
*
|
|
67
|
+
* Every code the parser, the execution verdict and `submit` can put in front of a
|
|
68
|
+
* boundary is in here. That is not tidiness: `submit`'s own refusals used to sit
|
|
69
|
+
* outside the table and outside the charge, so a scope answered with an alias the
|
|
70
|
+
* plan does not name could be re-sent forever — never exhausting, never
|
|
71
|
+
* degrading, never recovering. A guard walks the three sources and fails if a
|
|
72
|
+
* code is missing from this table.
|
|
73
|
+
*/
|
|
74
|
+
export const FLOW_ANSWER_REJECTIONS = {
|
|
75
|
+
FLOW_ANSWER_MISSING: "envelope",
|
|
76
|
+
FLOW_ANSWER_INVALID: "envelope",
|
|
77
|
+
FLOW_ANSWER_STALE: "envelope",
|
|
78
|
+
FLOW_ANSWER_NOT_EXPECTED: "envelope",
|
|
79
|
+
FLOW_RESULT_INVALID: "envelope",
|
|
80
|
+
FLOW_ARTIFACTS_MISSING: "envelope",
|
|
81
|
+
FLOW_ARTIFACTS_NOT_EXPECTED: "envelope",
|
|
82
|
+
// Raised by `parseSemanticArtifacts` and forwarded verbatim: a destination
|
|
83
|
+
// outside the allowlist, a duplicate, an oversized artifact.
|
|
84
|
+
SEMANTIC_PATH_REJECTED: "envelope",
|
|
85
|
+
SEMANTIC_RESPONSE_INVALID: "envelope",
|
|
86
|
+
// The registry moved under a run in flight, so the invocation the result is
|
|
87
|
+
// about is no longer the one this build emits. Nothing about the ANSWER was
|
|
88
|
+
// weighed, and the next `advance` re-binds the action by itself.
|
|
89
|
+
FLOW_ACTION_CHANGED: "envelope",
|
|
90
|
+
FLOW_ANSWER_AMBIGUOUS: "evaluated",
|
|
91
|
+
FLOW_SIGNAL_UNKNOWN: "evaluated",
|
|
92
|
+
FLOW_CHOICE_UNKNOWN: "evaluated",
|
|
93
|
+
FLOW_APPROVAL_MISSING: "evaluated",
|
|
94
|
+
FLOW_APPROVAL_MISMATCH: "evaluated",
|
|
95
|
+
FLOW_ACTION_MISMATCH: "evaluated",
|
|
96
|
+
// The execution verdict's own vocabulary: it judges a result that WAS read.
|
|
97
|
+
FLOW_EXECUTION_NOT_COMPLETED: "evaluated",
|
|
98
|
+
FLOW_EVIDENCE_MISSING: "evaluated",
|
|
99
|
+
FLOW_EFFECT_PARTIAL: "evaluated",
|
|
100
|
+
// The scope boundary's own vocabulary. Its answer is `decisions.sources` plus
|
|
101
|
+
// `decisions.plan`, and every one of these means the CLI read them and found
|
|
102
|
+
// them wanting — a decision that did not resolve the gap.
|
|
103
|
+
FLOW_SCOPE_INVALID: "evaluated",
|
|
104
|
+
FLOW_SCOPE_UNKNOWN_SOURCE: "evaluated",
|
|
105
|
+
FLOW_SCOPE_NOT_IN_PLAN: "evaluated",
|
|
106
|
+
FLOW_SCOPE_PLAN_UNREADABLE: "evaluated",
|
|
107
|
+
// The authoring boundary's: the bytes arrived and what they would do is not
|
|
108
|
+
// what the row declares, or their destination could not be read.
|
|
109
|
+
FLOW_PROPOSAL_BEYOND_CONTRACT: "evaluated",
|
|
110
|
+
FLOW_PROPOSAL_DESTINATION_UNOBSERVED: "evaluated",
|
|
111
|
+
FLOW_PROPOSAL_BASE_UNREADABLE: "evaluated",
|
|
112
|
+
FLOW_BOUNDARY_PAUSED: "control",
|
|
113
|
+
FLOW_BOUNDARY_DECLINED: "control",
|
|
114
|
+
FLOW_ANSWER_RESENT: "control",
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Whether this refusal spends one of the boundary's three attempts.
|
|
118
|
+
*
|
|
119
|
+
* A code the table does not classify spends, deliberately: the cap is the only
|
|
120
|
+
* thing standing between a run and an infinite loop, and a silent exemption would
|
|
121
|
+
* remove it for whatever was added last. The table is a closed set precisely so
|
|
122
|
+
* this default is never reached — a guard walks the sources and refuses a code
|
|
123
|
+
* nobody placed on one side or the other.
|
|
124
|
+
*/
|
|
125
|
+
export function spendsAttempt(code) {
|
|
126
|
+
const classified = FLOW_ANSWER_REJECTIONS[code];
|
|
127
|
+
return classified === undefined || classified === "evaluated";
|
|
128
|
+
}
|
|
24
129
|
export function parseFlowAnswer(input) {
|
|
25
130
|
const payload = readPayload(input.raw);
|
|
26
131
|
if (!payload.ok)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answer.js","sourceRoot":"","sources":["../../../src/domain/flow/answer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAqB,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAoB,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EACL,mBAAmB,GAOpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAIL,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAA0C,UAAU,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAoEnG,MAAM,UAAU,eAAe,CAAC,KAAuB;IACrD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC;IAE3B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAEvD,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvB,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,KAAK,eAAe;YAClB,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,KAAK,WAAW;YACd,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACtC;YACE,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,0BAA0B;oBAChC,OAAO,EAAE,2BAA2B,KAAK,CAAC,QAAQ,6BAA6B;oBAC/E,MAAM,EACJ,KAAK,CAAC,QAAQ,KAAK,OAAO;wBACxB,CAAC,CAAC,iDAAiD;wBACnD,CAAC,CAAC,uDAAuD;iBAC9D;aACF,CAAC;IACN,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,GAAW;IAEX,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,sCAAsC;gBAC/C,MAAM,EAAE,yEAAyE;aAClF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,gCAAgC,CAAC,EAAE,CAAC;IAC3E,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,yCAAyC,CAAC,EAAE,CAAC;IACpF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAiC,EAAE,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAChB,IAA6B,EAC7B,KAAuB;IAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC,oEAAoE,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO;YACL,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE,0DAA0D;YACnE,MAAM,EAAE,2EAA2E;SACpF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,IAA6B,EAAE,KAAuB;IAC5E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;IACzB,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,sDAAsD,CAAC,EAAE,CAAC;IACjG,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,IAAI,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACpD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,qCAAqC,CAAC,EAAE,CAAC;IAChF,CAAC;IACD,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5F,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACjE,MAAM,SAAS,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAChF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,SAAS;QACnC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,IAAI,MAAM,sDAAsD;gBACzE,MAAM,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,kCAAkC,EAAE;aAC3F;SACF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QAC7C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,0CAA0C,CAAC,EAAE,CAAC;IACrF,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,YAAsB;YACzC,OAAO;YACP,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAC/C,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,SAAS;SACV;KACF,CAAC;AACJ,CAAC;AAED,MAAM,KAAK,GAAuB,EAAE,CAAC;AAErC;;;;;;;;;;GAUG;AACH,SAAS,cAAc,CACrB,IAA6B,EAC7B,QAA+E;IAE/E,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAChF,IAAI,YAAY,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACvC,OAAO;YACL,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,qEAAqE;YAC9E,MAAM,EAAE,mFAAmF;SAC5F,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;QACvC,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,qEAAqE;YAC9E,MAAM,EACJ,8HAA8H;SACjI,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;IACrC,MAAM,KAAK,GACT,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAC7B,CAAC,YAAY;QACb,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAoC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAC9F,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,2DAA2D;QACpE,MAAM,EACJ,0FAA0F;KAC7F,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,cAAc,CACrB,GAAY,EACZ,KAAuB;IAEvB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC;IACtC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,4EAA4E;gBACrF,MAAM,EAAE,kFAAkF;aAC3F;SACF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;gBACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO;gBAC/B,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;aAC9B;SACF,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,IAA6B,EAAE,KAAuB;IAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,6DAA6D;gBACtE,MAAM,EAAE,iBAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;aACzE;SACF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,EAAE,CAAC;QACnE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,IAAI,MAAM,0CAA0C;gBAC7D,MAAM,EAAE,iBAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;aACzE;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,YAAsB;YACzC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,MAAM;YACN,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB;KACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,IAA6B,EAAE,KAAuB;IAC5E,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,EAAE,CAAC;QACtF,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,IAAI,MAAM,0CAA0C;gBAC7D,MAAM,EAAE,iBAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;aACzE;SACF,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG;QACf,EAAE,EAAE,IAAa;QACjB,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,YAAsB;YACzC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,MAAM;YACN,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB;KACF,CAAC;IACF,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,uDAAuD;IACvD,IAAI,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC;IAE3C,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,oEAAoE;gBAC7E,MAAM,EAAE,kCAAkC,KAAK,CAAC,gBAAgB,IAAI,UAAU,iBAAiB,UAAU,uBAAuB;aACjI;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC9C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,qEAAqE;gBAC9E,MAAM,EAAE,gDAAgD,KAAK,CAAC,gBAAgB,IAAI,UAAU,EAAE;aAC/F;SACF,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,eAAe,CAAC,IAA6B,EAAE,KAAuB;IAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC;IACpC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,kDAAkD,CAAC,EAAE,CAAC;IAC/F,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,IACE,OAAO,OAAO,KAAK,QAAQ;QAC3B,CAAE,mBAAyC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC7D,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,SAAS,CAChB,mCAAmC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,kEAAkE,CACpI;SACF,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,sDAAsD;gBAC/D,MAAM,EACJ,wIAAwI;aAC3I;SACF,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,+CAA+C,QAAQ,EAAE;gBAClE,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,UAAU,CAAC,MAAM,yBAAyB;aAC1J;SACF,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;IAC9F,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,SAAS,CAChB,8EAA8E,CAC/E;SACF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,kDAAkD,CAAC,EAAE,CAAC;IAC/F,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,YAAsB;YACzC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,EAAE,OAAO,EAAE,OAA4B,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE;YAC3F,SAAS,EAAE,KAAK;SACjB;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,cAAc,CAAC,IAA6B;IACnD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,IAAI,KAAK,CACrD,EAAE,CAAC,CAAC,CAAC,CAAC;IACP,MAAM,KAAK,GACT,OAAO,KAAK,SAAS;QACnB,CAAC,CAAC,gCAAgC;QAClC,CAAC,CAAC,qDAAqD,OAAO,GAAG,CAAC;IACtE,OAAO,GAAG,KAAK,2FAA2F,CAAC;AAC7G,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,cAAc,CAAC,KAAc,EAAE,QAA2B;IACjE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,MAAM,KAAK,GAAG,2FAA2F,OAAO,EAAE,CAAC;IACnH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,+BAA+B,KAAK,EAAE,CAAC;IACzE,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,iBAAiB,KAAK,GAAG,CAAC,+BAA+B,KAAK,EAAE,CAAC;QAC9F,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAChF,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO,iBAAiB,KAAK,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAC1F,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,kBAAkB,KAAK,CAAC,EAAE,8BAA8B,IAAI,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5F,OAAO,kBAAkB,KAAK,CAAC,EAAE,uEAAuE,CAAC;QAC3G,CAAC;IACH,CAAC;IACD,OAAO,+BAA+B,KAAK,EAAE,CAAC;AAChD,CAAC;AAED,qFAAqF;AACrF,SAAS,kBAAkB,CAAC,MAA2B,EAAE,GAAwB;IAC/E,IAAI,MAAM,CAAC,OAAO,KAAK,GAAG,CAAC,OAAO;QAChC,OAAO,aAAa,GAAG,CAAC,OAAO,gBAAgB,MAAM,CAAC,OAAO,GAAG,CAAC;IACnE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,OAAO,eAAe,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACnF,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM;QAAE,OAAO,WAAW,GAAG,CAAC,MAAM,gBAAgB,MAAM,CAAC,MAAM,GAAG,CAAC;IAC/F,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC;QAAE,OAAO,YAAY,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7D,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;AACnF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACnF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QAChE,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC/D,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,OAAO,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC3E,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qEAAqE;AACrE,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC;IAChD,IACE,YAAY,KAAK,IAAI;QACrB,CAAE,mBAA0C,CAAC,QAAQ,CAAC,YAAY,CAAC,EACnE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC9C,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK;QACrD,SAAS;QACT,YAAY,EAAE,YAAmC;KAClD,CAAC;AACJ,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACvF,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;IACxC,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IACvE,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,QAAQ,EAAE,QAAyB;QACnC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,OAAe;IAChC,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,OAAO;QACP,MAAM,EACJ,iJAAiJ;KACpJ,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,OAAO;QACP,MAAM,EAAE,sEAAsE;KAC/E,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;AACnF,CAAC"}
|
|
1
|
+
{"version":3,"file":"answer.js","sourceRoot":"","sources":["../../../src/domain/flow/answer.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,8 +23,32 @@
|
|
|
23
23
|
*/
|
|
24
24
|
import { WORKLINE_FLOWS } from "../../application/capability/compose.js";
|
|
25
25
|
import { canonicalJson, semanticDigest } from "../../application/semantic-operation/protocol.js";
|
|
26
|
-
import { isEffectClass } from "../capability/effects.js";
|
|
27
|
-
|
|
26
|
+
import { isEffectClass, touchesTheWorld } from "../capability/effects.js";
|
|
27
|
+
/**
|
|
28
|
+
* The version this CLI WRITES. Every state it persists carries it.
|
|
29
|
+
*
|
|
30
|
+
* Raised by the attempt accounting: a state that carries the monotone floor is a
|
|
31
|
+
* state whose cap depends on a reader that knows to consult it. The version gate
|
|
32
|
+
* is an exact-equality check in every build that ever shipped, so an older CLI
|
|
33
|
+
* refuses a file stamped with a version it does not know — which is the only
|
|
34
|
+
* mechanism that stops it from reading the new format, IGNORING the floor, and
|
|
35
|
+
* turning the cap off in silence while somebody alternates CLI versions over one
|
|
36
|
+
* run. Failing with a cause is the requirement; failing silently is the defect.
|
|
37
|
+
*/
|
|
38
|
+
export const FLOW_RUN_STATE_VERSION = 8;
|
|
39
|
+
/**
|
|
40
|
+
* The versions this CLI READS, newest first.
|
|
41
|
+
*
|
|
42
|
+
* Two, and the second one is not a migration: every field version 8 added is
|
|
43
|
+
* OPTIONAL and its absence is the conservative reading — no floor beyond the
|
|
44
|
+
* ledger, nothing forgiven, no degradation declared. So a run written before
|
|
45
|
+
* them is read exactly as it always was, keeps walking, and is re-stamped as
|
|
46
|
+
* version 8 by its first write. Refusing it instead would strand runs that were
|
|
47
|
+
* mid-journey when the CLI was upgraded, which is the compatibility the spec
|
|
48
|
+
* demands; inventing values for the missing fields would be the fabrication the
|
|
49
|
+
* version gate exists to refuse. Neither happens here.
|
|
50
|
+
*/
|
|
51
|
+
export const FLOW_RUN_STATE_READABLE = [FLOW_RUN_STATE_VERSION, 7];
|
|
28
52
|
/** The CLI-owned run state inside the session folder. Machine-local, dotted. */
|
|
29
53
|
export const FLOW_RUN_STATE_FILE = ".flow-run.json";
|
|
30
54
|
/**
|
|
@@ -37,9 +61,55 @@ export const FLOW_RUN_STATE_FILE = ".flow-run.json";
|
|
|
37
61
|
* more. The fourth would be the loop the rule exists to prevent.
|
|
38
62
|
*/
|
|
39
63
|
export const MAX_BOUNDARY_ATTEMPTS = 3;
|
|
40
|
-
/**
|
|
64
|
+
/**
|
|
65
|
+
* How many attempts this run has EFFECTIVELY spent on one transition.
|
|
66
|
+
*
|
|
67
|
+
* Three numbers, and none of them alone is the answer. The ledger rows are what
|
|
68
|
+
* this file remembers, and they are exactly what a restored copy of the file
|
|
69
|
+
* rolls back — the seal detects an edit but not a `cp` of yesterday's state, so
|
|
70
|
+
* counting rows alone made the cap evadable. The FLOOR is the monotone counter
|
|
71
|
+
* kept outside the sealed blob (see the run-state service): it never goes
|
|
72
|
+
* backwards, so the maximum of the two is the count that survives a restore. The
|
|
73
|
+
* GRANTS are what a recovery gave back, and they are subtracted rather than
|
|
74
|
+
* deleted from the floor, because a recovery that lowered the counter would
|
|
75
|
+
* reopen the very hole it is fenced by.
|
|
76
|
+
*
|
|
77
|
+
* Both maps are optional on purpose: a run written before the counter existed has
|
|
78
|
+
* only its rows, which is precisely what it always had. Absence is read as "no
|
|
79
|
+
* floor beyond the ledger, nothing forgiven" — the conservative value — and never
|
|
80
|
+
* as a reason to refuse a run that was walking fine.
|
|
81
|
+
*/
|
|
41
82
|
export function attemptsAt(state, transition) {
|
|
42
|
-
|
|
83
|
+
const spent = state.attempts.filter((attempt) => attempt.transition === transition).length;
|
|
84
|
+
const floor = state.attempt_floor?.[transition] ?? 0;
|
|
85
|
+
const granted = state.attempt_grants?.[transition] ?? 0;
|
|
86
|
+
return Math.max(0, Math.max(spent, floor) - granted);
|
|
87
|
+
}
|
|
88
|
+
export function recoveryBlockedAt(state, transition) {
|
|
89
|
+
const trace = state.events.filter((event) => event.transition === transition);
|
|
90
|
+
const material = [...trace].reverse().find(declaresMaterialEffect);
|
|
91
|
+
if (material !== undefined)
|
|
92
|
+
return { reason: "materialized", event: material };
|
|
93
|
+
const pending = state.pending_action;
|
|
94
|
+
if (pending?.transition === transition && pending.attempted && trace.length === 0) {
|
|
95
|
+
return { reason: "unverified" };
|
|
96
|
+
}
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Whether this event says the world moved — including when it cannot say.
|
|
101
|
+
*
|
|
102
|
+
* `FLOW_EFFECT_PARTIAL` is its own answer: the invocation declared complete and
|
|
103
|
+
* did not apply everything the row demanded, so what it DID apply is exactly the
|
|
104
|
+
* unknown. And a `failed` event with no `effects` at all comes from a trace
|
|
105
|
+
* written before the field existed: same unknown, same refusal.
|
|
106
|
+
*/
|
|
107
|
+
function declaresMaterialEffect(event) {
|
|
108
|
+
if (event.kind !== "failed")
|
|
109
|
+
return touchesTheWorld(event.effects);
|
|
110
|
+
if (event.effects === undefined)
|
|
111
|
+
return true;
|
|
112
|
+
return event.code === "FLOW_EFFECT_PARTIAL" || touchesTheWorld(event.effects);
|
|
43
113
|
}
|
|
44
114
|
/**
|
|
45
115
|
* The seal of everything an answer was written AGAINST — attempts excluded.
|
|
@@ -52,9 +122,15 @@ export function attemptsAt(state, transition) {
|
|
|
52
122
|
* action, same effects. Sealing the attempts into it would report the caller's
|
|
53
123
|
* own previous refusal back to them as `FLOW_ANSWER_STALE`, replacing a precise
|
|
54
124
|
* reason ("this evidence is missing") with a vague one.
|
|
125
|
+
*
|
|
126
|
+
* The floor and the grants leave with the attempts, for the same reason rather
|
|
127
|
+
* than a new one: they are the same bookkeeping, reconciled from the monotone
|
|
128
|
+
* counter on every read. A seal that moved when the counter did would turn
|
|
129
|
+
* recording an attempt — or recovering a boundary — into staleness for an answer
|
|
130
|
+
* that is still about exactly this position.
|
|
55
131
|
*/
|
|
56
132
|
export function positionDigest(state) {
|
|
57
|
-
const { attempts: _spent, digest: _seal, ...position } = state;
|
|
133
|
+
const { attempts: _spent, attempt_floor: _floor, attempt_grants: _granted, digest: _seal, ...position } = state;
|
|
58
134
|
return semanticDigest(position);
|
|
59
135
|
}
|
|
60
136
|
/** The state minus its own seal — exactly what {@link sealRunState} digests. */
|
|
@@ -121,6 +197,74 @@ export function skipTransition(state, decisionId) {
|
|
|
121
197
|
skipped: [...state.skipped, decisionId],
|
|
122
198
|
});
|
|
123
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Pass over a boundary the run GAVE UP on, saying so in its own field.
|
|
202
|
+
*
|
|
203
|
+
* A degradation is a skip — the cursor has to leave the step behind — but it is
|
|
204
|
+
* not the same fact, and the difference is the whole point: one says the
|
|
205
|
+
* condition never fired, the other says the question was asked as often as it may
|
|
206
|
+
* be and nobody resolved it. Recorded apart so a reader of the final state can
|
|
207
|
+
* tell them without reconstructing the attempt history.
|
|
208
|
+
*/
|
|
209
|
+
export function degradeTransition(state, decisionId, cause) {
|
|
210
|
+
const skipped = skipTransition(state, decisionId);
|
|
211
|
+
return sealRunState({
|
|
212
|
+
...withoutSeal(skipped),
|
|
213
|
+
degraded: [...(state.degraded ?? []), { transition: decisionId, cause }],
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Give a boundary back the attempts it spent — as a GRANT, never as a deletion.
|
|
218
|
+
*
|
|
219
|
+
* Recovery cannot lower the monotone counter: the counter is what makes restoring
|
|
220
|
+
* an older ledger useless, and a recovery that decremented it would hand back the
|
|
221
|
+
* same hole wearing a supported name. So what is recorded is how many attempts
|
|
222
|
+
* were forgiven, which only ever grows; the effective count is the difference.
|
|
223
|
+
* See {@link attemptsAt}.
|
|
224
|
+
*/
|
|
225
|
+
export function grantAttempts(state, transition, attempts) {
|
|
226
|
+
const granted = { ...(state.attempt_grants ?? {}) };
|
|
227
|
+
granted[transition] = (granted[transition] ?? 0) + attempts;
|
|
228
|
+
return sealRunState({ ...withoutSeal(state), attempt_grants: granted });
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Stamp a state read from an older readable version with the current one.
|
|
232
|
+
*
|
|
233
|
+
* Applied on the way OUT of the reader, so the run walks — and is written back —
|
|
234
|
+
* as one format from the first read onwards, and the version stops being a fact
|
|
235
|
+
* that varies per file within one workspace. Nothing else is touched: the older
|
|
236
|
+
* versions this build reads differ from the current one only by fields whose
|
|
237
|
+
* absence is already the conservative reading, so there is nothing to fill in
|
|
238
|
+
* and nothing is filled in. Re-sealed because the version is inside the seal.
|
|
239
|
+
*/
|
|
240
|
+
export function atCurrentVersion(state) {
|
|
241
|
+
if (state.version === FLOW_RUN_STATE_VERSION)
|
|
242
|
+
return state;
|
|
243
|
+
return sealRunState({ ...withoutSeal(state), version: FLOW_RUN_STATE_VERSION });
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Reconcile the state with the monotone counter that lives outside its seal.
|
|
247
|
+
*
|
|
248
|
+
* The only writer of both maps, so "the sidecar is the authority and the state is
|
|
249
|
+
* its cache" is one statement in one place. An empty map is written as ABSENT
|
|
250
|
+
* rather than as `{}`: a run that never spent an attempt keeps the exact bytes it
|
|
251
|
+
* had before this field existed, which is what makes the change readable in both
|
|
252
|
+
* directions instead of a silent format break.
|
|
253
|
+
*/
|
|
254
|
+
export function withAttemptCounters(state, counters) {
|
|
255
|
+
const floor = emptyToAbsent(counters.floor);
|
|
256
|
+
const grants = emptyToAbsent(counters.grants);
|
|
257
|
+
const { attempt_floor: _floor, attempt_grants: _granted, ...rest } = withoutSeal(state);
|
|
258
|
+
return sealRunState({
|
|
259
|
+
...rest,
|
|
260
|
+
...(floor === undefined ? {} : { attempt_floor: floor }),
|
|
261
|
+
...(grants === undefined ? {} : { attempt_grants: grants }),
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
function emptyToAbsent(counter) {
|
|
265
|
+
const entries = Object.entries(counter).filter(([, count]) => count > 0);
|
|
266
|
+
return entries.length === 0 ? undefined : Object.fromEntries(entries);
|
|
267
|
+
}
|
|
124
268
|
/** Move the boundary to where the walk stopped, applying nothing. */
|
|
125
269
|
export function withBoundary(state, boundary) {
|
|
126
270
|
return sealRunState({ ...withoutSeal(state), boundary });
|
|
@@ -170,6 +314,23 @@ export function withActionAttempted(state) {
|
|
|
170
314
|
export function withEvent(state, event) {
|
|
171
315
|
return sealRunState({ ...withoutSeal(state), events: [...state.events, event] });
|
|
172
316
|
}
|
|
317
|
+
/**
|
|
318
|
+
* Whether appending this failure would only restate the one already there.
|
|
319
|
+
*
|
|
320
|
+
* The same failure, still standing, is ONE fact: re-running a broken action or
|
|
321
|
+
* re-sending the same refused result reaches the identical verdict, and
|
|
322
|
+
* appending it every time would turn the trace into a retry counter — which is
|
|
323
|
+
* what the attempt history is for. Both producers of a failure event ask here,
|
|
324
|
+
* so the internal driver and an external result cannot disagree about it.
|
|
325
|
+
*/
|
|
326
|
+
export function restatesLastEvent(state, event) {
|
|
327
|
+
const last = state.events.at(-1);
|
|
328
|
+
if (last === undefined || last.kind !== "failed" || event.kind !== "failed")
|
|
329
|
+
return false;
|
|
330
|
+
return (last.transition === event.transition &&
|
|
331
|
+
last.code === event.code &&
|
|
332
|
+
last.message === event.message);
|
|
333
|
+
}
|
|
173
334
|
/** Keep a validated observation for the rule that consumes it later. */
|
|
174
335
|
export function withObservation(state, observation) {
|
|
175
336
|
return sealRunState({
|
|
@@ -254,11 +415,13 @@ export function parseRunState(raw) {
|
|
|
254
415
|
if (!isRecord(parsed)) {
|
|
255
416
|
return refuse("FLOW_RUN_INVALID", "el estado de corrida no es un objeto JSON", "restauralo o re-adoptá la sesión con 'aw flow advance --adopt'");
|
|
256
417
|
}
|
|
257
|
-
if (parsed.version
|
|
258
|
-
// No silent migration, in either direction:
|
|
259
|
-
// the engine now reads
|
|
260
|
-
// this file exists to make trustworthy
|
|
261
|
-
|
|
418
|
+
if (!FLOW_RUN_STATE_READABLE.includes(parsed.version)) {
|
|
419
|
+
// No silent migration, in either direction: a version outside the readable
|
|
420
|
+
// set either predates fields the engine now reads — and inventing them would
|
|
421
|
+
// fabricate the very history this file exists to make trustworthy — or comes
|
|
422
|
+
// from a build ahead of this one, whose fields this build would ignore.
|
|
423
|
+
// Refusing with the cause is what keeps the second case from being silent.
|
|
424
|
+
return refuse("FLOW_RUN_VERSION_UNSUPPORTED", `versión de estado de corrida no soportada: ${String(parsed.version)}`, `esta versión del CLI lee ${FLOW_RUN_STATE_READABLE.join(" y ")} y escribe la ${FLOW_RUN_STATE_VERSION}: actualizá el CLI, o re-adoptá la sesión con 'aw flow advance --flow <flow> --adopt' (no hay migración automática)`);
|
|
262
425
|
}
|
|
263
426
|
const shape = checkShape(parsed);
|
|
264
427
|
if (shape !== null)
|
|
@@ -357,6 +520,18 @@ function checkRecordShape(parsed, invalid) {
|
|
|
357
520
|
return invalid("no trae el registro de efectos completo");
|
|
358
521
|
if (!isAttemptArray(parsed.attempts))
|
|
359
522
|
return invalid("trae un historial de intentos inválido");
|
|
523
|
+
if (!isDegradationArray(parsed.degraded)) {
|
|
524
|
+
return invalid("declara una degradación sin transición o sin causa");
|
|
525
|
+
}
|
|
526
|
+
// A degradation is a skip that says why: one recorded over a step the run never
|
|
527
|
+
// passed over would be a claim about a boundary it is still standing on.
|
|
528
|
+
const skipped = parsed.skipped;
|
|
529
|
+
if ((parsed.degraded ?? []).some((entry) => !skipped.includes(entry.transition))) {
|
|
530
|
+
return invalid("declara degradada una transición que el recorrido nunca pasó por alto");
|
|
531
|
+
}
|
|
532
|
+
if (!isCounterMap(parsed.attempt_floor) || !isCounterMap(parsed.attempt_grants)) {
|
|
533
|
+
return invalid("trae una contabilidad de intentos que no es un contador por transición");
|
|
534
|
+
}
|
|
360
535
|
if (typeof parsed.digest !== "string")
|
|
361
536
|
return invalid("no trae su sello");
|
|
362
537
|
return null;
|
|
@@ -479,7 +654,10 @@ function isEventArray(value) {
|
|
|
479
654
|
if (entry.kind === "failed") {
|
|
480
655
|
return (typeof entry.code === "string" &&
|
|
481
656
|
typeof entry.message === "string" &&
|
|
482
|
-
typeof entry.recovery === "string"
|
|
657
|
+
typeof entry.recovery === "string" &&
|
|
658
|
+
// ABSENT-or-well-formed, never defaulted: a version 7 trace has no such
|
|
659
|
+
// field, and the guard that reads it treats its absence as the refusal.
|
|
660
|
+
(entry.effects === undefined || isEffectClassArray(entry.effects)));
|
|
483
661
|
}
|
|
484
662
|
return false;
|
|
485
663
|
});
|
|
@@ -489,6 +667,32 @@ function isObservationArray(value) {
|
|
|
489
667
|
return false;
|
|
490
668
|
return value.every((entry) => isRecord(entry) && typeof entry.transition === "string" && isStringArray(entry.signals));
|
|
491
669
|
}
|
|
670
|
+
/**
|
|
671
|
+
* The two optional fields are checked as ABSENT-or-well-formed, never defaulted.
|
|
672
|
+
*
|
|
673
|
+
* Absence is the reading a run written before them gets, and it is the
|
|
674
|
+
* conservative one — no floor beyond the ledger, nothing forgiven. What is
|
|
675
|
+
* refused is a field that is THERE and unusable: a counter that is not a number
|
|
676
|
+
* per transition would make the cap depend on whatever somebody typed, which is
|
|
677
|
+
* the failure the counter exists to close.
|
|
678
|
+
*/
|
|
679
|
+
function isCounterMap(value) {
|
|
680
|
+
if (value === undefined)
|
|
681
|
+
return true;
|
|
682
|
+
if (!isRecord(value))
|
|
683
|
+
return false;
|
|
684
|
+
return Object.values(value).every((count) => Number.isInteger(count) && count >= 0);
|
|
685
|
+
}
|
|
686
|
+
function isDegradationArray(value) {
|
|
687
|
+
if (value === undefined)
|
|
688
|
+
return true;
|
|
689
|
+
if (!Array.isArray(value))
|
|
690
|
+
return false;
|
|
691
|
+
return value.every((entry) => isRecord(entry) &&
|
|
692
|
+
typeof entry.transition === "string" &&
|
|
693
|
+
typeof entry.cause === "string" &&
|
|
694
|
+
entry.cause.trim().length > 0);
|
|
695
|
+
}
|
|
492
696
|
function isAttemptArray(value) {
|
|
493
697
|
if (!Array.isArray(value))
|
|
494
698
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-state.js","sourceRoot":"","sources":["../../../src/domain/flow/run-state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-state.js","sourceRoot":"","sources":["../../../src/domain/flow/run-state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tacuchi/agent-workflow-cli",
|
|
3
|
-
"version": "21.
|
|
3
|
+
"version": "21.12.0",
|
|
4
4
|
"description": "Runtime CLI for Workline — the stages + loops + artifacts system for agent work. Bundles the universal `w` skill set under `skills/w/` (slash commands `/w:*`: spec-new/spec-refine, plan-new/plan-exec, quick, persist, workspace-init, export-*); `self install --target <host>` copies SKILL + commands + hooks into the host. Pluggable capability skills via `.workflow/skills.toml`. Multi-empresa parametrization via `profile.json` cascade. Namespace auto-detected from any `.<ns>/sessions/` dir in CWD; default `workflow`.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
This document is the **common engine** of the Workline loops: the doctrine every loop runs underneath its deltas. **It is not a skill** — it is a referenced document: every loop orders it read from its `## Inherits`, **always, before its deltas**. If you edit the engine, edit it **here** — heirs never repeat it, they only reference it.
|
|
4
4
|
|
|
5
|
-
> **When each step below happens is no longer this document's call:** the deterministic steps below are decided by the CLI (`aw flow advance`), not by this document. They consume no model worker, subagent or external process: the CLI advances them locally to the first real frontier. What stays is what each rule is FOR — the half no engine carries.
|
|
5
|
+
> **When each step below happens is no longer this document's call:** the deterministic steps below are decided by the CLI (`aw flow advance`), not by this document. They consume no model worker, subagent or external process: the CLI advances them locally to the first real frontier. What stays is what each rule is FOR — the half no engine carries. Answering the frontier it stops at is `aw flow submit`, and its envelope — which fields each kind of frontier demands, and where each digest comes from — is **read** with `aw flow --help`, never guessed.
|
|
6
6
|
|
|
7
7
|
## Heirs (canonical list)
|
|
8
8
|
|
|
@@ -20,7 +20,7 @@ The two that edit code also apply [`CODE-POLICIES.md`](CODE-POLICIES.md).
|
|
|
20
20
|
|
|
21
21
|
A loop **is a persistent objective**: it exists to fulfill the `SESSION.Objective` declared at start, and **it is not finished until the convergence gate confirms the objective was met**. Gap-driven iteration is the *method*; the artifacts are the *record*; the objective is the *frame*.
|
|
22
22
|
|
|
23
|
-
"Don't stop until convergence" is sustained by the loop itself — its `repeat:` plus the convergence gate — never by a host hook, which is what makes it harness-agnostic. Each heir instantiates the frame: `spec-refine` pursues the spec; the plan loops pursue the plan up to their gate; `plan-exec` up to its final validation; `quick-loop`
|
|
23
|
+
"Don't stop until convergence" is sustained by the loop itself — its `repeat:` plus the convergence gate — never by a host hook, which is what makes it harness-agnostic. Each heir instantiates the frame: `spec-refine` pursues the spec; the plan loops pursue the plan up to their gate; `plan-exec` up to its final validation; `quick-loop` its prompt.
|
|
24
24
|
|
|
25
25
|
> **Inter-turn continuity.** The same `CHECKPOINT`+resume governs the **next prompt**: the objective persists **across turns**, not only within a run. The canonical rules (command = new work line · re-run = `create_or_resume` · bare prompt = continue the most recent session · reopening closed sessions · consented escalation) live in [`../SKILL.md`](../SKILL.md) § *Operating context* — **single source**; this engine executes them via *Compact / resume* (case 3).
|
|
26
26
|
|
|
@@ -41,8 +41,6 @@ The persistent objective needs a **checkable done-condition** — otherwise the
|
|
|
41
41
|
- **Subjective deliverable** (analysis/design): the AI **proposes** the rubric and the **human ratifies** it before pursuing it.
|
|
42
42
|
- **Unresolvable criterion** (no evidence, DB unavailable): closes as `inconclusive` and the loop **degrades** — **never iterates against a fake target**.
|
|
43
43
|
|
|
44
|
-
> The **convergence gate** is, operationally, **"all `Success criteria` green"**. The per-heir gates are **instances** of it, with the criteria seeded at start.
|
|
45
|
-
|
|
46
44
|
**Gate integrity (anti-gaming + independent verification).** The gate only counts if it is not gamed to pass. The loop does **not**: modify the check or loosen a `Success criterion` to force green; weaken, delete or skip tests/validations; use trivial or tautological asserts that always pass (the expected value comes from an independent source, never from the output itself); patch the test instead of fixing the cause (prefer fixing production code).
|
|
47
45
|
|
|
48
46
|
Facing a real blocker it **stops and reports it** (→ `Open questions`/`BACKLOG`) instead of gaming the metric. The verdict counts **only the check's output, never the implementer's self-declaration**: when the deliverable warrants it, the final verification is an **independent** pass (subagent only when the CLI's independent-partition rule admits it, or a clean re-read) that does not assume the implementation is correct — *only command output counts*.
|
|
@@ -61,7 +59,7 @@ The loop works **artifact-first**: the artifact is **seeded before** executing a
|
|
|
61
59
|
|
|
62
60
|
1. **BEFORE — seed the intent.** Before executing, record in the artifact what is **about to** be done: `CHECKPOINT.Pending`/`Next` = the imminent work (`SESSION.Objective` already fixed the run's what).
|
|
63
61
|
2. **EXECUTE.** Resolve the gap / run the phase / edit the code.
|
|
64
|
-
3. **AFTER — bring to actual state.** `CHECKPOINT.Pending → Completed`; `DECISION` records the non-obvious **as it is decided**; `BACKLOG` **only if** something is deferred/follow-up
|
|
62
|
+
3. **AFTER — bring to actual state.** `CHECKPOINT.Pending → Completed`; `DECISION` records the non-obvious **as it is decided**; `BACKLOG` **only if** something is deferred/follow-up.
|
|
65
63
|
|
|
66
64
|
> The artifact expresses the **intent** (before) and then the **result** (after), at **every** gap/phase boundary — not only on `Compactar`/`Cerrar`. Session artifacts are the run's live log; the spec/plan is the **guiding base**.
|
|
67
65
|
|
|
@@ -75,9 +73,9 @@ The common cycle — each heir instantiates it in its `## Sequence` with its own
|
|
|
75
73
|
|
|
76
74
|
The loop creates and manages its session under `.workflow/sessions/`; **the user never creates it**. **A single session per run**: it keeps progress live (`CHECKPOINT`) and enables resume. Artifacts: `SESSION.md` · `CHECKPOINT.md` (· `BACKLOG.md` only if something is deferred; code-editing loops add `DECISION` and `SCRIPTS.sql`). Each heir declares its descriptor and `Type` in its own `## Internal sessions`.
|
|
77
75
|
|
|
78
|
-
>
|
|
76
|
+
> The flow's input document (spec/plan) **never** goes inside a session; it lives in `docs/`.
|
|
79
77
|
|
|
80
|
-
**CLI**: `aw session-create --type <type> --name <slug>-<flow> --objetivo "<one-line objective>"` opens it · `aw checkpoint-write` / `aw checkpoint-read` keep it resumable
|
|
78
|
+
**CLI**: `aw session-create --type <type> --name <slug>-<flow> --objetivo "<one-line objective>"` opens it · `aw checkpoint-write` / `aw checkpoint-read` keep it resumable. **Closing it is the CLI's own move**, run at `finalize`: a loop never issues the close itself, and one issued mid-run leaves the next `advance`/`submit` standing on a closed session.
|
|
81
79
|
|
|
82
80
|
> The caller passes **only the descriptor** via `--name` — **never** a number; the CLI owns the global `NNN`. How it is assigned, how a session is located or reopened, and how a failed history upsert is repaired, are in the `sessions` module.
|
|
83
81
|
|