@executioncontrolprotocol/harnesses-browser-nano 0.10.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 +42 -0
- package/dist/_internal/request-capability-hints.d.ts +49 -0
- package/dist/_internal/request-capability-hints.d.ts.map +1 -0
- package/dist/_internal/request-capability-hints.js +488 -0
- package/dist/_internal/request-capability-hints.js.map +1 -0
- package/dist/browser-nano-harness.d.ts +71 -0
- package/dist/browser-nano-harness.d.ts.map +1 -0
- package/dist/browser-nano-harness.js +90 -0
- package/dist/browser-nano-harness.js.map +1 -0
- package/dist/harness-ids.d.ts +6 -0
- package/dist/harness-ids.d.ts.map +1 -0
- package/dist/harness-ids.js +6 -0
- package/dist/harness-ids.js.map +1 -0
- package/dist/harness-nano-config.d.ts +53 -0
- package/dist/harness-nano-config.d.ts.map +1 -0
- package/dist/harness-nano-config.js +94 -0
- package/dist/harness-nano-config.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/intent-classification.d.ts +10 -0
- package/dist/intent-classification.d.ts.map +1 -0
- package/dist/intent-classification.js +177 -0
- package/dist/intent-classification.js.map +1 -0
- package/dist/multi-shot-chat.d.ts +20 -0
- package/dist/multi-shot-chat.d.ts.map +1 -0
- package/dist/multi-shot-chat.js +136 -0
- package/dist/multi-shot-chat.js.map +1 -0
- package/dist/prompts/build-nano-prompt.d.ts +11 -0
- package/dist/prompts/build-nano-prompt.d.ts.map +1 -0
- package/dist/prompts/build-nano-prompt.js +17 -0
- package/dist/prompts/build-nano-prompt.js.map +1 -0
- package/dist/prompts/fixtures-root.d.ts +5 -0
- package/dist/prompts/fixtures-root.d.ts.map +1 -0
- package/dist/prompts/fixtures-root.js +7 -0
- package/dist/prompts/fixtures-root.js.map +1 -0
- package/dist/prompts/index.d.ts +4 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +4 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/load-harness-prompt.browser.d.ts +4 -0
- package/dist/prompts/load-harness-prompt.browser.d.ts.map +1 -0
- package/dist/prompts/load-harness-prompt.browser.js +32 -0
- package/dist/prompts/load-harness-prompt.browser.js.map +1 -0
- package/dist/prompts/load-harness-prompt.d.ts +2 -0
- package/dist/prompts/load-harness-prompt.d.ts.map +1 -0
- package/dist/prompts/load-harness-prompt.js +2 -0
- package/dist/prompts/load-harness-prompt.js.map +1 -0
- package/dist/prompts/load-harness-prompt.node.d.ts +4 -0
- package/dist/prompts/load-harness-prompt.node.d.ts.map +1 -0
- package/dist/prompts/load-harness-prompt.node.js +20 -0
- package/dist/prompts/load-harness-prompt.node.js.map +1 -0
- package/dist/prompts/nano-prompt-fixture-ids.d.ts +10 -0
- package/dist/prompts/nano-prompt-fixture-ids.d.ts.map +1 -0
- package/dist/prompts/nano-prompt-fixture-ids.js +8 -0
- package/dist/prompts/nano-prompt-fixture-ids.js.map +1 -0
- package/dist/register.d.ts +5 -0
- package/dist/register.d.ts.map +1 -0
- package/dist/register.js +14 -0
- package/dist/register.js.map +1 -0
- package/dist/workflow-assistant.d.ts +19 -0
- package/dist/workflow-assistant.d.ts.map +1 -0
- package/dist/workflow-assistant.js +275 -0
- package/dist/workflow-assistant.js.map +1 -0
- package/dist/workflow-authoring.d.ts +13 -0
- package/dist/workflow-authoring.d.ts.map +1 -0
- package/dist/workflow-authoring.js +426 -0
- package/dist/workflow-authoring.js.map +1 -0
- package/fixtures/eval-cases/assistant.cases.json +658 -0
- package/fixtures/eval-cases/chat.cases.json +320 -0
- package/fixtures/eval-cases/flow.cases.json +505 -0
- package/fixtures/eval-cases/intent.cases.json +587 -0
- package/fixtures/eval-cases/workflow-create.cases.json +493 -0
- package/fixtures/eval-cases/workflow-patch.cases.json +379 -0
- package/fixtures/harness-prompts/intent-classification.prompt.json +72 -0
- package/fixtures/harness-prompts/workflow-assistant.prompt.json +86 -0
- package/fixtures/harness-prompts/workflow-authoring-create.prompt.json +50 -0
- package/fixtures/harness-prompts/workflow-authoring-patch.prompt.json +54 -0
- package/fixtures/runs/completed-with-refs.json +18 -0
- package/fixtures/runs/failed-echo-step.json +29 -0
- package/fixtures/runs/running-pending.json +14 -0
- package/fixtures/workflows/echo-validate-reorder.json +26 -0
- package/fixtures/workflows/echo-workflow.json +20 -0
- package/fixtures/workflows/multi-cap-workflow.json +34 -0
- package/fixtures/workflows/two-step-chain.json +26 -0
- package/package.json +49 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { ECP_INTENT_VALUES, } from "@executioncontrolprotocol/types";
|
|
2
|
+
import { HARNESS_TASKS, getHarnessNanoConfig, HARNESS_NANO_CHAT_REPAIR } from "./harness-nano-config.js";
|
|
3
|
+
import { BROWSER_NANO_HARNESS_ID } from "./harness-ids.js";
|
|
4
|
+
import { invokeIntentClassification } from "./intent-classification.js";
|
|
5
|
+
import { invokeWorkflowAssistant } from "./workflow-assistant.js";
|
|
6
|
+
import { invokeWorkflowAuthoring } from "./workflow-authoring.js";
|
|
7
|
+
/** Route classified intent to workflow authoring vs assistant. @category Harness */
|
|
8
|
+
export function intentRoutesToAuthoring(intent) {
|
|
9
|
+
return (intent === ECP_INTENT_VALUES.WORKFLOW_CREATE ||
|
|
10
|
+
intent === ECP_INTENT_VALUES.WORKFLOW_PATCH);
|
|
11
|
+
}
|
|
12
|
+
function shotFromTrace(task, promptPhase, result, outputSchema) {
|
|
13
|
+
return {
|
|
14
|
+
task,
|
|
15
|
+
promptPhase,
|
|
16
|
+
...(result.trace.prompt ? { prompt: result.trace.prompt } : {}),
|
|
17
|
+
...(result.trace.rawOutput ? { rawOutput: result.trace.rawOutput } : {}),
|
|
18
|
+
...(result.trace.repairAttempts ? { repairAttempts: result.trace.repairAttempts } : {}),
|
|
19
|
+
...(outputSchema ? { outputSchema } : {}),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Multi-shot chat orchestrator: unfiltered intent shot, then contextualized execution shot.
|
|
24
|
+
* @category Harness
|
|
25
|
+
*/
|
|
26
|
+
export async function invokeMultiShotChat(input, ctx) {
|
|
27
|
+
const intentDefaults = getHarnessNanoConfig(HARNESS_TASKS.INTENT_CLASSIFICATION);
|
|
28
|
+
const intentCtx = {
|
|
29
|
+
...ctx,
|
|
30
|
+
config: {
|
|
31
|
+
...intentDefaults,
|
|
32
|
+
...ctx.config,
|
|
33
|
+
context: {
|
|
34
|
+
...intentDefaults.context,
|
|
35
|
+
...ctx.config.context,
|
|
36
|
+
promptPhase: "unfiltered",
|
|
37
|
+
includeEnvironmentDescriptor: false,
|
|
38
|
+
includeEncodedDescriptor: false,
|
|
39
|
+
},
|
|
40
|
+
repair: {
|
|
41
|
+
...intentDefaults.repair,
|
|
42
|
+
...ctx.config.repair,
|
|
43
|
+
...HARNESS_NANO_CHAT_REPAIR,
|
|
44
|
+
},
|
|
45
|
+
trace: { ...intentDefaults.trace, ...ctx.config.trace },
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
const intentResult = await invokeIntentClassification({ message: input.message, model: input.model }, intentCtx);
|
|
49
|
+
const classifiedIntent = intentResult.artifact;
|
|
50
|
+
const buildTaskConfig = (task) => {
|
|
51
|
+
const taskDefaults = getHarnessNanoConfig(task);
|
|
52
|
+
return {
|
|
53
|
+
...taskDefaults,
|
|
54
|
+
...ctx.config,
|
|
55
|
+
context: {
|
|
56
|
+
...taskDefaults.context,
|
|
57
|
+
...ctx.config.context,
|
|
58
|
+
promptPhase: "contextualized",
|
|
59
|
+
},
|
|
60
|
+
repair: {
|
|
61
|
+
...taskDefaults.repair,
|
|
62
|
+
...ctx.config.repair,
|
|
63
|
+
...HARNESS_NANO_CHAT_REPAIR,
|
|
64
|
+
},
|
|
65
|
+
trace: { ...taskDefaults.trace, ...ctx.config.trace },
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
const shots = [
|
|
69
|
+
shotFromTrace(HARNESS_TASKS.INTENT_CLASSIFICATION, "unfiltered", intentResult, "@executioncontrolprotocol.intent"),
|
|
70
|
+
];
|
|
71
|
+
let finalResult;
|
|
72
|
+
if (intentRoutesToAuthoring(classifiedIntent.intent)) {
|
|
73
|
+
const isPatch = input.manifest !== undefined;
|
|
74
|
+
const authoringResult = await invokeWorkflowAuthoring({
|
|
75
|
+
request: input.message,
|
|
76
|
+
manifest: isPatch ? input.manifest : undefined,
|
|
77
|
+
model: input.model,
|
|
78
|
+
classifiedIntent,
|
|
79
|
+
conversationSummary: input.conversationSummary,
|
|
80
|
+
}, { ...ctx, config: buildTaskConfig(HARNESS_TASKS.WORKFLOW_AUTHORING) });
|
|
81
|
+
shots.push(shotFromTrace(HARNESS_TASKS.WORKFLOW_AUTHORING, "contextualized", authoringResult, isPatch ? "@executioncontrolprotocol.patch" : "@executioncontrolprotocol.workflow"));
|
|
82
|
+
finalResult = authoringResult;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
const assistantResult = await invokeWorkflowAssistant({
|
|
86
|
+
message: input.message,
|
|
87
|
+
runContext: input.runContext,
|
|
88
|
+
workflow: input.manifest,
|
|
89
|
+
model: input.model,
|
|
90
|
+
classifiedIntent,
|
|
91
|
+
conversationSummary: input.conversationSummary,
|
|
92
|
+
}, { ...ctx, config: buildTaskConfig(HARNESS_TASKS.WORKFLOW_ASSISTANT) });
|
|
93
|
+
shots.push(shotFromTrace(HARNESS_TASKS.WORKFLOW_ASSISTANT, "contextualized", assistantResult, "@executioncontrolprotocol.harness.reply"));
|
|
94
|
+
finalResult = assistantResult;
|
|
95
|
+
}
|
|
96
|
+
const trace = {
|
|
97
|
+
...finalResult.trace,
|
|
98
|
+
harness: BROWSER_NANO_HARNESS_ID,
|
|
99
|
+
orchestration: "multi-shot",
|
|
100
|
+
classifiedIntent: {
|
|
101
|
+
intent: classifiedIntent.intent,
|
|
102
|
+
...(classifiedIntent.topic ? { topic: classifiedIntent.topic } : {}),
|
|
103
|
+
...(classifiedIntent.summary ? { summary: classifiedIntent.summary } : {}),
|
|
104
|
+
},
|
|
105
|
+
shots,
|
|
106
|
+
};
|
|
107
|
+
return {
|
|
108
|
+
artifact: finalResult.artifact,
|
|
109
|
+
raw: finalResult.raw,
|
|
110
|
+
...(finalResult.validation ? { validation: finalResult.validation } : {}),
|
|
111
|
+
trace,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/** Extract assistant answer text from a chat harness result when applicable. @category Harness */
|
|
115
|
+
export function chatResultAnswer(result) {
|
|
116
|
+
const artifact = result.artifact;
|
|
117
|
+
if (artifact !== null &&
|
|
118
|
+
typeof artifact === "object" &&
|
|
119
|
+
"answer" in artifact &&
|
|
120
|
+
typeof artifact.answer === "string") {
|
|
121
|
+
return artifact.answer;
|
|
122
|
+
}
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
/** Extract workflow manifest from a chat harness result when applicable. @category Harness */
|
|
126
|
+
export function chatResultWorkflow(result) {
|
|
127
|
+
const artifact = result.artifact;
|
|
128
|
+
if (artifact !== null &&
|
|
129
|
+
typeof artifact === "object" &&
|
|
130
|
+
"schema" in artifact &&
|
|
131
|
+
artifact.schema === "@executioncontrolprotocol.workflow") {
|
|
132
|
+
return artifact;
|
|
133
|
+
}
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=multi-shot-chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-shot-chat.js","sourceRoot":"","sources":["../src/multi-shot-chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the system prompt for a Browser Nano harness prompt fixture id.
|
|
3
|
+
* @category Harness
|
|
4
|
+
*/
|
|
5
|
+
export declare function buildNanoSystemPrompt(fixtureId: string): string;
|
|
6
|
+
/**
|
|
7
|
+
* Build repair-line text for a Browser Nano harness prompt fixture id.
|
|
8
|
+
* @category Harness
|
|
9
|
+
*/
|
|
10
|
+
export declare function buildNanoRepairHint(fixtureId: string): string;
|
|
11
|
+
//# sourceMappingURL=build-nano-prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-nano-prompt.d.ts","sourceRoot":"","sources":["../../src/prompts/build-nano-prompt.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { buildRepairHintFromFixture, buildSystemPromptFromFixture, } from "@executioncontrolprotocol/core";
|
|
2
|
+
import { loadNanoHarnessPromptFixture } from "./load-harness-prompt.js";
|
|
3
|
+
/**
|
|
4
|
+
* Build the system prompt for a Browser Nano harness prompt fixture id.
|
|
5
|
+
* @category Harness
|
|
6
|
+
*/
|
|
7
|
+
export function buildNanoSystemPrompt(fixtureId) {
|
|
8
|
+
return buildSystemPromptFromFixture(loadNanoHarnessPromptFixture(fixtureId));
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Build repair-line text for a Browser Nano harness prompt fixture id.
|
|
12
|
+
* @category Harness
|
|
13
|
+
*/
|
|
14
|
+
export function buildNanoRepairHint(fixtureId) {
|
|
15
|
+
return buildRepairHintFromFixture(loadNanoHarnessPromptFixture(fixtureId));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=build-nano-prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-nano-prompt.js","sourceRoot":"","sources":["../../src/prompts/build-nano-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AAEvE;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,OAAO,4BAA4B,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,OAAO,0BAA0B,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAA;AAC5E,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Package root for `@executioncontrolprotocol/harnesses-browser-nano`. @category Harness */
|
|
2
|
+
export declare const NANO_PACKAGE_ROOT: string;
|
|
3
|
+
/** Directory for Browser Nano harness prompt JSON fixtures. @category Harness */
|
|
4
|
+
export declare const NANO_HARNESS_PROMPTS_DIR: string;
|
|
5
|
+
//# sourceMappingURL=fixtures-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures-root.d.ts","sourceRoot":"","sources":["../../src/prompts/fixtures-root.ts"],"names":[],"mappings":"AAGA,6FAA6F;AAC7F,eAAO,MAAM,iBAAiB,QAG7B,CAAA;AAED,iFAAiF;AACjF,eAAO,MAAM,wBAAwB,QAA2D,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
/** Package root for `@executioncontrolprotocol/harnesses-browser-nano`. @category Harness */
|
|
4
|
+
export const NANO_PACKAGE_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../..");
|
|
5
|
+
/** Directory for Browser Nano harness prompt JSON fixtures. @category Harness */
|
|
6
|
+
export const NANO_HARNESS_PROMPTS_DIR = path.join(NANO_PACKAGE_ROOT, "fixtures/harness-prompts");
|
|
7
|
+
//# sourceMappingURL=fixtures-root.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures-root.js","sourceRoot":"","sources":["../../src/prompts/fixtures-root.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,6FAA6F;AAC7F,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAC3C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAC5C,OAAO,CACR,CAAA;AAED,iFAAiF;AACjF,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,0BAA0B,CAAC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { NANO_PROMPT_FIXTURE_IDS, type NanoPromptFixtureId } from "./nano-prompt-fixture-ids.js";
|
|
2
|
+
export { loadNanoHarnessPromptFixture } from "./load-harness-prompt.js";
|
|
3
|
+
export { buildNanoSystemPrompt, buildNanoRepairHint } from "./build-nano-prompt.js";
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAA4B,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type HarnessPromptFixture } from "@executioncontrolprotocol/core";
|
|
2
|
+
/** Load and validate a Browser Nano harness prompt fixture by id (browser bundle). @category Harness */
|
|
3
|
+
export declare function loadNanoHarnessPromptFixture(fixtureId: string): HarnessPromptFixture;
|
|
4
|
+
//# sourceMappingURL=load-harness-prompt.browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.browser.d.ts","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,gCAAgC,CAAA;AA2BvC,wGAAwG;AACxG,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,CAMpF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { harnessPromptFixtureSchema, } from "@executioncontrolprotocol/core";
|
|
2
|
+
function fixtureIdFromGlobKey(key) {
|
|
3
|
+
const normalized = key.replace(/\\/g, "/");
|
|
4
|
+
const fileName = normalized.split("/").pop() ?? normalized;
|
|
5
|
+
return fileName.replace(/\.prompt\.json$/, "");
|
|
6
|
+
}
|
|
7
|
+
function loadBrowserPromptFixtures() {
|
|
8
|
+
const modules = import.meta.glob("../../../fixtures/harness-prompts/*.prompt.json", {
|
|
9
|
+
eager: true,
|
|
10
|
+
import: "default",
|
|
11
|
+
});
|
|
12
|
+
const map = new Map();
|
|
13
|
+
for (const [key, raw] of Object.entries(modules)) {
|
|
14
|
+
const fixtureId = fixtureIdFromGlobKey(key);
|
|
15
|
+
const parsed = harnessPromptFixtureSchema.parse(raw);
|
|
16
|
+
if (parsed.id !== fixtureId) {
|
|
17
|
+
throw new Error(`Harness prompt fixture id mismatch: file ${fixtureId}, json id ${parsed.id}`);
|
|
18
|
+
}
|
|
19
|
+
map.set(fixtureId, parsed);
|
|
20
|
+
}
|
|
21
|
+
return map;
|
|
22
|
+
}
|
|
23
|
+
const promptFixtures = loadBrowserPromptFixtures();
|
|
24
|
+
/** Load and validate a Browser Nano harness prompt fixture by id (browser bundle). @category Harness */
|
|
25
|
+
export function loadNanoHarnessPromptFixture(fixtureId) {
|
|
26
|
+
const fixture = promptFixtures.get(fixtureId);
|
|
27
|
+
if (!fixture) {
|
|
28
|
+
throw new Error(`Harness prompt fixture not found: ${fixtureId}`);
|
|
29
|
+
}
|
|
30
|
+
return fixture;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=load-harness-prompt.browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.browser.js","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAE3B,MAAM,gCAAgC,CAAA;AAEvC,SAAS,oBAAoB,CAAC,GAAW;IACvC,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,UAAU,CAAA;IAC1D,OAAO,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,yBAAyB;IAChC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iDAAiD,EAAE;QAClF,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,SAAS;KAClB,CAAyC,CAAA;IAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAgC,CAAA;IACnD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACjD,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpD,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,4CAA4C,SAAS,aAAa,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;QAChG,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC5B,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,cAAc,GAAG,yBAAyB,EAAE,CAAA;AAElD,wGAAwG;AACxG,MAAM,UAAU,4BAA4B,CAAC,SAAiB;IAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAA;IACnE,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.d.ts","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,IAAI,4BAA4B,EAAE,MAAM,+BAA+B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.js","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,IAAI,4BAA4B,EAAE,MAAM,+BAA+B,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type HarnessPromptFixture } from "@executioncontrolprotocol/core";
|
|
2
|
+
/** Node-only Browser Nano harness prompt loader. @category Harness */
|
|
3
|
+
export declare function loadNanoHarnessPromptFixtureNode(fixtureId: string): HarnessPromptFixture;
|
|
4
|
+
//# sourceMappingURL=load-harness-prompt.node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.node.d.ts","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.node.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,gCAAgC,CAAA;AAKvC,sEAAsE;AACtE,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,CAWxF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { harnessPromptFixtureSchema, } from "@executioncontrolprotocol/core";
|
|
4
|
+
import { NANO_HARNESS_PROMPTS_DIR } from "./fixtures-root.js";
|
|
5
|
+
const cache = new Map();
|
|
6
|
+
/** Node-only Browser Nano harness prompt loader. @category Harness */
|
|
7
|
+
export function loadNanoHarnessPromptFixtureNode(fixtureId) {
|
|
8
|
+
const cached = cache.get(fixtureId);
|
|
9
|
+
if (cached)
|
|
10
|
+
return cached;
|
|
11
|
+
const full = path.join(NANO_HARNESS_PROMPTS_DIR, `${fixtureId}.prompt.json`);
|
|
12
|
+
const raw = JSON.parse(readFileSync(full, "utf8"));
|
|
13
|
+
const parsed = harnessPromptFixtureSchema.parse(raw);
|
|
14
|
+
if (parsed.id !== fixtureId) {
|
|
15
|
+
throw new Error(`Harness prompt fixture id mismatch: file ${fixtureId}, json id ${parsed.id}`);
|
|
16
|
+
}
|
|
17
|
+
cache.set(fixtureId, parsed);
|
|
18
|
+
return parsed;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=load-harness-prompt.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-harness-prompt.node.js","sourceRoot":"","sources":["../../src/prompts/load-harness-prompt.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EACL,0BAA0B,GAE3B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAgC,CAAA;AAErD,sEAAsE;AACtE,MAAM,UAAU,gCAAgC,CAAC,SAAiB;IAChE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,SAAS,cAAc,CAAC,CAAA;IAC5E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,CAAA;IAC7D,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACpD,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,4CAA4C,SAAS,aAAa,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;IAChG,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC5B,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Browser Nano harness prompt fixture ids. @category Harness */
|
|
2
|
+
export declare const NANO_PROMPT_FIXTURE_IDS: {
|
|
3
|
+
readonly INTENT_CLASSIFICATION: "intent-classification";
|
|
4
|
+
readonly WORKFLOW_AUTHORING_CREATE: "workflow-authoring-create";
|
|
5
|
+
readonly WORKFLOW_AUTHORING_PATCH: "workflow-authoring-patch";
|
|
6
|
+
readonly WORKFLOW_ASSISTANT: "workflow-assistant";
|
|
7
|
+
};
|
|
8
|
+
/** Browser Nano harness prompt fixture id union. @category Harness */
|
|
9
|
+
export type NanoPromptFixtureId = (typeof NANO_PROMPT_FIXTURE_IDS)[keyof typeof NANO_PROMPT_FIXTURE_IDS];
|
|
10
|
+
//# sourceMappingURL=nano-prompt-fixture-ids.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nano-prompt-fixture-ids.d.ts","sourceRoot":"","sources":["../../src/prompts/nano-prompt-fixture-ids.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,eAAO,MAAM,uBAAuB;;;;;CAK1B,CAAA;AAEV,sEAAsE;AACtE,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Browser Nano harness prompt fixture ids. @category Harness */
|
|
2
|
+
export const NANO_PROMPT_FIXTURE_IDS = {
|
|
3
|
+
INTENT_CLASSIFICATION: "intent-classification",
|
|
4
|
+
WORKFLOW_AUTHORING_CREATE: "workflow-authoring-create",
|
|
5
|
+
WORKFLOW_AUTHORING_PATCH: "workflow-authoring-patch",
|
|
6
|
+
WORKFLOW_ASSISTANT: "workflow-assistant",
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=nano-prompt-fixture-ids.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nano-prompt-fixture-ids.js","sourceRoot":"","sources":["../../src/prompts/nano-prompt-fixture-ids.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,qBAAqB,EAAE,uBAAuB;IAC9C,yBAAyB,EAAE,2BAA2B;IACtD,wBAAwB,EAAE,0BAA0B;IACpD,kBAAkB,EAAE,oBAAoB;CAChC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Register Browser Nano harness in the global catalog. @category Harness */
|
|
2
|
+
export declare function registerBrowserNanoHarnesses(): void;
|
|
3
|
+
/** Reset harness registration (tests). @internal */
|
|
4
|
+
export declare function resetBrowserNanoHarnessRegistrationForTests(): void;
|
|
5
|
+
//# sourceMappingURL=register.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAIA,6EAA6E;AAC7E,wBAAgB,4BAA4B,IAAI,IAAI,CAInD;AAED,oDAAoD;AACpD,wBAAgB,2CAA2C,IAAI,IAAI,CAElE"}
|
package/dist/register.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { registerBrowserNanoHarness } from "./browser-nano-harness.js";
|
|
2
|
+
let registered = false;
|
|
3
|
+
/** Register Browser Nano harness in the global catalog. @category Harness */
|
|
4
|
+
export function registerBrowserNanoHarnesses() {
|
|
5
|
+
if (registered)
|
|
6
|
+
return;
|
|
7
|
+
registerBrowserNanoHarness();
|
|
8
|
+
registered = true;
|
|
9
|
+
}
|
|
10
|
+
/** Reset harness registration (tests). @internal */
|
|
11
|
+
export function resetBrowserNanoHarnessRegistrationForTests() {
|
|
12
|
+
registered = false;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAEtE,IAAI,UAAU,GAAG,KAAK,CAAA;AAEtB,6EAA6E;AAC7E,MAAM,UAAU,4BAA4B;IAC1C,IAAI,UAAU;QAAE,OAAM;IACtB,0BAA0B,EAAE,CAAA;IAC5B,UAAU,GAAG,IAAI,CAAA;AACnB,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,2CAA2C;IACzD,UAAU,GAAG,KAAK,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type HarnessCapabilityContext } from "@executioncontrolprotocol/core";
|
|
2
|
+
import { type EcpIntent, type HarnessEvaluateOutput } from "@executioncontrolprotocol/types";
|
|
3
|
+
/**
|
|
4
|
+
* Unified ECP assistant harness (workflow Q&A, FAQ, environment help).
|
|
5
|
+
* @category Harness
|
|
6
|
+
*/
|
|
7
|
+
export declare const evalsWorkflowAssistantHarness: import("@executioncontrolprotocol/core").HarnessDefinition;
|
|
8
|
+
/** Assistant task handler (invoked by `@executioncontrolprotocol/harness-browser-nano`). @category Harness */
|
|
9
|
+
export declare function invokeWorkflowAssistant(input: {
|
|
10
|
+
message: string;
|
|
11
|
+
runContext?: unknown;
|
|
12
|
+
workflow?: Record<string, unknown>;
|
|
13
|
+
model?: string;
|
|
14
|
+
classifiedIntent?: EcpIntent;
|
|
15
|
+
conversationSummary?: string;
|
|
16
|
+
}, ctx: HarnessCapabilityContext<Record<string, unknown>>): Promise<HarnessEvaluateOutput>;
|
|
17
|
+
/** @deprecated Use {@link invokeWorkflowAssistant} */
|
|
18
|
+
export declare const invokeEvalWorkflowAssistant: typeof invokeWorkflowAssistant;
|
|
19
|
+
//# sourceMappingURL=workflow-assistant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-assistant.d.ts","sourceRoot":"","sources":["../src/workflow-assistant.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,wBAAwB,EAY9B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAQL,KAAK,SAAS,EACd,KAAK,qBAAqB,EAQ3B,MAAM,iCAAiC,CAAA;AAgExC;;;GAGG;AACH,eAAO,MAAM,6BAA6B,4DAyOhC,CAAA;AAYV,8GAA8G;AAC9G,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE;IACL,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,SAAS,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B,EACD,GAAG,EAAE,wBAAwB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACrD,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED,sDAAsD;AACtD,eAAO,MAAM,2BAA2B,gCAA0B,CAAA"}
|