@interf/compiler 0.1.12 → 0.2.1
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 +197 -192
- package/dist/commands/benchmark.d.ts.map +1 -1
- package/dist/commands/benchmark.js +65 -84
- package/dist/commands/benchmark.js.map +1 -1
- package/dist/commands/compile.d.ts.map +1 -1
- package/dist/commands/compile.js +19 -3
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/create.d.ts +3 -0
- package/dist/commands/create.d.ts.map +1 -1
- package/dist/commands/create.js +39 -14
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/default.d.ts.map +1 -1
- package/dist/commands/default.js +2 -0
- package/dist/commands/default.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +8 -63
- package/dist/commands/init.js.map +1 -1
- package/dist/index.d.ts +11 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -16
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-args.d.ts +4 -0
- package/dist/lib/agent-args.d.ts.map +1 -0
- package/dist/lib/agent-args.js +42 -0
- package/dist/lib/agent-args.js.map +1 -0
- package/dist/lib/agent-constants.d.ts +6 -0
- package/dist/lib/agent-constants.d.ts.map +1 -0
- package/dist/lib/agent-constants.js +29 -0
- package/dist/lib/agent-constants.js.map +1 -0
- package/dist/lib/agent-detection.d.ts +8 -0
- package/dist/lib/agent-detection.d.ts.map +1 -0
- package/dist/lib/agent-detection.js +66 -0
- package/dist/lib/agent-detection.js.map +1 -0
- package/dist/lib/agent-execution.d.ts +3 -0
- package/dist/lib/agent-execution.d.ts.map +1 -0
- package/dist/lib/agent-execution.js +207 -0
- package/dist/lib/agent-execution.js.map +1 -0
- package/dist/lib/agent-logs.d.ts +3 -0
- package/dist/lib/agent-logs.d.ts.map +1 -0
- package/dist/lib/agent-logs.js +18 -0
- package/dist/lib/agent-logs.js.map +1 -0
- package/dist/lib/agent-preflight.d.ts +8 -0
- package/dist/lib/agent-preflight.d.ts.map +1 -0
- package/dist/lib/agent-preflight.js +77 -0
- package/dist/lib/agent-preflight.js.map +1 -0
- package/dist/lib/agent-render.d.ts +9 -0
- package/dist/lib/agent-render.d.ts.map +1 -0
- package/dist/lib/agent-render.js +219 -0
- package/dist/lib/agent-render.js.map +1 -0
- package/dist/lib/agent-status.d.ts +4 -0
- package/dist/lib/agent-status.d.ts.map +1 -0
- package/dist/lib/agent-status.js +59 -0
- package/dist/lib/agent-status.js.map +1 -0
- package/dist/lib/agent-types.d.ts +31 -0
- package/dist/lib/agent-types.d.ts.map +1 -0
- package/dist/lib/agent-types.js +2 -0
- package/dist/lib/agent-types.js.map +1 -0
- package/dist/lib/agents.d.ts +7 -49
- package/dist/lib/agents.d.ts.map +1 -1
- package/dist/lib/agents.js +8 -554
- package/dist/lib/agents.js.map +1 -1
- package/dist/lib/benchmark-execution.d.ts +9 -0
- package/dist/lib/benchmark-execution.d.ts.map +1 -0
- package/dist/lib/benchmark-execution.js +488 -0
- package/dist/lib/benchmark-execution.js.map +1 -0
- package/dist/lib/benchmark-paths.d.ts +11 -0
- package/dist/lib/benchmark-paths.d.ts.map +1 -0
- package/dist/lib/benchmark-paths.js +38 -0
- package/dist/lib/benchmark-paths.js.map +1 -0
- package/dist/lib/benchmark-specs.d.ts +8 -0
- package/dist/lib/benchmark-specs.d.ts.map +1 -0
- package/dist/lib/benchmark-specs.js +115 -0
- package/dist/lib/benchmark-specs.js.map +1 -0
- package/dist/lib/benchmark-targets.d.ts +5 -0
- package/dist/lib/benchmark-targets.d.ts.map +1 -0
- package/dist/lib/benchmark-targets.js +72 -0
- package/dist/lib/benchmark-targets.js.map +1 -0
- package/dist/lib/benchmark-types.d.ts +19 -0
- package/dist/lib/benchmark-types.d.ts.map +1 -0
- package/dist/lib/benchmark-types.js +2 -0
- package/dist/lib/benchmark-types.js.map +1 -0
- package/dist/lib/benchmark.d.ts +4 -29
- package/dist/lib/benchmark.d.ts.map +1 -1
- package/dist/lib/benchmark.js +3 -324
- package/dist/lib/benchmark.js.map +1 -1
- package/dist/lib/bundled-templates.d.ts +5 -0
- package/dist/lib/bundled-templates.d.ts.map +1 -0
- package/dist/lib/bundled-templates.js +23 -0
- package/dist/lib/bundled-templates.js.map +1 -0
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +2 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/eval-packs.d.ts +204 -0
- package/dist/lib/eval-packs.d.ts.map +1 -0
- package/dist/lib/eval-packs.js +177 -0
- package/dist/lib/eval-packs.js.map +1 -0
- package/dist/lib/execution-profile.d.ts +18 -0
- package/dist/lib/execution-profile.d.ts.map +1 -0
- package/dist/lib/execution-profile.js +85 -0
- package/dist/lib/execution-profile.js.map +1 -0
- package/dist/lib/interf-bootstrap.d.ts +4 -0
- package/dist/lib/interf-bootstrap.d.ts.map +1 -1
- package/dist/lib/interf-bootstrap.js +71 -68
- package/dist/lib/interf-bootstrap.js.map +1 -1
- package/dist/lib/interf-compile-plan.d.ts +12 -0
- package/dist/lib/interf-compile-plan.d.ts.map +1 -0
- package/dist/lib/interf-compile-plan.js +143 -0
- package/dist/lib/interf-compile-plan.js.map +1 -0
- package/dist/lib/interf-detect.d.ts.map +1 -1
- package/dist/lib/interf-detect.js +11 -10
- package/dist/lib/interf-detect.js.map +1 -1
- package/dist/lib/interf-scaffold.d.ts +1 -10
- package/dist/lib/interf-scaffold.d.ts.map +1 -1
- package/dist/lib/interf-scaffold.js +25 -362
- package/dist/lib/interf-scaffold.js.map +1 -1
- package/dist/lib/interf-workflow-package.d.ts +4 -0
- package/dist/lib/interf-workflow-package.d.ts.map +1 -0
- package/dist/lib/interf-workflow-package.js +131 -0
- package/dist/lib/interf-workflow-package.js.map +1 -0
- package/dist/lib/interf.d.ts +2 -1
- package/dist/lib/interf.d.ts.map +1 -1
- package/dist/lib/interf.js +2 -1
- package/dist/lib/interf.js.map +1 -1
- package/dist/lib/local-workflows.d.ts.map +1 -1
- package/dist/lib/local-workflows.js +8 -12
- package/dist/lib/local-workflows.js.map +1 -1
- package/dist/lib/logger.d.ts +4 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +11 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/obsidian.d.ts.map +1 -1
- package/dist/lib/obsidian.js +7 -3
- package/dist/lib/obsidian.js.map +1 -1
- package/dist/lib/parse.d.ts +2 -2
- package/dist/lib/parse.d.ts.map +1 -1
- package/dist/lib/parse.js +11 -7
- package/dist/lib/parse.js.map +1 -1
- package/dist/lib/registry.js +3 -3
- package/dist/lib/registry.js.map +1 -1
- package/dist/lib/runtime-acceptance.d.ts +4 -0
- package/dist/lib/runtime-acceptance.d.ts.map +1 -0
- package/dist/lib/runtime-acceptance.js +123 -0
- package/dist/lib/runtime-acceptance.js.map +1 -0
- package/dist/lib/runtime-contracts.d.ts +4 -0
- package/dist/lib/runtime-contracts.d.ts.map +1 -0
- package/dist/lib/runtime-contracts.js +63 -0
- package/dist/lib/runtime-contracts.js.map +1 -0
- package/dist/lib/runtime-paths.d.ts +8 -0
- package/dist/lib/runtime-paths.d.ts.map +1 -0
- package/dist/lib/runtime-paths.js +28 -0
- package/dist/lib/runtime-paths.js.map +1 -0
- package/dist/lib/runtime-prompt.d.ts +3 -0
- package/dist/lib/runtime-prompt.d.ts.map +1 -0
- package/dist/lib/runtime-prompt.js +59 -0
- package/dist/lib/runtime-prompt.js.map +1 -0
- package/dist/lib/runtime-reconcile.d.ts +6 -0
- package/dist/lib/runtime-reconcile.d.ts.map +1 -0
- package/dist/lib/runtime-reconcile.js +339 -0
- package/dist/lib/runtime-reconcile.js.map +1 -0
- package/dist/lib/runtime-runs.d.ts +12 -0
- package/dist/lib/runtime-runs.d.ts.map +1 -0
- package/dist/lib/runtime-runs.js +337 -0
- package/dist/lib/runtime-runs.js.map +1 -0
- package/dist/lib/runtime-types.d.ts +42 -0
- package/dist/lib/runtime-types.d.ts.map +1 -0
- package/dist/lib/runtime-types.js +2 -0
- package/dist/lib/runtime-types.js.map +1 -0
- package/dist/lib/runtime.d.ts +6 -58
- package/dist/lib/runtime.d.ts.map +1 -1
- package/dist/lib/runtime.js +5 -614
- package/dist/lib/runtime.js.map +1 -1
- package/dist/lib/schema.d.ts +156 -13
- package/dist/lib/schema.d.ts.map +1 -1
- package/dist/lib/schema.js +113 -4
- package/dist/lib/schema.js.map +1 -1
- package/dist/lib/source-config.d.ts +13 -0
- package/dist/lib/source-config.d.ts.map +1 -0
- package/dist/lib/source-config.js +75 -0
- package/dist/lib/source-config.js.map +1 -0
- package/dist/lib/state-artifacts.d.ts +15 -0
- package/dist/lib/state-artifacts.d.ts.map +1 -0
- package/dist/lib/state-artifacts.js +24 -0
- package/dist/lib/state-artifacts.js.map +1 -0
- package/dist/lib/state-health.d.ts +9 -0
- package/dist/lib/state-health.d.ts.map +1 -0
- package/dist/lib/state-health.js +330 -0
- package/dist/lib/state-health.js.map +1 -0
- package/dist/lib/state-io.d.ts +15 -0
- package/dist/lib/state-io.d.ts.map +1 -0
- package/dist/lib/state-io.js +219 -0
- package/dist/lib/state-io.js.map +1 -0
- package/dist/lib/state-paths.d.ts +5 -0
- package/dist/lib/state-paths.d.ts.map +1 -0
- package/dist/lib/state-paths.js +19 -0
- package/dist/lib/state-paths.js.map +1 -0
- package/dist/lib/state-view.d.ts +7 -0
- package/dist/lib/state-view.d.ts.map +1 -0
- package/dist/lib/state-view.js +147 -0
- package/dist/lib/state-view.js.map +1 -0
- package/dist/lib/state.d.ts +6 -46
- package/dist/lib/state.d.ts.map +1 -1
- package/dist/lib/state.js +5 -632
- package/dist/lib/state.js.map +1 -1
- package/dist/lib/summarize-plan.d.ts +1 -0
- package/dist/lib/summarize-plan.d.ts.map +1 -1
- package/dist/lib/summarize-plan.js +10 -0
- package/dist/lib/summarize-plan.js.map +1 -1
- package/dist/lib/user-config.js +2 -2
- package/dist/lib/user-config.js.map +1 -1
- package/dist/lib/validate-helpers.d.ts +21 -0
- package/dist/lib/validate-helpers.d.ts.map +1 -0
- package/dist/lib/validate-helpers.js +72 -0
- package/dist/lib/validate-helpers.js.map +1 -0
- package/dist/lib/validate-interface.d.ts +2 -0
- package/dist/lib/validate-interface.d.ts.map +1 -1
- package/dist/lib/validate-interface.js +103 -53
- package/dist/lib/validate-interface.js.map +1 -1
- package/dist/lib/validate-kb.d.ts +8 -0
- package/dist/lib/validate-kb.d.ts.map +1 -1
- package/dist/lib/validate-kb.js +53 -24
- package/dist/lib/validate-kb.js.map +1 -1
- package/dist/lib/validate.d.ts +1 -1
- package/dist/lib/validate.d.ts.map +1 -1
- package/dist/lib/validate.js +5 -2
- package/dist/lib/validate.js.map +1 -1
- package/dist/lib/workflow-definitions.d.ts +1 -1
- package/dist/lib/workflow-definitions.d.ts.map +1 -1
- package/dist/lib/workflow-definitions.js +90 -166
- package/dist/lib/workflow-definitions.js.map +1 -1
- package/dist/lib/workflow-helpers.d.ts.map +1 -1
- package/dist/lib/workflow-helpers.js +6 -3
- package/dist/lib/workflow-helpers.js.map +1 -1
- package/dist/lib/workflow-stage-runner.d.ts +41 -0
- package/dist/lib/workflow-stage-runner.d.ts.map +1 -0
- package/dist/lib/workflow-stage-runner.js +106 -0
- package/dist/lib/workflow-stage-runner.js.map +1 -0
- package/dist/lib/workflow-starter-docs.d.ts +9 -0
- package/dist/lib/workflow-starter-docs.d.ts.map +1 -0
- package/dist/lib/workflow-starter-docs.js +18 -0
- package/dist/lib/workflow-starter-docs.js.map +1 -0
- package/dist/lib/workflows-interface-contracts.d.ts +24 -0
- package/dist/lib/workflows-interface-contracts.d.ts.map +1 -0
- package/dist/lib/workflows-interface-contracts.js +304 -0
- package/dist/lib/workflows-interface-contracts.js.map +1 -0
- package/dist/lib/workflows-interface.d.ts +3 -10
- package/dist/lib/workflows-interface.d.ts.map +1 -1
- package/dist/lib/workflows-interface.js +117 -365
- package/dist/lib/workflows-interface.js.map +1 -1
- package/dist/lib/workflows-kb.d.ts.map +1 -1
- package/dist/lib/workflows-kb.js +79 -55
- package/dist/lib/workflows-kb.js.map +1 -1
- package/dist/lib/workflows.d.ts.map +1 -1
- package/dist/lib/workflows.js +1 -1
- package/dist/lib/workflows.js.map +1 -1
- package/package.json +15 -4
- package/skills/interface/analyze/SKILL.md +79 -28
- package/skills/interface/compile/SKILL.md +27 -28
- package/skills/interface/create/SKILL.md +53 -230
- package/skills/interface/create/references/compile-plan-format.md +31 -31
- package/skills/interface/create/references/workflows.md +17 -32
- package/skills/interface/query/SKILL.md +15 -1
- package/skills/interface/retrieve/SKILL.md +32 -65
- package/skills/knowledge-base/compile/SKILL.md +59 -83
- package/skills/knowledge-base/compile/references/stage-claims.md +1 -1
- package/skills/knowledge-base/compile/references/stage-entities.md +2 -2
- package/skills/knowledge-base/query/SKILL.md +13 -1
- package/skills/knowledge-base/summarize/SKILL.md +54 -24
- package/templates/interface/README.md +13 -12
- package/templates/interface/interfaces.md +14 -11
- package/templates/knowledge-base/README.md +0 -1
- package/templates/knowledge-base/registry.md +15 -15
- package/templates/workflow-package/README.md +16 -0
- package/templates/workflow-package/create/SKILL.md +8 -0
- package/templates/workflow-package/interface-query/SKILL.md +29 -0
- package/templates/workflow-package/interface-stage/SKILL.md +13 -0
- package/templates/workflow-package/knowledge-base-query/SKILL.md +36 -0
- package/templates/workflow-package/knowledge-base-stage/SKILL.md +13 -0
- package/templates/workflow-starters/interface/interf/README.md +13 -0
- package/templates/workflow-starters/interface/interf/create/SKILL.md +15 -0
- package/templates/workflow-starters/knowledge-base/interf/README.md +13 -0
- package/templates/workflow-starters/knowledge-base/karpathy/README.md +13 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { markRuntimeRunSucceededAfterValidation, buildStagePrompt, markRuntimeRunFailedAfterValidation, runExecutorStage, runExecutorSummarizeStage, } from "./runtime.js";
|
|
2
|
+
import { reportValidationFailure, validateStageOutcome, } from "./workflow-helpers.js";
|
|
3
|
+
export function findStageByContractType(stages, contractType) {
|
|
4
|
+
const stage = stages.find((candidate) => candidate.contractType === contractType);
|
|
5
|
+
if (!stage) {
|
|
6
|
+
throw new Error(`Missing workflow stage for contract type: ${contractType}`);
|
|
7
|
+
}
|
|
8
|
+
return stage;
|
|
9
|
+
}
|
|
10
|
+
export async function executeValidatedStage(options) {
|
|
11
|
+
const completionCheck = options.completionCheck
|
|
12
|
+
? () => {
|
|
13
|
+
options.reconcile?.();
|
|
14
|
+
return options.completionCheck?.() === true;
|
|
15
|
+
}
|
|
16
|
+
: undefined;
|
|
17
|
+
const code = await runExecutorStage({
|
|
18
|
+
executor: options.executor,
|
|
19
|
+
knowledgeBasePath: options.workspacePath,
|
|
20
|
+
targetType: options.targetType,
|
|
21
|
+
knowledgeBaseName: options.targetName,
|
|
22
|
+
workflow: options.workflow,
|
|
23
|
+
workflowSourcePath: options.workflowSourcePath,
|
|
24
|
+
stage: options.stageDefinition.id,
|
|
25
|
+
stageLabel: options.stageDefinition.label,
|
|
26
|
+
contractType: options.stageDefinition.contractType,
|
|
27
|
+
summary: options.summary,
|
|
28
|
+
contract: options.contract,
|
|
29
|
+
buildPrompt: (contractPath) => buildStagePrompt(options.instructions, contractPath, options.statusLines),
|
|
30
|
+
completionCheck,
|
|
31
|
+
});
|
|
32
|
+
return finalizeValidatedStage(options, code);
|
|
33
|
+
}
|
|
34
|
+
export async function executeValidatedSummarizeStage(options) {
|
|
35
|
+
const completionCheck = options.completionCheck
|
|
36
|
+
? () => {
|
|
37
|
+
options.reconcile?.();
|
|
38
|
+
return options.completionCheck?.() === true;
|
|
39
|
+
}
|
|
40
|
+
: undefined;
|
|
41
|
+
const code = await runExecutorSummarizeStage({
|
|
42
|
+
executor: options.executor,
|
|
43
|
+
knowledgeBasePath: options.workspacePath,
|
|
44
|
+
targetType: options.targetType,
|
|
45
|
+
knowledgeBaseName: options.targetName,
|
|
46
|
+
workflow: options.workflow,
|
|
47
|
+
workflowSourcePath: options.workflowSourcePath,
|
|
48
|
+
stage: options.stageDefinition.id,
|
|
49
|
+
stageLabel: options.stageDefinition.label,
|
|
50
|
+
contractType: options.stageDefinition.contractType,
|
|
51
|
+
summary: options.summary,
|
|
52
|
+
contract: options.contract,
|
|
53
|
+
buildPrompt: (contractPath) => buildStagePrompt(options.instructions, contractPath, options.statusLines),
|
|
54
|
+
completionCheck,
|
|
55
|
+
startingSummaryCount: options.startingSummaryCount,
|
|
56
|
+
targetCount: options.targetCount,
|
|
57
|
+
});
|
|
58
|
+
return finalizeValidatedStage(options, code);
|
|
59
|
+
}
|
|
60
|
+
function finalizeValidatedStage(options, code) {
|
|
61
|
+
const refreshAndValidate = () => {
|
|
62
|
+
options.reconcile?.();
|
|
63
|
+
options.refreshArtifacts?.();
|
|
64
|
+
return validateStageOutcome(options.workspacePath, options.validate());
|
|
65
|
+
};
|
|
66
|
+
if (code !== 0) {
|
|
67
|
+
let completionSatisfied = false;
|
|
68
|
+
try {
|
|
69
|
+
options.reconcile?.();
|
|
70
|
+
completionSatisfied = options.completionCheck?.() === true;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
completionSatisfied = false;
|
|
74
|
+
}
|
|
75
|
+
if (completionSatisfied) {
|
|
76
|
+
const validation = refreshAndValidate();
|
|
77
|
+
if (validation.ok) {
|
|
78
|
+
markRuntimeRunSucceededAfterValidation(options.workspacePath, validation.summary);
|
|
79
|
+
return {
|
|
80
|
+
ok: true,
|
|
81
|
+
code: 0,
|
|
82
|
+
summary: validation.summary,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
reportValidationFailure(options.reporter, validation.summary);
|
|
86
|
+
markRuntimeRunFailedAfterValidation(options.workspacePath, validation.summary);
|
|
87
|
+
return {
|
|
88
|
+
ok: false,
|
|
89
|
+
code,
|
|
90
|
+
summary: validation.summary,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
return { ok: false, code };
|
|
94
|
+
}
|
|
95
|
+
const validation = refreshAndValidate();
|
|
96
|
+
if (!validation.ok) {
|
|
97
|
+
reportValidationFailure(options.reporter, validation.summary);
|
|
98
|
+
markRuntimeRunFailedAfterValidation(options.workspacePath, validation.summary);
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
ok: validation.ok,
|
|
102
|
+
code: validation.ok ? 0 : 1,
|
|
103
|
+
summary: validation.summary,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=workflow-stage-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-stage-runner.js","sourceRoot":"","sources":["../../src/lib/workflow-stage-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
interface StarterDoc {
|
|
2
|
+
relativePath: string;
|
|
3
|
+
content: string;
|
|
4
|
+
}
|
|
5
|
+
export declare const KNOWLEDGE_BASE_INTERF_STARTER_DOCS: StarterDoc[];
|
|
6
|
+
export declare const KNOWLEDGE_BASE_KARPATHY_STARTER_DOCS: StarterDoc[];
|
|
7
|
+
export declare const INTERFACE_INTERF_STARTER_DOCS: StarterDoc[];
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=workflow-starter-docs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-starter-docs.d.ts","sourceRoot":"","sources":["../../src/lib/workflow-starter-docs.ts"],"names":[],"mappings":"AAEA,UAAU,UAAU;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AASD,eAAO,MAAM,kCAAkC,EAAE,UAAU,EAE1D,CAAC;AAEF,eAAO,MAAM,oCAAoC,EAAE,UAAU,EAE5D,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,UAAU,EAGrD,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { renderBundledTemplate } from "./bundled-templates.js";
|
|
2
|
+
function doc(relativePath, templatePath) {
|
|
3
|
+
return {
|
|
4
|
+
relativePath,
|
|
5
|
+
content: renderBundledTemplate(templatePath),
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export const KNOWLEDGE_BASE_INTERF_STARTER_DOCS = [
|
|
9
|
+
doc("README.md", "workflow-starters/knowledge-base/interf/README.md"),
|
|
10
|
+
];
|
|
11
|
+
export const KNOWLEDGE_BASE_KARPATHY_STARTER_DOCS = [
|
|
12
|
+
doc("README.md", "workflow-starters/knowledge-base/karpathy/README.md"),
|
|
13
|
+
];
|
|
14
|
+
export const INTERFACE_INTERF_STARTER_DOCS = [
|
|
15
|
+
doc("README.md", "workflow-starters/interface/interf/README.md"),
|
|
16
|
+
doc("create/SKILL.md", "workflow-starters/interface/interf/create/SKILL.md"),
|
|
17
|
+
];
|
|
18
|
+
//# sourceMappingURL=workflow-starter-docs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-starter-docs.js","sourceRoot":"","sources":["../../src/lib/workflow-starter-docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,SAAS,GAAG,CAAC,YAAoB,EAAE,YAAoB;IACrD,OAAO;QACL,YAAY;QACZ,OAAO,EAAE,qBAAqB,CAAC,YAAY,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,kCAAkC,GAAiB;IAC9D,GAAG,CAAC,WAAW,EAAE,mDAAmD,CAAC;CACtE,CAAC;AAEF,MAAM,CAAC,MAAM,oCAAoC,GAAiB;IAChE,GAAG,CAAC,WAAW,EAAE,qDAAqD,CAAC;CACxE,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAiB;IACzD,GAAG,CAAC,WAAW,EAAE,8CAA8C,CAAC;IAChE,GAAG,CAAC,iBAAiB,EAAE,oDAAoD,CAAC;CAC7E,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { RuntimeStageContractDraft } from "./runtime.js";
|
|
2
|
+
import type { RuntimeStageInstructions } from "./schema.js";
|
|
3
|
+
import { type InterfaceWorkflowId, type WorkflowStageDefinition } from "./workflow-definitions.js";
|
|
4
|
+
export interface InterfaceStageExecutionDefinition extends WorkflowStageDefinition {
|
|
5
|
+
contractType: "interface-retrieval" | "interface-analysis" | "interface-output";
|
|
6
|
+
}
|
|
7
|
+
export declare function isRetrieveStageComplete(dirPath: string): boolean;
|
|
8
|
+
export declare function validateInterfacePlanForUseCase(interfacePath: string, useCase: string): {
|
|
9
|
+
ok: boolean;
|
|
10
|
+
summary: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function buildInterfaceCreateContract(options: {
|
|
13
|
+
name: string;
|
|
14
|
+
workflow: string;
|
|
15
|
+
useCase: string;
|
|
16
|
+
knowledgeBaseName: string;
|
|
17
|
+
knowledgeBasePath: string;
|
|
18
|
+
targetQuestions?: string[];
|
|
19
|
+
instructions: RuntimeStageInstructions;
|
|
20
|
+
}): RuntimeStageContractDraft;
|
|
21
|
+
export declare function buildInterfaceRetrieveContract(interfacePath: string, workflowId: InterfaceWorkflowId, summaryCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
22
|
+
export declare function buildInterfaceAnalyzeContract(interfacePath: string, workflowId: InterfaceWorkflowId, analyzeCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
23
|
+
export declare function buildInterfaceCompileContract(interfacePath: string, workflowId: InterfaceWorkflowId, relevantCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
24
|
+
//# sourceMappingURL=workflows-interface-contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflows-interface-contracts.d.ts","sourceRoot":"","sources":["../../src/lib/workflows-interface-contracts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC7B,MAAM,2BAA2B,CAAC;AAiBnC,MAAM,WAAW,iCAAkC,SAAQ,uBAAuB;IAChF,YAAY,EAAE,qBAAqB,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;CACjF;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGhE;AAED,wBAAgB,+BAA+B,CAC7C,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAUlC;AAmJD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE;IACP,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,wBAAwB,CAAC;CACxC,GACA,yBAAyB,CAiF3B;AAED,wBAAgB,8BAA8B,CAC5C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,mBAAmB,EAC/B,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,wBAAwB,EACtC,OAAO,SAAa,EACpB,aAAa,SAAa,GACzB,yBAAyB,CAmD3B;AAED,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,mBAAmB,EAC/B,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,wBAAwB,EACtC,OAAO,SAAY,EACnB,aAAa,SAAY,GACxB,yBAAyB,CAgD3B;AAED,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,mBAAmB,EAC/B,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,wBAAwB,EACtC,OAAO,SAAY,EACnB,aAAa,SAAY,GACxB,yBAAyB,CAmD3B"}
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
import { join } from "node:path";
|
|
2
|
+
import { resolveInterfaceKnowledgeBasePath, resolveKnowledgeBaseSourcePath } from "./interf.js";
|
|
3
|
+
import { getInterfaceWorkflow, getWorkflowStagePolicyNotes, } from "./workflow-definitions.js";
|
|
4
|
+
import { extractInterfacePlannedOutputFiles, validateInterfaceRetrieve, validateInterfacePlan, safeReadText, } from "./validate.js";
|
|
5
|
+
import { buildLocalSkillContractExtension, buildLocalSkillContractExtensionRelativeTo, emptyLocalSkillContractExtension, mergeLocalSkillContractExtensions, resolveStageAcceptance, workflowCompileStageDirectory, workflowCreateDirectory, } from "./workflow-helpers.js";
|
|
6
|
+
export function isRetrieveStageComplete(dirPath) {
|
|
7
|
+
const validation = validateInterfaceRetrieve(dirPath);
|
|
8
|
+
return validation.required && validation.ok;
|
|
9
|
+
}
|
|
10
|
+
export function validateInterfacePlanForUseCase(interfacePath, useCase) {
|
|
11
|
+
const validation = validateInterfacePlan(interfacePath);
|
|
12
|
+
if (!validation.ok)
|
|
13
|
+
return validation;
|
|
14
|
+
if (!interfacePlanPreservesUseCase(interfacePath, useCase)) {
|
|
15
|
+
return {
|
|
16
|
+
ok: false,
|
|
17
|
+
summary: "Interface plan still uses generic workflow wording instead of the requested use case.",
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return validation;
|
|
21
|
+
}
|
|
22
|
+
function interfacePlanPreservesUseCase(interfacePath, useCase) {
|
|
23
|
+
const requestedUseCase = useCase.trim();
|
|
24
|
+
if (requestedUseCase.length === 0)
|
|
25
|
+
return true;
|
|
26
|
+
const compilePlanText = safeReadText(join(interfacePath, "compile-plan.md"));
|
|
27
|
+
if (!compilePlanText)
|
|
28
|
+
return false;
|
|
29
|
+
return compilePlanText.includes(`- use case: ${requestedUseCase}`);
|
|
30
|
+
}
|
|
31
|
+
function buildInterfaceStageLocalSkills(interfacePath, stageSkillDir, connectedKnowledgeBasePath, parentPurpose, localPurpose) {
|
|
32
|
+
return mergeLocalSkillContractExtensions([
|
|
33
|
+
connectedKnowledgeBasePath
|
|
34
|
+
? buildLocalSkillContractExtensionRelativeTo(connectedKnowledgeBasePath, interfacePath, [], parentPurpose)
|
|
35
|
+
: emptyLocalSkillContractExtension(),
|
|
36
|
+
buildLocalSkillContractExtension(interfacePath, [workflowCompileStageDirectory(stageSkillDir)], localPurpose),
|
|
37
|
+
]);
|
|
38
|
+
}
|
|
39
|
+
function buildInterfaceCreateLocalSkills(interfacePath, connectedKnowledgeBasePath) {
|
|
40
|
+
return mergeLocalSkillContractExtensions([
|
|
41
|
+
connectedKnowledgeBasePath
|
|
42
|
+
? buildLocalSkillContractExtensionRelativeTo(connectedKnowledgeBasePath, interfacePath, [], "Use the connected knowledge-base workflow README as high-level knowledge-base context only if it materially improves the interface scaffold.")
|
|
43
|
+
: emptyLocalSkillContractExtension(),
|
|
44
|
+
buildLocalSkillContractExtension(interfacePath, [workflowCreateDirectory()], "Use the interface workflow's local create docs as scaffolding heuristics only if they materially improve the interface setup."),
|
|
45
|
+
]);
|
|
46
|
+
}
|
|
47
|
+
function interfaceRawFallbackPolicyNote() {
|
|
48
|
+
return "If you need raw-file fallback, inspect `../../.interf/source-access.json` first and verify one suggested path is readable. These are canonical absolute source-file paths shared by the parent knowledge base. If they are not reachable, continue from knowledge-base summaries and report that raw fallback was unavailable.";
|
|
49
|
+
}
|
|
50
|
+
function resolveInterfaceStageContractContext(interfacePath, workflowId, stageId, stageSkillDir, parentPurpose, localPurpose) {
|
|
51
|
+
const connectedKnowledgeBasePath = resolveInterfaceKnowledgeBasePath(interfacePath);
|
|
52
|
+
const sourcePath = connectedKnowledgeBasePath
|
|
53
|
+
? resolveKnowledgeBaseSourcePath(connectedKnowledgeBasePath)
|
|
54
|
+
: undefined;
|
|
55
|
+
const acceptance = resolveStageAcceptance("interface", workflowId, stageId, sourcePath, interfacePath);
|
|
56
|
+
const localSkills = buildInterfaceStageLocalSkills(interfacePath, stageSkillDir, connectedKnowledgeBasePath, parentPurpose, localPurpose);
|
|
57
|
+
return {
|
|
58
|
+
connectedKnowledgeBasePath,
|
|
59
|
+
sourcePath,
|
|
60
|
+
acceptance,
|
|
61
|
+
localSkills,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function buildInterfaceRuntimeStageContract({ instructions, counts, acceptance, reads, writes, verifies = [], notes, targetContextFraction, strategy, }) {
|
|
65
|
+
return {
|
|
66
|
+
instructions,
|
|
67
|
+
counts,
|
|
68
|
+
...(acceptance ? { acceptance } : {}),
|
|
69
|
+
artifacts: {
|
|
70
|
+
reads,
|
|
71
|
+
writes,
|
|
72
|
+
verifies,
|
|
73
|
+
},
|
|
74
|
+
policies: {
|
|
75
|
+
execution_mode: "deterministic",
|
|
76
|
+
status_prefixes: ["STATUS:", "DONE:", "BLOCKED:", "ERROR:"],
|
|
77
|
+
notes,
|
|
78
|
+
evidence_weighting: {
|
|
79
|
+
required_fields: ["source_kind", "evidence_tier", "truth_mode", "state"],
|
|
80
|
+
preserve_tiers: true,
|
|
81
|
+
},
|
|
82
|
+
working_set: {
|
|
83
|
+
target_context_fraction: targetContextFraction,
|
|
84
|
+
strategy,
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function mergeAcceptanceArtifacts(acceptance, artifactsExist) {
|
|
90
|
+
if (artifactsExist.length === 0)
|
|
91
|
+
return acceptance;
|
|
92
|
+
return {
|
|
93
|
+
...(acceptance ?? {}),
|
|
94
|
+
artifacts_exist: Array.from(new Set([...(acceptance?.artifacts_exist ?? []), ...artifactsExist])),
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
export function buildInterfaceCreateContract(options) {
|
|
98
|
+
const connectedKnowledgeBasePath = resolveInterfaceKnowledgeBasePath(options.knowledgeBasePath);
|
|
99
|
+
const workflowSourcePath = connectedKnowledgeBasePath
|
|
100
|
+
? resolveKnowledgeBaseSourcePath(connectedKnowledgeBasePath)
|
|
101
|
+
: undefined;
|
|
102
|
+
const workflow = getInterfaceWorkflow(options.workflow, {
|
|
103
|
+
sourcePath: workflowSourcePath,
|
|
104
|
+
workspacePath: options.knowledgeBasePath,
|
|
105
|
+
});
|
|
106
|
+
const localSkills = buildInterfaceCreateLocalSkills(options.knowledgeBasePath, connectedKnowledgeBasePath);
|
|
107
|
+
return {
|
|
108
|
+
instructions: options.instructions,
|
|
109
|
+
counts: {
|
|
110
|
+
workflow_selected: 1,
|
|
111
|
+
local_skill_docs: localSkills.count,
|
|
112
|
+
},
|
|
113
|
+
artifacts: {
|
|
114
|
+
reads: [
|
|
115
|
+
"interf.json",
|
|
116
|
+
"compile-plan.md",
|
|
117
|
+
"AGENTS.md",
|
|
118
|
+
"home.md",
|
|
119
|
+
"../../interf.json",
|
|
120
|
+
"../../home.md",
|
|
121
|
+
"../../knowledge/",
|
|
122
|
+
"../../summaries/",
|
|
123
|
+
...localSkills.reads,
|
|
124
|
+
],
|
|
125
|
+
writes: [
|
|
126
|
+
"interf.json",
|
|
127
|
+
"compile-plan.md",
|
|
128
|
+
"AGENTS.md",
|
|
129
|
+
],
|
|
130
|
+
verifies: [
|
|
131
|
+
"interf verify interface-plan --json",
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
policies: {
|
|
135
|
+
execution_mode: "deterministic",
|
|
136
|
+
status_prefixes: ["STATUS:", "DONE:", "BLOCKED:", "ERROR:"],
|
|
137
|
+
notes: [
|
|
138
|
+
`Interface name: ${options.name}.`,
|
|
139
|
+
`Selected workflow: ${workflow.id} (${workflow.label}).`,
|
|
140
|
+
`Workflow stages: ${workflow.stages.map((stage) => `${stage.label} [${stage.id}]`).join(" -> ")}.`,
|
|
141
|
+
`Use case: ${options.useCase}.`,
|
|
142
|
+
`Connected knowledge-base: ${options.knowledgeBaseName} at ${connectedKnowledgeBasePath ?? "unknown"}.`,
|
|
143
|
+
"The scaffold already exists with home.md, AGENTS.md, CLAUDE.md, interf.json, and the .interf runtime artifacts.",
|
|
144
|
+
"This is a planning stage only. Do not inspect raw source files, open raw PDF pages, or run chart/table extraction during interface/create.",
|
|
145
|
+
"Read the current local compile-plan.md, interf.json, and home.md first. Use AGENTS.md only as scaffold router text, not as a checklist to execute literally.",
|
|
146
|
+
"When AGENTS.md mentions manual query loops, raw-source gates, or permission preflights, preserve those sections as scaffold text but do not execute them during this create stage.",
|
|
147
|
+
"Then consult ../../AGENTS.md and ../../home.md for parent knowledge-base navigation and evidence structure.",
|
|
148
|
+
"This interface lives inside the parent knowledge base workspace. Do not assume it will be opened as a standalone Obsidian workspace.",
|
|
149
|
+
"Do not recreate the workspace or ask follow-up questions.",
|
|
150
|
+
"Use the selected workflow as the starting point, then adapt it to the knowledge-base data and the use case.",
|
|
151
|
+
"The scaffolded compile-plan.md was already refreshed with the requested use case before this stage started. Refine that plan instead of regenerating it from a generic placeholder.",
|
|
152
|
+
"Plan from the parent knowledge-base surface only: ../../home.md, ../../knowledge/, and ../../summaries/. If later stages will need raw/chart work, encode that in compile-plan.md instead of doing it now.",
|
|
153
|
+
"Edit the existing compile-plan.md scaffold in place. Preserve the stage headings and required subsection labels from the starter plan; refine the bullets and narrative instead of replacing the structure.",
|
|
154
|
+
"Preserve the exact requested use-case text in the `## Interface Goal` section of compile-plan.md. Do not leave the generic workflow placeholder there.",
|
|
155
|
+
"If the use case names markets, years, metrics, or chart families, carry those exact nouns into the target ledger instead of collapsing them into generic audit wording.",
|
|
156
|
+
...(options.targetQuestions && options.targetQuestions.length > 0
|
|
157
|
+
? [
|
|
158
|
+
"Hard target questions to satisfy during compile:",
|
|
159
|
+
...options.targetQuestions.map((question) => `- ${question}`),
|
|
160
|
+
"Carry the exact years, periods, metrics, comparators, and chart families from those hard target questions into the target ledger. Do not collapse them into generic audit wording.",
|
|
161
|
+
]
|
|
162
|
+
: []),
|
|
163
|
+
"After reading the scaffold, rewrite compile-plan.md as a full document instead of relying on tiny anchored patches from memory.",
|
|
164
|
+
"Do not use patch-style or line-matched edits against scaffold placeholders in compile-plan.md. Read the scaffold, then replace the full document content in one write.",
|
|
165
|
+
"compile-plan.md is the primary durable planning artifact for this stage. Rewrite it first, then stop unless interf.json or AGENTS.md still needs a real correction.",
|
|
166
|
+
"Preserve the existing AGENTS.md scaffold sections, especially the manual access checklist, raw-source gate, and navigation/router guidance, but leave AGENTS.md unchanged when the scaffold already fits this interface.",
|
|
167
|
+
"If AGENTS.md does need a correction, keep it surgical and preserve the router/checklist structure. Do not replace AGENTS.md with a shorter template.",
|
|
168
|
+
"After the scaffold review, the next actions are the durable writes: compile-plan.md, then interf.json only if needed, then AGENTS.md only if needed. Do not keep researching once the requested plan is written.",
|
|
169
|
+
"Analyze the knowledge-base and update only the interface definition files in this workspace: interf.json, compile-plan.md, and AGENTS.md. CLAUDE.md is a generated mirror of AGENTS.md and will be rewritten by the harness after the stage completes.",
|
|
170
|
+
...localSkills.notes,
|
|
171
|
+
],
|
|
172
|
+
},
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
export function buildInterfaceRetrieveContract(interfacePath, workflowId, summaryCount, instructions, stageId = "retrieve", stageSkillDir = "retrieve") {
|
|
176
|
+
const { sourcePath, acceptance, localSkills } = resolveInterfaceStageContractContext(interfacePath, workflowId, stageId, stageSkillDir, "Use the connected knowledge-base workflow README as high-level knowledge-base context before applying interface-local retrieve rules.", "Use interface-local docs to refine filters, expansion heuristics, ranking, and ontology hints.");
|
|
177
|
+
return buildInterfaceRuntimeStageContract({
|
|
178
|
+
instructions,
|
|
179
|
+
counts: {
|
|
180
|
+
knowledge_base_summary_total: summaryCount,
|
|
181
|
+
local_skill_docs: localSkills.count,
|
|
182
|
+
},
|
|
183
|
+
acceptance,
|
|
184
|
+
reads: [
|
|
185
|
+
"home.md",
|
|
186
|
+
"../../home.md",
|
|
187
|
+
"interf.json",
|
|
188
|
+
"compile-plan.md",
|
|
189
|
+
"../../.interf/source-access.json",
|
|
190
|
+
"../../summaries/",
|
|
191
|
+
...localSkills.reads,
|
|
192
|
+
],
|
|
193
|
+
writes: [
|
|
194
|
+
".interf/relevant.json",
|
|
195
|
+
".interf/coverage.json",
|
|
196
|
+
],
|
|
197
|
+
verifies: [
|
|
198
|
+
"interf verify retrieve --json",
|
|
199
|
+
],
|
|
200
|
+
notes: [
|
|
201
|
+
"Access hierarchy for this stage is: local interface artifacts -> parent knowledge-base artifacts -> raw source files only when needed.",
|
|
202
|
+
"Treat the interface runtime in compile-plan.md as an initial hypothesis, not a final truth.",
|
|
203
|
+
"Scan ALL knowledge-base summaries frontmatter before making any selection.",
|
|
204
|
+
"Review abstracts for the candidate set, expand through linked summaries when needed, and stop only when the retrieved set is coverage-complete for this interface.",
|
|
205
|
+
"Selection quality is judged by the proof of reviewed, retrieved, and excluded files, not by superficial brevity.",
|
|
206
|
+
interfaceRawFallbackPolicyNote(),
|
|
207
|
+
"When writing `.interf/relevant.json` or `.interf/coverage.json`, write each file as a complete replacement document after reading the current version. Do not try anchored line patches against missing or stale runtime files.",
|
|
208
|
+
"If a required runtime JSON file does not exist yet, create it in one full-file write instead of attempting to patch a placeholder.",
|
|
209
|
+
"Write `.interf/relevant.json` in the current runtime shape with top-level `generated_at`, `knowledge_base_summary_count`, `relevant_files`, and `delta_files`.",
|
|
210
|
+
"Write `.interf/coverage.json` in the current verifier shape with top-level `generated_at`, `knowledge_base_summary_total`, `frontmatter_scanned`, `candidates_after_frontmatter`, `abstracts_reviewed`, `relevant_selected`, `rejected`, `expansion_passes`, and `coverage_complete` plus `proof.scanned`, `proof.reviewed`, `proof.retrieved`, and `proof.excluded`.",
|
|
211
|
+
"The CLI reconciles `.interf/state.json` and refreshes `.interf/health.json` after stage validation. Do not treat those files as stage-owned write targets for retrieve.",
|
|
212
|
+
...getWorkflowStagePolicyNotes("interface", workflowId, stageId, sourcePath, interfacePath),
|
|
213
|
+
...localSkills.notes,
|
|
214
|
+
],
|
|
215
|
+
targetContextFraction: 0.15,
|
|
216
|
+
strategy: "Frontmatter scan first, then abstract review, then linked expansion only where coverage proof requires it.",
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
export function buildInterfaceAnalyzeContract(interfacePath, workflowId, analyzeCount, instructions, stageId = "analyze", stageSkillDir = "analyze") {
|
|
220
|
+
const { sourcePath, acceptance, localSkills } = resolveInterfaceStageContractContext(interfacePath, workflowId, stageId, stageSkillDir, "Use the connected knowledge-base workflow README as high-level knowledge-base context before applying interface-local analyze rules.", "Use interface-local docs to refine the interface ontology, extraction schema, and evidence grouping.");
|
|
221
|
+
return buildInterfaceRuntimeStageContract({
|
|
222
|
+
instructions,
|
|
223
|
+
counts: {
|
|
224
|
+
relevant_total: analyzeCount,
|
|
225
|
+
local_skill_docs: localSkills.count,
|
|
226
|
+
},
|
|
227
|
+
acceptance,
|
|
228
|
+
reads: [
|
|
229
|
+
"home.md",
|
|
230
|
+
"../../home.md",
|
|
231
|
+
"interf.json",
|
|
232
|
+
"compile-plan.md",
|
|
233
|
+
".interf/relevant.json",
|
|
234
|
+
"../../.interf/source-access.json",
|
|
235
|
+
"../../summaries/",
|
|
236
|
+
...localSkills.reads,
|
|
237
|
+
],
|
|
238
|
+
writes: [
|
|
239
|
+
".interf/analysis.json",
|
|
240
|
+
],
|
|
241
|
+
notes: [
|
|
242
|
+
"Access hierarchy for this stage is: local interface artifacts -> parent knowledge-base artifacts -> raw source files only when needed.",
|
|
243
|
+
"This is the deep extraction pass over the relevant set selected by retrieve.",
|
|
244
|
+
"Refine the interface runtime from evidence when the knowledge base clearly demands it.",
|
|
245
|
+
"Keep extraction local to the interface ontology and output goals.",
|
|
246
|
+
"When raw/PDF/chart extraction is in progress, emit a visible STATUS line before each new page group, market batch, chart family, or extraction method. Do not stay silent for more than about one minute while analyze is still running.",
|
|
247
|
+
"Once the relevant pages are mapped, do not keep reopening the full raw PDF. Switch to a narrower page-bounded extraction step or a local scratch helper for that page group instead.",
|
|
248
|
+
"Keep shell helpers short and page-bounded. Avoid long inline Bash heredocs; if a helper needs multiple steps, write a small scratch script file first or run separate single-purpose commands.",
|
|
249
|
+
interfaceRawFallbackPolicyNote(),
|
|
250
|
+
"Before choosing a machine-readable extraction path, verify that the local method is actually available in this environment. If the first path is unavailable or blocked, record that and switch to another available local path instead of retrying the same missing dependency.",
|
|
251
|
+
"When updating `.interf/analysis.json`, rewrite the full JSON document after reading the current file. Do not depend on anchored patches against prior values.",
|
|
252
|
+
"The CLI reconciles `.interf/state.json` and refreshes `.interf/health.json` after stage validation. Do not treat those files as stage-owned write targets for analyze.",
|
|
253
|
+
...getWorkflowStagePolicyNotes("interface", workflowId, stageId, sourcePath, interfacePath),
|
|
254
|
+
...localSkills.notes,
|
|
255
|
+
],
|
|
256
|
+
targetContextFraction: 0.3,
|
|
257
|
+
strategy: "Batch relevant summaries into bounded sets, derive local entities/claims, then merge before writing analysis artifacts.",
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
export function buildInterfaceCompileContract(interfacePath, workflowId, relevantCount, instructions, stageId = "compile", stageSkillDir = "compile") {
|
|
261
|
+
const { sourcePath, acceptance, localSkills } = resolveInterfaceStageContractContext(interfacePath, workflowId, stageId, stageSkillDir, "Use the connected knowledge-base workflow README as high-level knowledge-base context before applying interface-local compile rules.", "Use interface-local docs to refine the output inventory, navigation, canvases, and final interface shape.");
|
|
262
|
+
const plannedOutputArtifacts = extractInterfacePlannedOutputFiles(interfacePath);
|
|
263
|
+
return buildInterfaceRuntimeStageContract({
|
|
264
|
+
instructions,
|
|
265
|
+
counts: {
|
|
266
|
+
relevant_total: relevantCount,
|
|
267
|
+
local_skill_docs: localSkills.count,
|
|
268
|
+
},
|
|
269
|
+
acceptance: mergeAcceptanceArtifacts(acceptance, plannedOutputArtifacts),
|
|
270
|
+
reads: [
|
|
271
|
+
"home.md",
|
|
272
|
+
"../../home.md",
|
|
273
|
+
"interf.json",
|
|
274
|
+
"compile-plan.md",
|
|
275
|
+
".interf/analysis.json",
|
|
276
|
+
".interf/relevant.json",
|
|
277
|
+
"../../.interf/source-access.json",
|
|
278
|
+
"../../summaries/",
|
|
279
|
+
...localSkills.reads,
|
|
280
|
+
],
|
|
281
|
+
writes: [
|
|
282
|
+
"knowledge/",
|
|
283
|
+
"briefs/",
|
|
284
|
+
"home.md",
|
|
285
|
+
],
|
|
286
|
+
notes: [
|
|
287
|
+
"Access hierarchy for this stage is: local interface artifacts -> parent knowledge-base artifacts -> raw source files only when needed.",
|
|
288
|
+
"The interface is a local context shell for agents. Build it so an agent can navigate AGENTS.md -> home.md -> local knowledge/briefs -> local summaries when present -> knowledge-base summaries -> raw only when needed.",
|
|
289
|
+
"When local outputs cite knowledge-base evidence, point to the parent knowledge-base summary path `../../summaries/...`, not the interface-local `summaries/` folder.",
|
|
290
|
+
"Prefer durable local notes and indexes over monolithic summaries.",
|
|
291
|
+
...(plannedOutputArtifacts.length > 0
|
|
292
|
+
? [`Compile-plan Stage 3 requires these exact local outputs: ${plannedOutputArtifacts.join(", ")}.`]
|
|
293
|
+
: []),
|
|
294
|
+
"Delete stale analysis handoff artifacts once durable outputs are written.",
|
|
295
|
+
interfaceRawFallbackPolicyNote(),
|
|
296
|
+
"The CLI reconciles `.interf/state.json`, refreshes `.interf/health.json`, and refreshes `.interf/view-spec.json` after stage validation. Do not treat those files as stage-owned write targets for compile.",
|
|
297
|
+
...getWorkflowStagePolicyNotes("interface", workflowId, stageId, sourcePath, interfacePath),
|
|
298
|
+
...localSkills.notes,
|
|
299
|
+
],
|
|
300
|
+
targetContextFraction: 0.25,
|
|
301
|
+
strategy: "Use analysis artifacts as the compile ledger, then write entities, claims, briefs, and navigation in separate local passes.",
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
//# sourceMappingURL=workflows-interface-contracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflows-interface-contracts.js","sourceRoot":"","sources":["../../src/lib/workflows-interface-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { type WorkflowExecutor } from "./executors.js";
|
|
2
|
-
import { type
|
|
3
|
-
import { type RuntimeStageInstructions } from "./schema.js";
|
|
4
|
-
import { type InterfaceWorkflowId, type WorkflowStageDefinition } from "./workflow-definitions.js";
|
|
2
|
+
import { type InterfaceWorkflowId } from "./workflow-definitions.js";
|
|
5
3
|
import { type WorkflowReporter, type WorkflowStageResult } from "./workflow-helpers.js";
|
|
6
|
-
|
|
7
|
-
contractType: "interface-retrieval" | "interface-analysis" | "interface-output";
|
|
8
|
-
}
|
|
4
|
+
import { type InterfaceStageExecutionDefinition } from "./workflows-interface-contracts.js";
|
|
9
5
|
export interface InterfaceRetrieveResult extends WorkflowStageResult {
|
|
10
6
|
knowledgeBaseSummaryTotal: number;
|
|
11
7
|
relevantCount: number;
|
|
@@ -34,6 +30,7 @@ export interface InterfacePlanOptions {
|
|
|
34
30
|
workflow: string;
|
|
35
31
|
useCase: string;
|
|
36
32
|
knowledgeBaseName: string;
|
|
33
|
+
targetQuestions?: string[];
|
|
37
34
|
}
|
|
38
35
|
export declare function resolveInterfaceContext(knowledgeBasePath: string): {
|
|
39
36
|
knowledgeBaseName: string;
|
|
@@ -42,10 +39,6 @@ export declare function resolveInterfaceContext(knowledgeBasePath: string): {
|
|
|
42
39
|
workflowId: InterfaceWorkflowId;
|
|
43
40
|
};
|
|
44
41
|
export declare function interfaceExecutionStages(workflowId: InterfaceWorkflowId, interfacePath: string): InterfaceStageExecutionDefinition[];
|
|
45
|
-
export declare function isRetrieveStageComplete(dirPath: string): boolean;
|
|
46
|
-
export declare function buildInterfaceRetrieveContract(interfacePath: string, workflowId: InterfaceWorkflowId, summaryCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
47
|
-
export declare function buildInterfaceAnalyzeContract(interfacePath: string, workflowId: InterfaceWorkflowId, analyzeCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
48
|
-
export declare function buildInterfaceCompileContract(interfacePath: string, workflowId: InterfaceWorkflowId, relevantCount: number, instructions: RuntimeStageInstructions, stageId?: string, stageSkillDir?: string): RuntimeStageContractDraft;
|
|
49
42
|
export declare function planInterface(options: InterfacePlanOptions): Promise<WorkflowStageResult>;
|
|
50
43
|
export declare function runInterfaceRetrieve(options: {
|
|
51
44
|
executor: WorkflowExecutor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows-interface.d.ts","sourceRoot":"","sources":["../../src/lib/workflows-interface.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflows-interface.d.ts","sourceRoot":"","sources":["../../src/lib/workflows-interface.ts"],"names":[],"mappings":"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"}
|