@duckcodeailabs/dql-agent 1.6.21 → 1.6.23
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/agent-run-engine.d.ts +287 -0
- package/dist/agent-run-engine.d.ts.map +1 -0
- package/dist/agent-run-engine.js +916 -0
- package/dist/agent-run-engine.js.map +1 -0
- package/dist/agent-run-gates.d.ts +26 -0
- package/dist/agent-run-gates.d.ts.map +1 -0
- package/dist/agent-run-gates.js +170 -0
- package/dist/agent-run-gates.js.map +1 -0
- package/dist/agent-run-planner.d.ts +32 -0
- package/dist/agent-run-planner.d.ts.map +1 -0
- package/dist/agent-run-planner.js +280 -0
- package/dist/agent-run-planner.js.map +1 -0
- package/dist/answer-loop.d.ts +49 -0
- package/dist/answer-loop.d.ts.map +1 -1
- package/dist/answer-loop.js +292 -17
- package/dist/answer-loop.js.map +1 -1
- package/dist/app-builder.d.ts +6 -0
- package/dist/app-builder.d.ts.map +1 -1
- package/dist/app-builder.js +95 -2
- package/dist/app-builder.js.map +1 -1
- package/dist/app-planner.d.ts +78 -0
- package/dist/app-planner.d.ts.map +1 -0
- package/dist/app-planner.js +145 -0
- package/dist/app-planner.js.map +1 -0
- package/dist/embeddings/provider.d.ts +66 -0
- package/dist/embeddings/provider.d.ts.map +1 -0
- package/dist/embeddings/provider.js +105 -0
- package/dist/embeddings/provider.js.map +1 -0
- package/dist/hints/git-store.d.ts +69 -0
- package/dist/hints/git-store.d.ts.map +1 -0
- package/dist/hints/git-store.js +244 -0
- package/dist/hints/git-store.js.map +1 -0
- package/dist/hints/retrieval.d.ts +49 -0
- package/dist/hints/retrieval.d.ts.map +1 -0
- package/dist/hints/retrieval.js +60 -0
- package/dist/hints/retrieval.js.map +1 -0
- package/dist/hints/store.d.ts +39 -0
- package/dist/hints/store.d.ts.map +1 -0
- package/dist/hints/store.js +279 -0
- package/dist/hints/store.js.map +1 -0
- package/dist/hints/types.d.ts +147 -0
- package/dist/hints/types.d.ts.map +1 -0
- package/dist/hints/types.js +92 -0
- package/dist/hints/types.js.map +1 -0
- package/dist/index.d.ts +43 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -3
- package/dist/index.js.map +1 -1
- package/dist/intent-controller.d.ts +63 -0
- package/dist/intent-controller.d.ts.map +1 -0
- package/dist/intent-controller.js +150 -0
- package/dist/intent-controller.js.map +1 -0
- package/dist/kg/build.d.ts.map +1 -1
- package/dist/kg/build.js +2 -0
- package/dist/kg/build.js.map +1 -1
- package/dist/kg/sqlite-fts.js +4 -0
- package/dist/kg/sqlite-fts.js.map +1 -1
- package/dist/kg/types.d.ts +10 -0
- package/dist/kg/types.d.ts.map +1 -1
- package/dist/metadata/catalog.d.ts +81 -4
- package/dist/metadata/catalog.d.ts.map +1 -1
- package/dist/metadata/catalog.js +208 -1
- package/dist/metadata/catalog.js.map +1 -1
- package/dist/metadata/drafts.d.ts +22 -0
- package/dist/metadata/drafts.d.ts.map +1 -1
- package/dist/metadata/drafts.js +126 -2
- package/dist/metadata/drafts.js.map +1 -1
- package/dist/metadata/grain-gate.d.ts +61 -0
- package/dist/metadata/grain-gate.d.ts.map +1 -0
- package/dist/metadata/grain-gate.js +265 -0
- package/dist/metadata/grain-gate.js.map +1 -0
- package/dist/metadata/identity.d.ts +47 -0
- package/dist/metadata/identity.d.ts.map +1 -0
- package/dist/metadata/identity.js +147 -0
- package/dist/metadata/identity.js.map +1 -0
- package/dist/metadata/metric-match.d.ts +93 -0
- package/dist/metadata/metric-match.d.ts.map +1 -0
- package/dist/metadata/metric-match.js +233 -0
- package/dist/metadata/metric-match.js.map +1 -0
- package/dist/metadata/sql-grounding.d.ts +149 -0
- package/dist/metadata/sql-grounding.d.ts.map +1 -0
- package/dist/metadata/sql-grounding.js +397 -0
- package/dist/metadata/sql-grounding.js.map +1 -0
- package/dist/metadata/sql-retrieval.d.ts +29 -0
- package/dist/metadata/sql-retrieval.d.ts.map +1 -0
- package/dist/metadata/sql-retrieval.js +79 -0
- package/dist/metadata/sql-retrieval.js.map +1 -0
- package/dist/narrate.d.ts +52 -0
- package/dist/narrate.d.ts.map +1 -0
- package/dist/narrate.js +263 -0
- package/dist/narrate.js.map +1 -0
- package/dist/propose/build-from-prompt.d.ts +160 -0
- package/dist/propose/build-from-prompt.d.ts.map +1 -0
- package/dist/propose/build-from-prompt.js +815 -0
- package/dist/propose/build-from-prompt.js.map +1 -0
- package/dist/propose/classify.d.ts +55 -0
- package/dist/propose/classify.d.ts.map +1 -0
- package/dist/propose/classify.js +167 -0
- package/dist/propose/classify.js.map +1 -0
- package/dist/propose/config.d.ts +39 -0
- package/dist/propose/config.d.ts.map +1 -0
- package/dist/propose/config.js +52 -0
- package/dist/propose/config.js.map +1 -0
- package/dist/propose/dbt-artifacts.d.ts +134 -0
- package/dist/propose/dbt-artifacts.d.ts.map +1 -0
- package/dist/propose/dbt-artifacts.js +320 -0
- package/dist/propose/dbt-artifacts.js.map +1 -0
- package/dist/propose/edit-block.d.ts +74 -0
- package/dist/propose/edit-block.d.ts.map +1 -0
- package/dist/propose/edit-block.js +133 -0
- package/dist/propose/edit-block.js.map +1 -0
- package/dist/propose/enrich.d.ts +48 -0
- package/dist/propose/enrich.d.ts.map +1 -0
- package/dist/propose/enrich.js +125 -0
- package/dist/propose/enrich.js.map +1 -0
- package/dist/propose/generate-sql.d.ts +61 -0
- package/dist/propose/generate-sql.d.ts.map +1 -0
- package/dist/propose/generate-sql.js +180 -0
- package/dist/propose/generate-sql.js.map +1 -0
- package/dist/propose/index.d.ts +24 -0
- package/dist/propose/index.d.ts.map +1 -0
- package/dist/propose/index.js +15 -0
- package/dist/propose/index.js.map +1 -0
- package/dist/propose/propose.d.ts +226 -0
- package/dist/propose/propose.d.ts.map +1 -0
- package/dist/propose/propose.js +668 -0
- package/dist/propose/propose.js.map +1 -0
- package/dist/propose/reflect-block.d.ts +99 -0
- package/dist/propose/reflect-block.d.ts.map +1 -0
- package/dist/propose/reflect-block.js +220 -0
- package/dist/propose/reflect-block.js.map +1 -0
- package/dist/propose/write-draft.d.ts +90 -0
- package/dist/propose/write-draft.d.ts.map +1 -0
- package/dist/propose/write-draft.js +185 -0
- package/dist/propose/write-draft.js.map +1 -0
- package/dist/providers/claude.d.ts +13 -1
- package/dist/providers/claude.d.ts.map +1 -1
- package/dist/providers/claude.js +20 -2
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/gemini.d.ts +13 -1
- package/dist/providers/gemini.d.ts.map +1 -1
- package/dist/providers/gemini.js +24 -3
- package/dist/providers/gemini.js.map +1 -1
- package/dist/providers/index.d.ts +3 -3
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +3 -3
- package/dist/providers/index.js.map +1 -1
- package/dist/research-loop.d.ts +62 -0
- package/dist/research-loop.d.ts.map +1 -0
- package/dist/research-loop.js +210 -0
- package/dist/research-loop.js.map +1 -0
- package/dist/skills/defaults.d.ts +37 -0
- package/dist/skills/defaults.d.ts.map +1 -0
- package/dist/skills/defaults.js +152 -0
- package/dist/skills/defaults.js.map +1 -0
- package/dist/skills/loader.d.ts +60 -0
- package/dist/skills/loader.d.ts.map +1 -1
- package/dist/skills/loader.js +164 -2
- package/dist/skills/loader.js.map +1 -1
- package/package.json +7 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run-engine.js","sourceRoot":"","sources":["../src/agent-run-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executable evaluation gates for the agent run loop.
|
|
3
|
+
*
|
|
4
|
+
* A gate runs *after* a route executor and returns the authoritative evaluations
|
|
5
|
+
* for that step. Unlike the executors' inline (descriptive) evaluations, gate
|
|
6
|
+
* evaluations are the contract the engine loop reads to decide whether to accept,
|
|
7
|
+
* repair, or escalate a step:
|
|
8
|
+
*
|
|
9
|
+
* - `passed: false` + `suggestedRepair` marks an actionable failure.
|
|
10
|
+
* - `repairAction.kind: "retry"` re-runs the same route with the hint.
|
|
11
|
+
* - `repairAction.kind: "escalate"` switches to `repairAction.route`.
|
|
12
|
+
* - severity `blocking` keeps the run blocked if the failure survives the loop;
|
|
13
|
+
* severity `warning` lets the run finish as review-required instead.
|
|
14
|
+
*
|
|
15
|
+
* Gates read the evidence the executors already attach to their artifacts/results
|
|
16
|
+
* (governed answer payloads, certifier verdicts, app-build sessions, research
|
|
17
|
+
* grounding), so they stay pure and offline-testable.
|
|
18
|
+
*/
|
|
19
|
+
import type { AgentRunGates } from "./agent-run-engine.js";
|
|
20
|
+
/**
|
|
21
|
+
* The default gate registry the local runtime wires into the engine. Keys are the
|
|
22
|
+
* routes that have a meaningful executable check; routes without a gate fall back
|
|
23
|
+
* to the executor's own evaluations.
|
|
24
|
+
*/
|
|
25
|
+
export declare const defaultAgentRunGates: AgentRunGates;
|
|
26
|
+
//# sourceMappingURL=agent-run-gates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run-gates.d.ts","sourceRoot":"","sources":["../src/agent-run-gates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAIV,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAwJ/B;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAOlC,CAAC"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executable evaluation gates for the agent run loop.
|
|
3
|
+
*
|
|
4
|
+
* A gate runs *after* a route executor and returns the authoritative evaluations
|
|
5
|
+
* for that step. Unlike the executors' inline (descriptive) evaluations, gate
|
|
6
|
+
* evaluations are the contract the engine loop reads to decide whether to accept,
|
|
7
|
+
* repair, or escalate a step:
|
|
8
|
+
*
|
|
9
|
+
* - `passed: false` + `suggestedRepair` marks an actionable failure.
|
|
10
|
+
* - `repairAction.kind: "retry"` re-runs the same route with the hint.
|
|
11
|
+
* - `repairAction.kind: "escalate"` switches to `repairAction.route`.
|
|
12
|
+
* - severity `blocking` keeps the run blocked if the failure survives the loop;
|
|
13
|
+
* severity `warning` lets the run finish as review-required instead.
|
|
14
|
+
*
|
|
15
|
+
* Gates read the evidence the executors already attach to their artifacts/results
|
|
16
|
+
* (governed answer payloads, certifier verdicts, app-build sessions, research
|
|
17
|
+
* grounding), so they stay pure and offline-testable.
|
|
18
|
+
*/
|
|
19
|
+
function asRecord(value) {
|
|
20
|
+
return value && typeof value === "object" && !Array.isArray(value)
|
|
21
|
+
? value
|
|
22
|
+
: undefined;
|
|
23
|
+
}
|
|
24
|
+
function primaryArtifactPayload(result) {
|
|
25
|
+
const artifact = result.artifacts?.[0];
|
|
26
|
+
return artifact ? asRecord(artifact.payload) : undefined;
|
|
27
|
+
}
|
|
28
|
+
function baseEvaluations(result) {
|
|
29
|
+
return (result.evaluations ?? []).map((evaluation) => ({ ...evaluation }));
|
|
30
|
+
}
|
|
31
|
+
/** Replace (or append) an evaluation by id, keeping order stable. */
|
|
32
|
+
function upsert(evaluations, next) {
|
|
33
|
+
const index = evaluations.findIndex((evaluation) => evaluation.id === next.id);
|
|
34
|
+
if (index >= 0) {
|
|
35
|
+
const copy = [...evaluations];
|
|
36
|
+
copy[index] = next;
|
|
37
|
+
return copy;
|
|
38
|
+
}
|
|
39
|
+
return [...evaluations, next];
|
|
40
|
+
}
|
|
41
|
+
function nonEmptyString(value) {
|
|
42
|
+
return typeof value === "string" && value.trim().length > 0 ? value : undefined;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Answer routes (certified + generated). The repairable failure is a preview
|
|
46
|
+
* execution error (repair the SQL); a wholly empty answer escalates to research.
|
|
47
|
+
*/
|
|
48
|
+
const answerGate = ({ result }) => {
|
|
49
|
+
let evaluations = baseEvaluations(result);
|
|
50
|
+
const payload = primaryArtifactPayload(result);
|
|
51
|
+
const executionError = nonEmptyString(payload?.executionError)
|
|
52
|
+
?? evaluations.find((evaluation) => evaluation.id === "execution-error" && !evaluation.passed)?.message;
|
|
53
|
+
if (executionError) {
|
|
54
|
+
evaluations = upsert(evaluations, {
|
|
55
|
+
id: "execution-error",
|
|
56
|
+
label: "Preview execution",
|
|
57
|
+
passed: false,
|
|
58
|
+
severity: "warning",
|
|
59
|
+
message: `The generated SQL failed to execute against the bounded preview: ${executionError}`,
|
|
60
|
+
suggestedRepair: "Repair the generated SQL using the execution error and re-run the bounded preview.",
|
|
61
|
+
repairAction: { kind: "retry", hint: executionError },
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
const hasAnswer = nonEmptyString(result.answer)
|
|
65
|
+
?? nonEmptyString(payload?.answer)
|
|
66
|
+
?? nonEmptyString(payload?.text);
|
|
67
|
+
if (!hasAnswer && result.status !== "blocked") {
|
|
68
|
+
evaluations = upsert(evaluations, {
|
|
69
|
+
id: "grounding",
|
|
70
|
+
label: "Answer grounding",
|
|
71
|
+
passed: false,
|
|
72
|
+
severity: "blocking",
|
|
73
|
+
message: "No governed answer could be produced from the available certified context.",
|
|
74
|
+
suggestedRepair: "Investigate the question across governed metrics and lineage instead of answering directly.",
|
|
75
|
+
repairAction: { kind: "escalate", route: "research", hint: "Investigate to ground the answer." },
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
return evaluations;
|
|
79
|
+
};
|
|
80
|
+
/** Research is grounded but inherently exploratory — a thin dossier is a warning, not a repair loop. */
|
|
81
|
+
const researchGate = ({ result }) => {
|
|
82
|
+
const evaluations = baseEvaluations(result);
|
|
83
|
+
const grounding = evaluations.find((evaluation) => evaluation.id === "catalog-grounding");
|
|
84
|
+
if (grounding && !grounding.passed) {
|
|
85
|
+
return upsert(evaluations, {
|
|
86
|
+
...grounding,
|
|
87
|
+
severity: "warning",
|
|
88
|
+
suggestedRepair: undefined,
|
|
89
|
+
repairAction: undefined,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return evaluations;
|
|
93
|
+
};
|
|
94
|
+
/** SQL cell: the executable check is that runnable SQL was produced. */
|
|
95
|
+
const sqlCellGate = ({ result }) => {
|
|
96
|
+
const evaluations = baseEvaluations(result);
|
|
97
|
+
const payload = primaryArtifactPayload(result);
|
|
98
|
+
const sql = nonEmptyString(payload?.sql)
|
|
99
|
+
?? nonEmptyString(payload?.proposedSql)
|
|
100
|
+
?? nonEmptyString(payload?.sqlPreview);
|
|
101
|
+
if (!sql) {
|
|
102
|
+
return upsert(evaluations, {
|
|
103
|
+
id: "sql-produced",
|
|
104
|
+
label: "SQL produced",
|
|
105
|
+
passed: false,
|
|
106
|
+
severity: "warning",
|
|
107
|
+
message: "No runnable SQL was generated for the notebook cell.",
|
|
108
|
+
suggestedRepair: "Regenerate the cell with explicit table and column grounding.",
|
|
109
|
+
repairAction: { kind: "retry", hint: "Generate runnable SELECT/WITH SQL for the cell." },
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
return evaluations;
|
|
113
|
+
};
|
|
114
|
+
/** Block draft: an unready draft is a repairable (reflect-and-revise) review artifact, not a hard block. */
|
|
115
|
+
const blockDraftGate = ({ result }) => {
|
|
116
|
+
const evaluations = baseEvaluations(result);
|
|
117
|
+
const payload = primaryArtifactPayload(result);
|
|
118
|
+
const verdict = asRecord(payload?.certifierVerdict);
|
|
119
|
+
const ready = typeof verdict?.ready === "boolean"
|
|
120
|
+
? verdict.ready
|
|
121
|
+
: evaluations.find((evaluation) => evaluation.id === "certification-boundary")?.passed ?? true;
|
|
122
|
+
if (!ready) {
|
|
123
|
+
return upsert(evaluations, {
|
|
124
|
+
id: "certification-boundary",
|
|
125
|
+
label: "Certification boundary",
|
|
126
|
+
passed: false,
|
|
127
|
+
severity: "warning",
|
|
128
|
+
message: "The draft block has certifier blockers that should be resolved before certification review.",
|
|
129
|
+
suggestedRepair: "Resolve the certifier blockers (grain, invariants, lineage) and re-draft the block.",
|
|
130
|
+
repairAction: { kind: "retry", hint: "Fix the certifier blockers reported on the draft." },
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
return evaluations;
|
|
134
|
+
};
|
|
135
|
+
/** App build: missing certified coverage escalates to creating the gap blocks first. */
|
|
136
|
+
const appBuildGate = ({ result }) => {
|
|
137
|
+
const evaluations = baseEvaluations(result);
|
|
138
|
+
const payload = primaryArtifactPayload(result);
|
|
139
|
+
const session = asRecord(payload?.session) ?? payload;
|
|
140
|
+
// Prefer the build session's own status; fall back to the executor's app-coverage eval.
|
|
141
|
+
const coverageFailed = session?.status !== undefined
|
|
142
|
+
? session.status !== "ready"
|
|
143
|
+
: evaluations.some((evaluation) => evaluation.id === "app-coverage" && !evaluation.passed);
|
|
144
|
+
if (coverageFailed) {
|
|
145
|
+
return upsert(evaluations, {
|
|
146
|
+
id: "app-coverage",
|
|
147
|
+
label: "Certified coverage",
|
|
148
|
+
passed: false,
|
|
149
|
+
severity: "blocking",
|
|
150
|
+
message: "No certified app tiles matched the request, so the app cannot be assembled yet.",
|
|
151
|
+
suggestedRepair: "Create certified DQL drafts for the missing tiles, then rebuild the app.",
|
|
152
|
+
repairAction: { kind: "escalate", route: "dql_block_draft", hint: "Draft the missing certified blocks." },
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
return evaluations;
|
|
156
|
+
};
|
|
157
|
+
/**
|
|
158
|
+
* The default gate registry the local runtime wires into the engine. Keys are the
|
|
159
|
+
* routes that have a meaningful executable check; routes without a gate fall back
|
|
160
|
+
* to the executor's own evaluations.
|
|
161
|
+
*/
|
|
162
|
+
export const defaultAgentRunGates = {
|
|
163
|
+
certified_answer: answerGate,
|
|
164
|
+
generated_answer: answerGate,
|
|
165
|
+
research: researchGate,
|
|
166
|
+
sql_cell: sqlCellGate,
|
|
167
|
+
dql_block_draft: blockDraftGate,
|
|
168
|
+
app_build: appBuildGate,
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=agent-run-gates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run-gates.js","sourceRoot":"","sources":["../src/agent-run-gates.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM planner + replanner for the agent run loop.
|
|
3
|
+
*
|
|
4
|
+
* The engine accepts an injected {@link AgentRunPlanner}. This module builds an
|
|
5
|
+
* LLM-backed one that decomposes an `auto` turn into an ordered, catalog-grounded
|
|
6
|
+
* plan and decides repair/escalate/clarify when a step's gate fails. It is
|
|
7
|
+
* deliberately provider-agnostic: callers inject a plain text completion fn
|
|
8
|
+
* (`AgentRunPlannerCompletion`) so `dql-agent` never depends on the CLI's provider
|
|
9
|
+
* wiring. Any parse/transport failure (or an explicit non-`auto` mode) falls back
|
|
10
|
+
* to the deterministic planner so the engine stays fast, offline, and testable.
|
|
11
|
+
*/
|
|
12
|
+
import { type AgentRunPlanner, type AgentRunRequest, type AgentRunRequestedMode } from "./agent-run-engine.js";
|
|
13
|
+
/** Injected text completion. System + user in, raw model text out. Throws on transport errors. */
|
|
14
|
+
export type AgentRunPlannerCompletion = (input: {
|
|
15
|
+
system: string;
|
|
16
|
+
user: string;
|
|
17
|
+
signal?: AbortSignal;
|
|
18
|
+
}) => Promise<string>;
|
|
19
|
+
export interface LlmAgentRunPlannerOptions {
|
|
20
|
+
complete: AgentRunPlannerCompletion;
|
|
21
|
+
/** Builds a compact, grounded catalog summary the model can plan against. */
|
|
22
|
+
getCatalogContext?: (request: AgentRunRequest) => string | Promise<string>;
|
|
23
|
+
/** Modes the LLM plans for. Others use the deterministic single-step plan. Default: `{ auto }`. */
|
|
24
|
+
llmModes?: Iterable<AgentRunRequestedMode>;
|
|
25
|
+
signal?: AbortSignal;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Build an LLM planner. Falls back to the deterministic planner whenever the LLM
|
|
29
|
+
* is not applicable (explicit mode) or fails (transport / unparsable output).
|
|
30
|
+
*/
|
|
31
|
+
export declare function createLlmAgentRunPlanner(options: LlmAgentRunPlannerOptions): AgentRunPlanner;
|
|
32
|
+
//# sourceMappingURL=agent-run-planner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run-planner.d.ts","sourceRoot":"","sources":["../src/agent-run-planner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EASL,KAAK,eAAe,EAGpB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAE3B,MAAM,uBAAuB,CAAC;AAE/B,kGAAkG;AAClG,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AActB,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,yBAAyB,CAAC;IACpC,6EAA6E;IAC7E,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3E,mGAAmG;IACnG,QAAQ,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAC3C,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,yBAAyB,GAAG,eAAe,CAgD5F"}
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM planner + replanner for the agent run loop.
|
|
3
|
+
*
|
|
4
|
+
* The engine accepts an injected {@link AgentRunPlanner}. This module builds an
|
|
5
|
+
* LLM-backed one that decomposes an `auto` turn into an ordered, catalog-grounded
|
|
6
|
+
* plan and decides repair/escalate/clarify when a step's gate fails. It is
|
|
7
|
+
* deliberately provider-agnostic: callers inject a plain text completion fn
|
|
8
|
+
* (`AgentRunPlannerCompletion`) so `dql-agent` never depends on the CLI's provider
|
|
9
|
+
* wiring. Any parse/transport failure (or an explicit non-`auto` mode) falls back
|
|
10
|
+
* to the deterministic planner so the engine stays fast, offline, and testable.
|
|
11
|
+
*/
|
|
12
|
+
import { AGENT_RUN_ESCALATION_MAP, createDeterministicAgentRunPlanner, defaultSuccessCriteria, } from "./agent-run-engine.js";
|
|
13
|
+
const PLANNABLE_ROUTES = [
|
|
14
|
+
"certified_answer",
|
|
15
|
+
"generated_answer",
|
|
16
|
+
"research",
|
|
17
|
+
"sql_cell",
|
|
18
|
+
"dql_block_draft",
|
|
19
|
+
"app_build",
|
|
20
|
+
"clarify",
|
|
21
|
+
];
|
|
22
|
+
const PLANNABLE_ROUTE_SET = new Set(PLANNABLE_ROUTES);
|
|
23
|
+
/**
|
|
24
|
+
* Build an LLM planner. Falls back to the deterministic planner whenever the LLM
|
|
25
|
+
* is not applicable (explicit mode) or fails (transport / unparsable output).
|
|
26
|
+
*/
|
|
27
|
+
export function createLlmAgentRunPlanner(options) {
|
|
28
|
+
const deterministic = createDeterministicAgentRunPlanner();
|
|
29
|
+
const llmModes = new Set(options.llmModes ?? ["auto"]);
|
|
30
|
+
const usesLlm = (request) => llmModes.has(request.requestedMode ?? "auto");
|
|
31
|
+
return {
|
|
32
|
+
async plan(input) {
|
|
33
|
+
if (!usesLlm(input.request)) {
|
|
34
|
+
return deterministic.plan(input);
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
const catalogContext = options.getCatalogContext
|
|
38
|
+
? await options.getCatalogContext(input.request)
|
|
39
|
+
: undefined;
|
|
40
|
+
const raw = await options.complete({
|
|
41
|
+
system: buildPlanSystemPrompt(input.maxSteps, input.audience),
|
|
42
|
+
user: buildPlanUserPrompt(input, catalogContext),
|
|
43
|
+
signal: options.signal,
|
|
44
|
+
});
|
|
45
|
+
const parsed = parsePlan(raw, input.maxSteps, input.audience);
|
|
46
|
+
if (parsed && parsed.steps.length > 0) {
|
|
47
|
+
return parsed;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// fall through to deterministic
|
|
52
|
+
}
|
|
53
|
+
return deterministic.plan(input);
|
|
54
|
+
},
|
|
55
|
+
async replan(input) {
|
|
56
|
+
if (!usesLlm(input.request)) {
|
|
57
|
+
return deterministic.replan(input);
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
const raw = await options.complete({
|
|
61
|
+
system: buildReplanSystemPrompt(),
|
|
62
|
+
user: buildReplanUserPrompt(input),
|
|
63
|
+
signal: options.signal,
|
|
64
|
+
});
|
|
65
|
+
const parsed = parseReplan(raw, input);
|
|
66
|
+
if (parsed)
|
|
67
|
+
return parsed;
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// fall through to deterministic
|
|
71
|
+
}
|
|
72
|
+
return deterministic.replan(input);
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
function buildPlanSystemPrompt(maxSteps, audience) {
|
|
77
|
+
const lines = [
|
|
78
|
+
"You are the planner for DQL, a governed analytics agent.",
|
|
79
|
+
`Decompose the user's request into an ordered list of 1 to ${maxSteps} steps. Prefer the fewest steps.`,
|
|
80
|
+
"Each step picks exactly one route:",
|
|
81
|
+
"- certified_answer: a certified DQL block/governed metric clearly covers the question.",
|
|
82
|
+
"- generated_answer: ad-hoc question answerable with review-required generated SQL.",
|
|
83
|
+
"- research: why / root-cause / driver / breakdown / comparison / anomaly investigations.",
|
|
84
|
+
"- app_build: assemble a dashboard / app / standing view.",
|
|
85
|
+
"- clarify: a required business object, measure, or grain is missing — ask ONE sharp question.",
|
|
86
|
+
];
|
|
87
|
+
if (audience === "analyst") {
|
|
88
|
+
lines.push("- sql_cell: the user wants a SQL notebook cell / query.");
|
|
89
|
+
lines.push("- dql_block_draft: create or revise a governed DQL block.");
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
lines.push("Audience is a stakeholder (consumer). Do NOT use authoring routes (sql_cell, dql_block_draft); answer or research instead — certification is a separate handoff.");
|
|
93
|
+
}
|
|
94
|
+
lines.push("Governance: generated SQL and analysis are always review-required; never claim work is certified.");
|
|
95
|
+
lines.push("Respond with ONLY a JSON object, no prose, no code fences:");
|
|
96
|
+
lines.push('{"rationale": string, "steps": [{"route": string, "goal": string, "successCriteria": string[]}]}');
|
|
97
|
+
return lines.join("\n");
|
|
98
|
+
}
|
|
99
|
+
function buildPlanUserPrompt(input, catalogContext) {
|
|
100
|
+
const { request, routeDecision, defaultRoute } = input;
|
|
101
|
+
const lines = [];
|
|
102
|
+
lines.push(`Question: ${request.question}`);
|
|
103
|
+
if (request.intent)
|
|
104
|
+
lines.push(`Classified intent: ${request.intent}`);
|
|
105
|
+
if (request.signals)
|
|
106
|
+
lines.push(`Retrieval signals: ${JSON.stringify(request.signals)}`);
|
|
107
|
+
if (request.selectedObject)
|
|
108
|
+
lines.push(`Selected object: ${JSON.stringify(request.selectedObject)}`);
|
|
109
|
+
if (request.history?.length) {
|
|
110
|
+
const recent = request.history.slice(-4).map((turn) => `${turn.role}: ${turn.text}`).join("\n");
|
|
111
|
+
lines.push(`Recent conversation:\n${recent}`);
|
|
112
|
+
}
|
|
113
|
+
lines.push(`Deterministic route hint: ${defaultRoute} (${routeDecision.reason})`);
|
|
114
|
+
if (catalogContext)
|
|
115
|
+
lines.push(`Catalog context:\n${catalogContext}`);
|
|
116
|
+
lines.push("Return the plan as JSON.");
|
|
117
|
+
return lines.join("\n");
|
|
118
|
+
}
|
|
119
|
+
function buildReplanSystemPrompt() {
|
|
120
|
+
return [
|
|
121
|
+
"You supervise a governed agent loop. A step failed its evaluation gate.",
|
|
122
|
+
"Decide the single best next move:",
|
|
123
|
+
'- "repair": re-run the same route with a concrete repairHint (use when the route can still succeed).',
|
|
124
|
+
'- "escalate": switch to a different route (provide route + goal) when the current route cannot satisfy the gate.',
|
|
125
|
+
'- "clarify": ask the user ONE sharp question (provide question) when required context is missing.',
|
|
126
|
+
'- "accept": keep the current review-required result as-is.',
|
|
127
|
+
"Respond with ONLY a JSON object, no prose, no code fences:",
|
|
128
|
+
'{"decision": "repair"|"escalate"|"clarify"|"accept", "route"?: string, "goal"?: string, "repairHint"?: string, "question"?: string}',
|
|
129
|
+
].join("\n");
|
|
130
|
+
}
|
|
131
|
+
function buildReplanUserPrompt(input) {
|
|
132
|
+
const { currentStep, attemptsUsed, maxRepairAttempts } = input;
|
|
133
|
+
const failing = currentStep.evaluations.filter((evaluation) => !evaluation.passed);
|
|
134
|
+
const suggestedEscalation = AGENT_RUN_ESCALATION_MAP[currentStep.route];
|
|
135
|
+
const lines = [];
|
|
136
|
+
lines.push(`Question: ${input.request.question}`);
|
|
137
|
+
lines.push(`Current route: ${currentStep.route}`);
|
|
138
|
+
lines.push(`Step goal: ${currentStep.goal}`);
|
|
139
|
+
lines.push(`Repair attempts used so far: ${attemptsUsed} of ${maxRepairAttempts}.`);
|
|
140
|
+
lines.push(`Failing evaluations: ${JSON.stringify(failing.map(summariseEvaluation))}`);
|
|
141
|
+
if (suggestedEscalation)
|
|
142
|
+
lines.push(`Suggested escalation route: ${suggestedEscalation}`);
|
|
143
|
+
if (input.remainingSteps.length) {
|
|
144
|
+
lines.push(`Remaining planned steps: ${JSON.stringify(input.remainingSteps.map((step) => step.route))}`);
|
|
145
|
+
}
|
|
146
|
+
lines.push("Return the decision as JSON.");
|
|
147
|
+
return lines.join("\n");
|
|
148
|
+
}
|
|
149
|
+
function summariseEvaluation(evaluation) {
|
|
150
|
+
return {
|
|
151
|
+
id: evaluation.id,
|
|
152
|
+
severity: evaluation.severity,
|
|
153
|
+
message: evaluation.message,
|
|
154
|
+
suggestedRepair: evaluation.suggestedRepair,
|
|
155
|
+
repairAction: evaluation.repairAction,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
/** Extract the first balanced JSON object from model text (tolerates code fences/prose). */
|
|
159
|
+
function extractJsonObject(raw) {
|
|
160
|
+
const trimmed = raw.trim().replace(/^```(?:json)?/i, "").replace(/```$/i, "").trim();
|
|
161
|
+
const start = trimmed.indexOf("{");
|
|
162
|
+
if (start < 0)
|
|
163
|
+
return undefined;
|
|
164
|
+
let depth = 0;
|
|
165
|
+
let inString = false;
|
|
166
|
+
let escaped = false;
|
|
167
|
+
for (let i = start; i < trimmed.length; i += 1) {
|
|
168
|
+
const char = trimmed[i];
|
|
169
|
+
if (inString) {
|
|
170
|
+
if (escaped)
|
|
171
|
+
escaped = false;
|
|
172
|
+
else if (char === "\\")
|
|
173
|
+
escaped = true;
|
|
174
|
+
else if (char === '"')
|
|
175
|
+
inString = false;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
if (char === '"')
|
|
179
|
+
inString = true;
|
|
180
|
+
else if (char === "{")
|
|
181
|
+
depth += 1;
|
|
182
|
+
else if (char === "}") {
|
|
183
|
+
depth -= 1;
|
|
184
|
+
if (depth === 0) {
|
|
185
|
+
try {
|
|
186
|
+
return JSON.parse(trimmed.slice(start, i + 1));
|
|
187
|
+
}
|
|
188
|
+
catch {
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return undefined;
|
|
195
|
+
}
|
|
196
|
+
function asRoute(value) {
|
|
197
|
+
return typeof value === "string" && PLANNABLE_ROUTE_SET.has(value)
|
|
198
|
+
? value
|
|
199
|
+
: undefined;
|
|
200
|
+
}
|
|
201
|
+
const STAKEHOLDER_BLOCKED_ROUTES = new Set(["sql_cell", "dql_block_draft"]);
|
|
202
|
+
function parsePlan(raw, maxSteps, audience) {
|
|
203
|
+
const parsed = extractJsonObject(raw);
|
|
204
|
+
if (!parsed || typeof parsed !== "object")
|
|
205
|
+
return undefined;
|
|
206
|
+
const record = parsed;
|
|
207
|
+
const rawSteps = Array.isArray(record.steps) ? record.steps : [];
|
|
208
|
+
const steps = [];
|
|
209
|
+
for (const item of rawSteps) {
|
|
210
|
+
if (steps.length >= maxSteps)
|
|
211
|
+
break;
|
|
212
|
+
if (!item || typeof item !== "object")
|
|
213
|
+
continue;
|
|
214
|
+
const stepRecord = item;
|
|
215
|
+
let route = asRoute(stepRecord.route);
|
|
216
|
+
if (!route)
|
|
217
|
+
continue;
|
|
218
|
+
// Stakeholders never author — collapse any authoring step to a governed answer.
|
|
219
|
+
if (audience === "stakeholder" && STAKEHOLDER_BLOCKED_ROUTES.has(route))
|
|
220
|
+
route = "generated_answer";
|
|
221
|
+
const goal = typeof stepRecord.goal === "string" && stepRecord.goal.trim().length > 0
|
|
222
|
+
? stepRecord.goal.trim()
|
|
223
|
+
: `Run ${route.replaceAll("_", " ")}.`;
|
|
224
|
+
const successCriteria = Array.isArray(stepRecord.successCriteria)
|
|
225
|
+
? stepRecord.successCriteria.filter((value) => typeof value === "string")
|
|
226
|
+
: defaultSuccessCriteria(route);
|
|
227
|
+
steps.push({
|
|
228
|
+
id: `step-${steps.length + 1}`,
|
|
229
|
+
route,
|
|
230
|
+
goal,
|
|
231
|
+
successCriteria: successCriteria.length > 0 ? successCriteria : defaultSuccessCriteria(route),
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
if (steps.length === 0)
|
|
235
|
+
return undefined;
|
|
236
|
+
return {
|
|
237
|
+
source: "llm",
|
|
238
|
+
rationale: typeof record.rationale === "string" && record.rationale.trim().length > 0
|
|
239
|
+
? record.rationale.trim()
|
|
240
|
+
: "LLM-planned multi-step run.",
|
|
241
|
+
steps,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
function parseReplan(raw, input) {
|
|
245
|
+
const parsed = extractJsonObject(raw);
|
|
246
|
+
if (!parsed || typeof parsed !== "object")
|
|
247
|
+
return undefined;
|
|
248
|
+
const record = parsed;
|
|
249
|
+
const decision = typeof record.decision === "string" ? record.decision : undefined;
|
|
250
|
+
const failing = input.currentStep.evaluations.find((evaluation) => !evaluation.passed && evaluation.suggestedRepair);
|
|
251
|
+
const fallbackHint = failing?.suggestedRepair ?? "Revise and retry.";
|
|
252
|
+
if (decision === "repair") {
|
|
253
|
+
const repairHint = typeof record.repairHint === "string" && record.repairHint.trim().length > 0
|
|
254
|
+
? record.repairHint.trim()
|
|
255
|
+
: fallbackHint;
|
|
256
|
+
return { decision: "repair", repairHint };
|
|
257
|
+
}
|
|
258
|
+
if (decision === "escalate") {
|
|
259
|
+
const route = asRoute(record.route) ?? AGENT_RUN_ESCALATION_MAP[input.currentStep.route];
|
|
260
|
+
if (!route)
|
|
261
|
+
return undefined;
|
|
262
|
+
return {
|
|
263
|
+
decision: "escalate",
|
|
264
|
+
route,
|
|
265
|
+
goal: typeof record.goal === "string" ? record.goal : undefined,
|
|
266
|
+
repairHint: typeof record.repairHint === "string" ? record.repairHint : fallbackHint,
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
if (decision === "clarify") {
|
|
270
|
+
return {
|
|
271
|
+
decision: "clarify",
|
|
272
|
+
question: typeof record.question === "string" ? record.question : undefined,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
if (decision === "accept") {
|
|
276
|
+
return { decision: "accept" };
|
|
277
|
+
}
|
|
278
|
+
return undefined;
|
|
279
|
+
}
|
|
280
|
+
//# sourceMappingURL=agent-run-planner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run-planner.js","sourceRoot":"","sources":["../src/agent-run-planner.ts"],"names":[],"mappings":"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"}
|