@geotechcli/core 0.4.72 → 0.4.74
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/agents/provider-operating-contract.d.ts +1 -1
- package/dist/agents/provider-operating-contract.d.ts.map +1 -1
- package/dist/agents/provider-operating-contract.js +2 -0
- package/dist/agents/provider-operating-contract.js.map +1 -1
- package/dist/ingest/document-evidence-packet.d.ts +8 -8
- package/dist/meta/metadata.json +1 -1
- package/dist/project-workflow/index.d.ts +1 -0
- package/dist/project-workflow/index.d.ts.map +1 -1
- package/dist/project-workflow/index.js +1 -0
- package/dist/project-workflow/index.js.map +1 -1
- package/dist/workspace/index.d.ts +1 -0
- package/dist/workspace/index.d.ts.map +1 -1
- package/dist/workspace/index.js +1 -0
- package/dist/workspace/index.js.map +1 -1
- package/dist/workspace/project-workflow-router.d.ts +94 -0
- package/dist/workspace/project-workflow-router.d.ts.map +1 -0
- package/dist/workspace/project-workflow-router.js +296 -0
- package/dist/workspace/project-workflow-router.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { LLMConfig, ProviderCapabilities } from '../llm/types.js';
|
|
2
|
-
export type AgentOperatingTask = 'single-agent' | 'swarm-interpretation' | 'swarm-simulation' | 'swarm-review' | 'swarm-orchestrator' | 'legacy-orchestrator' | 'specialist-agent';
|
|
2
|
+
export type AgentOperatingTask = 'single-agent' | 'project-workflow-router' | 'swarm-interpretation' | 'swarm-simulation' | 'swarm-review' | 'swarm-orchestrator' | 'legacy-orchestrator' | 'specialist-agent';
|
|
3
3
|
export interface ProviderOperatingContract {
|
|
4
4
|
provider: LLMConfig['provider'];
|
|
5
5
|
modelId: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-operating-contract.d.ts","sourceRoot":"","sources":["../../src/agents/provider-operating-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvE,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,sBAAsB,GACtB,kBAAkB,GAClB,cAAc,GACd,oBAAoB,GACpB,qBAAqB,GACrB,kBAAkB,CAAC;AAEvB,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,oBAAoB,CAAC;IACnC,OAAO,EAAE,gBAAgB,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,GAAG,SAAS,CAAC;IACpF,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC9C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qCAAqC;IACpD,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,EACjE,OAAO,GAAE,qCAA0C,GAClD,yBAAyB,CAoC3B;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,EACjE,OAAO,GAAE,qCAA0C,GAClD,MAAM,CAER"}
|
|
1
|
+
{"version":3,"file":"provider-operating-contract.d.ts","sourceRoot":"","sources":["../../src/agents/provider-operating-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvE,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,yBAAyB,GACzB,sBAAsB,GACtB,kBAAkB,GAClB,cAAc,GACd,oBAAoB,GACpB,qBAAqB,GACrB,kBAAkB,CAAC;AAEvB,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,oBAAoB,CAAC;IACnC,OAAO,EAAE,gBAAgB,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,GAAG,SAAS,CAAC;IACpF,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC9C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qCAAqC;IACpD,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,EACjE,OAAO,GAAE,qCAA0C,GAClD,yBAAyB,CAoC3B;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,EACjE,OAAO,GAAE,qCAA0C,GAClD,MAAM,CAER"}
|
|
@@ -120,6 +120,8 @@ function renderProviderOperatingPrompt(input) {
|
|
|
120
120
|
}
|
|
121
121
|
function taskSpecificRule(task) {
|
|
122
122
|
switch (task) {
|
|
123
|
+
case 'project-workflow-router':
|
|
124
|
+
return 'Project workflow router task: select and sequence only allowed deterministic GeotechCLI workflows; never invent engineering conclusions, calculations, FEM results, OCR results, or visualization data.';
|
|
123
125
|
case 'swarm-interpretation':
|
|
124
126
|
return 'Interpretation task: collect and normalize evidence; do not calculate design values from unreviewed extracted data.';
|
|
125
127
|
case 'swarm-simulation':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-operating-contract.js","sourceRoot":"","sources":["../../src/agents/provider-operating-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"provider-operating-contract.js","sourceRoot":"","sources":["../../src/agents/provider-operating-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AA6BrE,MAAM,UAAU,8BAA8B,CAC5C,MAAiE,EACjE,UAAiD,EAAE;IAEnD,MAAM,YAAY,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACvF,MAAM,eAAe,GAAG,eAAe;QACrC,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,OAAO,KAAK,WAAW;YACvB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC;IACb,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;IACrF,MAAM,MAAM,GAAG,6BAA6B,CAAC;QAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO;QACP,aAAa;QACb,YAAY;QACZ,OAAO;QACP,eAAe;QACf,eAAe;QACf,WAAW;QACX,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,cAAc;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI;KAClC,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO;QACP,aAAa;QACb,YAAY;QACZ,OAAO;QACP,eAAe;QACf,eAAe;QACf,WAAW;QACX,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAiE,EACjE,UAAiD,EAAE;IAEnD,OAAO,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC;AAChE,CAAC;AAED,SAAS,cAAc,CAAC,QAA+B;IACrD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,aAAa;YAChB,OAAO,gBAAgB,CAAC;QAC1B,KAAK,OAAO;YACV,OAAO,YAAY,CAAC;QACtB,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW;YACd,OAAO,cAAc,CAAC;QACxB,KAAK,mBAAmB,CAAC;QACzB,KAAK,aAAa;YAChB,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,YAAkC,EAClC,eAAwB,EACxB,eAA6D;IAE7D,OAAO;QACL,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B;QACxD,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iCAAiC;QACpE,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kDAAkD;QAC3F,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,yCAAyC;QACxE,eAAe,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,IAAI;QACnE,eAAe,KAAK,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI;KAC/D,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,6BAA6B,CAAC,KAWtC;IACC,MAAM,cAAc,GAAG;QACrB,YAAY,KAAK,CAAC,QAAQ,EAAE;QAC5B,WAAW,KAAK,CAAC,OAAO,EAAE;QAC1B,SAAS,KAAK,CAAC,OAAO,IAAI,kBAAkB,EAAE;QAC9C,eAAe,KAAK,CAAC,aAAa,IAAI,kBAAkB,EAAE;QAC1D,QAAQ,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QAChD,QAAQ,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACpD,UAAU,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QAC1D,aAAa,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACnE,WAAW,KAAK,CAAC,eAAe,EAAE;KACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,SAAS,GAAG;QAChB,qIAAqI;QACrI,oKAAoK;QACpK,oGAAoG;QACpG,qNAAqN;QACrN,2JAA2J;QAC3J,sNAAsN;QACtN,2NAA2N;QAC3N,4HAA4H;KAC7H,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe;QAC1C,CAAC,CAAC;YACE,2JAA2J;YAC3J,oMAAoM;SACrM;QACH,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACjD,CAAC,CAAC,iCAAiC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAClE,CAAC,CAAC,qCAAqC,CAAC;IAE1C,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO;YACL,8BAA8B;YAC9B,cAAc;YACd,cAAc;YACd,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5C,KAAK,QAAQ,EAAE;SAChB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAED,OAAO;QACL,oDAAoD;QACpD,cAAc;QACd,cAAc;QACd,EAAE;QACF,uKAAuK;QACvK,EAAE;QACF,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;QACvC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;QAC5C,KAAK,QAAQ,EAAE;KAChB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAwB;IAChD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,yBAAyB;YAC5B,OAAO,yMAAyM,CAAC;QACnN,KAAK,sBAAsB;YACzB,OAAO,qHAAqH,CAAC;QAC/H,KAAK,kBAAkB;YACrB,OAAO,uLAAuL,CAAC;QACjM,KAAK,cAAc;YACjB,OAAO,yJAAyJ,CAAC;QACnK,KAAK,oBAAoB;YACvB,OAAO,0HAA0H,CAAC;QACpI,KAAK,qBAAqB;YACxB,OAAO,sHAAsH,CAAC;QAChI,KAAK,kBAAkB;YACrB,OAAO,yIAAyI,CAAC;QACnJ,KAAK,cAAc,CAAC;QACpB;YACE,OAAO,sIAAsI,CAAC;IAClJ,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAgC;IACtD,MAAM,UAAU,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;AACxC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAoB;IAC7C,OAAO,OAAO,CAAC,KAAK,IAAI,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -124,7 +124,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
124
124
|
}, "strip", z.ZodTypeAny, {
|
|
125
125
|
confidence: number;
|
|
126
126
|
title: string | null;
|
|
127
|
-
parseStatus: "
|
|
127
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
128
128
|
canAutoProceed: boolean;
|
|
129
129
|
reviewRequired: boolean;
|
|
130
130
|
documentClass: string | null;
|
|
@@ -150,7 +150,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
150
150
|
}, {
|
|
151
151
|
confidence: number;
|
|
152
152
|
title: string | null;
|
|
153
|
-
parseStatus: "
|
|
153
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
154
154
|
canAutoProceed: boolean;
|
|
155
155
|
reviewRequired: boolean;
|
|
156
156
|
documentClass: string | null;
|
|
@@ -204,7 +204,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
204
204
|
warnings: string[];
|
|
205
205
|
classification: string | null;
|
|
206
206
|
pageNumber: number;
|
|
207
|
-
parseStatus: "
|
|
207
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
208
208
|
rawSource: string;
|
|
209
209
|
sourceCategory: "vision" | "none" | "native-text" | "layout-ocr";
|
|
210
210
|
cacheStatus: "skipped" | "unavailable" | "hit" | "miss" | "stored";
|
|
@@ -220,7 +220,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
220
220
|
warnings: string[];
|
|
221
221
|
classification: string | null;
|
|
222
222
|
pageNumber: number;
|
|
223
|
-
parseStatus: "
|
|
223
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
224
224
|
rawSource: string;
|
|
225
225
|
sourceCategory: "vision" | "none" | "native-text" | "layout-ocr";
|
|
226
226
|
cacheStatus: "skipped" | "unavailable" | "hit" | "miss" | "stored";
|
|
@@ -633,7 +633,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
633
633
|
warnings: string[];
|
|
634
634
|
classification: string | null;
|
|
635
635
|
pageNumber: number;
|
|
636
|
-
parseStatus: "
|
|
636
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
637
637
|
rawSource: string;
|
|
638
638
|
sourceCategory: "vision" | "none" | "native-text" | "layout-ocr";
|
|
639
639
|
cacheStatus: "skipped" | "unavailable" | "hit" | "miss" | "stored";
|
|
@@ -647,7 +647,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
647
647
|
document: {
|
|
648
648
|
confidence: number;
|
|
649
649
|
title: string | null;
|
|
650
|
-
parseStatus: "
|
|
650
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
651
651
|
canAutoProceed: boolean;
|
|
652
652
|
reviewRequired: boolean;
|
|
653
653
|
documentClass: string | null;
|
|
@@ -791,7 +791,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
791
791
|
warnings: string[];
|
|
792
792
|
classification: string | null;
|
|
793
793
|
pageNumber: number;
|
|
794
|
-
parseStatus: "
|
|
794
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
795
795
|
rawSource: string;
|
|
796
796
|
sourceCategory: "vision" | "none" | "native-text" | "layout-ocr";
|
|
797
797
|
cacheStatus: "skipped" | "unavailable" | "hit" | "miss" | "stored";
|
|
@@ -805,7 +805,7 @@ export declare const DocumentEvidencePacketSchema: z.ZodObject<{
|
|
|
805
805
|
document: {
|
|
806
806
|
confidence: number;
|
|
807
807
|
title: string | null;
|
|
808
|
-
parseStatus: "
|
|
808
|
+
parseStatus: "failed" | "partial" | "parsed";
|
|
809
809
|
canAutoProceed: boolean;
|
|
810
810
|
reviewRequired: boolean;
|
|
811
811
|
documentClass: string | null;
|
package/dist/meta/metadata.json
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { runProjectWorkflow, type ProjectWorkflowAction, type ProjectWorkflowChartPoint, type ProjectWorkflowChartSeries, type ProjectWorkflowChartSpec, type ProjectWorkflowFinding, type ProjectWorkflowFindingSeverity, type ProjectWorkflowRun, type ProjectWorkflowStatus, type ProjectWorkflowTask, type RunProjectWorkflowOptions, } from '../workspace/project-workflow-executor.js';
|
|
2
2
|
export { buildProjectWorkflowReport, } from '../report/project-workflow.js';
|
|
3
|
+
export { PROJECT_WORKFLOW_ROUTER_TASKS, PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE, buildProjectWorkflowRouterPrompt, inferProjectWorkflowRouteTasks, normalizeProjectWorkflowRouteTask, parseProjectWorkflowRouterSelection, routeProjectWorkflowRequest, type BuildProjectWorkflowRouterPromptOptions, type ProjectWorkflowRouteExecutionMode, type ProjectWorkflowRouteModelCall, type ProjectWorkflowRoutePlan, type ProjectWorkflowRouteRejectedTask, type ProjectWorkflowRouteSelectionSource, type ProjectWorkflowRouterSelection, type RouteProjectWorkflowRequestOptions, } from '../workspace/project-workflow-router.js';
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/project-workflow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACnC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EACL,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/project-workflow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACnC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EACL,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,gCAAgC,EAChC,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,2BAA2B,EAC3B,KAAK,uCAAuC,EAC5C,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,mCAAmC,EACxC,KAAK,8BAA8B,EACnC,KAAK,kCAAkC,GACxC,MAAM,yCAAyC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { runProjectWorkflow, } from '../workspace/project-workflow-executor.js';
|
|
2
2
|
export { buildProjectWorkflowReport, } from '../report/project-workflow.js';
|
|
3
|
+
export { PROJECT_WORKFLOW_ROUTER_TASKS, PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE, buildProjectWorkflowRouterPrompt, inferProjectWorkflowRouteTasks, normalizeProjectWorkflowRouteTask, parseProjectWorkflowRouterSelection, routeProjectWorkflowRequest, } from '../workspace/project-workflow-router.js';
|
|
3
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/project-workflow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAWnB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EACL,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/project-workflow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAWnB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EACL,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,gCAAgC,EAChC,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,2BAA2B,GAS5B,MAAM,yCAAyC,CAAC"}
|
|
@@ -3,5 +3,6 @@ export { classifyWorkspaceFile, } from './classifier.js';
|
|
|
3
3
|
export { renderWorkspaceManifestAsHtml, } from './dossier.js';
|
|
4
4
|
export { resolveWorkspaceRoot, type ResolveWorkspaceRootOptions, type WorkspaceRoot, type WorkspaceRootDetectedBy, } from './resolve-root.js';
|
|
5
5
|
export { runProjectWorkflow, type ProjectWorkflowAction, type ProjectWorkflowChartPoint, type ProjectWorkflowChartSeries, type ProjectWorkflowChartSpec, type ProjectWorkflowFinding, type ProjectWorkflowFindingSeverity, type ProjectWorkflowRun, type ProjectWorkflowStatus, type ProjectWorkflowTask, type RunProjectWorkflowOptions, } from './project-workflow-executor.js';
|
|
6
|
+
export { PROJECT_WORKFLOW_ROUTER_TASKS, PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE, buildProjectWorkflowRouterPrompt, inferProjectWorkflowRouteTasks, normalizeProjectWorkflowRouteTask, parseProjectWorkflowRouterSelection, routeProjectWorkflowRequest, type BuildProjectWorkflowRouterPromptOptions, type ProjectWorkflowRouteExecutionMode, type ProjectWorkflowRouteModelCall, type ProjectWorkflowRoutePlan, type ProjectWorkflowRouteRejectedTask, type ProjectWorkflowRouteSelectionSource, type ProjectWorkflowRouterSelection, type RouteProjectWorkflowRequestOptions, } from './project-workflow-router.js';
|
|
6
7
|
export { DEFAULT_ANALYZE_WORKSPACE_OPTIONS, type AnalyzeWorkspaceOptions, type ProjectManifest, type ProjectManifestSummary, type WorkspaceDatasetType, type WorkspaceFileClassification, type WorkspaceFileEntry, type WorkspaceFileKind, } from './manifest.js';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,aAAa,EAClB,KAAK,uBAAuB,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACnC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,iCAAiC,EACjC,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,aAAa,EAClB,KAAK,uBAAuB,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACnC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,gCAAgC,EAChC,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,2BAA2B,EAC3B,KAAK,uCAAuC,EAC5C,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,mCAAmC,EACxC,KAAK,8BAA8B,EACnC,KAAK,kCAAkC,GACxC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,iCAAiC,EACjC,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC"}
|
package/dist/workspace/index.js
CHANGED
|
@@ -3,5 +3,6 @@ export { classifyWorkspaceFile, } from './classifier.js';
|
|
|
3
3
|
export { renderWorkspaceManifestAsHtml, } from './dossier.js';
|
|
4
4
|
export { resolveWorkspaceRoot, } from './resolve-root.js';
|
|
5
5
|
export { runProjectWorkflow, } from './project-workflow-executor.js';
|
|
6
|
+
export { PROJECT_WORKFLOW_ROUTER_TASKS, PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE, buildProjectWorkflowRouterPrompt, inferProjectWorkflowRouteTasks, normalizeProjectWorkflowRouteTask, parseProjectWorkflowRouterSelection, routeProjectWorkflowRequest, } from './project-workflow-router.js';
|
|
6
7
|
export { DEFAULT_ANALYZE_WORKSPACE_OPTIONS, } from './manifest.js';
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,GAIrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,GAWnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,iCAAiC,GAQlC,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,GAIrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,GAWnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,gCAAgC,EAChC,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,2BAA2B,GAS5B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,iCAAiC,GAQlC,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { LLMConfig } from '../llm/types.js';
|
|
2
|
+
import { type ProviderOperatingContract } from '../agents/provider-operating-contract.js';
|
|
3
|
+
import type { ProjectManifest } from './manifest.js';
|
|
4
|
+
import type { ProjectWorkflowTask } from './project-workflow-executor.js';
|
|
5
|
+
export type ProjectWorkflowRouteExecutionMode = 'deterministic-sequence' | 'needs-selection';
|
|
6
|
+
export type ProjectWorkflowRouteSelectionSource = 'explicit' | 'deterministic' | 'model' | 'merged' | 'none';
|
|
7
|
+
export interface ProjectWorkflowRouteRejectedTask {
|
|
8
|
+
value: string;
|
|
9
|
+
reason: string;
|
|
10
|
+
}
|
|
11
|
+
export interface ProjectWorkflowRouterSelection {
|
|
12
|
+
tasks: ProjectWorkflowTask[];
|
|
13
|
+
rejectedTasks: ProjectWorkflowRouteRejectedTask[];
|
|
14
|
+
rationale: string[];
|
|
15
|
+
requiresCustomQuestion?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface ProjectWorkflowRouteModelCall {
|
|
18
|
+
type: 'model_call';
|
|
19
|
+
purpose: 'project-workflow-router';
|
|
20
|
+
status: 'pass' | 'review' | 'failed';
|
|
21
|
+
provider?: LLMConfig['provider'];
|
|
22
|
+
model?: string;
|
|
23
|
+
latencyMs?: number;
|
|
24
|
+
usage?: {
|
|
25
|
+
promptTokens: number;
|
|
26
|
+
completionTokens: number;
|
|
27
|
+
totalTokens: number;
|
|
28
|
+
};
|
|
29
|
+
promptChars?: number;
|
|
30
|
+
outputChars?: number;
|
|
31
|
+
error?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface ProjectWorkflowRoutePlan {
|
|
34
|
+
schemaVersion: 'geotech.project-workflow-route-plan.v1';
|
|
35
|
+
routeId: string;
|
|
36
|
+
runId: string;
|
|
37
|
+
generatedAt: string;
|
|
38
|
+
prompt: string;
|
|
39
|
+
executionMode: ProjectWorkflowRouteExecutionMode;
|
|
40
|
+
tasks: ProjectWorkflowTask[];
|
|
41
|
+
confidence: number;
|
|
42
|
+
selectionSource: ProjectWorkflowRouteSelectionSource;
|
|
43
|
+
rationale: string[];
|
|
44
|
+
rejectedTasks: ProjectWorkflowRouteRejectedTask[];
|
|
45
|
+
providerContract: {
|
|
46
|
+
providerNeutral: true;
|
|
47
|
+
purpose: 'project-workflow-routing';
|
|
48
|
+
llmRole: 'planner-reviewer-only';
|
|
49
|
+
deterministicExecutionRequired: true;
|
|
50
|
+
allowedTasks: ProjectWorkflowTask[];
|
|
51
|
+
disallowedActions: string[];
|
|
52
|
+
providerProfile?: ProviderOperatingContract['profile'];
|
|
53
|
+
contextStrategy?: ProviderOperatingContract['contextStrategy'];
|
|
54
|
+
reviewGates?: string[];
|
|
55
|
+
};
|
|
56
|
+
evidenceSummary?: {
|
|
57
|
+
supportedFiles: number;
|
|
58
|
+
branches: string[];
|
|
59
|
+
hasGroundModel: boolean;
|
|
60
|
+
hasVerifier: boolean;
|
|
61
|
+
};
|
|
62
|
+
trace: {
|
|
63
|
+
steps: Array<{
|
|
64
|
+
type: 'router' | 'review_gate';
|
|
65
|
+
status: 'pass' | 'review' | 'blocked';
|
|
66
|
+
detail: string;
|
|
67
|
+
}>;
|
|
68
|
+
};
|
|
69
|
+
modelCalls: ProjectWorkflowRouteModelCall[];
|
|
70
|
+
}
|
|
71
|
+
export interface RouteProjectWorkflowRequestOptions {
|
|
72
|
+
prompt: string;
|
|
73
|
+
manifest?: ProjectManifest;
|
|
74
|
+
requestedTasks?: Array<ProjectWorkflowTask | string>;
|
|
75
|
+
llmSelection?: unknown;
|
|
76
|
+
modelCalls?: ProjectWorkflowRouteModelCall[];
|
|
77
|
+
providerConfig?: Pick<LLMConfig, 'provider' | 'modelId' | 'visionModelId'>;
|
|
78
|
+
runId?: string;
|
|
79
|
+
now?: string;
|
|
80
|
+
}
|
|
81
|
+
export interface BuildProjectWorkflowRouterPromptOptions {
|
|
82
|
+
prompt: string;
|
|
83
|
+
manifest?: ProjectManifest;
|
|
84
|
+
providerConfig?: Pick<LLMConfig, 'provider' | 'modelId' | 'visionModelId'>;
|
|
85
|
+
compact?: boolean;
|
|
86
|
+
}
|
|
87
|
+
export declare const PROJECT_WORKFLOW_ROUTER_TASKS: ProjectWorkflowTask[];
|
|
88
|
+
export declare const PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE = 0.6;
|
|
89
|
+
export declare function normalizeProjectWorkflowRouteTask(value: unknown): ProjectWorkflowTask | undefined;
|
|
90
|
+
export declare function parseProjectWorkflowRouterSelection(raw: unknown): ProjectWorkflowRouterSelection;
|
|
91
|
+
export declare function inferProjectWorkflowRouteTasks(prompt: string): ProjectWorkflowRouterSelection;
|
|
92
|
+
export declare function routeProjectWorkflowRequest(options: RouteProjectWorkflowRequestOptions): ProjectWorkflowRoutePlan;
|
|
93
|
+
export declare function buildProjectWorkflowRouterPrompt(options: BuildProjectWorkflowRouterPromptOptions): string;
|
|
94
|
+
//# sourceMappingURL=project-workflow-router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-workflow-router.d.ts","sourceRoot":"","sources":["../../src/workspace/project-workflow-router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAkC,KAAK,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAC1H,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,MAAM,iCAAiC,GAAG,wBAAwB,GAAG,iBAAiB,CAAC;AAC7F,MAAM,MAAM,mCAAmC,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7G,MAAM,WAAW,gCAAgC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,aAAa,EAAE,gCAAgC,EAAE,CAAC;IAClD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,yBAAyB,CAAC;IACnC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,wCAAwC,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,iCAAiC,CAAC;IACjD,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,mCAAmC,CAAC;IACrD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,EAAE,gCAAgC,EAAE,CAAC;IAClD,gBAAgB,EAAE;QAChB,eAAe,EAAE,IAAI,CAAC;QACtB,OAAO,EAAE,0BAA0B,CAAC;QACpC,OAAO,EAAE,uBAAuB,CAAC;QACjC,8BAA8B,EAAE,IAAI,CAAC;QACrC,YAAY,EAAE,mBAAmB,EAAE,CAAC;QACpC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,eAAe,CAAC,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACvD,eAAe,CAAC,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAC;QAC/D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,eAAe,CAAC,EAAE;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,cAAc,EAAE,OAAO,CAAC;QACxB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,KAAK,EAAE;QACL,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,QAAQ,GAAG,aAAa,CAAC;YAC/B,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;KACJ,CAAC;IACF,UAAU,EAAE,6BAA6B,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,kCAAkC;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,cAAc,CAAC,EAAE,KAAK,CAAC,mBAAmB,GAAG,MAAM,CAAC,CAAC;IACrD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,6BAA6B,EAAE,CAAC;IAC7C,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,CAAC;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,uCAAuC;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC,CAAC;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,6BAA6B,EAAE,mBAAmB,EAO9D,CAAC;AAEF,eAAO,MAAM,qCAAqC,MAAM,CAAC;AAUzD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,GAAG,SAAS,CA8CjG;AAED,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,OAAO,GAAG,8BAA8B,CAkChG;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,8BAA8B,CAwB7F;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,kCAAkC,GAAG,wBAAwB,CA2FjH;AAED,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,uCAAuC,GAAG,MAAM,CA4BzG"}
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import { buildProviderOperatingContract } from '../agents/provider-operating-contract.js';
|
|
2
|
+
export const PROJECT_WORKFLOW_ROUTER_TASKS = [
|
|
3
|
+
'data-quality',
|
|
4
|
+
'ground-model',
|
|
5
|
+
'risk-analysis',
|
|
6
|
+
'anomaly-detection',
|
|
7
|
+
'recommendations',
|
|
8
|
+
'visualization',
|
|
9
|
+
];
|
|
10
|
+
export const PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE = 0.6;
|
|
11
|
+
const DISALLOWED_ROUTER_ACTIONS = [
|
|
12
|
+
'invent calculation results',
|
|
13
|
+
'modify source files outside .geotech outputs',
|
|
14
|
+
'run FEM or design math without deterministic validators',
|
|
15
|
+
'treat LLM confidence as engineering verification',
|
|
16
|
+
'claim PDF/image inspection without normalized evidence',
|
|
17
|
+
];
|
|
18
|
+
export function normalizeProjectWorkflowRouteTask(value) {
|
|
19
|
+
if (typeof value !== 'string')
|
|
20
|
+
return undefined;
|
|
21
|
+
const normalized = value.trim().toLowerCase().replaceAll('_', '-');
|
|
22
|
+
switch (normalized) {
|
|
23
|
+
case 'data':
|
|
24
|
+
case 'data-quality':
|
|
25
|
+
case 'inventory':
|
|
26
|
+
case 'quality':
|
|
27
|
+
case 'quality-report':
|
|
28
|
+
return 'data-quality';
|
|
29
|
+
case 'ground':
|
|
30
|
+
case 'ground-model':
|
|
31
|
+
case 'ground-model-interpretation':
|
|
32
|
+
case 'interpretation':
|
|
33
|
+
case 'stratigraphy':
|
|
34
|
+
return 'ground-model';
|
|
35
|
+
case 'risk':
|
|
36
|
+
case 'risks':
|
|
37
|
+
case 'risk-analysis':
|
|
38
|
+
case 'hazard':
|
|
39
|
+
case 'hazards':
|
|
40
|
+
return 'risk-analysis';
|
|
41
|
+
case 'anomaly':
|
|
42
|
+
case 'anomalies':
|
|
43
|
+
case 'anomaly-detection':
|
|
44
|
+
case 'conflict':
|
|
45
|
+
case 'conflict-detection':
|
|
46
|
+
case 'outlier':
|
|
47
|
+
case 'outliers':
|
|
48
|
+
return 'anomaly-detection';
|
|
49
|
+
case 'recommendation':
|
|
50
|
+
case 'recommendations':
|
|
51
|
+
case 'next-actions':
|
|
52
|
+
case 'foundation-recommendations':
|
|
53
|
+
return 'recommendations';
|
|
54
|
+
case 'viz':
|
|
55
|
+
case 'visualize':
|
|
56
|
+
case 'visualization':
|
|
57
|
+
case 'visualizations':
|
|
58
|
+
case 'map':
|
|
59
|
+
case 'plots':
|
|
60
|
+
case 'charts':
|
|
61
|
+
return 'visualization';
|
|
62
|
+
default:
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export function parseProjectWorkflowRouterSelection(raw) {
|
|
67
|
+
const payload = coerceRouterPayload(raw);
|
|
68
|
+
const proposed = Array.isArray(payload?.tasks)
|
|
69
|
+
? payload.tasks
|
|
70
|
+
: payload?.task != null
|
|
71
|
+
? [payload.task]
|
|
72
|
+
: [];
|
|
73
|
+
const tasks = [];
|
|
74
|
+
const rejectedTasks = [];
|
|
75
|
+
for (const value of proposed) {
|
|
76
|
+
const normalized = normalizeProjectWorkflowRouteTask(value);
|
|
77
|
+
if (normalized) {
|
|
78
|
+
if (!tasks.includes(normalized))
|
|
79
|
+
tasks.push(normalized);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
rejectedTasks.push({
|
|
83
|
+
value: String(value),
|
|
84
|
+
reason: `Not an allowed deterministic project workflow task. Allowed tasks: ${PROJECT_WORKFLOW_ROUTER_TASKS.join(', ')}.`,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const rationale = Array.isArray(payload?.rationale)
|
|
89
|
+
? payload.rationale.map((item) => String(item)).filter(Boolean).slice(0, 8)
|
|
90
|
+
: typeof payload?.rationale === 'string'
|
|
91
|
+
? [payload.rationale]
|
|
92
|
+
: [];
|
|
93
|
+
const requiresCustomQuestion = payload?.requiresCustomQuestion === true
|
|
94
|
+
|| payload?.requires_custom_question === true
|
|
95
|
+
|| payload?.customQuestion === true
|
|
96
|
+
|| payload?.needsAgent === true;
|
|
97
|
+
return { tasks, rejectedTasks, rationale, requiresCustomQuestion };
|
|
98
|
+
}
|
|
99
|
+
export function inferProjectWorkflowRouteTasks(prompt) {
|
|
100
|
+
const lower = prompt.toLowerCase();
|
|
101
|
+
const tasks = [];
|
|
102
|
+
const rationale = [];
|
|
103
|
+
const add = (task, pattern, reason) => {
|
|
104
|
+
if (pattern.test(lower) && !tasks.includes(task)) {
|
|
105
|
+
tasks.push(task);
|
|
106
|
+
rationale.push(reason);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
add('data-quality', /\b(?:data quality|inventory|missing data|quality report|duplicate|file audit|data audit)\b/, 'Matched data inventory, quality, missing-data, or duplicate-source language.');
|
|
110
|
+
add('ground-model', /\b(?:ground model|interpret|strata|stratigraphy|lithology|hydrogeology|borehole model)\b/, 'Matched ground-model, interpretation, strata, lithology, or borehole-model language.');
|
|
111
|
+
add('risk-analysis', /\b(?:risk|risks|hazard|hazards|limitation|limitations|uncertainty|mitigation|concern|failure mode)\b/, 'Matched risk, hazard, limitation, uncertainty, or mitigation language.');
|
|
112
|
+
add('anomaly-detection', /\b(?:anomal\w*|conflict|outlier|inconsistent|inconsistency|mismatch|contradiction)\b/, 'Matched anomaly, conflict, outlier, inconsistency, or contradiction language.');
|
|
113
|
+
add('recommendations', /\b(?:recommend|recommendation|foundation option|advice|next action|what should|design route)\b/, 'Matched recommendation, foundation-option, advice, or next-action language.');
|
|
114
|
+
add('visualization', /\b(?:visual\w*|map|plot|chart|section|profile|strip log|dashboard)\b/, 'Matched visualization, map, plot, chart, profile, or strip-log language.');
|
|
115
|
+
return {
|
|
116
|
+
tasks,
|
|
117
|
+
rejectedTasks: [],
|
|
118
|
+
rationale,
|
|
119
|
+
requiresCustomQuestion: tasks.length === 0,
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
export function routeProjectWorkflowRequest(options) {
|
|
123
|
+
const generatedAt = options.now ?? new Date().toISOString();
|
|
124
|
+
const runId = options.runId ?? `run_${generatedAt.replace(/\D/g, '').slice(0, 17)}`;
|
|
125
|
+
const routeId = `route_${runId.replace(/^run_/, '')}`;
|
|
126
|
+
const providerContract = options.providerConfig
|
|
127
|
+
? buildProviderOperatingContract(options.providerConfig, { task: 'project-workflow-router', compact: true })
|
|
128
|
+
: undefined;
|
|
129
|
+
const explicitSelection = options.requestedTasks?.length
|
|
130
|
+
? parseProjectWorkflowRouterSelection({ tasks: options.requestedTasks, rationale: ['Explicit workflow task selection supplied by CLI/user input.'] })
|
|
131
|
+
: undefined;
|
|
132
|
+
const modelSelection = options.llmSelection != null
|
|
133
|
+
? parseProjectWorkflowRouterSelection(options.llmSelection)
|
|
134
|
+
: undefined;
|
|
135
|
+
const inferredSelection = !explicitSelection && (!modelSelection || modelSelection.tasks.length === 0)
|
|
136
|
+
? inferProjectWorkflowRouteTasks(options.prompt)
|
|
137
|
+
: undefined;
|
|
138
|
+
const selection = explicitSelection
|
|
139
|
+
?? (modelSelection && modelSelection.tasks.length > 0 ? modelSelection : undefined)
|
|
140
|
+
?? mergeSelections(inferredSelection, modelSelection)
|
|
141
|
+
?? { tasks: [], rejectedTasks: [], rationale: [] };
|
|
142
|
+
const selectionSource = deriveSelectionSource({
|
|
143
|
+
explicit: explicitSelection,
|
|
144
|
+
model: modelSelection,
|
|
145
|
+
inferred: inferredSelection,
|
|
146
|
+
selection,
|
|
147
|
+
});
|
|
148
|
+
const confidence = deriveRouteConfidence(selection, Boolean(explicitSelection), Boolean(modelSelection), options.manifest);
|
|
149
|
+
const executionMode = selection.tasks.length > 0
|
|
150
|
+
&& !selection.requiresCustomQuestion
|
|
151
|
+
&& confidence >= PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE
|
|
152
|
+
? 'deterministic-sequence'
|
|
153
|
+
: 'needs-selection';
|
|
154
|
+
const modelCalls = options.modelCalls ?? [];
|
|
155
|
+
return {
|
|
156
|
+
schemaVersion: 'geotech.project-workflow-route-plan.v1',
|
|
157
|
+
routeId,
|
|
158
|
+
runId,
|
|
159
|
+
generatedAt,
|
|
160
|
+
prompt: options.prompt,
|
|
161
|
+
executionMode,
|
|
162
|
+
tasks: selection.tasks,
|
|
163
|
+
confidence,
|
|
164
|
+
selectionSource,
|
|
165
|
+
rationale: selection.rationale.length > 0
|
|
166
|
+
? selection.rationale
|
|
167
|
+
: executionMode === 'needs-selection'
|
|
168
|
+
? ['No deterministic project workflow intent was confidently identified; route requires custom question handling or user selection.']
|
|
169
|
+
: ['Validated deterministic workflow route.'],
|
|
170
|
+
rejectedTasks: selection.rejectedTasks,
|
|
171
|
+
providerContract: {
|
|
172
|
+
providerNeutral: true,
|
|
173
|
+
purpose: 'project-workflow-routing',
|
|
174
|
+
llmRole: 'planner-reviewer-only',
|
|
175
|
+
deterministicExecutionRequired: true,
|
|
176
|
+
allowedTasks: PROJECT_WORKFLOW_ROUTER_TASKS,
|
|
177
|
+
disallowedActions: DISALLOWED_ROUTER_ACTIONS,
|
|
178
|
+
providerProfile: providerContract?.profile,
|
|
179
|
+
contextStrategy: providerContract?.contextStrategy,
|
|
180
|
+
reviewGates: providerContract?.reviewGates,
|
|
181
|
+
},
|
|
182
|
+
evidenceSummary: options.manifest
|
|
183
|
+
? {
|
|
184
|
+
supportedFiles: options.manifest.summary.supportedFiles,
|
|
185
|
+
branches: options.manifest.summary.branches,
|
|
186
|
+
hasGroundModel: Boolean(options.manifest.groundModel),
|
|
187
|
+
hasVerifier: Boolean(options.manifest.verifier),
|
|
188
|
+
}
|
|
189
|
+
: undefined,
|
|
190
|
+
trace: {
|
|
191
|
+
steps: [
|
|
192
|
+
{
|
|
193
|
+
type: 'router',
|
|
194
|
+
status: executionMode === 'deterministic-sequence' ? 'pass' : 'review',
|
|
195
|
+
detail: executionMode === 'deterministic-sequence'
|
|
196
|
+
? `Routed to deterministic workflow task(s): ${selection.tasks.join(', ')} from ${selectionSource} selection.`
|
|
197
|
+
: selection.requiresCustomQuestion
|
|
198
|
+
? 'Router selection requires custom question handling; keep the request in the workspace-backed LLM path.'
|
|
199
|
+
: selection.tasks.length > 0
|
|
200
|
+
? `Route confidence ${confidence.toFixed(2)} is below the ${PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE.toFixed(2)} execution gate; keep the request in custom LLM review or ask the user to choose a task.`
|
|
201
|
+
: 'No deterministic workflow route selected; keep the request in custom LLM review or ask the user to choose a task.',
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
type: 'review_gate',
|
|
205
|
+
status: 'review',
|
|
206
|
+
detail: 'The LLM may select and review workflow routes only. Deterministic GeotechCLI executors own calculations, FEM cases, validation, and persisted artifacts.',
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
},
|
|
210
|
+
modelCalls,
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
export function buildProjectWorkflowRouterPrompt(options) {
|
|
214
|
+
const providerPrompt = options.providerConfig
|
|
215
|
+
? buildProviderOperatingContract(options.providerConfig, { task: 'project-workflow-router', compact: options.compact === true }).prompt
|
|
216
|
+
: 'Provider operating contract: provider-neutral planner; route only, do not calculate.';
|
|
217
|
+
const manifestSummary = options.manifest
|
|
218
|
+
? [
|
|
219
|
+
`supportedFiles=${options.manifest.summary.supportedFiles}`,
|
|
220
|
+
`branches=${options.manifest.summary.branches.join(',') || 'none'}`,
|
|
221
|
+
`hasGroundModel=${Boolean(options.manifest.groundModel)}`,
|
|
222
|
+
`hasVerifier=${Boolean(options.manifest.verifier)}`,
|
|
223
|
+
].join('; ')
|
|
224
|
+
: 'manifest=not-attached';
|
|
225
|
+
return [
|
|
226
|
+
providerPrompt,
|
|
227
|
+
'',
|
|
228
|
+
'## PROJECT WORKFLOW ROUTER CONTRACT',
|
|
229
|
+
'You are only selecting deterministic GeotechCLI project workflows. You are not doing engineering math, FEM simulation, OCR, PDF reading, or source-file edits.',
|
|
230
|
+
`Allowed tasks: ${PROJECT_WORKFLOW_ROUTER_TASKS.join(', ')}.`,
|
|
231
|
+
`Disallowed actions: ${DISALLOWED_ROUTER_ACTIONS.join('; ')}.`,
|
|
232
|
+
`Workspace evidence summary: ${manifestSummary}.`,
|
|
233
|
+
'',
|
|
234
|
+
'Return strict JSON only:',
|
|
235
|
+
'{"tasks":["risk-analysis"],"rationale":["why these deterministic workflow tasks match"],"confidence":0.74,"requiresCustomQuestion":false}',
|
|
236
|
+
'',
|
|
237
|
+
'User request:',
|
|
238
|
+
options.prompt.trim() || '(no prompt; ask user to select a workflow)',
|
|
239
|
+
].join('\n');
|
|
240
|
+
}
|
|
241
|
+
function coerceRouterPayload(raw) {
|
|
242
|
+
if (raw == null)
|
|
243
|
+
return {};
|
|
244
|
+
if (typeof raw === 'object')
|
|
245
|
+
return raw;
|
|
246
|
+
if (typeof raw !== 'string')
|
|
247
|
+
return {};
|
|
248
|
+
const trimmed = raw.trim();
|
|
249
|
+
const fenced = trimmed.match(/```(?:json)?\s*([\s\S]*?)```/i)?.[1]?.trim();
|
|
250
|
+
const candidate = fenced ?? trimmed;
|
|
251
|
+
try {
|
|
252
|
+
return JSON.parse(candidate);
|
|
253
|
+
}
|
|
254
|
+
catch {
|
|
255
|
+
return {};
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
function deriveRouteConfidence(selection, explicit, modelSuggested, manifest) {
|
|
259
|
+
if (selection.tasks.length === 0)
|
|
260
|
+
return 0.2;
|
|
261
|
+
let confidence = explicit ? 0.95 : modelSuggested ? 0.82 : 0.72;
|
|
262
|
+
if (selection.tasks.length > 1)
|
|
263
|
+
confidence -= 0.04;
|
|
264
|
+
if (selection.rejectedTasks.length > 0)
|
|
265
|
+
confidence -= 0.15;
|
|
266
|
+
if (manifest && manifest.summary.supportedFiles === 0)
|
|
267
|
+
confidence -= 0.2;
|
|
268
|
+
if (modelSuggested && manifest && manifest.summary.supportedFiles === 0) {
|
|
269
|
+
confidence = Math.min(confidence, PROJECT_WORKFLOW_ROUTE_MIN_CONFIDENCE - 0.05);
|
|
270
|
+
}
|
|
271
|
+
return Math.max(0.1, Math.min(0.99, Number(confidence.toFixed(2))));
|
|
272
|
+
}
|
|
273
|
+
function deriveSelectionSource(input) {
|
|
274
|
+
if (input.explicit)
|
|
275
|
+
return 'explicit';
|
|
276
|
+
if (input.model && input.model.tasks.length > 0)
|
|
277
|
+
return 'model';
|
|
278
|
+
if (input.inferred && input.inferred.tasks.length > 0 && input.model)
|
|
279
|
+
return 'merged';
|
|
280
|
+
if (input.inferred && input.inferred.tasks.length > 0)
|
|
281
|
+
return 'deterministic';
|
|
282
|
+
if (input.model)
|
|
283
|
+
return 'model';
|
|
284
|
+
return 'none';
|
|
285
|
+
}
|
|
286
|
+
function mergeSelections(primary, secondary) {
|
|
287
|
+
if (!primary && !secondary)
|
|
288
|
+
return undefined;
|
|
289
|
+
return {
|
|
290
|
+
tasks: primary?.tasks ?? [],
|
|
291
|
+
rejectedTasks: [...(primary?.rejectedTasks ?? []), ...(secondary?.rejectedTasks ?? [])],
|
|
292
|
+
rationale: [...(primary?.rationale ?? []), ...(secondary?.rationale ?? [])],
|
|
293
|
+
requiresCustomQuestion: primary?.requiresCustomQuestion === true || secondary?.requiresCustomQuestion === true,
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
//# sourceMappingURL=project-workflow-router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-workflow-router.js","sourceRoot":"","sources":["../../src/workspace/project-workflow-router.ts"],"names":[],"mappings":"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"}
|