@zhixuan92/multi-model-agent-core 4.7.3 → 4.7.5
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 +6 -6
- package/dist/config/schema.d.ts +1 -1
- package/dist/events/task-envelope.d.ts +4 -0
- package/dist/events/task-envelope.d.ts.map +1 -1
- package/dist/events/task-envelope.js.map +1 -1
- package/dist/events/to-wire-record.d.ts.map +1 -1
- package/dist/events/to-wire-record.js +37 -20
- package/dist/events/to-wire-record.js.map +1 -1
- package/dist/events/wire-schema.d.ts +48 -36
- package/dist/events/wire-schema.d.ts.map +1 -1
- package/dist/events/wire-schema.js +15 -1
- package/dist/events/wire-schema.js.map +1 -1
- package/dist/index.d.ts +3 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -13
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/findings-parser.d.ts +8 -1
- package/dist/lifecycle/findings-parser.d.ts.map +1 -1
- package/dist/lifecycle/findings-parser.js +109 -18
- package/dist/lifecycle/findings-parser.js.map +1 -1
- package/dist/lifecycle/handlers/annotate-stage.d.ts +4 -0
- package/dist/lifecycle/handlers/annotate-stage.d.ts.map +1 -1
- package/dist/lifecycle/handlers/annotate-stage.js +14 -1
- package/dist/lifecycle/handlers/annotate-stage.js.map +1 -1
- package/dist/lifecycle/handlers/baseline-handlers.d.ts.map +1 -1
- package/dist/lifecycle/handlers/baseline-handlers.js +61 -4
- package/dist/lifecycle/handlers/baseline-handlers.js.map +1 -1
- package/dist/lifecycle/handlers/enrich-runtime-result.d.ts.map +1 -1
- package/dist/lifecycle/handlers/enrich-runtime-result.js +10 -0
- package/dist/lifecycle/handlers/enrich-runtime-result.js.map +1 -1
- package/dist/lifecycle/handlers/implement-stage.d.ts.map +1 -1
- package/dist/lifecycle/handlers/implement-stage.js +4 -0
- package/dist/lifecycle/handlers/implement-stage.js.map +1 -1
- package/dist/lifecycle/handlers/read-route-implementer.d.ts +11 -0
- package/dist/lifecycle/handlers/read-route-implementer.d.ts.map +1 -1
- package/dist/lifecycle/handlers/read-route-implementer.js +26 -1
- package/dist/lifecycle/handlers/read-route-implementer.js.map +1 -1
- package/dist/lifecycle/handlers/review-stage.d.ts.map +1 -1
- package/dist/lifecycle/handlers/review-stage.js +38 -3
- package/dist/lifecycle/handlers/review-stage.js.map +1 -1
- package/dist/lifecycle/lifecycle-driver.js +4 -0
- package/dist/lifecycle/lifecycle-driver.js.map +1 -1
- package/dist/lifecycle/merge-stage-stats.d.ts +9 -0
- package/dist/lifecycle/merge-stage-stats.d.ts.map +1 -1
- package/dist/lifecycle/merge-stage-stats.js +21 -0
- package/dist/lifecycle/merge-stage-stats.js.map +1 -1
- package/dist/lifecycle/parallel-criteria-routes.d.ts +5 -0
- package/dist/lifecycle/parallel-criteria-routes.d.ts.map +1 -1
- package/dist/lifecycle/parallel-criteria-routes.js +15 -7
- package/dist/lifecycle/parallel-criteria-routes.js.map +1 -1
- package/dist/lifecycle/perform-implementation.d.ts.map +1 -1
- package/dist/lifecycle/perform-implementation.js +46 -0
- package/dist/lifecycle/perform-implementation.js.map +1 -1
- package/dist/lifecycle/stage-io.d.ts +12 -0
- package/dist/lifecycle/stage-io.d.ts.map +1 -1
- package/dist/lifecycle/stage-io.js.map +1 -1
- package/dist/lifecycle/tool-config-types.d.ts +7 -1
- package/dist/lifecycle/tool-config-types.d.ts.map +1 -1
- package/dist/providers/claude-session.d.ts.map +1 -1
- package/dist/providers/claude-session.js +36 -2
- package/dist/providers/claude-session.js.map +1 -1
- package/dist/reporting/findings-outcome.d.ts +13 -0
- package/dist/reporting/findings-outcome.d.ts.map +1 -0
- package/dist/reporting/findings-outcome.js +22 -0
- package/dist/reporting/findings-outcome.js.map +1 -0
- package/dist/reporting/report-parser-slots/investigate-report.d.ts +6 -0
- package/dist/reporting/report-parser-slots/investigate-report.d.ts.map +1 -1
- package/dist/reporting/report-parser-slots/investigate-report.js +122 -13
- package/dist/reporting/report-parser-slots/investigate-report.js.map +1 -1
- package/dist/reporting/structured-report.d.ts +4 -0
- package/dist/reporting/structured-report.d.ts.map +1 -1
- package/dist/reporting/structured-report.js.map +1 -1
- package/dist/review/parse-review-report.d.ts +4 -1
- package/dist/review/parse-review-report.d.ts.map +1 -1
- package/dist/review/parse-review-report.js +3 -2
- package/dist/review/parse-review-report.js.map +1 -1
- package/dist/review/templates/quality-review.d.ts +1 -0
- package/dist/review/templates/quality-review.d.ts.map +1 -1
- package/dist/review/templates/quality-review.js +14 -3
- package/dist/review/templates/quality-review.js.map +1 -1
- package/dist/review/templates/spec-review.d.ts +1 -0
- package/dist/review/templates/spec-review.d.ts.map +1 -1
- package/dist/review/templates/spec-review.js +19 -12
- package/dist/review/templates/spec-review.js.map +1 -1
- package/dist/tools/audit/brief-slot.d.ts +15 -0
- package/dist/tools/audit/brief-slot.d.ts.map +1 -0
- package/dist/tools/audit/brief-slot.js +69 -0
- package/dist/tools/audit/brief-slot.js.map +1 -0
- package/dist/tools/audit/skill-audit-criteria.d.ts.map +1 -1
- package/dist/tools/audit/skill-audit-criteria.js +1 -0
- package/dist/tools/audit/skill-audit-criteria.js.map +1 -1
- package/dist/tools/audit/spec-audit-criteria.d.ts.map +1 -1
- package/dist/tools/audit/spec-audit-criteria.js +5 -4
- package/dist/tools/audit/spec-audit-criteria.js.map +1 -1
- package/dist/tools/audit/subtypes.d.ts.map +1 -1
- package/dist/tools/audit/subtypes.js +2 -0
- package/dist/tools/audit/subtypes.js.map +1 -1
- package/dist/tools/audit/tool-config.d.ts +2 -14
- package/dist/tools/audit/tool-config.d.ts.map +1 -1
- package/dist/tools/audit/tool-config.js +1 -68
- package/dist/tools/audit/tool-config.js.map +1 -1
- package/dist/{intake/brief-compiler-slots/debug.d.ts → tools/debug/brief-slot.d.ts} +1 -1
- package/dist/tools/debug/brief-slot.d.ts.map +1 -0
- package/dist/{intake/brief-compiler-slots/debug.js → tools/debug/brief-slot.js} +1 -1
- package/dist/tools/debug/brief-slot.js.map +1 -0
- package/dist/tools/debug/subtypes.d.ts.map +1 -1
- package/dist/tools/debug/subtypes.js +5 -4
- package/dist/tools/debug/subtypes.js.map +1 -1
- package/dist/tools/debug/tool-config.d.ts +1 -1
- package/dist/tools/debug/tool-config.d.ts.map +1 -1
- package/dist/tools/debug/tool-config.js +1 -1
- package/dist/tools/debug/tool-config.js.map +1 -1
- package/dist/tools/delegate/brief-slot.d.ts +13 -0
- package/dist/tools/delegate/brief-slot.d.ts.map +1 -0
- package/dist/{intake/brief-compiler-slots/delegate.js → tools/delegate/brief-slot.js} +12 -3
- package/dist/tools/delegate/brief-slot.js.map +1 -0
- package/dist/tools/delegate/schema.d.ts +1 -1
- package/dist/tools/delegate/tool-config.d.ts +1 -10
- package/dist/tools/delegate/tool-config.d.ts.map +1 -1
- package/dist/tools/delegate/tool-config.js +2 -10
- package/dist/tools/delegate/tool-config.js.map +1 -1
- package/dist/tools/execute-plan/brief-slot.d.ts +21 -0
- package/dist/tools/execute-plan/brief-slot.d.ts.map +1 -0
- package/dist/{intake/brief-compiler-slots/execute-plan.js → tools/execute-plan/brief-slot.js} +3 -67
- package/dist/tools/execute-plan/brief-slot.js.map +1 -0
- package/dist/tools/execute-plan/draft-id.d.ts.map +1 -0
- package/dist/tools/execute-plan/draft-id.js.map +1 -0
- package/dist/tools/execute-plan/plan-extractor.d.ts.map +1 -0
- package/dist/tools/execute-plan/plan-extractor.js.map +1 -0
- package/dist/tools/execute-plan/schema.d.ts +1 -1
- package/dist/tools/execute-plan/tool-config.d.ts +3 -3
- package/dist/tools/execute-plan/tool-config.d.ts.map +1 -1
- package/dist/tools/execute-plan/tool-config.js +2 -2
- package/dist/tools/execute-plan/tool-config.js.map +1 -1
- package/dist/tools/investigate/brief-slot.d.ts +31 -0
- package/dist/tools/investigate/brief-slot.d.ts.map +1 -0
- package/dist/tools/investigate/brief-slot.js +69 -0
- package/dist/tools/investigate/brief-slot.js.map +1 -0
- package/dist/tools/investigate/subtypes.d.ts.map +1 -1
- package/dist/tools/investigate/subtypes.js +5 -4
- package/dist/tools/investigate/subtypes.js.map +1 -1
- package/dist/tools/investigate/tool-config.d.ts +2 -29
- package/dist/tools/investigate/tool-config.d.ts.map +1 -1
- package/dist/tools/investigate/tool-config.js +2 -62
- package/dist/tools/investigate/tool-config.js.map +1 -1
- package/dist/tools/parallel-criteria-prompt.d.ts +7 -0
- package/dist/tools/parallel-criteria-prompt.d.ts.map +1 -1
- package/dist/tools/parallel-criteria-prompt.js.map +1 -1
- package/dist/tools/research/brief-slot.d.ts +19 -0
- package/dist/tools/research/brief-slot.d.ts.map +1 -0
- package/dist/tools/research/brief-slot.js +37 -0
- package/dist/tools/research/brief-slot.js.map +1 -0
- package/dist/tools/research/subtypes.d.ts.map +1 -1
- package/dist/tools/research/subtypes.js +5 -4
- package/dist/tools/research/subtypes.js.map +1 -1
- package/dist/tools/research/tool-config.d.ts +2 -14
- package/dist/tools/research/tool-config.d.ts.map +1 -1
- package/dist/tools/research/tool-config.js +3 -14
- package/dist/tools/research/tool-config.js.map +1 -1
- package/dist/tools/retry/brief-slot.d.ts +7 -0
- package/dist/tools/retry/brief-slot.d.ts.map +1 -0
- package/dist/tools/retry/brief-slot.js +2 -0
- package/dist/tools/retry/brief-slot.js.map +1 -0
- package/dist/tools/retry/tool-config.d.ts +1 -5
- package/dist/tools/retry/tool-config.d.ts.map +1 -1
- package/dist/tools/retry/tool-config.js +2 -1
- package/dist/tools/retry/tool-config.js.map +1 -1
- package/dist/{intake/brief-compiler-slots/review.d.ts → tools/review/brief-slot.d.ts} +1 -1
- package/dist/tools/review/brief-slot.d.ts.map +1 -0
- package/dist/{intake/brief-compiler-slots/review.js → tools/review/brief-slot.js} +1 -1
- package/dist/tools/review/brief-slot.js.map +1 -0
- package/dist/tools/review/subtypes.d.ts.map +1 -1
- package/dist/tools/review/subtypes.js +5 -4
- package/dist/tools/review/subtypes.js.map +1 -1
- package/dist/tools/review/tool-config.d.ts +1 -1
- package/dist/tools/review/tool-config.d.ts.map +1 -1
- package/dist/tools/review/tool-config.js +1 -1
- package/dist/tools/review/tool-config.js.map +1 -1
- package/dist/types/brief-quality-policy.d.ts +3 -0
- package/dist/types/brief-quality-policy.d.ts.map +1 -0
- package/dist/types/brief-quality-policy.js +2 -0
- package/dist/types/brief-quality-policy.js.map +1 -0
- package/dist/{intake/types.d.ts → types/draft-task.d.ts} +2 -40
- package/dist/types/draft-task.d.ts.map +1 -0
- package/dist/types/draft-task.js +2 -0
- package/dist/types/draft-task.js.map +1 -0
- package/dist/types/review-policy.d.ts +2 -0
- package/dist/types/review-policy.d.ts.map +1 -0
- package/dist/types/review-policy.js +2 -0
- package/dist/types/review-policy.js.map +1 -0
- package/dist/types/task-spec.d.ts +1 -1
- package/dist/types/task-spec.d.ts.map +1 -1
- package/package.json +1 -49
- package/dist/intake/brief-compiler-slots/debug.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/debug.js.map +0 -1
- package/dist/intake/brief-compiler-slots/delegate.d.ts +0 -23
- package/dist/intake/brief-compiler-slots/delegate.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/delegate.js.map +0 -1
- package/dist/intake/brief-compiler-slots/execute-plan.d.ts +0 -49
- package/dist/intake/brief-compiler-slots/execute-plan.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/execute-plan.js.map +0 -1
- package/dist/intake/brief-compiler-slots/register-context-block.d.ts +0 -17
- package/dist/intake/brief-compiler-slots/register-context-block.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/register-context-block.js +0 -17
- package/dist/intake/brief-compiler-slots/register-context-block.js.map +0 -1
- package/dist/intake/brief-compiler-slots/research.d.ts +0 -18
- package/dist/intake/brief-compiler-slots/research.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/research.js +0 -43
- package/dist/intake/brief-compiler-slots/research.js.map +0 -1
- package/dist/intake/brief-compiler-slots/retry.d.ts +0 -20
- package/dist/intake/brief-compiler-slots/retry.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/retry.js +0 -37
- package/dist/intake/brief-compiler-slots/retry.js.map +0 -1
- package/dist/intake/brief-compiler-slots/review.d.ts.map +0 -1
- package/dist/intake/brief-compiler-slots/review.js.map +0 -1
- package/dist/intake/brief-compiler.d.ts +0 -9
- package/dist/intake/brief-compiler.d.ts.map +0 -1
- package/dist/intake/brief-compiler.js +0 -8
- package/dist/intake/brief-compiler.js.map +0 -1
- package/dist/intake/classify.d.ts +0 -3
- package/dist/intake/classify.d.ts.map +0 -1
- package/dist/intake/classify.js +0 -111
- package/dist/intake/classify.js.map +0 -1
- package/dist/intake/context-overflow-estimator.d.ts +0 -33
- package/dist/intake/context-overflow-estimator.d.ts.map +0 -1
- package/dist/intake/context-overflow-estimator.js +0 -36
- package/dist/intake/context-overflow-estimator.js.map +0 -1
- package/dist/intake/draft-id.d.ts.map +0 -1
- package/dist/intake/draft-id.js.map +0 -1
- package/dist/intake/field-inferer.d.ts +0 -10
- package/dist/intake/field-inferer.d.ts.map +0 -1
- package/dist/intake/field-inferer.js +0 -57
- package/dist/intake/field-inferer.js.map +0 -1
- package/dist/intake/host-allowlist-builder.d.ts +0 -25
- package/dist/intake/host-allowlist-builder.d.ts.map +0 -1
- package/dist/intake/host-allowlist-builder.js +0 -102
- package/dist/intake/host-allowlist-builder.js.map +0 -1
- package/dist/intake/index.d.ts +0 -5
- package/dist/intake/index.d.ts.map +0 -1
- package/dist/intake/index.js +0 -6
- package/dist/intake/index.js.map +0 -1
- package/dist/intake/pipeline.d.ts +0 -5
- package/dist/intake/pipeline.d.ts.map +0 -1
- package/dist/intake/pipeline.js +0 -110
- package/dist/intake/pipeline.js.map +0 -1
- package/dist/intake/plan-extractor.d.ts.map +0 -1
- package/dist/intake/plan-extractor.js.map +0 -1
- package/dist/intake/resolve.d.ts +0 -16
- package/dist/intake/resolve.d.ts.map +0 -1
- package/dist/intake/resolve.js +0 -37
- package/dist/intake/resolve.js.map +0 -1
- package/dist/intake/source-schema.d.ts +0 -4
- package/dist/intake/source-schema.d.ts.map +0 -1
- package/dist/intake/source-schema.js +0 -45
- package/dist/intake/source-schema.js.map +0 -1
- package/dist/intake/types.d.ts.map +0 -1
- package/dist/intake/types.js +0 -2
- package/dist/intake/types.js.map +0 -1
- package/dist/intake/verify-command-validator.d.ts +0 -6
- package/dist/intake/verify-command-validator.d.ts.map +0 -1
- package/dist/intake/verify-command-validator.js +0 -47
- package/dist/intake/verify-command-validator.js.map +0 -1
- package/dist/intake/verify-referenced-blocks.d.ts +0 -5
- package/dist/intake/verify-referenced-blocks.d.ts.map +0 -1
- package/dist/intake/verify-referenced-blocks.js +0 -9
- package/dist/intake/verify-referenced-blocks.js.map +0 -1
- /package/dist/{intake → tools/execute-plan}/draft-id.d.ts +0 -0
- /package/dist/{intake → tools/execute-plan}/draft-id.js +0 -0
- /package/dist/{intake → tools/execute-plan}/plan-extractor.d.ts +0 -0
- /package/dist/{intake → tools/execute-plan}/plan-extractor.js +0 -0
|
@@ -1,35 +1,8 @@
|
|
|
1
1
|
import { ToolSurfaceRegistry } from '../../tool-surface/tool-surface-registry.js';
|
|
2
|
-
import type { Input } from './schema.js';
|
|
3
2
|
import type { ToolConfig } from '../../lifecycle/tool-config-types.js';
|
|
4
3
|
import type { InvestigateReportOutput } from '../../reporting/report-parser-slots/investigate-report.js';
|
|
4
|
+
import { type EnrichedInvestigateInput, type InvestigateBrief } from './brief-slot.js';
|
|
5
|
+
export type { EnrichedInvestigateInput, InvestigateBrief } from './brief-slot.js';
|
|
5
6
|
export declare function registerInvestigate(registry: ToolSurfaceRegistry): void;
|
|
6
|
-
export interface ResolvedContextBlock {
|
|
7
|
-
id: string;
|
|
8
|
-
content: string;
|
|
9
|
-
}
|
|
10
|
-
export interface EnrichedInvestigateInput extends Input {
|
|
11
|
-
resolvedContextBlocks: ResolvedContextBlock[];
|
|
12
|
-
canonicalizedFilePaths: string[];
|
|
13
|
-
relativeFilePathsForPrompt: string[];
|
|
14
|
-
}
|
|
15
|
-
export interface InvestigateBrief {
|
|
16
|
-
/** The user's original question — drives the headline text. */
|
|
17
|
-
question: string;
|
|
18
|
-
/**
|
|
19
|
-
* The fully compiled implementer prompt (template + question + anchors +
|
|
20
|
-
* context blocks). Stored here for buildTaskSpec to forward as
|
|
21
|
-
* TaskSpec.prompt, but deliberately NOT named `prompt`/`brief`. The
|
|
22
|
-
* task-executor's `taskBrief` resolution chain reads
|
|
23
|
-
* `briefs[0].prompt ?? .brief ?? .question`; a `prompt` field here would
|
|
24
|
-
* cause the headline to be the prompt-template instructions (the tool
|
|
25
|
-
* sweep #5 bug — headline read 'Investigation: "Produce a narrative
|
|
26
|
-
* investigation report. Number each findin…"'). Falling through to
|
|
27
|
-
* `question` is the desired behavior.
|
|
28
|
-
*/
|
|
29
|
-
compiledPrompt: string;
|
|
30
|
-
filePaths: string[];
|
|
31
|
-
contextBlockIds: string[];
|
|
32
|
-
tools?: 'none' | 'readonly';
|
|
33
|
-
}
|
|
34
7
|
export declare const toolConfig: ToolConfig<EnrichedInvestigateInput, InvestigateBrief, InvestigateReportOutput>;
|
|
35
8
|
//# sourceMappingURL=tool-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/investigate/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/investigate/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAIlF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAGvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAIzG,OAAO,EAAwB,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAI7G,YAAY,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAElF,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAYvE;AAGD,eAAO,MAAM,UAAU,EAAE,UAAU,CAAC,wBAAwB,EAAE,gBAAgB,EAAE,uBAAuB,CAsDtG,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { investigateReportSchema } from '../../reporting/report-parser-slots/inv
|
|
|
4
4
|
import { investigateHeadlineTemplate } from '../../reporting/headline-templates/investigate.js';
|
|
5
5
|
import { deriveInvestigateWorkerStatus } from '../../reporting/derive-investigate-status.js';
|
|
6
6
|
import { DEFAULT_TASK_TIMEOUT_MS } from '../../config/schema.js';
|
|
7
|
-
import {
|
|
7
|
+
import { investigateBriefSlot } from './brief-slot.js';
|
|
8
8
|
export function registerInvestigate(registry) {
|
|
9
9
|
registry.register({
|
|
10
10
|
routeName: 'investigate',
|
|
@@ -18,71 +18,11 @@ export function registerInvestigate(registry) {
|
|
|
18
18
|
responseShapeName: 'BatchResponse',
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
function compilePrompt(input) {
|
|
22
|
-
const promptParts = [];
|
|
23
|
-
// Orientation goes FIRST — the worker needs to know why this
|
|
24
|
-
// investigation exists (caller will act on this answer; wrong file
|
|
25
|
-
// path becomes a bug) before reading the format spec / taxonomy.
|
|
26
|
-
// Without it, workers default to plausible-sounding answers with
|
|
27
|
-
// shaky citations.
|
|
28
|
-
promptParts.push(INVESTIGATE_PURPOSE_ORIENTATION);
|
|
29
|
-
promptParts.push([
|
|
30
|
-
'Produce an investigation report in this EXACT structured format. The deterministic',
|
|
31
|
-
'parser extracts citations, confidence, and unresolved items by section — do NOT emit',
|
|
32
|
-
'JSON, and do NOT use a numbered-list narrative. Sections MUST use h2 headers (`##`).',
|
|
33
|
-
'',
|
|
34
|
-
'## Summary',
|
|
35
|
-
'One paragraph stating the answer to the question, in plain prose.',
|
|
36
|
-
'',
|
|
37
|
-
'## Citations',
|
|
38
|
-
'One bullet per evidence item. Each bullet must start with `-` and contain `<file>:<LINE> — <claim>` (em-dash, OR `--` is also accepted). The parser tolerates an optional pair of backticks wrapping the path:line portion (e.g. `` `src/foo.ts:42` — claim ``) but the canonical form is without backticks.',
|
|
39
|
-
'Examples (use either form):',
|
|
40
|
-
' - src/foo.ts:42 — claim about line 42',
|
|
41
|
-
' - src/foo.ts:42-58 — claim about a span',
|
|
42
|
-
'Use a LINE-LINE range when an evidence span covers multiple lines.',
|
|
43
|
-
'If the question is fully project-level (no code evidence applies), write `(none)` on its own line — but only when Confidence is `low`.',
|
|
44
|
-
'',
|
|
45
|
-
'## Confidence',
|
|
46
|
-
'One of high, medium, or low, optionally followed by ` — <one-line rationale>`. Do NOT wrap the level in backticks; emit it as plain text.',
|
|
47
|
-
'',
|
|
48
|
-
'## Unresolved',
|
|
49
|
-
'Optional bullets describing follow-up questions; write `(none)` if there are none.',
|
|
50
|
-
'Prefix a bullet with `[needs_context]` if it requires the caller to supply more',
|
|
51
|
-
'information before the question can be answered.',
|
|
52
|
-
].join('\n'));
|
|
53
|
-
for (const block of input.resolvedContextBlocks) {
|
|
54
|
-
promptParts.push(block.content);
|
|
55
|
-
}
|
|
56
|
-
if (input.relativeFilePathsForPrompt.length > 0) {
|
|
57
|
-
promptParts.push('Anchor paths to start from (you may also read beyond these):\n' +
|
|
58
|
-
input.relativeFilePathsForPrompt.map(p => `- ${p}`).join('\n'));
|
|
59
|
-
}
|
|
60
|
-
promptParts.push(`Question: ${input.question}`);
|
|
61
|
-
if (input.resolvedContextBlocks.length > 0) {
|
|
62
|
-
promptParts.push('A prior investigation report is provided as context above. Refine or extend that investigation. In your output, mark which prior unresolved questions you resolved this round and which remain open.');
|
|
63
|
-
}
|
|
64
|
-
// Tool sweep #12: shared rubric. Investigate doesn't use the
|
|
65
|
-
// SEVERITY_LADDER (its findings are citations, not severity-rated)
|
|
66
|
-
// but evidence-grounding + scope-discipline + annotator-awareness
|
|
67
|
-
// apply just as much. Workers that cite hallucinated lines or
|
|
68
|
-
// speculate about unread files now have the rubric inline.
|
|
69
|
-
promptParts.push(INVESTIGATE_FAILURE_MODES, CONFIDENCE_REMINDER_INVESTIGATE, EVIDENCE_RULE_INVESTIGATE, SCOPE_RULE_INVESTIGATE, ANNOTATOR_AWARENESS_INVESTIGATE);
|
|
70
|
-
return promptParts.join('\n\n');
|
|
71
|
-
}
|
|
72
21
|
export const toolConfig = {
|
|
73
22
|
name: 'investigate',
|
|
74
23
|
category: 'read_only',
|
|
75
24
|
agentType: 'complex',
|
|
76
|
-
briefSlot:
|
|
77
|
-
const compiledPrompt = compilePrompt(input);
|
|
78
|
-
return [{
|
|
79
|
-
question: input.question,
|
|
80
|
-
compiledPrompt,
|
|
81
|
-
filePaths: input.canonicalizedFilePaths,
|
|
82
|
-
contextBlockIds: input.contextBlockIds ?? [],
|
|
83
|
-
tools: input.tools,
|
|
84
|
-
}];
|
|
85
|
-
},
|
|
25
|
+
briefSlot: investigateBriefSlot,
|
|
86
26
|
buildTaskSpec: (brief, ctx) => ({
|
|
87
27
|
prompt: brief.compiledPrompt,
|
|
88
28
|
// Pure user question for the parallel-criteria dispatcher's cached
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/investigate/tool-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAGlG,OAAO,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAEpG,OAAO,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAChG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/investigate/tool-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CriterionEntry } from './criteria-types.js';
|
|
2
|
+
import type { FindingsOutcomeKind } from '../reporting/findings-outcome.js';
|
|
2
3
|
/**
|
|
3
4
|
* Per-route semantics for findings. Same wire shape (`## Finding N:`) and
|
|
4
5
|
* same severity tiers (critical / high / medium / low) across all five
|
|
@@ -45,6 +46,12 @@ export interface RouteSemantics {
|
|
|
45
46
|
* annotator dedups + ranks; soft signals are valuable, not noise.
|
|
46
47
|
*/
|
|
47
48
|
mustEmitAtLeastOne: boolean;
|
|
49
|
+
/** Per-route legal values for the `## Outcome` enum the worker emits.
|
|
50
|
+
* Issue-hunting routes (audit/review): ['found', 'clean'].
|
|
51
|
+
* Answer-producing routes (debug/investigate/research): ['found', 'not_applicable'].
|
|
52
|
+
* Used by findings-parser to validate the worker's ## Outcome and by
|
|
53
|
+
* inferFromFindings to pick the right default when the worker omits it. */
|
|
54
|
+
legalOutcomes: readonly FindingsOutcomeKind[];
|
|
48
55
|
}
|
|
49
56
|
/**
|
|
50
57
|
* Shared cached-prefix builder for parallel-criteria fan-out across the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parallel-criteria-prompt.d.ts","sourceRoot":"","sources":["../../src/tools/parallel-criteria-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"parallel-criteria-prompt.d.ts","sourceRoot":"","sources":["../../src/tools/parallel-criteria-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAE5E;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B;8EAC0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB;;sEAEkE;IAClE,gBAAgB,EAAE,MAAM,CAAC;IACzB;;qEAEiE;IACjE,gBAAgB,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAClF;;;;0CAIsC;IACtC,uBAAuB,EAAE,MAAM,CAAC;IAChC;;;;;;;;;OASG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;;;gFAI4E;IAC5E,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAC/C;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qCAAqC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IACpC;oCACgC;IAChC,SAAS,EAAE,cAAc,CAAC;CAC3B;AAaD,MAAM,WAAW,kBAAkB;IACjC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC;oDACgD;IAChD,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,kBAAkB,GACzB,MAAM,CAwCR;AAED;;;;;;wBAMwB;AACxB,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,cAAc,GACxB,MAAM,CA4BR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parallel-criteria-prompt.js","sourceRoot":"","sources":["../../src/tools/parallel-criteria-prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parallel-criteria-prompt.js","sourceRoot":"","sources":["../../src/tools/parallel-criteria-prompt.ts"],"names":[],"mappings":"AA4FA,SAAS,oBAAoB,CAAC,QAA4C;IACxE,OAAO;QACL,6DAA6D;QAC7D,eAAe,QAAQ,CAAC,QAAQ,EAAE;QAClC,eAAe,QAAQ,CAAC,IAAI,EAAE;QAC9B,eAAe,QAAQ,CAAC,MAAM,EAAE;QAChC,eAAe,QAAQ,CAAC,GAAG,EAAE;QAC7B,6GAA6G;KAC9G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAYD,MAAM,UAAU,yBAAyB,CACvC,MAA0B,EAC1B,MAA0B;IAE1B,MAAM,KAAK,GAAa;QACtB,MAAM,CAAC,WAAW;QAClB,EAAE;QACF,uCAAuC;QACvC,MAAM,CAAC,SAAS,CAAC,uBAAuB;QACxC,EAAE;QACF,MAAM,CAAC,aAAa;QACpB,EAAE;QACF,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACvD,EAAE;QACF,MAAM,CAAC,YAAY;QACnB,EAAE;QACF,MAAM,CAAC,SAAS;QAChB,EAAE;QACF,MAAM,CAAC,kBAAkB;QACzB,EAAE;QACF,2FAA2F;QAC3F,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;KAClF,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,4BAA4B,EAAE,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IAC1C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,gGAAgG,CAAC,CAAC;QACjH,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,8DAA8D,CAAC,CAAC;YAClG,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;wBAMwB;AACxB,MAAM,UAAU,4BAA4B,CAC1C,SAAyB,EACzB,SAAyB;IAEzB,MAAM,YAAY,GAAG,SAAS,CAAC,kBAAkB;QAC/C,CAAC,CAAC;YACE,4CAA4C;YAC5C,8JAA8J;YAC9J,EAAE;YACF,+EAA+E;YAC/E,EAAE;YACF,iMAAiM;YACjM,EAAE;YACF,mMAAmM;YACnM,EAAE;YACF,+aAA+a;YAC/a,EAAE;YACF,+NAA+N;SAChO,CAAC,IAAI,CAAC,IAAI,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAC/B,OAAO;QACL,8BAA8B,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC,KAAK,IAAI;QACpE,EAAE;QACF,SAAS,CAAC,WAAW;QACrB,EAAE;QACF,SAAS,CAAC,QAAQ;QAClB,EAAE;QACF,YAAY;QACZ,EAAE;QACF,qFAAqF;KACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Input } from './schema.js';
|
|
2
|
+
export interface ResolvedContextBlock {
|
|
3
|
+
id: string;
|
|
4
|
+
content: string;
|
|
5
|
+
}
|
|
6
|
+
export interface EnrichedResearchInput extends Input {
|
|
7
|
+
resolvedContextBlocks: ResolvedContextBlock[];
|
|
8
|
+
/** Operator-configured source descriptors (research.userSources). */
|
|
9
|
+
userSources: readonly string[];
|
|
10
|
+
/** True iff research.brave.apiKeys is non-empty (drives the prompt branch
|
|
11
|
+
* that says "escalate to web_search"). */
|
|
12
|
+
hasBrave: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ResearchBrief {
|
|
15
|
+
compiledPrompt: string;
|
|
16
|
+
contextBlockIds: string[];
|
|
17
|
+
}
|
|
18
|
+
export declare const researchBriefSlot: (input: EnrichedResearchInput) => ResearchBrief[];
|
|
19
|
+
//# sourceMappingURL=brief-slot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.d.ts","sourceRoot":"","sources":["../../../src/tools/research/brief-slot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAYzC,MAAM,WAAW,oBAAoB;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CAAE;AAEtE,MAAM,WAAW,qBAAsB,SAAQ,KAAK;IAClD,qBAAqB,EAAE,oBAAoB,EAAE,CAAC;IAC9C,qEAAqE;IACrE,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;+CAC2C;IAC3C,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAuCD,eAAO,MAAM,iBAAiB,GAAI,OAAO,qBAAqB,KAAG,aAAa,EAS7E,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { EVIDENCE_RULE_RESEARCH, TRUST_BOUNDARY_USER_SOURCES_RESEARCH, TRUST_BOUNDARY_EXTERNAL_DATA_RESEARCH, QUERY_PHRASING_RESEARCH, strategyRuleResearch, } from './implementer-criteria.js';
|
|
2
|
+
function compileResearchPrompt(input, resolvedContextBlocks, extras) {
|
|
3
|
+
const priorContext = resolvedContextBlocks.length
|
|
4
|
+
? `## Prior context (read-only)\n\n${resolvedContextBlocks.map(b => b.content).join('\n\n---\n\n')}\n\n`
|
|
5
|
+
: '';
|
|
6
|
+
const userSourcesBlock = extras.userSources.length
|
|
7
|
+
? extras.userSources.map((s, i) => `${i}. ${s}`).join('\n')
|
|
8
|
+
: '(none configured)';
|
|
9
|
+
return `${priorContext}You are an external researcher. The caller wants to discover external ideas, sources, and practices relevant to their question; your job is to bring back substantive external material with citations.
|
|
10
|
+
|
|
11
|
+
**Background:** ${input.background}
|
|
12
|
+
**Research question:** ${input.researchQuestion}
|
|
13
|
+
|
|
14
|
+
**User-described sources (free text — interpret each one):**
|
|
15
|
+
${userSourcesBlock}
|
|
16
|
+
|
|
17
|
+
${TRUST_BOUNDARY_USER_SOURCES_RESEARCH}
|
|
18
|
+
|
|
19
|
+
${strategyRuleResearch(extras.hasBrave)}
|
|
20
|
+
|
|
21
|
+
${TRUST_BOUNDARY_EXTERNAL_DATA_RESEARCH}
|
|
22
|
+
|
|
23
|
+
${QUERY_PHRASING_RESEARCH}
|
|
24
|
+
|
|
25
|
+
${EVIDENCE_RULE_RESEARCH}`;
|
|
26
|
+
}
|
|
27
|
+
export const researchBriefSlot = (input) => {
|
|
28
|
+
const compiledPrompt = compileResearchPrompt(input, input.resolvedContextBlocks, {
|
|
29
|
+
userSources: input.userSources,
|
|
30
|
+
hasBrave: input.hasBrave,
|
|
31
|
+
});
|
|
32
|
+
return [{
|
|
33
|
+
compiledPrompt,
|
|
34
|
+
contextBlockIds: input.contextBlockIds ?? [],
|
|
35
|
+
}];
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=brief-slot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.js","sourceRoot":"","sources":["../../../src/tools/research/brief-slot.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,oCAAoC,EACpC,qCAAqC,EACrC,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AA0BnC,SAAS,qBAAqB,CAC5B,KAAY,EACZ,qBAA6C,EAC7C,MAAqB;IAErB,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM;QAC/C,CAAC,CAAC,mCAAmC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;QACxG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM;QAChD,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3D,CAAC,CAAC,mBAAmB,CAAC;IAExB,OAAO,GAAG,YAAY;;kBAEN,KAAK,CAAC,UAAU;yBACT,KAAK,CAAC,gBAAgB;;;EAG7C,gBAAgB;;EAEhB,oCAAoC;;EAEpC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC;;EAErC,qCAAqC;;EAErC,uBAAuB;;EAEvB,sBAAsB,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAA4B,EAAmB,EAAE;IACjF,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,qBAAqB,EAAE;QAC/E,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC,CAAC;IACH,OAAO,CAAC;YACN,cAAc;YACd,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,EAAE;SAC7C,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtypes.d.ts","sourceRoot":"","sources":["../../../src/tools/research/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAOrF,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"subtypes.d.ts","sourceRoot":"","sources":["../../../src/tools/research/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAOrF,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;AAgBxC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAS1E,CAAC"}
|
|
@@ -4,12 +4,13 @@ const SEMANTICS_DEFAULT = {
|
|
|
4
4
|
emptyOutcomeLine: 'If you can produce no candidate insight at all under this lens, respond with "No findings for this criterion." — valid but rare; in most cases you can produce at least one source-cited candidate.',
|
|
5
5
|
findingMeaningParagraph: 'A finding is a CANDIDATE INSIGHT from ONE cited external source, viewed through this criterion\'s lens. Title = the insight in one line. Issue = the insight + reasoning + source citation. Severity = strength of evidence chain.',
|
|
6
6
|
severityMeanings: {
|
|
7
|
-
critical: '
|
|
8
|
-
high: '
|
|
9
|
-
medium: '
|
|
10
|
-
low: '
|
|
7
|
+
critical: 'Primary authoritative source',
|
|
8
|
+
high: 'Strong secondary source',
|
|
9
|
+
medium: 'Tertiary source',
|
|
10
|
+
low: 'Inferred/synthesized',
|
|
11
11
|
},
|
|
12
12
|
mustEmitAtLeastOne: true,
|
|
13
|
+
legalOutcomes: ['found', 'not_applicable'],
|
|
13
14
|
};
|
|
14
15
|
export const RESEARCH_SUBTYPES = {
|
|
15
16
|
default: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtypes.js","sourceRoot":"","sources":["../../../src/tools/research/subtypes.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAAE,4BAA4B,EAAE,+BAA+B,EAChF,mBAAmB,EAAE,4BAA4B,GAClD,MAAM,2BAA2B,CAAC;AAInC,MAAM,iBAAiB,GAAmB;IACxC,QAAQ,EAAE,8HAA8H;IACxI,gBAAgB,EAAE,qMAAqM;IACvN,uBAAuB,EAAE,oOAAoO;IAC7P,gBAAgB,EAAE;QAChB,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"subtypes.js","sourceRoot":"","sources":["../../../src/tools/research/subtypes.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAAE,4BAA4B,EAAE,+BAA+B,EAChF,mBAAmB,EAAE,4BAA4B,GAClD,MAAM,2BAA2B,CAAC;AAInC,MAAM,iBAAiB,GAAmB;IACxC,QAAQ,EAAE,8HAA8H;IACxI,gBAAgB,EAAE,qMAAqM;IACvN,uBAAuB,EAAE,oOAAoO;IAC7P,gBAAgB,EAAE;QAChB,QAAQ,EAAE,8BAA8B;QACxC,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,iBAAiB;QACzB,GAAG,EAAE,sBAAsB;KAC5B;IACD,kBAAkB,EAAE,IAAI;IACxB,aAAa,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAU;CACpD,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAiD;IAC7E,OAAO,EAAE;QACP,QAAQ,EAAE,iBAAiB;QAC3B,WAAW,EAAE,4BAA4B;QACzC,YAAY,EAAE,+BAA+B;QAC7C,SAAS,EAAE,mBAAmB;QAC9B,kBAAkB,EAAE,4BAA4B;QAChD,SAAS,EAAE,iBAAiB;KAC7B;CACF,CAAC"}
|
|
@@ -1,20 +1,8 @@
|
|
|
1
1
|
import { ToolSurfaceRegistry } from '../../tool-surface/tool-surface-registry.js';
|
|
2
|
-
import type { Input } from './schema.js';
|
|
3
2
|
import type { ToolConfig } from '../../lifecycle/tool-config-types.js';
|
|
4
3
|
import { type ResearchReport } from '../../reporting/report-parser-slots/research-report.js';
|
|
5
|
-
import { type
|
|
4
|
+
import { type EnrichedResearchInput, type ResearchBrief } from './brief-slot.js';
|
|
5
|
+
export type { EnrichedResearchInput, ResearchBrief, ResolvedContextBlock } from './brief-slot.js';
|
|
6
6
|
export declare function registerResearch(registry: ToolSurfaceRegistry): void;
|
|
7
|
-
export interface EnrichedResearchInput extends Input {
|
|
8
|
-
resolvedContextBlocks: ResolvedContextBlock[];
|
|
9
|
-
/** Operator-configured source descriptors (research.userSources). */
|
|
10
|
-
userSources: readonly string[];
|
|
11
|
-
/** True iff research.brave.apiKeys is non-empty (drives the prompt branch
|
|
12
|
-
* that says "escalate to web_search"). */
|
|
13
|
-
hasBrave: boolean;
|
|
14
|
-
}
|
|
15
|
-
export interface ResearchBrief {
|
|
16
|
-
compiledPrompt: string;
|
|
17
|
-
contextBlockIds: string[];
|
|
18
|
-
}
|
|
19
7
|
export declare const toolConfig: ToolConfig<EnrichedResearchInput, ResearchBrief, ResearchReport>;
|
|
20
8
|
//# sourceMappingURL=tool-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/research/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/research/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAEnH,OAAO,EAAqB,KAAK,qBAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKpG,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAElG,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAYpE;AAED,eAAO,MAAM,UAAU,EAAE,UAAU,CAAC,qBAAqB,EAAE,aAAa,EAAE,cAAc,CAmBvF,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { inputSchema } from './schema.js';
|
|
2
2
|
import { researchReportSchema } from '../../reporting/report-parser-slots/research-report.js';
|
|
3
3
|
import { researchHeadlineTemplate } from '../../reporting/headline-templates/research.js';
|
|
4
|
-
import {
|
|
4
|
+
import { researchBriefSlot } from './brief-slot.js';
|
|
5
5
|
import { DEFAULT_TASK_TIMEOUT_MS } from '../../config/schema.js';
|
|
6
6
|
export function registerResearch(registry) {
|
|
7
7
|
registry.register({
|
|
@@ -20,21 +20,10 @@ export const toolConfig = {
|
|
|
20
20
|
name: 'research',
|
|
21
21
|
category: 'read_only',
|
|
22
22
|
agentType: 'complex',
|
|
23
|
-
briefSlot:
|
|
24
|
-
// cwd is irrelevant to prompt compilation (research is external-only); the
|
|
25
|
-
// generic executor's buildTaskSpec sets the cwd on the TaskSpec from
|
|
26
|
-
// ExecutionContext.
|
|
27
|
-
const { task } = compileResearch(input, input.resolvedContextBlocks, '', {
|
|
28
|
-
userSources: input.userSources,
|
|
29
|
-
hasBrave: input.hasBrave,
|
|
30
|
-
});
|
|
31
|
-
return [{
|
|
32
|
-
compiledPrompt: task.prompt,
|
|
33
|
-
contextBlockIds: input.contextBlockIds ?? [],
|
|
34
|
-
}];
|
|
35
|
-
},
|
|
23
|
+
briefSlot: researchBriefSlot,
|
|
36
24
|
buildTaskSpec: (brief, ctx) => ({
|
|
37
25
|
prompt: brief.compiledPrompt,
|
|
26
|
+
parallelTarget: brief.compiledPrompt,
|
|
38
27
|
agentType: 'complex',
|
|
39
28
|
reviewPolicy: 'none',
|
|
40
29
|
cwd: ctx.projectContext?.cwd ?? ctx.cwd,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/research/tool-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/research/tool-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,oBAAoB,EAAuB,MAAM,wDAAwD,CAAC;AACnH,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAkD,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAMjE,MAAM,UAAU,gBAAgB,CAAC,QAA6B;IAC5D,QAAQ,CAAC,QAAQ,CAAC;QAChB,SAAS,EAAE,UAAU;QACrB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,WAAW;QACnB,YAAY,EAAE,WAAW;QACzB,gBAAgB,EAAE,SAAS;QAC3B,oBAAoB,EAAE,KAAK;QAC3B,iBAAiB,EAAE,eAAe;KACnC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAqE;IAC1F,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,iBAAiB;IAC5B,aAAa,EAAE,CAAC,KAAoB,EAAE,GAAqB,EAAE,EAAE,CAAC,CAAC;QAC/D,MAAM,EAAE,KAAK,CAAC,cAAc;QAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,SAAS,EAAE,SAAkB;QAC7B,YAAY,EAAE,MAAe;QAC7B,GAAG,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG;QACvC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,KAAK,EAAE,UAAmB;QAC1B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,IAAI,uBAAuB;QACpE,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,IAAI,UAAU;QAC/D,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;KACtC,CAAC;IACF,YAAY,EAAE,oBAAoB;IAClC,gBAAgB,EAAE,wBAAwB;CAC3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.d.ts","sourceRoot":"","sources":["../../../src/tools/retry/brief-slot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,KAAK,KAAG,UAAU,EACsB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.js","sourceRoot":"","sources":["../../../src/tools/retry/brief-slot.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAgB,EAAE,CAC3D,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { ToolSurfaceRegistry } from '../../tool-surface/tool-surface-registry.js';
|
|
2
2
|
import type { Input } from './schema.js';
|
|
3
|
+
import { type RetryBrief } from './brief-slot.js';
|
|
3
4
|
import type { ToolConfig } from '../../lifecycle/tool-config-types.js';
|
|
4
5
|
export declare function registerRetry(registry: ToolSurfaceRegistry): void;
|
|
5
|
-
interface RetryBrief {
|
|
6
|
-
batchId: string;
|
|
7
|
-
taskIndex: number;
|
|
8
|
-
}
|
|
9
6
|
export declare const toolConfig: ToolConfig<Input, RetryBrief, unknown>;
|
|
10
|
-
export {};
|
|
11
7
|
//# sourceMappingURL=tool-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/retry/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAMvE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAYjE;AAED,
|
|
1
|
+
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/retry/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAMvE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAYjE;AAED,eAAO,MAAM,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CA2D7D,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { inputSchema } from './schema.js';
|
|
2
|
+
import { retryBriefSlot } from './brief-slot.js';
|
|
2
3
|
import { retryReportSchema } from '../../reporting/report-parser-slots/retry-report.js';
|
|
3
4
|
import { retryHeadlineTemplate } from '../../reporting/headline-templates/retry.js';
|
|
4
5
|
import { notApplicable } from '../../reporting/not-applicable.js';
|
|
@@ -19,7 +20,7 @@ export const toolConfig = {
|
|
|
19
20
|
name: 'retry',
|
|
20
21
|
category: 'assist',
|
|
21
22
|
agentType: 'standard',
|
|
22
|
-
briefSlot:
|
|
23
|
+
briefSlot: retryBriefSlot,
|
|
23
24
|
buildTaskSpec: (brief, ctx) => {
|
|
24
25
|
const batchCache = ctx.projectContext?.batchCache;
|
|
25
26
|
const batch = batchCache?.get(brief.batchId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/retry/tool-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/retry/tool-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.d.ts","sourceRoot":"","sources":["../../../src/tools/review/brief-slot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,EAAE,CAoB3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-slot.js","sourceRoot":"","sources":["../../../src/tools/review/brief-slot.ts"],"names":[],"mappings":"AAWA,SAAS,UAAU,CAAC,KAAyB;IAC3C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAClG,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE5E,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC;gBACN,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,gBAAgB;gBAChB,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,EAAE;aAC7C,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3B,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,gBAAgB;QAChB,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,EAAE;KAC7C,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtypes.d.ts","sourceRoot":"","sources":["../../../src/tools/review/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAOrF,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"subtypes.d.ts","sourceRoot":"","sources":["../../../src/tools/review/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAOrF,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC;AAkBtC,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAStE,CAAC"}
|
|
@@ -6,12 +6,13 @@ const SEMANTICS_DEFAULT = {
|
|
|
6
6
|
emptyOutcomeLine: 'If none exist, respond with the literal text "No findings for this criterion." — that is a fully valid outcome. Do NOT pad to avoid returning empty.',
|
|
7
7
|
findingMeaningParagraph: 'A finding is an ISSUE introduced or worsened by the change under review (correctness bug, missing test, race, security regression, contract break, etc.). Severity reflects how much the issue blocks merge / ships a regression.',
|
|
8
8
|
severityMeanings: {
|
|
9
|
-
critical: '
|
|
10
|
-
high: '
|
|
11
|
-
medium: '
|
|
12
|
-
low: '
|
|
9
|
+
critical: 'Production-breaking on merge',
|
|
10
|
+
high: 'Correctness gap surfacing in normal use',
|
|
11
|
+
medium: 'Maintainability/fragility',
|
|
12
|
+
low: 'Style',
|
|
13
13
|
},
|
|
14
14
|
mustEmitAtLeastOne: false,
|
|
15
|
+
legalOutcomes: ['found', 'clean'],
|
|
15
16
|
};
|
|
16
17
|
export const REVIEW_SUBTYPES = {
|
|
17
18
|
default: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtypes.js","sourceRoot":"","sources":["../../../src/tools/review/subtypes.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,EAAE,oBAAoB,EAAE,iBAAiB,EACnE,0BAA0B,EAAE,eAAe,GAC5C,MAAM,2BAA2B,CAAC;AAInC,iDAAiD;AACjD,+EAA+E;AAC/E,MAAM,iBAAiB,GAAmB;IACxC,QAAQ,EAAE,mEAAmE;IAC7E,gBAAgB,EAAE,sJAAsJ;IACxK,uBAAuB,EAAE,mOAAmO;IAC5P,gBAAgB,EAAE;QAChB,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"subtypes.js","sourceRoot":"","sources":["../../../src/tools/review/subtypes.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,EAAE,oBAAoB,EAAE,iBAAiB,EACnE,0BAA0B,EAAE,eAAe,GAC5C,MAAM,2BAA2B,CAAC;AAInC,iDAAiD;AACjD,+EAA+E;AAC/E,MAAM,iBAAiB,GAAmB;IACxC,QAAQ,EAAE,mEAAmE;IAC7E,gBAAgB,EAAE,sJAAsJ;IACxK,uBAAuB,EAAE,mOAAmO;IAC5P,gBAAgB,EAAE;QAChB,QAAQ,EAAE,8BAA8B;QACxC,IAAI,EAAE,yCAAyC;QAC/C,MAAM,EAAE,2BAA2B;QACnC,GAAG,EAAE,OAAO;KACb;IACD,kBAAkB,EAAE,KAAK;IACzB,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAU;CAC3C,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAA+C;IACzE,OAAO,EAAE;QACP,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE,0BAA0B;QACvC,YAAY,EAAE,oBAAoB;QAClC,SAAS,EAAE,iBAAiB;QAC5B,kBAAkB,EAAE,0BAA0B;QAC9C,SAAS,EAAE,iBAAiB;KAC7B;CACF,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ToolSurfaceRegistry } from '../../tool-surface/tool-surface-registry.js';
|
|
2
2
|
import type { Input } from './schema.js';
|
|
3
3
|
import type { ToolConfig } from '../../lifecycle/tool-config-types.js';
|
|
4
|
-
import { type ReviewBrief } from '
|
|
4
|
+
import { type ReviewBrief } from './brief-slot.js';
|
|
5
5
|
export declare function registerReview(registry: ToolSurfaceRegistry): void;
|
|
6
6
|
export declare const toolConfig: ToolConfig<Input, ReviewBrief, unknown>;
|
|
7
7
|
//# sourceMappingURL=tool-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/review/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"tool-config.d.ts","sourceRoot":"","sources":["../../../src/tools/review/tool-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAcpE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAYlE;AA2GD,eAAO,MAAM,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CA8C9D,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { inputSchema } from './schema.js';
|
|
2
2
|
import { qualityReviewTemplate } from '../../review/templates/quality-review-review.js';
|
|
3
|
-
import { reviewBriefSlot } from '
|
|
3
|
+
import { reviewBriefSlot } from './brief-slot.js';
|
|
4
4
|
import { reviewReportSchema } from '../../reporting/report-parser-slots/review-report.js';
|
|
5
5
|
import { reviewHeadlineTemplate } from '../../reporting/headline-templates/review.js';
|
|
6
6
|
import { DEFAULT_TASK_TIMEOUT_MS } from '../../config/schema.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/review/tool-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAGxF,OAAO,EAAE,eAAe,EAAoB,MAAM,
|
|
1
|
+
{"version":3,"file":"tool-config.js","sourceRoot":"","sources":["../../../src/tools/review/tool-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export type BriefQualityPolicy = 'strict' | 'warn' | 'off' | undefined;
|
|
2
|
+
export type BriefQualityWarning = 'outsourced_discovery' | 'brittle_line_anchors' | 'mixed_environment_actions' | 'bare_topic_noun' | 'no_done_condition' | 'no_output_contract' | 'tiny_brief' | 'huge_brief';
|
|
3
|
+
//# sourceMappingURL=brief-quality-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-quality-policy.d.ts","sourceRoot":"","sources":["../../src/types/brief-quality-policy.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAEvE,MAAM,MAAM,mBAAmB,GAC3B,sBAAsB,GACtB,sBAAsB,GACtB,2BAA2B,GAC3B,iBAAiB,GACjB,mBAAmB,GACnB,oBAAoB,GACpB,YAAY,GACZ,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brief-quality-policy.js","sourceRoot":"","sources":["../../src/types/brief-quality-policy.ts"],"names":[],"mappings":""}
|