@archmax-ai/harness 0.8.0 → 1.0.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/README.md +58 -14
- package/dist/agent.d.ts +4 -4
- package/dist/agent.js +4 -4
- package/dist/assembly/compose.d.ts +5 -24
- package/dist/assembly/compose.js +40 -41
- package/dist/assembly/compose.js.map +1 -1
- package/dist/assembly/delegation-registry.js +3 -14
- package/dist/assembly/delegation-registry.js.map +1 -1
- package/dist/assembly/index.d.ts +18 -15
- package/dist/assembly/index.js +50 -32
- package/dist/assembly/index.js.map +1 -1
- package/dist/assembly/plain.js +1 -2
- package/dist/assembly/plain.js.map +1 -1
- package/dist/authoring-skill/archmax-harness/README.md +5 -5
- package/dist/authoring-skill/archmax-harness/SKILL.md +72 -30
- package/dist/authoring-skill/archmax-harness/references/backend-integration.md +35 -23
- package/dist/authoring-skill/archmax-harness/references/cases.md +44 -10
- package/dist/authoring-skill/archmax-harness/references/{hook-and-test-scripts.md → code-state-and-test-scripts.md} +617 -313
- package/dist/authoring-skill/archmax-harness/references/code-states-and-scripts.md +115 -0
- package/dist/authoring-skill/archmax-harness/references/diagnostics.md +40 -7
- package/dist/authoring-skill/archmax-harness/references/wiring.md +19 -10
- package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +416 -276
- package/dist/authoring-skill/archmax-harness/references/workflow-yaml.md +161 -62
- package/dist/cli/state-flow.d.ts +1 -1
- package/dist/cli/state-flow.js +18 -28
- package/dist/cli/state-flow.js.map +1 -1
- package/dist/cli/turn.d.ts +1 -1
- package/dist/cli/turn.js +2 -3
- package/dist/cli/turn.js.map +1 -1
- package/dist/core/clock.d.ts +26 -0
- package/dist/core/clock.js +64 -0
- package/dist/core/clock.js.map +1 -0
- package/dist/core/code-description.d.ts +3 -3
- package/dist/core/code-description.js +3 -3
- package/dist/core/deepagents.d.ts +5 -5
- package/dist/core/deepagents.js +4 -4
- package/dist/core/events.d.ts +23 -42
- package/dist/core/events.js +21 -24
- package/dist/core/events.js.map +1 -1
- package/dist/core/message-readers.d.ts +22 -2
- package/dist/core/message-readers.js +31 -0
- package/dist/core/message-readers.js.map +1 -1
- package/dist/core/messages.d.ts +1 -23
- package/dist/core/messages.js +2 -35
- package/dist/core/messages.js.map +1 -1
- package/dist/core/mounts.js +3 -3
- package/dist/core/platform-prompt.generated.js +1 -1
- package/dist/core/platform-prompt.generated.js.map +1 -1
- package/dist/core/session-zone.d.ts +1 -1
- package/dist/core/session-zone.js +1 -1
- package/dist/core/workspace-context.d.ts +1 -1
- package/dist/core/workspace.d.ts +1 -1
- package/dist/core/workspace.js +1 -1
- package/dist/core/zones.d.ts +4 -4
- package/dist/core/zones.js +5 -5
- package/dist/core/zones.js.map +1 -1
- package/dist/env.d.ts +9 -9
- package/dist/index.d.ts +3 -7
- package/dist/index.js +2 -4
- package/dist/index.js.map +1 -1
- package/dist/kernel/kernel.d.ts +31 -61
- package/dist/kernel/kernel.js +57 -114
- package/dist/kernel/kernel.js.map +1 -1
- package/dist/machine/allow.d.ts +17 -2
- package/dist/machine/allow.js +16 -6
- package/dist/machine/allow.js.map +1 -1
- package/dist/machine/lint-spec.js +68 -12
- package/dist/machine/lint-spec.js.map +1 -1
- package/dist/machine/machine.d.ts +39 -16
- package/dist/machine/machine.js +72 -49
- package/dist/machine/machine.js.map +1 -1
- package/dist/machine/spec-schema.d.ts +34 -179
- package/dist/machine/spec-schema.js +93 -106
- package/dist/machine/spec-schema.js.map +1 -1
- package/dist/machine/tool-names.d.ts +34 -10
- package/dist/machine/tool-names.js +41 -10
- package/dist/machine/tool-names.js.map +1 -1
- package/dist/machine/tool-paths.d.ts +6 -0
- package/dist/machine/tool-paths.js +10 -0
- package/dist/machine/tool-paths.js.map +1 -1
- package/dist/machine/types.d.ts +14 -38
- package/dist/machine/types.js.map +1 -1
- package/dist/machine/validate-spec.d.ts +1 -1
- package/dist/machine/variables.d.ts +2 -0
- package/dist/machine/variables.js.map +1 -1
- package/dist/public/sandbox.d.ts +62 -66
- package/dist/public/sandbox.js +22 -23
- package/dist/public/sandbox.js.map +1 -1
- package/dist/public/spec.d.ts +12 -19
- package/dist/public/spec.js +11 -19
- package/dist/public/spec.js.map +1 -1
- package/dist/runtime/contract.d.ts +11 -12
- package/dist/runtime/contract.js +16 -16
- package/dist/runtime/contract.js.map +1 -1
- package/dist/sandbox/assets/parts/code-state.js +17 -0
- package/dist/sandbox/executor.d.ts +25 -7
- package/dist/sandbox/executor.js +56 -47
- package/dist/sandbox/executor.js.map +1 -1
- package/dist/sandbox/imports.d.ts +10 -10
- package/dist/sandbox/imports.js +11 -11
- package/dist/sandbox/imports.js.map +1 -1
- package/dist/sandbox/prelude.d.ts +5 -6
- package/dist/sandbox/prelude.js +38 -35
- package/dist/sandbox/prelude.js.map +1 -1
- package/dist/sandbox/ptc-gateway.d.ts +19 -18
- package/dist/sandbox/ptc-gateway.js +26 -22
- package/dist/sandbox/ptc-gateway.js.map +1 -1
- package/dist/sessions/operations.js +4 -5
- package/dist/sessions/operations.js.map +1 -1
- package/dist/sessions/resume.d.ts +12 -7
- package/dist/sessions/resume.js +12 -9
- package/dist/sessions/resume.js.map +1 -1
- package/dist/sessions/summary.d.ts +1 -1
- package/dist/testing/assertions.js +9 -4
- package/dist/testing/assertions.js.map +1 -1
- package/dist/testing/case-document.d.ts +2 -0
- package/dist/testing/case-document.js.map +1 -1
- package/dist/testing/case-schema.d.ts +1 -1
- package/dist/testing/case-schema.js +17 -1
- package/dist/testing/case-schema.js.map +1 -1
- package/dist/testing/driver.d.ts +4 -0
- package/dist/testing/driver.js +22 -3
- package/dist/testing/driver.js.map +1 -1
- package/dist/testing/grade.js +3 -3
- package/dist/testing/grade.js.map +1 -1
- package/dist/testing/interpreter.d.ts +2 -2
- package/dist/testing/interpreter.js +1 -0
- package/dist/testing/interpreter.js.map +1 -1
- package/dist/testing/runner.d.ts +2 -2
- package/dist/validate/validate.d.ts +1 -1
- package/dist/validate/validate.js +39 -70
- package/dist/validate/validate.js.map +1 -1
- package/dist/workflow/automated-controls.d.ts +63 -0
- package/dist/workflow/automated-controls.js +158 -0
- package/dist/workflow/automated-controls.js.map +1 -0
- package/dist/workflow/automated.d.ts +112 -0
- package/dist/workflow/automated.js +163 -0
- package/dist/workflow/automated.js.map +1 -0
- package/dist/workflow/checkpointer.d.ts +7 -0
- package/dist/workflow/checkpointer.js +28 -0
- package/dist/workflow/checkpointer.js.map +1 -1
- package/dist/workflow/code-state.d.ts +46 -0
- package/dist/workflow/code-state.js +26 -0
- package/dist/workflow/code-state.js.map +1 -0
- package/dist/workflow/control-tools.d.ts +54 -23
- package/dist/workflow/control-tools.js +121 -77
- package/dist/workflow/control-tools.js.map +1 -1
- package/dist/workflow/file-values.d.ts +4 -4
- package/dist/workflow/file-values.js +1 -1
- package/dist/workflow/file-values.js.map +1 -1
- package/dist/workflow/governance.d.ts +13 -22
- package/dist/workflow/governance.js +51 -87
- package/dist/workflow/governance.js.map +1 -1
- package/dist/workflow/grader-state.d.ts +55 -0
- package/dist/workflow/grader-state.js +182 -0
- package/dist/workflow/grader-state.js.map +1 -0
- package/dist/workflow/history.d.ts +11 -0
- package/dist/workflow/history.js +64 -0
- package/dist/workflow/history.js.map +1 -0
- package/dist/workflow/middleware.d.ts +14 -17
- package/dist/workflow/middleware.js +106 -74
- package/dist/workflow/middleware.js.map +1 -1
- package/dist/workflow/move-events.d.ts +21 -0
- package/dist/workflow/move-events.js +20 -0
- package/dist/workflow/move-events.js.map +1 -0
- package/dist/workflow/parks.d.ts +9 -2
- package/dist/workflow/parks.js +16 -8
- package/dist/workflow/parks.js.map +1 -1
- package/dist/workflow/paths.d.ts +9 -9
- package/dist/workflow/paths.js +19 -19
- package/dist/workflow/paths.js.map +1 -1
- package/dist/workflow/render-prompt.d.ts +7 -5
- package/dist/workflow/render-prompt.js +22 -37
- package/dist/workflow/render-prompt.js.map +1 -1
- package/dist/workflow/signature-checks.d.ts +2 -2
- package/dist/workflow/snapshot.js +5 -29
- package/dist/workflow/snapshot.js.map +1 -1
- package/dist/workflow/state.d.ts +19 -6
- package/dist/workflow/state.js +24 -8
- package/dist/workflow/state.js.map +1 -1
- package/dist/workflow/sub-workflow.d.ts +3 -3
- package/dist/workflow/tool-service.d.ts +1 -9
- package/dist/workflow/tool-service.js +21 -24
- package/dist/workflow/tool-service.js.map +1 -1
- package/dist/workflow/turn-boundary.d.ts +2 -2
- package/dist/workflow/turn-boundary.js +10 -7
- package/dist/workflow/turn-boundary.js.map +1 -1
- package/dist/workflow/turn-runner.js +30 -2
- package/dist/workflow/turn-runner.js.map +1 -1
- package/package.json +1 -1
- package/skills/archmax-harness/README.md +5 -5
- package/skills/archmax-harness/SKILL.md +72 -30
- package/skills/archmax-harness/references/backend-integration.md +35 -23
- package/skills/archmax-harness/references/cases.md +44 -10
- package/skills/archmax-harness/references/{hook-and-test-scripts.md → code-state-and-test-scripts.md} +617 -313
- package/skills/archmax-harness/references/code-states-and-scripts.md +115 -0
- package/skills/archmax-harness/references/diagnostics.md +40 -7
- package/skills/archmax-harness/references/wiring.md +19 -10
- package/skills/archmax-harness/references/workflow-schema.md +416 -276
- package/skills/archmax-harness/references/workflow-yaml.md +161 -62
- package/dist/authoring-skill/archmax-harness/references/hooks-and-scripts.md +0 -88
- package/dist/lifecycle/hook-shape.d.ts +0 -44
- package/dist/lifecycle/hook-shape.js +0 -66
- package/dist/lifecycle/hook-shape.js.map +0 -1
- package/dist/lifecycle/runner.d.ts +0 -183
- package/dist/lifecycle/runner.js +0 -373
- package/dist/lifecycle/runner.js.map +0 -1
- package/dist/lifecycle/transcript.d.ts +0 -27
- package/dist/lifecycle/transcript.js +0 -43
- package/dist/lifecycle/transcript.js.map +0 -1
- package/dist/rubrics/rubrics.d.ts +0 -135
- package/dist/rubrics/rubrics.js +0 -145
- package/dist/rubrics/rubrics.js.map +0 -1
- package/dist/sandbox/assets/parts/core.js +0 -22
- package/dist/sandbox/assets/parts/lifecycle-hook.js +0 -47
- package/dist/sandbox/bridge.d.ts +0 -16
- package/dist/sandbox/bridge.js +0 -95
- package/dist/sandbox/bridge.js.map +0 -1
- package/skills/archmax-harness/references/hooks-and-scripts.md +0 -88
|
@@ -14,7 +14,7 @@ instructions: |- # standing direction for the whole run (warning
|
|
|
14
14
|
Records live in skills/order-data/assets/orders.json; write artifacts under scratchpad/.
|
|
15
15
|
|
|
16
16
|
Answer only from records you have read; never fabricate.
|
|
17
|
-
runtime: { engine: archmax-harness, version: "
|
|
17
|
+
runtime: { engine: archmax-harness, version: "3" } # 3 is the only contract; omitted = 3
|
|
18
18
|
disabled: false # true = out of service: no new turns; parked runs still drain
|
|
19
19
|
settings: # sandbox limits: timeoutMs, memoryLimitBytes, maxPtcCalls,
|
|
20
20
|
timeoutMs: 15000 # maxResultChars, prompt_cache: { enabled, ttl }
|
|
@@ -23,8 +23,7 @@ tests: # case suite config (no tests.config.js exists)
|
|
|
23
23
|
maxConcurrency: 1 # only 1 accepted
|
|
24
24
|
caseTimeoutMs: 120000 # per-case wall clock, distinct from settings.timeoutMs
|
|
25
25
|
judge: {} # required for grade:; {} = env default model, or { model, modelOptions }
|
|
26
|
-
metadata: { canvas: {} } # host data, never read; accepted at root
|
|
27
|
-
extensions: { hooks: [] } # host-registered hook kinds; rarely authored
|
|
26
|
+
metadata: { canvas: {} } # host data, never read; accepted at root and on a state — leave as found
|
|
28
27
|
|
|
29
28
|
tools: # tool governance, workflow level
|
|
30
29
|
allow_always: # granted in EVERY state; a state's allow adds to or narrows it.
|
|
@@ -47,7 +46,7 @@ skills: # skill governance, workflow level — SLUGS, n
|
|
|
47
46
|
|
|
48
47
|
states:
|
|
49
48
|
triage: # key = slug = identity (^[a-z0-9]+(-[a-z0-9]+)*$)
|
|
50
|
-
type: agent # agent (default) | human
|
|
49
|
+
type: agent # agent (default) | human | grader | code (grader/code = automated)
|
|
51
50
|
title: Triage request # label for people/hosts; reaches no model call
|
|
52
51
|
summary: Record the refund decision for review. # ditto: an authoring/host label, NOT in the prompt
|
|
53
52
|
triggers: # a trigger is declared on the state it ENTERS; key = id
|
|
@@ -65,17 +64,8 @@ states:
|
|
|
65
64
|
# entry types: string integer number boolean date date-time object array file
|
|
66
65
|
instructions: >-
|
|
67
66
|
Record the decision in scratchpad/refund.json, then archmax_advance to
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
- script: hooks/check-requester.js
|
|
71
|
-
after: # gates the archmax_advance out (or completion, when terminal)
|
|
72
|
-
- script: hooks/check-policy.js
|
|
73
|
-
max_iterations: 2 # how many `correct`s before a hard veto (per hook; default 0)
|
|
74
|
-
- rubric: # LLM grader, inline; the agent never sees it
|
|
75
|
-
instructions: |- # the only required key: criteria + verdict (ok/correct/veto + reason)
|
|
76
|
-
Judge the tone of the last assistant message …
|
|
77
|
-
max_iterations: 1
|
|
78
|
-
model: gpt-4.1-mini # optional override
|
|
67
|
+
check-policy; never close the case yourself. If a note sends the case
|
|
68
|
+
back, fix what it names and advance again.
|
|
79
69
|
tools:
|
|
80
70
|
allow: # adds to allow_always; entry = name | { tool, args: {<arg>: [globs]} } | { tool, paths }
|
|
81
71
|
- lookup_customer
|
|
@@ -87,18 +77,33 @@ states:
|
|
|
87
77
|
allow: [refund-policy] # adds to allow_always (bundle readable + scripts runnable, no path entries)
|
|
88
78
|
forbid: [order-data] # subtracts, even from allow_always ([] never denies)
|
|
89
79
|
requires: [case_id] # variables that must be set before this state may be left
|
|
80
|
+
locks: [case_id] # variables only this state may write (change = come back here)
|
|
90
81
|
model: claude-opus-5 # MODEL ID ONLY — this state's turns; beats settings.model
|
|
91
82
|
budget: { maxTurns: 12, timeoutMs: 60000, maxParks: 5 } # bounds the state's segment
|
|
92
83
|
on_error: closed # where a terminal failure of this segment routes
|
|
93
84
|
metadata: { x: 40, y: 180 }
|
|
94
85
|
transitions: # none => terminal state
|
|
95
|
-
- to:
|
|
96
|
-
description: The decision is recorded
|
|
86
|
+
- to: check-policy # slug; must exist
|
|
87
|
+
description: The decision is recorded in scratchpad/refund.json. # what the agent routes
|
|
97
88
|
# on. Say WHEN, never where. Omit it to route on the target's
|
|
98
89
|
# instructions instead (target must have some); REQUIRED on a
|
|
99
|
-
# human state's transitions
|
|
90
|
+
# human state's transitions (the button label) and on every edge
|
|
91
|
+
# INTO a grader or code state, like this one.
|
|
100
92
|
type: none # approve | reject | refine | none — semantic on human states
|
|
101
93
|
|
|
94
|
+
check-policy: # CODE state: the runtime runs its script on entry, NO model call
|
|
95
|
+
type: code
|
|
96
|
+
script: scripts/check-policy.js # REQUIRED on a code state, refused on any other type; resolves
|
|
97
|
+
# to workflows/<slug>/scripts/check-policy.js (.js|.mjs, no `..`)
|
|
98
|
+
summary: Re-derive the decision from the refund policy. # instructions/model/budget/evidence/
|
|
99
|
+
# approvers here are validate ERRORS: nothing reads them
|
|
100
|
+
skills: { allow: [order-data] } # the script's tools are THIS state's surface: grant here
|
|
101
|
+
# what it reads or calls (another state's grant never reaches it)
|
|
102
|
+
on_error: closed # a throw, a timeout, or finishing undecided routes here
|
|
103
|
+
transitions: # the script takes one: tools.archmax_advance({ to, reason })
|
|
104
|
+
- { to: review, description: The recorded decision matches the policy. }
|
|
105
|
+
- { to: triage, description: The decision contradicts the policy; send it back with the fix. }
|
|
106
|
+
|
|
102
107
|
review: # human state: parks with a decision record; a PERSON picks the edge
|
|
103
108
|
type: human
|
|
104
109
|
title: Review refund
|
|
@@ -108,31 +113,64 @@ states:
|
|
|
108
113
|
approvers: [finance@acme.com]
|
|
109
114
|
evidence: [scratchpad/refund.json] # plus whatever archmax_advance attached via `evidence:`
|
|
110
115
|
transitions: # required; no self-edge; one target per labeled type
|
|
111
|
-
- { to:
|
|
116
|
+
- { to: reply, type: approve, description: Approve; tell the customer. }
|
|
112
117
|
- { to: triage, type: refine, description: Send back with a comment. }
|
|
113
118
|
|
|
114
|
-
|
|
119
|
+
reply: # agent state (type omitted)
|
|
120
|
+
instructions: >-
|
|
121
|
+
Draft the customer's email in scratchpad/reply.md, then archmax_advance to
|
|
122
|
+
grade-reply; if a note sends it back, revise the draft as it says.
|
|
123
|
+
transitions:
|
|
124
|
+
- { to: grade-reply, description: The email is drafted in scratchpad/reply.md. }
|
|
125
|
+
|
|
126
|
+
grade-reply: # GRADER state: an isolated grader judges WORK HANDED ON (a draft,
|
|
127
|
+
type: grader # a report), never a live answer: a turn's reply is every text
|
|
128
|
+
# the agent said, a draft sent back included
|
|
129
|
+
instructions: |- # REQUIRED: its criteria, appended to a compiled-in grader preamble
|
|
130
|
+
Judge only the tone of scratchpad/reply.md.
|
|
131
|
+
- Friendly and professional: advance to `send-reply`.
|
|
132
|
+
- Curt or cold: advance back to `reply`, saying exactly what to change.
|
|
133
|
+
- If archmax_get_history's trail already holds two steps with kind
|
|
134
|
+
"grader" and to "reply", raise `reply-tone` instead of sending it back.
|
|
135
|
+
model: gpt-4.1-mini # optional; resolved under the `grader` model role
|
|
136
|
+
budget: { maxTurns: 4, timeoutMs: 60000 } # ITS OWN model calls / run time; no maxParks
|
|
137
|
+
on_error: closed # fails closed: an undecided grader routes here
|
|
138
|
+
transitions: # REQUIRED, at least one; no evidence/approvers on a grader
|
|
139
|
+
- { to: send-reply, description: The draft is friendly and professional. }
|
|
140
|
+
- { to: reply, description: The tone is off; send it back naming what to change. }
|
|
141
|
+
|
|
142
|
+
send-reply: # TERMINAL code state: the session completes when the script
|
|
143
|
+
type: code # returns — "approve, then end" with no further model call
|
|
144
|
+
script: scripts/send-reply.js
|
|
145
|
+
tools: { allow: [send_email] } # the host tool its script calls, granted HERE
|
|
146
|
+
|
|
147
|
+
closed: # bare key = terminal (agent) state with no declarations
|
|
115
148
|
```
|
|
116
149
|
|
|
117
150
|
## Machine rules
|
|
118
151
|
|
|
119
152
|
- **Movement.** The agent moves only by `archmax_advance({ to, reason, evidence? })`
|
|
120
|
-
— one per message, edge validated, then the
|
|
121
|
-
|
|
122
|
-
transitions is terminal; the run ends when the agent finishes there.
|
|
123
|
-
decisions
|
|
153
|
+
— one per message, edge and `requires` validated, then the target's tools
|
|
154
|
+
unlock (or, for a grader or code target, the target runs at once). A state
|
|
155
|
+
with no transitions is terminal; the run ends when the agent finishes there.
|
|
156
|
+
Human decisions, `on_error`, and grader and code states' own `archmax_advance`
|
|
157
|
+
are the other movers. `archmax_reset({ reason })`
|
|
124
158
|
returns to the entry state (forbid it via `forbid_always` when a run must
|
|
125
159
|
never restart). No fan-out: sequence states; concurrency lives in
|
|
126
160
|
sub-workflow calls.
|
|
127
161
|
- **Entry.** At least one state declares `triggers`; one state per trigger id;
|
|
128
162
|
`manual` is the entry the CLI, a host firing and a caller all use. A
|
|
129
163
|
re-invoked finished session is a **new turn in the state it ended in**, not
|
|
130
|
-
at the entry
|
|
131
|
-
|
|
164
|
+
at the entry (one that completed in a terminal code state opens at its
|
|
165
|
+
trigger's entry) — give a state re-entry transitions if a conversation must
|
|
166
|
+
move on, or park instead of finishing.
|
|
132
167
|
- **Variables.** One flat checkpointed `name → value` store, never declared.
|
|
133
168
|
Host seeds (`--variables`, `createAgent({ variables })`, a delivery) are
|
|
134
169
|
**locked**; the agent uses `archmax_get_variables`/`archmax_set_variables`
|
|
135
|
-
(`lock: true` to freeze
|
|
170
|
+
(`lock: true` to freeze, until `archmax_reset` releases the agent's locks).
|
|
171
|
+
A value that must be decided in one place yet stay correctable belongs to a
|
|
172
|
+
state: `locks: [order_id]` lets only that state write it, so a change routes
|
|
173
|
+
back there. Reserved: `trigger` (current trigger id, always
|
|
136
174
|
locked) and `title` (the run's one-line task label, agent-owned; a
|
|
137
175
|
sub-workflow child is not asked for one). A
|
|
138
176
|
`${{name}}` / `${{a.b.-1.c}}` reference works in `tools.allow` globs
|
|
@@ -151,7 +189,8 @@ states:
|
|
|
151
189
|
judgement and any state with a big tool surface or several transitions on
|
|
152
190
|
the default, since a small model that routes badly costs more in retries
|
|
153
191
|
than it saves. Repeating the workflow's id on a state is a validate warning.
|
|
154
|
-
A
|
|
192
|
+
A grader state's `model` is resolved under the `grader` model role
|
|
193
|
+
(`modelFactory("grader", env, id)`), a sub-workflow uses its own spec's, and a
|
|
155
194
|
host that passes an explicit `model` instance to `createAgent` outranks
|
|
156
195
|
every declared id (it must pass `modelFactory` to honour them).
|
|
157
196
|
- **Parking.** A state that needs an event or a time calls
|
|
@@ -165,9 +204,9 @@ states:
|
|
|
165
204
|
- **Failing.** When the work cannot be completed, the agent calls
|
|
166
205
|
`archmax_raise({ code, reason })` (alone in its message; any state): the
|
|
167
206
|
session ends at once `failed`, with the agent's free-form `code` and
|
|
168
|
-
`reason` as the outcome's `exit` — no `on_error` route, no
|
|
169
|
-
|
|
170
|
-
|
|
207
|
+
`reason` as the outcome's `exit` — no `on_error` route, no `returns`
|
|
208
|
+
check. A session that never raises is a success, so it is for failure
|
|
209
|
+
only. Forbid it (`forbid_always`, or a state's `forbid`) where the
|
|
171
210
|
agent must not end the run itself; a child that raises fails its caller's
|
|
172
211
|
call with kind `raised`.
|
|
173
212
|
- **Human states** park with a record built from `instructions`, `evidence`
|
|
@@ -177,22 +216,54 @@ states:
|
|
|
177
216
|
reply-only turn (every tool call refused) and re-parks unchanged; only
|
|
178
217
|
`decide` moves the run. A
|
|
179
218
|
`refine` edge delivers the reviewer's comment as correction.
|
|
180
|
-
- **
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
219
|
+
- **Grader and code states** (automated states). A **code** state runs
|
|
220
|
+
`script: scripts/<x>.js` in the sandbox; a **grader** state runs an isolated
|
|
221
|
+
grader whose criteria are the state's `instructions`. Both read the session
|
|
222
|
+
with `archmax_get_history` (`{ messages, trail }`: the whole transcript, a
|
|
223
|
+
tool result inline in its tool message's `text`, and the trail; a script
|
|
224
|
+
calls `JSON.parse(await tools.archmax_get_history())`). Both run on
|
|
225
|
+
entry — however the session got there — with **no call of the agent's model**
|
|
226
|
+
(a chain of code states makes none at all), and leave like every state:
|
|
227
|
+
`archmax_advance` along one of their transitions, whose `reason` reaches the
|
|
228
|
+
next state as a `[code]`/`[grader]` runtime note and a `kind: code|grader`
|
|
229
|
+
trail step, or `archmax_raise`. A **terminal** code state completes the
|
|
230
|
+
session when its script returns. Throwing, timing out, a spent grader budget,
|
|
231
|
+
or a non-terminal state that finishes without either call **fails closed** →
|
|
232
|
+
`on_error`. Each is offered exactly its own state's surface (its grants and
|
|
233
|
+
one control set for both types: `archmax_advance`, `archmax_raise`, the
|
|
234
|
+
variable tools, `archmax_get_history`), governed like the agent's calls — never
|
|
235
|
+
`write_todos`, `archmax_eval`, `archmax_run`, `archmax_wait`,
|
|
236
|
+
`archmax_reset`, even when `allow_always` lists one (a state's own
|
|
237
|
+
`tools.allow` naming one is an error): an automated state cannot park.
|
|
238
|
+
There is no iteration budget: a state that gives up after N rounds counts
|
|
239
|
+
them in the trail. Per type, `validate` errors on: a code state's
|
|
240
|
+
`instructions`/`model`/`budget`/`evidence`/`approvers`; a grader without
|
|
241
|
+
`instructions` or without a transition, or with `evidence`/`approvers`/
|
|
242
|
+
`budget.maxParks`. There are **no `before:`/`after:` hooks and no root
|
|
243
|
+
`extensions:`** — a leftover key is a load error naming it. Script contract:
|
|
244
|
+
[`code-states-and-scripts.md`](code-states-and-scripts.md).
|
|
245
|
+
- **Automated-state patterns.** A deterministic check **in front of** a state:
|
|
246
|
+
make the trigger's entry (or the edge's target) a code state that advances
|
|
247
|
+
to the work or to a state that declines it. A check **behind** a state: point
|
|
248
|
+
the state's transition at a code state that advances onward, or back with
|
|
249
|
+
the fix as its `reason` — the agent reads it and advances again. **Approve,
|
|
250
|
+
then end**: approve into a terminal code state, which costs no model call.
|
|
251
|
+
Judgment (tone, completeness): a grader behind the graded state with an edge
|
|
252
|
+
back; its `instructions` say when to raise ("after two send-backs" = two
|
|
253
|
+
trail steps `{ kind: grader, to: <graded state> }`). Grade work the agent
|
|
254
|
+
hands on (a report, a draft), not a live answer: a turn's `reply` is every
|
|
255
|
+
text the agent said in it, so a draft sent back has reached the person.
|
|
189
256
|
- **Budgets and `on_error`.** `budget.maxTurns`/`timeoutMs`/`maxParks` bound
|
|
190
|
-
a state's segment
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
257
|
+
a state's segment (on a grader: its own model calls and run time; a code
|
|
258
|
+
state takes no `budget`, `settings.timeoutMs` bounds its script). There is
|
|
259
|
+
no root `budget` (declaring one is a load error): a whole turn is bounded by
|
|
260
|
+
LangGraph's `recursionLimit` (400 unless the host's invoke config sets one),
|
|
261
|
+
and a turn that hits it — a cycle between states, say — ends the session
|
|
262
|
+
`failed` (`recursion-limit`). A terminal failure (exhausted budget, exhausted parks, a
|
|
263
|
+
grader or code state that fails) routes to `on_error` instead of failing the
|
|
264
|
+
run; recoverable rejections (invalid edge, unmet `requires`) keep the agent
|
|
265
|
+
in place. Declare `on_error` on every automated state and on bounded loops.
|
|
266
|
+
A **tool that throws** is neither: the call is answered with an error-status tool message carrying
|
|
196
267
|
the error, the agent stays in the state and can retry or switch tools, and
|
|
197
268
|
`on_error` never sees it (a park or a cancelled run still propagates).
|
|
198
269
|
- **Sub-workflows are tools.** Allow `archmax_workflow_<slug>` (slug verbatim)
|
|
@@ -220,10 +291,12 @@ states:
|
|
|
220
291
|
sub-run; fan out with parallel tool calls or `Promise.all` in a script
|
|
221
292
|
(bounds: depth 3, 4 concurrent). A child's human state parks the child;
|
|
222
293
|
a script's delegation cannot park and fails closed.
|
|
223
|
-
- **Choosing a mechanism.** Deterministic work
|
|
224
|
-
script.
|
|
225
|
-
|
|
226
|
-
|
|
294
|
+
- **Choosing a mechanism.** Deterministic work the agent triggers → an
|
|
295
|
+
`archmax_run` script. Deterministic work the graph runs at a fixed point (a
|
|
296
|
+
screen, a policy check, a record) → a code state. Delegated work that is itself
|
|
297
|
+
a process or reused across workflows → a sub-workflow. Judging work already
|
|
298
|
+
done → a grader state. Neither automated kind is callable by the agent (`task`
|
|
299
|
+
is disclosed nowhere and not grantable).
|
|
227
300
|
- **Prompt economy.** The static prompt + tool schemas are re-sent every
|
|
228
301
|
model call. The static part carries the workflow's `title` + `instructions`
|
|
229
302
|
and **no state of the graph**; a state's `instructions` and its **own**
|
|
@@ -239,14 +312,19 @@ states:
|
|
|
239
312
|
|
|
240
313
|
Only the state it is in. Every model call is handed that state's outgoing edges
|
|
241
314
|
and nothing else of the machine — no other state's slug, `title`, `summary`,
|
|
242
|
-
|
|
315
|
+
script, criteria or transitions, and no count of the states:
|
|
243
316
|
|
|
244
317
|
```
|
|
245
318
|
Transitions — choose one with `archmax_advance` when this state's work is done:
|
|
319
|
+
- to `check-policy` (code) — The decision is recorded in scratchpad/refund.json.
|
|
246
320
|
- to `review` (human decision node) — The decision is recorded and needs a person's approval.
|
|
321
|
+
- to `grade-reply` (grader) — The email is drafted in scratchpad/reply.md.
|
|
247
322
|
- to `closed` (terminal) — Nothing to refund; the case is answered.
|
|
248
323
|
```
|
|
249
324
|
|
|
325
|
+
A `(grader)` or `(code)` target runs on its own and may send the run straight
|
|
326
|
+
back with a note saying what to change.
|
|
327
|
+
|
|
250
328
|
Two rules follow, and they are the ones authors get wrong:
|
|
251
329
|
|
|
252
330
|
1. **Write the `description` for the source state, not the target.** The agent
|
|
@@ -254,12 +332,19 @@ Two rules follow, and they are the ones authors get wrong:
|
|
|
254
332
|
`The refund is over $50, or the customer has asked twice.` Not `Go to
|
|
255
333
|
refund-review.` — that tells a reader who already knows the graph something
|
|
256
334
|
they cannot use, and tells this reader nothing.
|
|
257
|
-
2. **Routing conditions cannot live downstream.** A target's `summary`
|
|
258
|
-
|
|
259
|
-
condition is "when the order is over 30 days old", it
|
|
335
|
+
2. **Routing conditions cannot live downstream.** A target's `summary` is never
|
|
336
|
+
disclosed to the state routing into it, nor its `instructions` across a
|
|
337
|
+
described edge. If the condition is "when the order is over 30 days old", it
|
|
338
|
+
belongs on the edge.
|
|
260
339
|
|
|
261
|
-
|
|
262
|
-
|
|
340
|
+
An **undescribed** edge (no `description`, or a blank one) routes on its target's
|
|
341
|
+
`instructions` instead, quoted under the edge's line as what the agent will do
|
|
342
|
+
once there: leave one undescribed only when those instructions already say when
|
|
343
|
+
it applies. It is a **load error** where the target has no instructions, on a
|
|
344
|
+
human state's transitions (the description is the button label), and into a
|
|
345
|
+
grader or code state (a grader's instructions are criteria the work is never
|
|
346
|
+
shown; a code state has none). A code state's own edges may go undescribed: its
|
|
347
|
+
script routes. There is no other way to see more of the graph.
|
|
263
348
|
|
|
264
349
|
## Governance
|
|
265
350
|
|
|
@@ -276,8 +361,20 @@ Closed by default; **deny beats allow, and no narrower level widens a denial.**
|
|
|
276
361
|
`essentialTools`. Any other tool needs an `allow`/`allow_always` entry. A
|
|
277
362
|
state entry naming a granted tool **narrows** it there, and one naming a
|
|
278
363
|
default tool the list omits grants it there. `task` is ungrantable (error).
|
|
364
|
+
- **In a grader or code state** the surface is what the state is granted (the
|
|
365
|
+
workflow-wide grant included), minus `write_todos`, `archmax_eval`,
|
|
366
|
+
`archmax_run`, `archmax_wait` and `archmax_reset` even when `allow_always` lists
|
|
367
|
+
them (naming one in the state's
|
|
368
|
+
own `tools.allow` is an error), plus one control set for both types:
|
|
369
|
+
`archmax_advance`, `archmax_raise`, `archmax_get_variables`,
|
|
370
|
+
`archmax_set_variables` and `archmax_get_history` — never `archmax_wait` or
|
|
371
|
+
`archmax_reset`.
|
|
279
372
|
- **Entries**: bare name; `{ tool, args: { <arg>: ["glob", …] } }` (matches
|
|
280
|
-
if any glob matches; `${{var}}` allowed)
|
|
373
|
+
if any glob matches; `${{var}}` allowed). An argument the tool declares as a
|
|
374
|
+
path (else `file_path`) is canonicalized first; any other argument (a URL, an
|
|
375
|
+
address, an email) is matched **as written**, and a denial also catches its
|
|
376
|
+
path form. `""` matches only an empty value. `*` never crosses `/` (`**` does).
|
|
377
|
+
`{ tool, paths: [...] }`
|
|
281
378
|
(guards every path argument the tool declares — all must match to grant,
|
|
282
379
|
any matching denies). `"*"` as the tool is legal only in a
|
|
283
380
|
forbid list. Globs match dot-segments (`secrets/**` covers `secrets/.env`).
|
|
@@ -293,8 +390,10 @@ Closed by default; **deny beats allow, and no narrower level widens a denial.**
|
|
|
293
390
|
in the prompt). `allow` adds, `forbid` subtracts, `allow: []` denies
|
|
294
391
|
nothing. A `tools.allow` entry may still narrow *within* an enabled bundle.
|
|
295
392
|
A state enabling no skill can run no script at all.
|
|
296
|
-
- **Scripts' `tools.*` calls** are governed per call
|
|
297
|
-
is bound like the model (grant every tool it
|
|
298
|
-
the
|
|
299
|
-
|
|
300
|
-
|
|
393
|
+
- **Scripts' `tools.*` calls** are governed per call against the state they
|
|
394
|
+
run in: an `archmax_run` script is bound like the model (grant every tool it
|
|
395
|
+
calls in the agent's state); a code state's script is bound by **its own**
|
|
396
|
+
state's grants (`tools`, `skills`, `mounts`) — there is no runtime authority.
|
|
397
|
+
`tools` holds exactly that state's surface: anything else is `undefined`.
|
|
398
|
+
Neither may read `workflows/**` or write a read-only mount. A refused call
|
|
399
|
+
rejects inside the script.
|
package/dist/cli/state-flow.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export interface StateFlowRenderer {
|
|
|
11
11
|
/**
|
|
12
12
|
* Build a renderer that writes an append-only, hierarchical state flow to
|
|
13
13
|
* `stream`. Assembly-time events (`interpreter-enabled`,
|
|
14
|
-
* `
|
|
14
|
+
* `graph-topology`, `workflow-reset`) are ignored — the CLI
|
|
15
15
|
* prints its own session header. The `advance` event only renders the agent's
|
|
16
16
|
* one-sentence `reason` (the target itself is shown by the following `state-leave`).
|
|
17
17
|
*/
|
package/dist/cli/state-flow.js
CHANGED
|
@@ -10,17 +10,17 @@
|
|
|
10
10
|
*
|
|
11
11
|
* The trail uses two indentation tiers so a session reads as a hierarchy:
|
|
12
12
|
* state changes (`state-enter`, `state-leave`) sit at the outer margin, and
|
|
13
|
-
* what happened *inside* a state (
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* events are dropped to keep the trail readable.
|
|
13
|
+
* what happened *inside* a state (a code state's script and its output, a
|
|
14
|
+
* grader's run, tool calls, the agent's own text, quoted) is indented beneath
|
|
15
|
+
* it. Code states are colour-coded blue, graders magenta. Assembly-time and
|
|
16
|
+
* high-frequency telemetry events are dropped to keep the trail readable.
|
|
17
17
|
*/
|
|
18
18
|
import { isChildSessionOf } from "../sessions/scope.js";
|
|
19
19
|
import { originLabel } from "../core/events.js";
|
|
20
20
|
import { ADVANCE_TOOL, RAISE_TOOL } from "../machine/tool-names.js";
|
|
21
21
|
import { exitCodeForVerdict } from "../testing/runner.js";
|
|
22
22
|
import { createStyle, icons } from "./style.js";
|
|
23
|
-
/** Indentation for per-state action lines (
|
|
23
|
+
/** Indentation for per-state action lines (an automated run, agent text). */
|
|
24
24
|
const ACTION_INDENT = " ";
|
|
25
25
|
/** Deeper indentation for output nested under an action (e.g. script stdout). */
|
|
26
26
|
const OUTPUT_INDENT = " ";
|
|
@@ -31,13 +31,12 @@ const LIST_INDENT = " ";
|
|
|
31
31
|
/**
|
|
32
32
|
* Build a renderer that writes an append-only, hierarchical state flow to
|
|
33
33
|
* `stream`. Assembly-time events (`interpreter-enabled`,
|
|
34
|
-
* `
|
|
34
|
+
* `graph-topology`, `workflow-reset`) are ignored — the CLI
|
|
35
35
|
* prints its own session header. The `advance` event only renders the agent's
|
|
36
36
|
* one-sentence `reason` (the target itself is shown by the following `state-leave`).
|
|
37
37
|
*/
|
|
38
38
|
export function createStateFlowRenderer(stream, styleOverride) {
|
|
39
39
|
const s = styleOverride ?? createStyle();
|
|
40
|
-
const phaseColor = (phase) => (phase === "before" ? s.blue : s.magenta);
|
|
41
40
|
const write = (line) => stream.write(`${line}\n`);
|
|
42
41
|
const writeAgentText = (text) => {
|
|
43
42
|
for (const line of text.split("\n"))
|
|
@@ -76,28 +75,22 @@ export function createStateFlowRenderer(stream, styleOverride) {
|
|
|
76
75
|
write(`${s.yellow(icons.warn)} ${event.state} ${s.dim(icons.arrow)} ${s.yellow(event.to)} ` +
|
|
77
76
|
s.dim(`(on_error: ${event.reason})`));
|
|
78
77
|
break;
|
|
79
|
-
case "
|
|
80
|
-
write(`${ACTION_INDENT}${
|
|
78
|
+
case "code-start":
|
|
79
|
+
write(`${ACTION_INDENT}${s.blue(`${icons.bullet} code`)} ${s.dim(event.script)}`);
|
|
81
80
|
break;
|
|
82
|
-
case "
|
|
81
|
+
case "code-output":
|
|
83
82
|
write(`${OUTPUT_INDENT}${s.dim(event.line)}`);
|
|
84
83
|
break;
|
|
85
|
-
case "
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
: event.verdict === "veto"
|
|
93
|
-
? s.red(icons.cross)
|
|
94
|
-
: s.yellow(icons.inProgress);
|
|
95
|
-
write(`${ACTION_INDENT}${mark} ${phaseColor(event.phase)(event.phase)} ` +
|
|
96
|
-
`${s.dim(`${event.verdict} — ${event.reason}${missing}`)}`);
|
|
84
|
+
case "code-result":
|
|
85
|
+
case "grader-result":
|
|
86
|
+
// A run that settled says nothing more: its move or its raise is the
|
|
87
|
+
// next line. Only a failure needs saying here.
|
|
88
|
+
if (event.status === "error") {
|
|
89
|
+
write(`${ACTION_INDENT}${s.red(`${icons.cross} ${event.type === "code-result" ? "code" : "grader"} failed`)} ${s.dim(event.reason ?? "")}`);
|
|
90
|
+
}
|
|
97
91
|
break;
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
write(`${ACTION_INDENT}${s.red(icons.cross)} ${s.red(`${event.phase} rejected`)} ${s.dim(event.reason)}`);
|
|
92
|
+
case "grader-start":
|
|
93
|
+
write(`${ACTION_INDENT}${s.magenta(`${icons.bullet} grader`)} ${s.dim("grading")}`);
|
|
101
94
|
break;
|
|
102
95
|
case "tool-called":
|
|
103
96
|
// The transition tool is reported by the state lines and the advance
|
|
@@ -171,12 +164,9 @@ export function createStateFlowRenderer(stream, styleOverride) {
|
|
|
171
164
|
break;
|
|
172
165
|
case "workflow-reset":
|
|
173
166
|
case "interpreter-enabled":
|
|
174
|
-
case "hooks-summary":
|
|
175
167
|
case "graph-topology":
|
|
176
168
|
case "agent-text-delta":
|
|
177
169
|
case "tool-result":
|
|
178
|
-
case "rubric-start":
|
|
179
|
-
case "rubric-result":
|
|
180
170
|
case "model-usage":
|
|
181
171
|
case "prompt-shaping":
|
|
182
172
|
// Lifecycle summaries and high-frequency (GUI-oriented) telemetry.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-flow.js","sourceRoot":"","sources":["../../src/cli/state-flow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,WAAW,EAA2B,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAmC,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,KAAK,EAAc,MAAM,YAAY,CAAC;AAW5D,kEAAkE;AAClE,MAAM,aAAa,GAAG,MAAM,CAAC;AAC7B,iFAAiF;AACjF,MAAM,aAAa,GAAG,QAAQ,CAAC;AAC/B,mEAAmE;AACnE,MAAM,aAAa,GAAG,QAAQ,CAAC;AAC/B,sDAAsD;AACtD,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAuB,EACvB,aAAqB;IAErB,MAAM,CAAC,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE;QACtC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/F,CAAC,CAAC;IACF,+FAA+F;IAC/F,IAAI,QAA4B,CAAC;IAEjC,OAAO;QACL,OAAO,CAAC,KAAyB;YAC/B,wEAAwE;YACxE,qEAAqE;YACrE,yEAAyE;YACzE,+DAA+D;YAC/D,IAAK,KAA4C,CAAC,qBAAqB,EAAE,CAAC;gBACxE,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB;oBAAE,OAAO;YAC1F,CAAC;YACD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,aAAa;oBAChB,KAAK,CAAC,EAAE,CAAC,CAAC;oBACV,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC5D,MAAM;gBACR,KAAK,aAAa;oBAChB,IAAI,QAAQ,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;wBAC7B,QAAQ,GAAG,SAAS,CAAC;wBACrB,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;wBACvF,MAAM;oBACR,CAAC;oBACD,KAAK,CACH,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CACrF,CAAC;oBACF,MAAM;gBACR,KAAK,QAAQ;oBACX,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;oBACvB,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAChG,MAAM;gBACR,KAAK,oBAAoB;oBACvB,KAAK,CACH,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG;wBACnF,CAAC,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,MAAM,GAAG,CAAC,CACvC,CAAC;oBACF,MAAM;gBACR,KAAK,YAAY;oBACf,KAAK,CACH,GAAG,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CACrG,CAAC;oBACF,MAAM;gBACR,KAAK,aAAa;oBAChB,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC9C,MAAM;gBACR,KAAK,aAAa;oBAChB,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC,CAAC;oBACnF,MAAM;gBACR,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,MAAM,IAAI,GACR,KAAK,CAAC,OAAO,KAAK,IAAI;wBACpB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;wBACtB,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM;4BACxB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;4BACpB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBACnC,KAAK,CACH,GAAG,aAAa,GAAG,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG;wBAChE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,EAAE,CAC7D,CAAC;oBACF,MAAM;gBACR,CAAC;gBACD,KAAK,eAAe;oBAClB,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CACnG,CAAC;oBACF,MAAM;gBACR,KAAK,aAAa;oBAChB,qEAAqE;oBACrE,oEAAoE;oBACpE,sCAAsC;oBACtC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;wBAAE,MAAM;oBACpE,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;wBAC5D,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;wBACnD,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CACvE,CAAC;oBACF,MAAM;gBACR,KAAK,cAAc;oBACjB,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG;wBACnE,GAAG,CAAC,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC9G,CAAC;oBACF,MAAM;gBACR,KAAK,YAAY;oBACf,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3B,MAAM;gBACR,KAAK,SAAS;oBACZ,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;wBACtB,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC7E,MAAM;gBACR,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,+DAA+D;oBAC/D,6DAA6D;oBAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC;oBACzC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,yBAAyB,CAAC;oBACnE,MAAM,GAAG,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7E,MAAM,GAAG,GAAG,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtE,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,GAAG;wBACtD,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,CAClE,CAAC;oBACF,MAAM;gBACR,CAAC;gBACD,sEAAsE;gBACtE,uEAAuE;gBACvE,mEAAmE;gBACnE,KAAK,oBAAoB;oBACvB,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE;wBACtF,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAChE,CAAC;oBACF,MAAM;gBACR,KAAK,qBAAqB;oBACxB,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC9B,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;4BACxC,GAAG,CAAC,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,QAAQ,wCAAwC,CAAC,EAAE,CACrF,CAAC;oBACJ,CAAC;yBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;wBACjC,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAC7G,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,QAAQ,SAAS,CAAC,GAAG;4BACxF,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CACjC,CAAC;oBACJ,CAAC;oBACD,MAAM;gBACR,KAAK,SAAS;oBACZ,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;oBACrF,MAAM;gBACR,kEAAkE;gBAClE,oEAAoE;gBACpE,8DAA8D;gBAC9D,KAAK,cAAc;oBACjB,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;wBAClC,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,oCAAoC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CACvG,CAAC;wBACF,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;oBACD,MAAM;gBACR,KAAK,WAAW;oBACd,KAAK,CACH,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,wBAAwB,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAC1G,CAAC;oBACF,MAAM;gBACR,KAAK,SAAS;oBACZ,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC/E,MAAM;gBACR,KAAK,gBAAgB,CAAC;gBACtB,KAAK,qBAAqB,CAAC;gBAC3B,KAAK,eAAe,CAAC;gBACrB,KAAK,gBAAgB,CAAC;gBACtB,KAAK,kBAAkB,CAAC;gBACxB,KAAK,aAAa,CAAC;gBACnB,KAAK,cAAc,CAAC;gBACpB,KAAK,eAAe,CAAC;gBACrB,KAAK,aAAa,CAAC;gBACnB,KAAK,gBAAgB;oBACnB,mEAAmE;oBACnE,MAAM;YACV,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAuBD,uGAAuG;AACvG,MAAM,UAAU,eAAe,CAAC,CAAQ,EAAE,MAAkB;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,QAAQ,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9B,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;QACxD,KAAK,SAAS;YACZ,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,EAAE,GAAG,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC5H,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,aAAqB;IAC3E,MAAM,CAAC,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IAC1D,IAAI,SAAS,GAA6B,IAAI,CAAC;IAC/C,IAAI,cAAkC,CAAC;IAEvC,OAAO;QACL,WAAW,CAAC,IAAI,EAAE,SAAS;YACzB,cAAc,GAAG,SAAS,CAAC;YAC3B,SAAS,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/C,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,YAAY,CAAC,MAAM;YACjB,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAClC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ;gBAC3C,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnE,wEAAwE;YACxE,uEAAuE;YACvE,uEAAuE;YACvE,2CAA2C;YAC3C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,CAC1D,EAAE,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtF,KAAK,CACH,GAAG,aAAa,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,CAChG,CAAC;YACJ,CAAC;YACD,iFAAiF;YACjF,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC,MAAM,CAAC;YACrF,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,GAAG,WAAW,IAAI,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,eAAe,CAAC;gBAC7F,KAAK,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAED,OAAO,CAAC,KAAK;YACX,yEAAyE;YACzE,qEAAqE;YACrE,MAAM,KAAK,GAAI,KAAgC,CAAC,SAAS,CAAC;YAC1D,IACE,cAAc;gBACd,KAAK;gBACL,KAAK,KAAK,cAAc;gBACxB,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,EACxC,CAAC;gBACD,OAAO;YACT,CAAC;YACD,wEAAwE;YACxE,iDAAiD;YACjD,SAAS,KAAK,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACjD,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAED,kBAAkB,CAAC,QAAQ,EAAE,MAAM;YACjC,MAAM,GAAG,GAAG,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,MAAM,CAAC;YACxE,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CACH,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,QAAQ,gBAAgB,CAAC,EAAE,CACxG,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,OAAO;YACnB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;YACtE,qEAAqE;YACrE,iCAAiC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7E,CAAC;YACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAElF,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CACH,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC,GAAG;gBAC9C,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,MAAM,YAAY,OAAO,CAAC,MAAM,UAAU,CAAC,CACvF,CAAC;YACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtE,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,OAAO,CAAC,MAAM,iBAAiB,CAAC,CAAC;gBACpF,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACtF,KAAK,MAAM,CAAC,IAAI,MAAM;gBAAE,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChF,KAAK,MAAM,CAAC,IAAI,MAAM;gBAAE,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClF,KAAK,MAAM,CAAC,IAAI,OAAO;gBAAE,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"state-flow.js","sourceRoot":"","sources":["../../src/cli/state-flow.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/turn.d.ts
CHANGED
|
@@ -34,7 +34,7 @@ export interface RunTurnInput {
|
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* Report a turn's {@link Outcome}: an answer, a park (with what resumes it), a
|
|
37
|
-
* rejection, a failure the
|
|
37
|
+
* rejection, a failure the session raised, or a resume's result. Returns the exit
|
|
38
38
|
* code: a park is a success, a rejection or a failure is not.
|
|
39
39
|
*/
|
|
40
40
|
export declare function printOutcome(style: Style, machine: WorkflowMachine, sessionId: string, outcome: Outcome): number;
|
package/dist/cli/turn.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { lastAgentText } from "../core/messages.js";
|
|
2
1
|
import { formatUsage, hasUsage } from "../core/usage.js";
|
|
3
2
|
import { icons } from "./style.js";
|
|
4
3
|
import { CliError, err, out } from "./command.js";
|
|
@@ -81,7 +80,7 @@ export function printResumed(style, sessionId, verb, outcome) {
|
|
|
81
80
|
return 1;
|
|
82
81
|
}
|
|
83
82
|
err(style.green(style.bold(`${icons.check} ${verb}`)));
|
|
84
|
-
out(
|
|
83
|
+
out(outcome.reply || `Session ${sessionId} resumed (state=${outcome.workflowState ?? "?"}).`);
|
|
85
84
|
return 0;
|
|
86
85
|
}
|
|
87
86
|
export function printReply(style, sessionId, outcome) {
|
|
@@ -101,7 +100,7 @@ function printParkMessage(style, reply) {
|
|
|
101
100
|
}
|
|
102
101
|
/**
|
|
103
102
|
* Report a turn's {@link Outcome}: an answer, a park (with what resumes it), a
|
|
104
|
-
* rejection, a failure the
|
|
103
|
+
* rejection, a failure the session raised, or a resume's result. Returns the exit
|
|
105
104
|
* code: a park is a success, a rejection or a failure is not.
|
|
106
105
|
*/
|
|
107
106
|
export function printOutcome(style, machine, sessionId, outcome) {
|
package/dist/cli/turn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn.js","sourceRoot":"","sources":["../../src/cli/turn.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"turn.js","sourceRoot":"","sources":["../../src/cli/turn.ts"],"names":[],"mappings":"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"}
|