@cat-factory/orchestration 0.74.3 → 0.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/container.d.ts +32 -2
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +52 -1
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/docInterview/DocInterviewService.d.ts +68 -0
- package/dist/modules/docInterview/DocInterviewService.d.ts.map +1 -0
- package/dist/modules/docInterview/DocInterviewService.js +174 -0
- package/dist/modules/docInterview/DocInterviewService.js.map +1 -0
- package/dist/modules/docInterview/doc-interview.logic.d.ts +42 -0
- package/dist/modules/docInterview/doc-interview.logic.d.ts.map +1 -0
- package/dist/modules/docInterview/doc-interview.logic.js +111 -0
- package/dist/modules/docInterview/doc-interview.logic.js.map +1 -0
- package/dist/modules/execution/AgentContextBuilder.d.ts +9 -1
- package/dist/modules/execution/AgentContextBuilder.d.ts.map +1 -1
- package/dist/modules/execution/AgentContextBuilder.js +33 -5
- package/dist/modules/execution/AgentContextBuilder.js.map +1 -1
- package/dist/modules/execution/DocInterviewController.d.ts +12 -0
- package/dist/modules/execution/DocInterviewController.d.ts.map +1 -0
- package/dist/modules/execution/DocInterviewController.js +56 -0
- package/dist/modules/execution/DocInterviewController.js.map +1 -0
- package/dist/modules/execution/ExecutionService.d.ts +27 -2
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +34 -2
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/InitiativeInterviewController.d.ts +4 -41
- package/dist/modules/execution/InitiativeInterviewController.d.ts.map +1 -1
- package/dist/modules/execution/InitiativeInterviewController.js +39 -132
- package/dist/modules/execution/InitiativeInterviewController.js.map +1 -1
- package/dist/modules/execution/InterviewGateController.d.ts +82 -0
- package/dist/modules/execution/InterviewGateController.d.ts.map +1 -0
- package/dist/modules/execution/InterviewGateController.js +128 -0
- package/dist/modules/execution/InterviewGateController.js.map +1 -0
- package/dist/modules/execution/RunDispatcher.d.ts +4 -0
- package/dist/modules/execution/RunDispatcher.d.ts.map +1 -1
- package/dist/modules/execution/RunDispatcher.js +16 -1
- package/dist/modules/execution/RunDispatcher.js.map +1 -1
- package/package.json +12 -12
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { generateText } from 'ai';
|
|
2
|
+
import { DOC_INTERVIEWER_AGENT_KIND, extractJson, inlineModelRef, resolveScopedModelProvider, ValidationError, } from '@cat-factory/kernel';
|
|
3
|
+
import { catFactoryObservability, FINAL_ANSWER_IN_REPLY } from '@cat-factory/agents';
|
|
4
|
+
import { answeredDigest, applyDocInterviewAnswer, applyDocInterviewOutcome, applyDocInterviewQuestions, coerceDocInterviewOutput, DOC_INTERVIEW_MAX_ROUNDS, newDocInterviewSession, } from './doc-interview.logic.js';
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
// The interactive document-review INTERVIEWER (WS5). Self-contained (owns its
|
|
7
|
+
// session repository AND the inline LLM), mirroring RequirementReviewService's
|
|
8
|
+
// self-containment but with the interview Q&A shape of the initiative
|
|
9
|
+
// interviewer — a document task has no owning entity to hang the transcript on,
|
|
10
|
+
// so the session lives in its own `doc_interview_sessions` table.
|
|
11
|
+
//
|
|
12
|
+
// It reads the block brief + the outline (and research) produced by the earlier
|
|
13
|
+
// steps plus the answers gathered so far, and either asks a fresh batch of
|
|
14
|
+
// clarifying questions or converges with a synthesized authoring brief the
|
|
15
|
+
// doc-writer starts from. The engine's DocInterviewController drives the
|
|
16
|
+
// park/answer/resume loop; this service decides content AND persists it.
|
|
17
|
+
//
|
|
18
|
+
// Model resolution is the SAME precedence as an agent step / the requirements
|
|
19
|
+
// reviewer: a model pinned on the block wins, else the workspace's per-kind
|
|
20
|
+
// default, else the routing default (a pinned subscription harness ref degrades
|
|
21
|
+
// to the routing default because this is an INLINE call with no container).
|
|
22
|
+
// ---------------------------------------------------------------------------
|
|
23
|
+
/** Role prompt the interviewer runs under. Returns ONLY a JSON decision object. */
|
|
24
|
+
export const DOC_INTERVIEW_SYSTEM_PROMPT = 'You are a documentation lead INTERVIEWING a stakeholder to refine a document BEFORE it is ' +
|
|
25
|
+
'written. You are given the document brief, its proposed outline, and the answers gathered so ' +
|
|
26
|
+
'far. Decide whether you understand the intended scope, audience, depth, structure and the ' +
|
|
27
|
+
'key points to cover well enough for an author to write a strong draft. If NOT, ask a small ' +
|
|
28
|
+
'batch of focused, high-leverage clarifying questions — each answerable in a sentence or two, ' +
|
|
29
|
+
'no yes/no trivia, no questions the brief or outline already answer. If you have enough (or ' +
|
|
30
|
+
'you are told this is the final round), STOP asking and synthesize a concise authoring brief: ' +
|
|
31
|
+
'the agreed scope and audience, the structure to follow, the specific points/decisions each ' +
|
|
32
|
+
'section must cover, and anything explicitly out of scope. Respond with ONLY a JSON object of ' +
|
|
33
|
+
'shape {"done": boolean, "questions": string[], "brief": string}. When done is false, ' +
|
|
34
|
+
'`questions` is non-empty; when done is true, `questions` is empty and you MUST fill `brief`. ' +
|
|
35
|
+
'No prose, no code fences. ' +
|
|
36
|
+
FINAL_ANSWER_IN_REPLY;
|
|
37
|
+
export class DocInterviewService {
|
|
38
|
+
deps;
|
|
39
|
+
constructor(deps) {
|
|
40
|
+
this.deps = deps;
|
|
41
|
+
}
|
|
42
|
+
/** Whether the inline interviewer is available (a provider AND a routing default are wired). */
|
|
43
|
+
get enabled() {
|
|
44
|
+
return (!!this.deps.modelProviderResolver || !!this.deps.modelProvider) && !!this.deps.modelRef;
|
|
45
|
+
}
|
|
46
|
+
/** The current live session for a block, or null. */
|
|
47
|
+
getByBlock(workspaceId, blockId) {
|
|
48
|
+
return this.deps.docInterviewRepository.getByBlock(workspaceId, blockId);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Drop the block's session(s) so the next run starts a clean interview. Called by the gate on a
|
|
52
|
+
* fresh run (mirrors `IterativeReviewService.review` clearing the block before iteration 1) — a
|
|
53
|
+
* re-run must not reuse the prior run's converged / at-cap session and its stale answers.
|
|
54
|
+
*/
|
|
55
|
+
clearForBlock(workspaceId, blockId) {
|
|
56
|
+
return this.deps.docInterviewRepository.deleteByBlock(workspaceId, blockId);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Run one interviewer pass over the document. `finalize` forces convergence (the human
|
|
60
|
+
* proceeded, or the round cap was hit) so the model is asked only to synthesize the brief.
|
|
61
|
+
*/
|
|
62
|
+
async runInterview(workspaceId, block, session, opts) {
|
|
63
|
+
const { modelProvider, ref } = await this.resolveModel(workspaceId, block);
|
|
64
|
+
let text;
|
|
65
|
+
try {
|
|
66
|
+
const model = modelProvider.resolve(ref);
|
|
67
|
+
const result = await generateText({
|
|
68
|
+
model,
|
|
69
|
+
system: DOC_INTERVIEW_SYSTEM_PROMPT,
|
|
70
|
+
prompt: this.buildPrompt(block, session, opts.finalize, opts.priorOutputs ?? []),
|
|
71
|
+
temperature: 0.2,
|
|
72
|
+
maxOutputTokens: 3000,
|
|
73
|
+
providerOptions: catFactoryObservability({
|
|
74
|
+
agentKind: DOC_INTERVIEWER_AGENT_KIND,
|
|
75
|
+
workspaceId,
|
|
76
|
+
}),
|
|
77
|
+
});
|
|
78
|
+
text = result.text;
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
throw new ValidationError(`The document interviewer (${ref.provider}:${ref.model}) failed: ${e instanceof Error ? e.message : String(e)}`);
|
|
82
|
+
}
|
|
83
|
+
const output = coerceDocInterviewOutput(extractJson(text), { finalize: opts.finalize });
|
|
84
|
+
// A non-final pass that yields neither questions nor a brief means the model returned
|
|
85
|
+
// empty / unparseable output (e.g. a reasoning model that emitted only into its private
|
|
86
|
+
// thinking channel, or prose with no JSON). Fail loudly instead of silently converging with an
|
|
87
|
+
// empty brief and skipping the whole interview — the run surfaces the failure and can retry.
|
|
88
|
+
if (!opts.finalize && output.kind === 'done' && !output.brief.trim()) {
|
|
89
|
+
throw new ValidationError(`The document interviewer (${ref.provider}:${ref.model}) returned no questions and no brief`);
|
|
90
|
+
}
|
|
91
|
+
return { output, model: `${ref.provider}:${ref.model}` };
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Persist a fresh batch of pending questions (creating the session on first entry). Returns
|
|
95
|
+
* the parked session, `awaiting` the human's answers.
|
|
96
|
+
*/
|
|
97
|
+
async recordQuestions(workspaceId, blockId, questions, model) {
|
|
98
|
+
const now = this.deps.clock.now();
|
|
99
|
+
const existing = await this.deps.docInterviewRepository.getByBlock(workspaceId, blockId);
|
|
100
|
+
const base = existing ??
|
|
101
|
+
newDocInterviewSession(this.deps.idGenerator.next('dis'), blockId, now, DOC_INTERVIEW_MAX_ROUNDS);
|
|
102
|
+
const next = applyDocInterviewQuestions({ ...base, model: base.model ?? model }, questions, () => this.deps.idGenerator.next('diq'), now);
|
|
103
|
+
await this.deps.docInterviewRepository.upsert(workspaceId, next);
|
|
104
|
+
return next;
|
|
105
|
+
}
|
|
106
|
+
/** Record the human's answer to one pending question. Returns null when there is no session. */
|
|
107
|
+
async recordAnswer(workspaceId, blockId, questionId, answer) {
|
|
108
|
+
const existing = await this.deps.docInterviewRepository.getByBlock(workspaceId, blockId);
|
|
109
|
+
if (!existing)
|
|
110
|
+
return null;
|
|
111
|
+
const next = applyDocInterviewAnswer(existing, questionId, answer, this.deps.clock.now());
|
|
112
|
+
await this.deps.docInterviewRepository.upsert(workspaceId, next);
|
|
113
|
+
return next;
|
|
114
|
+
}
|
|
115
|
+
/** Fold the synthesized brief onto the session and mark it `done`. */
|
|
116
|
+
async recordOutcome(workspaceId, blockId, brief, model) {
|
|
117
|
+
const now = this.deps.clock.now();
|
|
118
|
+
const existing = (await this.deps.docInterviewRepository.getByBlock(workspaceId, blockId)) ??
|
|
119
|
+
newDocInterviewSession(this.deps.idGenerator.next('dis'), blockId, now, DOC_INTERVIEW_MAX_ROUNDS);
|
|
120
|
+
const next = applyDocInterviewOutcome({ ...existing, model: existing.model ?? model }, brief, now);
|
|
121
|
+
await this.deps.docInterviewRepository.upsert(workspaceId, next);
|
|
122
|
+
return next;
|
|
123
|
+
}
|
|
124
|
+
/** Assemble the interviewer prompt: the brief + the outline/research + the answered digest. */
|
|
125
|
+
buildPrompt(block, session, finalize, priorOutputs) {
|
|
126
|
+
const lines = [`Document: ${block.title || '(untitled document)'}`];
|
|
127
|
+
const fields = block.taskTypeFields;
|
|
128
|
+
if (fields?.docKind)
|
|
129
|
+
lines.push(`Type: ${fields.docKind}`);
|
|
130
|
+
if (fields?.audience)
|
|
131
|
+
lines.push(`Audience: ${fields.audience}`);
|
|
132
|
+
const brief = block.description?.trim();
|
|
133
|
+
if (brief)
|
|
134
|
+
lines.push('', 'Brief:', brief);
|
|
135
|
+
const outline = priorOutputs.find((o) => o.agentKind === 'doc-outliner')?.output?.trim();
|
|
136
|
+
if (outline)
|
|
137
|
+
lines.push('', 'Proposed outline:', outline);
|
|
138
|
+
const research = priorOutputs.find((o) => o.agentKind === 'doc-researcher')?.output?.trim();
|
|
139
|
+
if (research)
|
|
140
|
+
lines.push('', 'Research brief:', research);
|
|
141
|
+
const digest = answeredDigest(session);
|
|
142
|
+
if (digest.length)
|
|
143
|
+
lines.push('', ...digest);
|
|
144
|
+
lines.push('', finalize
|
|
145
|
+
? 'This is the FINAL round: do NOT ask more questions. Synthesize the agreed authoring ' +
|
|
146
|
+
'brief from the material and answers above.'
|
|
147
|
+
: 'Ask your next batch of clarifying questions, or converge if you have enough. ' +
|
|
148
|
+
'Respond with ONLY the JSON decision object.');
|
|
149
|
+
return lines.join('\n');
|
|
150
|
+
}
|
|
151
|
+
async resolveModel(workspaceId, block) {
|
|
152
|
+
const modelProvider = await resolveScopedModelProvider(workspaceId, this.deps);
|
|
153
|
+
const ref = await this.modelFor(workspaceId, block);
|
|
154
|
+
if (!modelProvider || !ref) {
|
|
155
|
+
throw new ValidationError('No model is configured for the document interviewer');
|
|
156
|
+
}
|
|
157
|
+
return { modelProvider, ref };
|
|
158
|
+
}
|
|
159
|
+
/** Block pin > workspace per-kind default > routing default (subscription refs degrade). */
|
|
160
|
+
async modelFor(workspaceId, block) {
|
|
161
|
+
const fallback = this.deps.modelRef;
|
|
162
|
+
const runsInline = this.deps.runsInline;
|
|
163
|
+
const resolve = (ref) => inlineModelRef(ref, fallback ?? ref, runsInline ? { runsInline } : {});
|
|
164
|
+
const fromBlock = this.deps.resolveBlockModel?.(block.modelId);
|
|
165
|
+
if (fromBlock)
|
|
166
|
+
return resolve(fromBlock);
|
|
167
|
+
const defaultId = await this.deps.resolveWorkspaceModelDefault?.(workspaceId, DOC_INTERVIEWER_AGENT_KIND, block.modelPresetId);
|
|
168
|
+
const fromDefault = this.deps.resolveBlockModel?.(defaultId);
|
|
169
|
+
if (fromDefault)
|
|
170
|
+
return resolve(fromDefault);
|
|
171
|
+
return fallback;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=DocInterviewService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocInterviewService.js","sourceRoot":"","sources":["../../../src/modules/docInterview/DocInterviewService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { DocInterviewSession } from '@cat-factory/contracts';
|
|
2
|
+
/** How many interviewer passes may run before the loop is force-converged. */
|
|
3
|
+
export declare const DOC_INTERVIEW_MAX_ROUNDS = 4;
|
|
4
|
+
/** Upper bound on questions the interviewer may ask in one round (keeps the gate answerable). */
|
|
5
|
+
export declare const DOC_INTERVIEW_MAX_QUESTIONS = 8;
|
|
6
|
+
/** The interviewer LLM's decision: ask more questions, or converge with a synthesized brief. */
|
|
7
|
+
export type DocInterviewOutput = {
|
|
8
|
+
kind: 'questions';
|
|
9
|
+
questions: string[];
|
|
10
|
+
} | {
|
|
11
|
+
kind: 'done';
|
|
12
|
+
brief: string;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Leniently coerce the interviewer's JSON into a {@link DocInterviewOutput}. `finalize` forces
|
|
16
|
+
* convergence (the human proceeded, or the round cap was hit) regardless of what the model
|
|
17
|
+
* returned. Empty/absent questions also mean convergence — nothing left to ask.
|
|
18
|
+
*/
|
|
19
|
+
export declare function coerceDocInterviewOutput(parsed: unknown, opts: {
|
|
20
|
+
finalize: boolean;
|
|
21
|
+
}): DocInterviewOutput;
|
|
22
|
+
/** A fresh, empty session for a block (round 0, awaiting the interviewer's first pass). */
|
|
23
|
+
export declare function newDocInterviewSession(id: string, blockId: string, now: number, maxRounds?: number): DocInterviewSession;
|
|
24
|
+
/**
|
|
25
|
+
* Append a fresh round of pending questions: keep the answered digest, drop any prior-round
|
|
26
|
+
* questions the human skipped, add the new ones with stable ids. Bumps the round and parks it
|
|
27
|
+
* `awaiting`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function applyDocInterviewQuestions(session: DocInterviewSession, questions: string[], nextId: () => string, now: number): DocInterviewSession;
|
|
30
|
+
/** Record the human's answer to one pending question (matched by id). No-op if unknown. */
|
|
31
|
+
export declare function applyDocInterviewAnswer(session: DocInterviewSession, questionId: string, answer: string, now: number): DocInterviewSession;
|
|
32
|
+
/**
|
|
33
|
+
* Converge the interview: keep the answered digest, fold the synthesized brief onto the
|
|
34
|
+
* session, and mark it `done`. A blank synthesized brief keeps the prior one (defensive — the
|
|
35
|
+
* finalize pass should always produce one).
|
|
36
|
+
*/
|
|
37
|
+
export declare function applyDocInterviewOutcome(session: DocInterviewSession, brief: string, now: number): DocInterviewSession;
|
|
38
|
+
/** Whether the interviewer must force-converge on the next pass (the round cap was reached). */
|
|
39
|
+
export declare function docInterviewAtCap(session: DocInterviewSession): boolean;
|
|
40
|
+
/** Render the answered Q&A digest as prompt lines (empty array when nothing is answered). */
|
|
41
|
+
export declare function answeredDigest(session: DocInterviewSession): string[];
|
|
42
|
+
//# sourceMappingURL=doc-interview.logic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc-interview.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/docInterview/doc-interview.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAWjF,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,IAAI,CAAA;AACzC,iGAAiG;AACjG,eAAO,MAAM,2BAA2B,IAAI,CAAA;AAQ5C,gGAAgG;AAChG,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnC;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAC1B,kBAAkB,CAgBpB;AAOD,2FAA2F;AAC3F,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,SAAS,SAA2B,GACnC,mBAAmB,CAarB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,mBAAmB,EAC5B,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,EAAE,MAAM,MAAM,EACpB,GAAG,EAAE,MAAM,GACV,mBAAmB,CAarB;AAED,2FAA2F;AAC3F,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,mBAAmB,CAQrB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,mBAAmB,CAQrB;AAED,gGAAgG;AAChG,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAEvE;AAED,6FAA6F;AAC7F,wBAAgB,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAMrE"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Pure state transitions + coercion for the interactive document-interview
|
|
3
|
+
// session (WS5). The interviewer LLM (DocInterviewService) decides WHAT to ask /
|
|
4
|
+
// synthesize; these apply the decision to the session entity. Mirrors the
|
|
5
|
+
// initiative interview's `initiative.logic.ts`, but the converged outcome is a
|
|
6
|
+
// single synthesized authoring `brief` (a document has no goal/constraints/
|
|
7
|
+
// non-goals triple) folded into the writer's context.
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
/** How many interviewer passes may run before the loop is force-converged. */
|
|
10
|
+
export const DOC_INTERVIEW_MAX_ROUNDS = 4;
|
|
11
|
+
/** Upper bound on questions the interviewer may ask in one round (keeps the gate answerable). */
|
|
12
|
+
export const DOC_INTERVIEW_MAX_QUESTIONS = 8;
|
|
13
|
+
/** Clamp bounds, mirroring the strict wire schema's `shortProseField` / prose limits. */
|
|
14
|
+
const SHORT_MAX = 2000;
|
|
15
|
+
const PROSE_MAX = 8000;
|
|
16
|
+
const clampShort = (s) => s.trim().slice(0, SHORT_MAX);
|
|
17
|
+
const clampProse = (s) => s.trim().slice(0, PROSE_MAX);
|
|
18
|
+
/**
|
|
19
|
+
* Leniently coerce the interviewer's JSON into a {@link DocInterviewOutput}. `finalize` forces
|
|
20
|
+
* convergence (the human proceeded, or the round cap was hit) regardless of what the model
|
|
21
|
+
* returned. Empty/absent questions also mean convergence — nothing left to ask.
|
|
22
|
+
*/
|
|
23
|
+
export function coerceDocInterviewOutput(parsed, opts) {
|
|
24
|
+
const obj = (typeof parsed === 'object' && parsed !== null ? parsed : {});
|
|
25
|
+
const questions = Array.isArray(obj.questions)
|
|
26
|
+
? obj.questions
|
|
27
|
+
.filter((q) => typeof q === 'string' && q.trim().length > 0)
|
|
28
|
+
.map(clampShort)
|
|
29
|
+
.slice(0, DOC_INTERVIEW_MAX_QUESTIONS)
|
|
30
|
+
: [];
|
|
31
|
+
const done = opts.finalize || obj.done === true || questions.length === 0;
|
|
32
|
+
if (done) {
|
|
33
|
+
return { kind: 'done', brief: typeof obj.brief === 'string' ? clampProse(obj.brief) : '' };
|
|
34
|
+
}
|
|
35
|
+
return { kind: 'questions', questions };
|
|
36
|
+
}
|
|
37
|
+
/** Only the answered exchanges — the digest that survives across rounds. */
|
|
38
|
+
function answeredQa(session) {
|
|
39
|
+
return (session.qa ?? []).filter((q) => (q.answer ?? '').trim().length > 0);
|
|
40
|
+
}
|
|
41
|
+
/** A fresh, empty session for a block (round 0, awaiting the interviewer's first pass). */
|
|
42
|
+
export function newDocInterviewSession(id, blockId, now, maxRounds = DOC_INTERVIEW_MAX_ROUNDS) {
|
|
43
|
+
return {
|
|
44
|
+
id,
|
|
45
|
+
blockId,
|
|
46
|
+
status: 'awaiting',
|
|
47
|
+
round: 0,
|
|
48
|
+
maxRounds,
|
|
49
|
+
qa: [],
|
|
50
|
+
brief: null,
|
|
51
|
+
model: null,
|
|
52
|
+
createdAt: now,
|
|
53
|
+
updatedAt: now,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Append a fresh round of pending questions: keep the answered digest, drop any prior-round
|
|
58
|
+
* questions the human skipped, add the new ones with stable ids. Bumps the round and parks it
|
|
59
|
+
* `awaiting`.
|
|
60
|
+
*/
|
|
61
|
+
export function applyDocInterviewQuestions(session, questions, nextId, now) {
|
|
62
|
+
const pending = questions.map((question) => ({
|
|
63
|
+
id: nextId(),
|
|
64
|
+
question: clampShort(question),
|
|
65
|
+
answer: '',
|
|
66
|
+
}));
|
|
67
|
+
return {
|
|
68
|
+
...session,
|
|
69
|
+
status: 'awaiting',
|
|
70
|
+
round: session.round + 1,
|
|
71
|
+
qa: [...answeredQa(session), ...pending],
|
|
72
|
+
updatedAt: now,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
/** Record the human's answer to one pending question (matched by id). No-op if unknown. */
|
|
76
|
+
export function applyDocInterviewAnswer(session, questionId, answer, now) {
|
|
77
|
+
return {
|
|
78
|
+
...session,
|
|
79
|
+
qa: (session.qa ?? []).map((q) => q.id === questionId ? { ...q, answer: clampShort(answer) } : q),
|
|
80
|
+
updatedAt: now,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Converge the interview: keep the answered digest, fold the synthesized brief onto the
|
|
85
|
+
* session, and mark it `done`. A blank synthesized brief keeps the prior one (defensive — the
|
|
86
|
+
* finalize pass should always produce one).
|
|
87
|
+
*/
|
|
88
|
+
export function applyDocInterviewOutcome(session, brief, now) {
|
|
89
|
+
return {
|
|
90
|
+
...session,
|
|
91
|
+
status: 'done',
|
|
92
|
+
qa: answeredQa(session),
|
|
93
|
+
brief: brief.trim() || session.brief || '',
|
|
94
|
+
updatedAt: now,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/** Whether the interviewer must force-converge on the next pass (the round cap was reached). */
|
|
98
|
+
export function docInterviewAtCap(session) {
|
|
99
|
+
return session.round >= session.maxRounds;
|
|
100
|
+
}
|
|
101
|
+
/** Render the answered Q&A digest as prompt lines (empty array when nothing is answered). */
|
|
102
|
+
export function answeredDigest(session) {
|
|
103
|
+
const answered = answeredQa(session);
|
|
104
|
+
if (!answered.length)
|
|
105
|
+
return [];
|
|
106
|
+
const lines = ['Answers gathered so far:'];
|
|
107
|
+
for (const { question, answer } of answered)
|
|
108
|
+
lines.push(`- Q: ${question}`, ` A: ${answer}`);
|
|
109
|
+
return lines;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=doc-interview.logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc-interview.logic.js","sourceRoot":"","sources":["../../../src/modules/docInterview/doc-interview.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AccountRepository, AgentRunContext, Block, BlockRepository, BrainstormSessionRepository, ClarityReviewRepository, DocumentRepository, DocumentSourceKind, ExecutionInstance, InitiativeRepository, PipelineStep, RequirementReviewRepository, TaskRepository, WorkspaceRepository } from '@cat-factory/kernel';
|
|
1
|
+
import type { AccountRepository, AgentRunContext, Block, BlockRepository, BrainstormSessionRepository, ClarityReviewRepository, DocInterviewRepository, DocumentRepository, DocumentSourceKind, ExecutionInstance, InitiativeRepository, PipelineStep, RequirementReviewRepository, TaskRepository, WorkspaceRepository } from '@cat-factory/kernel';
|
|
2
2
|
import type { AgentKindRegistry } from '@cat-factory/agents';
|
|
3
3
|
import { type ResolvedFrontendBinding } from './frontend-infra.logic.js';
|
|
4
4
|
import type { EnvironmentProvisioningService } from '@cat-factory/integrations';
|
|
@@ -70,6 +70,12 @@ export interface AgentContextBuilderDeps {
|
|
|
70
70
|
documentUrlResolver?: DocumentUrlResolver;
|
|
71
71
|
tasks?: TaskRepository;
|
|
72
72
|
requirementReviews?: RequirementReviewRepository;
|
|
73
|
+
/**
|
|
74
|
+
* Optional: the interactive document-interview session store (WS5). When wired, a
|
|
75
|
+
* doc-authoring run folds the block's converged authoring brief into the writer's context.
|
|
76
|
+
* Absent → the writer runs off the raw outline/description.
|
|
77
|
+
*/
|
|
78
|
+
docInterviews?: DocInterviewRepository;
|
|
73
79
|
clarityReviews?: ClarityReviewRepository;
|
|
74
80
|
brainstormSessions?: BrainstormSessionRepository;
|
|
75
81
|
/**
|
|
@@ -220,6 +226,8 @@ export declare class AgentContextBuilder {
|
|
|
220
226
|
* (the prompt parses its sections). Never throws — a lookup failure degrades to the built-ins.
|
|
221
227
|
*/
|
|
222
228
|
private resolveDocAuthoringContext;
|
|
229
|
+
/** The block's converged document-interview brief (WS5), or undefined when none / unwired. */
|
|
230
|
+
private resolveDocInterviewBrief;
|
|
223
231
|
/**
|
|
224
232
|
* The selected best-practice fragment ids of the block's owning service frame. Walks
|
|
225
233
|
* up from the block we already hold (bounded: frame → module → task, cycle-guarded),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentContextBuilder.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/AgentContextBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,eAAe,EACf,2BAA2B,EAC3B,uBAAuB,
|
|
1
|
+
{"version":3,"file":"AgentContextBuilder.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/AgentContextBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { buildExcerpt, CONTEXT_BUDGET } from '@cat-factory/kernel';
|
|
2
|
-
import { CODE_AWARE_TRAIT, DOC_AWARE_TRAIT, hasTrait } from '@cat-factory/agents';
|
|
2
|
+
import { CODE_AWARE_TRAIT, DOC_AWARE_TRAIT, DOC_FINALIZER_KIND, DOC_WRITER_KIND, hasTrait, } from '@cat-factory/agents';
|
|
3
3
|
import { boundServiceFrameIds, buildFrontendRunNotes, indexLiveServiceEnvUrls, resolveFrontendBindings, } from './frontend-infra.logic.js';
|
|
4
4
|
import { connectionDescription } from '@cat-factory/contracts';
|
|
5
5
|
import { frameOf, validInvolvedServiceFrames } from './frame.logic.js';
|
|
@@ -184,6 +184,11 @@ export class AgentContextBuilder {
|
|
|
184
184
|
// exemplars) or the kind isn't doc-aware.
|
|
185
185
|
...(docAuthoring.docTemplateBody ? { docTemplateBody: docAuthoring.docTemplateBody } : {}),
|
|
186
186
|
...(docAuthoring.docExemplars?.length ? { docExemplars: docAuthoring.docExemplars } : {}),
|
|
187
|
+
// The converged interactive-interview authoring brief (WS5), when the interview ran and
|
|
188
|
+
// synthesized one — the doc-writer folds it in as the refined spec to write from.
|
|
189
|
+
...(docAuthoring.docInterviewBrief
|
|
190
|
+
? { docInterviewBrief: docAuthoring.docInterviewBrief }
|
|
191
|
+
: {}),
|
|
187
192
|
},
|
|
188
193
|
...(environment ? { environment } : {}),
|
|
189
194
|
...(service ? { service } : {}),
|
|
@@ -464,11 +469,19 @@ export class AgentContextBuilder {
|
|
|
464
469
|
* (the prompt parses its sections). Never throws — a lookup failure degrades to the built-ins.
|
|
465
470
|
*/
|
|
466
471
|
async resolveDocAuthoringContext(workspaceId, agentKind, block) {
|
|
467
|
-
const documents = this.deps.documents;
|
|
468
|
-
if (!documents)
|
|
469
|
-
return {};
|
|
470
472
|
if (!hasTrait(agentKind, DOC_AWARE_TRAIT, this.deps.agentKindRegistry))
|
|
471
473
|
return {};
|
|
474
|
+
// The converged interactive-interview brief (WS5) — folded into the writer's context so the
|
|
475
|
+
// draft starts from the refined spec, not the raw outline. Read independently of the
|
|
476
|
+
// template/exemplar links (they need the documents integration; the interview does not), and
|
|
477
|
+
// ONLY for the two kinds that render it (doc-writer / doc-finalizer) — the researcher /
|
|
478
|
+
// outliner / interviewer / reviewer never consume it, so we skip the session read for them.
|
|
479
|
+
const interviewBrief = agentKind === DOC_WRITER_KIND || agentKind === DOC_FINALIZER_KIND
|
|
480
|
+
? await this.resolveDocInterviewBrief(workspaceId, block)
|
|
481
|
+
: undefined;
|
|
482
|
+
const documents = this.deps.documents;
|
|
483
|
+
if (!documents)
|
|
484
|
+
return interviewBrief ? { docInterviewBrief: interviewBrief } : {};
|
|
472
485
|
const docKind = (block.taskTypeFields?.docKind ?? 'other');
|
|
473
486
|
try {
|
|
474
487
|
const [template, exemplars] = await Promise.all([
|
|
@@ -486,12 +499,27 @@ export class AgentContextBuilder {
|
|
|
486
499
|
})),
|
|
487
500
|
}
|
|
488
501
|
: {}),
|
|
502
|
+
...(interviewBrief ? { docInterviewBrief: interviewBrief } : {}),
|
|
489
503
|
};
|
|
490
504
|
}
|
|
491
505
|
catch {
|
|
492
506
|
// A resolution failure must never wedge a run; fall back to the built-in template/exemplars.
|
|
493
|
-
return {};
|
|
507
|
+
return interviewBrief ? { docInterviewBrief: interviewBrief } : {};
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
/** The block's converged document-interview brief (WS5), or undefined when none / unwired. */
|
|
511
|
+
async resolveDocInterviewBrief(workspaceId, block) {
|
|
512
|
+
if (!this.deps.docInterviews)
|
|
513
|
+
return undefined;
|
|
514
|
+
try {
|
|
515
|
+
const session = await this.deps.docInterviews.getByBlock(workspaceId, block.id);
|
|
516
|
+
if (session?.status === 'done' && session.brief?.trim())
|
|
517
|
+
return session.brief;
|
|
518
|
+
}
|
|
519
|
+
catch {
|
|
520
|
+
// Never wedge a run on a lookup failure; fall back to the raw outline/description.
|
|
494
521
|
}
|
|
522
|
+
return undefined;
|
|
495
523
|
}
|
|
496
524
|
/**
|
|
497
525
|
* The selected best-practice fragment ids of the block's owning service frame. Walks
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentContextBuilder.js","sourceRoot":"","sources":["../../../src/modules/execution/AgentContextBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentContextBuilder.js","sourceRoot":"","sources":["../../../src/modules/execution/AgentContextBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { DocInterviewSession, ExecutionEventPublisher } from '@cat-factory/kernel';
|
|
2
|
+
import type { DocInterviewService } from '../docInterview/DocInterviewService.js';
|
|
3
|
+
import { InterviewGateController, type InterviewGateDeps } from './InterviewGateController.js';
|
|
4
|
+
export interface DocInterviewControllerDeps extends InterviewGateDeps {
|
|
5
|
+
events: ExecutionEventPublisher;
|
|
6
|
+
/** The interviewer LLM + session store. Absent (or model-less) → the gate passes through. */
|
|
7
|
+
docInterviewService?: DocInterviewService;
|
|
8
|
+
}
|
|
9
|
+
export declare class DocInterviewController extends InterviewGateController<DocInterviewSession> {
|
|
10
|
+
constructor(deps: DocInterviewControllerDeps);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=DocInterviewController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocInterviewController.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/DocInterviewController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EAExB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,wCAAwC,CAAA;AAE/C,OAAO,EACL,uBAAuB,EACvB,KAAK,iBAAiB,EAEvB,MAAM,8BAA8B,CAAA;AAYrC,MAAM,WAAW,0BAA2B,SAAQ,iBAAiB;IACnE,MAAM,EAAE,uBAAuB,CAAA;IAC/B,6FAA6F;IAC7F,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;CAC1C;AA6DD,qBAAa,sBAAuB,SAAQ,uBAAuB,CAAC,mBAAmB,CAAC;IACtF,YAAY,IAAI,EAAE,0BAA0B,EAE3C;CACF"}
|