@pellux/goodvibes-sdk 0.33.16 → 0.33.18
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/contracts/artifacts/operator-contract.json +1 -1
- package/dist/events/workflows.d.ts +1 -1
- package/dist/events/workflows.d.ts.map +1 -1
- package/dist/platform/agents/completion-report.d.ts +3 -3
- package/dist/platform/agents/completion-report.d.ts.map +1 -1
- package/dist/platform/agents/completion-report.js +1 -1
- package/dist/platform/agents/index.d.ts +1 -0
- package/dist/platform/agents/index.d.ts.map +1 -1
- package/dist/platform/agents/index.js +1 -0
- package/dist/platform/agents/wrfc-controller.d.ts +14 -6
- package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-controller.js +316 -100
- package/dist/platform/agents/wrfc-external-adapter.d.ts +45 -0
- package/dist/platform/agents/wrfc-external-adapter.d.ts.map +1 -0
- package/dist/platform/agents/wrfc-external-adapter.js +18 -0
- package/dist/platform/agents/wrfc-prompt-addenda.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-prompt-addenda.js +9 -0
- package/dist/platform/agents/wrfc-reporting.d.ts +2 -2
- package/dist/platform/agents/wrfc-reporting.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-reporting.js +22 -13
- package/dist/platform/agents/wrfc-types.d.ts +35 -5
- package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-workmap.d.ts +7 -1
- package/dist/platform/agents/wrfc-workmap.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/gap-repair.d.ts +1 -0
- package/dist/platform/knowledge/semantic/gap-repair.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/gap-repair.js +1 -0
- package/dist/platform/knowledge/store-config.d.ts +3 -0
- package/dist/platform/knowledge/store-config.d.ts.map +1 -1
- package/dist/platform/knowledge/store-config.js +6 -2
- package/dist/platform/knowledge/store-schema.d.ts +2 -1
- package/dist/platform/knowledge/store-schema.d.ts.map +1 -1
- package/dist/platform/knowledge/store-schema.js +3 -2
- package/dist/platform/runtime/services.d.ts.map +1 -1
- package/dist/platform/runtime/services.js +24 -7
- package/dist/platform/tools/agent/index.d.ts.map +1 -1
- package/dist/platform/tools/agent/index.js +6 -2
- package/dist/platform/tools/agent/manager.d.ts +3 -0
- package/dist/platform/tools/agent/manager.d.ts.map +1 -1
- package/dist/platform/tools/agent/manager.js +43 -6
- package/dist/platform/tools/agent/schema.d.ts +2 -0
- package/dist/platform/tools/agent/schema.d.ts.map +1 -1
- package/dist/platform/version.js +1 -1
- package/package.json +9 -9
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { WrfcState } from './wrfc-types.js';
|
|
2
|
+
export type WrfcExternalWorkStatus = 'queued' | 'running' | 'blocked' | 'completed' | 'failed' | 'cancelled';
|
|
3
|
+
export interface WrfcExternalWorkRequest {
|
|
4
|
+
task: string;
|
|
5
|
+
wrfcId?: string | undefined;
|
|
6
|
+
chainState?: WrfcState | undefined;
|
|
7
|
+
metadata?: Record<string, unknown> | undefined;
|
|
8
|
+
}
|
|
9
|
+
export interface WrfcExternalWorkHandle {
|
|
10
|
+
externalTaskId: string;
|
|
11
|
+
status: WrfcExternalWorkStatus;
|
|
12
|
+
metadata?: Record<string, unknown> | undefined;
|
|
13
|
+
}
|
|
14
|
+
export interface WrfcExternalWorkSnapshot extends WrfcExternalWorkHandle {
|
|
15
|
+
progress?: string | undefined;
|
|
16
|
+
updatedAt?: string | undefined;
|
|
17
|
+
}
|
|
18
|
+
export interface WrfcExternalWorkResult {
|
|
19
|
+
externalTaskId: string;
|
|
20
|
+
status: Extract<WrfcExternalWorkStatus, 'completed' | 'failed' | 'cancelled'>;
|
|
21
|
+
summary: string;
|
|
22
|
+
output?: string | undefined;
|
|
23
|
+
metadata?: Record<string, unknown> | undefined;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Translation seam for limited surfaces and partner apps that cannot or should
|
|
27
|
+
* not embed the native WRFC controller. TUI remains the first-class SDK-native
|
|
28
|
+
* WRFC implementation; this adapter shape is for companion surfaces that need
|
|
29
|
+
* to dispatch, poll, cancel, and normalize externally-owned work.
|
|
30
|
+
*/
|
|
31
|
+
export interface WrfcExternalWorkAdapter {
|
|
32
|
+
dispatch(request: WrfcExternalWorkRequest): Promise<WrfcExternalWorkHandle>;
|
|
33
|
+
status(externalTaskId: string): Promise<WrfcExternalWorkSnapshot>;
|
|
34
|
+
cancel(externalTaskId: string, reason?: string | undefined): Promise<void>;
|
|
35
|
+
result(externalTaskId: string): Promise<WrfcExternalWorkResult>;
|
|
36
|
+
}
|
|
37
|
+
export declare class WrfcExternalWorkBridge {
|
|
38
|
+
private readonly adapter;
|
|
39
|
+
constructor(adapter: WrfcExternalWorkAdapter);
|
|
40
|
+
dispatch(request: WrfcExternalWorkRequest): Promise<WrfcExternalWorkHandle>;
|
|
41
|
+
status(externalTaskId: string): Promise<WrfcExternalWorkSnapshot>;
|
|
42
|
+
cancel(externalTaskId: string, reason?: string | undefined): Promise<void>;
|
|
43
|
+
result(externalTaskId: string): Promise<WrfcExternalWorkResult>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=wrfc-external-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrfc-external-adapter.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-external-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE7G,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACtE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC,sBAAsB,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC,CAAC;IAC9E,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC5E,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACjE;AAED,qBAAa,sBAAsB;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,uBAAuB;IAE7D,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI3E,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIjE,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1E,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAGhE"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export class WrfcExternalWorkBridge {
|
|
2
|
+
adapter;
|
|
3
|
+
constructor(adapter) {
|
|
4
|
+
this.adapter = adapter;
|
|
5
|
+
}
|
|
6
|
+
dispatch(request) {
|
|
7
|
+
return this.adapter.dispatch(request);
|
|
8
|
+
}
|
|
9
|
+
status(externalTaskId) {
|
|
10
|
+
return this.adapter.status(externalTaskId);
|
|
11
|
+
}
|
|
12
|
+
cancel(externalTaskId, reason) {
|
|
13
|
+
return this.adapter.cancel(externalTaskId, reason);
|
|
14
|
+
}
|
|
15
|
+
result(externalTaskId) {
|
|
16
|
+
return this.adapter.result(externalTaskId);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrfc-prompt-addenda.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-prompt-addenda.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAerF,wBAAgB,+BAA+B,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"wrfc-prompt-addenda.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-prompt-addenda.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAerF,wBAAgB,+BAA+B,IAAI,MAAM,CAiCxD;AAGD;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAqBxD;AAGD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAgBrD"}
|
|
@@ -35,6 +35,15 @@ A **non-build or unconstrained prompt** looks like: a question, a conversational
|
|
|
35
35
|
**Hard cap: at most ~16 constraints.** If you find more, you are over-enumerating — consolidate. Real user prompts almost never produce more than 5-10.
|
|
36
36
|
|
|
37
37
|
These constraints become your self-declared acceptance criteria. The reviewer will verify each one independently. If you cannot satisfy a constraint, record it under \`issues[]\` with an explanation — do not omit it.`;
|
|
38
|
+
_engineerAddendumCache += `
|
|
39
|
+
|
|
40
|
+
## WRFC self-check before final report
|
|
41
|
+
|
|
42
|
+
Before writing your final EngineerReport, do a targeted self-check against the original task prompt:
|
|
43
|
+
- Confirm the complete result addresses the ask, not only the last code region you touched.
|
|
44
|
+
- Spot-check changed files and any directly related behavior you may have affected.
|
|
45
|
+
- Record meaningful remaining misses in \`issues[]\` and uncertainty in \`uncertainties[]\`; do not hide known gaps.
|
|
46
|
+
- Keep this concise. The review phase will still perform the full independent review.`;
|
|
38
47
|
return _engineerAddendumCache;
|
|
39
48
|
}
|
|
40
49
|
let _reviewerAddendumCache = null;
|
|
@@ -5,7 +5,7 @@ export declare function extractPassedFromText(text: string, score: number, thres
|
|
|
5
5
|
export declare function extractIssuesFromText(text: string): ReviewerReport['issues'];
|
|
6
6
|
export declare function parseEngineerCompletionReport(rawOutput: string, _template?: string): CompletionReport;
|
|
7
7
|
export declare function parseReviewerCompletionReport(chainId: string, rawOutput: string, threshold: number): ReviewerReport;
|
|
8
|
-
export declare function buildReviewTask(chainId: string, report: CompletionReport, threshold: number, constraints?: Constraint[]): string;
|
|
9
|
-
export declare function buildFixTask(chainId: string, review: ReviewerReport, threshold: number, fixAttempts: number, constraints?: Constraint[], constraintFindings?: ConstraintFinding[]): string;
|
|
8
|
+
export declare function buildReviewTask(chainId: string, originalTask: string, report: CompletionReport, threshold: number, constraints?: Constraint[]): string;
|
|
9
|
+
export declare function buildFixTask(chainId: string, originalTask: string, review: ReviewerReport, threshold: number, fixAttempts: number, constraints?: Constraint[], constraintFindings?: ConstraintFinding[]): string;
|
|
10
10
|
export declare function buildGateFailureTask(chainId: string, task: string, failedGates: readonly QualityGateResult[], constraints?: readonly Constraint[]): string;
|
|
11
11
|
//# sourceMappingURL=wrfc-reporting.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrfc-reporting.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-reporting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,iBAAiB,EAAkB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG9H,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAOzD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuBhE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK7F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAa5E;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAiBrG;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,cAAc,CA6BhB;AAID,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,MAAM,EACjB,WAAW,GAAE,UAAU,EAAO,GAC7B,MAAM,
|
|
1
|
+
{"version":3,"file":"wrfc-reporting.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-reporting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,iBAAiB,EAAkB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG9H,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAOzD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuBhE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK7F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAa5E;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAiBrG;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,cAAc,CA6BhB;AAID,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,MAAM,EACjB,WAAW,GAAE,UAAU,EAAO,GAC7B,MAAM,CAkDR;AA0FD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,GAAE,UAAU,EAAO,EAC9B,kBAAkB,GAAE,iBAAiB,EAAO,GAC3C,MAAM,CA6DR;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,SAAS,iBAAiB,EAAE,EACzC,WAAW,GAAE,SAAS,UAAU,EAAO,GACtC,MAAM,CAuCR"}
|
|
@@ -98,22 +98,26 @@ export function parseReviewerCompletionReport(chainId, rawOutput, threshold) {
|
|
|
98
98
|
};
|
|
99
99
|
}
|
|
100
100
|
const CONSTRAINTS_TASK_LIMIT = 20;
|
|
101
|
-
export function buildReviewTask(chainId, report, threshold, constraints = []) {
|
|
101
|
+
export function buildReviewTask(chainId, originalTask, report, threshold, constraints = []) {
|
|
102
102
|
const lines = buildReviewBrief(report);
|
|
103
103
|
const base = [
|
|
104
104
|
`WRFC Review Request`,
|
|
105
105
|
`Chain ID: ${chainId}`,
|
|
106
106
|
``,
|
|
107
|
+
`Original WRFC ask (authoritative full review scope):`,
|
|
108
|
+
originalTask,
|
|
109
|
+
``,
|
|
107
110
|
`Engineer report digest:`,
|
|
108
111
|
...lines,
|
|
109
112
|
``,
|
|
110
113
|
`Instructions:`,
|
|
111
|
-
`1.
|
|
112
|
-
`2.
|
|
113
|
-
`3.
|
|
114
|
-
`4.
|
|
115
|
-
`5.
|
|
116
|
-
`6.
|
|
114
|
+
`1. Review the complete current result against the original WRFC ask above. Do not narrow the review to the latest fix, files touched in the last child turn, or functions mentioned in the digest.`,
|
|
115
|
+
`2. Read the referenced files directly before scoring. Do not rely on this digest alone.`,
|
|
116
|
+
`3. Inspect the engineer's gatheredContext, plannedActions, appliedChanges, and decisions for discipline and coherence.`,
|
|
117
|
+
`4. Verify the implementation meets all stated requirements and that prior passing behavior was not regressed by later fix loops.`,
|
|
118
|
+
`5. Score the implementation using the 10-dimension review rubric.`,
|
|
119
|
+
`6. The passing score threshold is ${threshold}/10.`,
|
|
120
|
+
`7. Return a structured ReviewerReport JSON block in your final response.`,
|
|
117
121
|
``,
|
|
118
122
|
`The ReviewerReport must include:`,
|
|
119
123
|
`- version: 1`,
|
|
@@ -216,7 +220,7 @@ function buildReviewBrief(report) {
|
|
|
216
220
|
appendListSection(lines, 'Uncertainties', engineer.uncertainties, 4);
|
|
217
221
|
return lines;
|
|
218
222
|
}
|
|
219
|
-
export function buildFixTask(chainId, review, threshold, fixAttempts, constraints = [], constraintFindings = []) {
|
|
223
|
+
export function buildFixTask(chainId, originalTask, review, threshold, fixAttempts, constraints = [], constraintFindings = []) {
|
|
220
224
|
const issueList = review.issues
|
|
221
225
|
.map((issue) => {
|
|
222
226
|
const location = issue.file ? ` (${issue.file}${issue.line ? `:${issue.line}` : ''})` : '';
|
|
@@ -227,6 +231,9 @@ export function buildFixTask(chainId, review, threshold, fixAttempts, constraint
|
|
|
227
231
|
`WRFC Fix Request`,
|
|
228
232
|
`Chain ID: ${chainId}`,
|
|
229
233
|
``,
|
|
234
|
+
`Original WRFC ask (authoritative scope for every fix loop):`,
|
|
235
|
+
originalTask,
|
|
236
|
+
``,
|
|
230
237
|
`Review score: ${review.score}/10 (threshold: ${threshold}/10)`,
|
|
231
238
|
`Fix attempt: ${fixAttempts}`,
|
|
232
239
|
``,
|
|
@@ -237,9 +244,11 @@ export function buildFixTask(chainId, review, threshold, fixAttempts, constraint
|
|
|
237
244
|
``,
|
|
238
245
|
`Instructions:`,
|
|
239
246
|
`1. Address ALL issues listed above, prioritizing critical and major items.`,
|
|
240
|
-
`2.
|
|
241
|
-
`3.
|
|
242
|
-
`4.
|
|
247
|
+
`2. Keep the original WRFC ask in scope. Do not limit the fix to only the files/functions named by the latest review if the original ask requires broader correction.`,
|
|
248
|
+
`3. Fix each issue completely — partial fixes will reduce your score.`,
|
|
249
|
+
`4. Re-run Gather, Plan, Apply explicitly before writing your final answer.`,
|
|
250
|
+
`5. Before finalizing, spot-check your complete result against the original ask and record any remaining misses under issues[] or uncertainties[].`,
|
|
251
|
+
`6. Return a structured EngineerReport JSON block including gatheredContext, plannedActions, and appliedChanges in your final response.`,
|
|
243
252
|
].join('\n');
|
|
244
253
|
if (constraints.length === 0) {
|
|
245
254
|
return base;
|
|
@@ -296,9 +305,9 @@ export function buildGateFailureTask(chainId, task, failedGates, constraints = [
|
|
|
296
305
|
constraintLines.push(`(+${overflow} more)`);
|
|
297
306
|
}
|
|
298
307
|
const constraintSection = [
|
|
299
|
-
`##
|
|
308
|
+
`## Constraints to preserve`,
|
|
300
309
|
``,
|
|
301
|
-
`These constraints
|
|
310
|
+
`These constraints remain binding while fixing gate failures. Return the same ids and text in your EngineerReport constraints[] with source "prompt". Do not add, rename, or drop constraints while repairing gates.`,
|
|
302
311
|
``,
|
|
303
312
|
...constraintLines,
|
|
304
313
|
].join('\n');
|
|
@@ -7,11 +7,42 @@ export interface QueuedChain {
|
|
|
7
7
|
}
|
|
8
8
|
/** WRFC chain lifecycle states. */
|
|
9
9
|
export type WrfcState = 'pending' | 'engineering' | 'reviewing' | 'fixing' | 'awaiting_gates' | 'gating' | 'passed' | 'failed' | 'committing';
|
|
10
|
+
/** Agent role within a WRFC chain. The owner is the durable chain orchestrator. */
|
|
11
|
+
export type WrfcAgentRole = 'owner' | 'engineer' | 'reviewer' | 'fixer' | 'verifier';
|
|
12
|
+
export type WrfcOwnerDecisionAction = 'chain_created' | 'spawn_engineer' | 'spawn_reviewer' | 'spawn_fixer' | 'spawn_gate_fixer' | 'review_passed' | 'review_failed' | 'gate_passed' | 'gate_failed' | 'chain_passed' | 'chain_failed' | 'chain_cancelled' | 'resume_skipped' | 'resume_started';
|
|
13
|
+
export interface WrfcOwnerDecision {
|
|
14
|
+
id: string;
|
|
15
|
+
ts: string;
|
|
16
|
+
action: WrfcOwnerDecisionAction;
|
|
17
|
+
state: WrfcState;
|
|
18
|
+
reason: string;
|
|
19
|
+
agentId?: string | undefined;
|
|
20
|
+
role?: Exclude<WrfcAgentRole, 'owner'> | undefined;
|
|
21
|
+
model?: string | undefined;
|
|
22
|
+
provider?: string | undefined;
|
|
23
|
+
reasoningEffort?: AgentRecord['reasoningEffort'] | undefined;
|
|
24
|
+
reviewScore?: number | undefined;
|
|
25
|
+
}
|
|
26
|
+
export interface WrfcChildRouteSelection {
|
|
27
|
+
model?: string | undefined;
|
|
28
|
+
provider?: string | undefined;
|
|
29
|
+
fallbackModels?: string[] | undefined;
|
|
30
|
+
routing?: AgentRecord['routing'] | undefined;
|
|
31
|
+
reasoningEffort?: AgentRecord['reasoningEffort'] | undefined;
|
|
32
|
+
reason?: string | undefined;
|
|
33
|
+
}
|
|
34
|
+
export type WrfcChildRouteSelector = (context: {
|
|
35
|
+
readonly chain: WrfcChain;
|
|
36
|
+
readonly role: Exclude<WrfcAgentRole, 'owner' | 'verifier'>;
|
|
37
|
+
readonly task: string;
|
|
38
|
+
readonly ownerAgent: AgentRecord | null;
|
|
39
|
+
}) => WrfcChildRouteSelection | null | undefined;
|
|
10
40
|
/** A single WRFC chain instance. */
|
|
11
41
|
export interface WrfcChain {
|
|
12
42
|
id: string;
|
|
13
43
|
state: WrfcState;
|
|
14
44
|
task: string;
|
|
45
|
+
ownerAgentId: string;
|
|
15
46
|
currentNodeId?: string | undefined;
|
|
16
47
|
engineerAgentId?: string | undefined;
|
|
17
48
|
reviewerAgentId?: string | undefined;
|
|
@@ -25,21 +56,20 @@ export interface WrfcChain {
|
|
|
25
56
|
gateResults?: QualityGateResult[] | undefined;
|
|
26
57
|
createdAt: number;
|
|
27
58
|
completedAt?: number | undefined;
|
|
28
|
-
parentChainId?: string | undefined;
|
|
29
59
|
/** Whether quality gates passed. Only meaningful when state is 'passed'. */
|
|
30
60
|
gatesPassed?: boolean | undefined;
|
|
31
|
-
/** Fingerprint of gate failures: used for same-error detection across chained chains. */
|
|
32
|
-
gateFailureFingerprint?: string | undefined;
|
|
33
|
-
/** How many gate-failure retry cycles deep this chain is. 0 = original chain. */
|
|
34
|
-
gateRetryDepth: number;
|
|
35
61
|
/** Review scores history — used to detect regression (2 consecutive below initial). */
|
|
36
62
|
reviewScores: number[];
|
|
63
|
+
/** Durable audit of owner orchestration choices. */
|
|
64
|
+
ownerDecisions: WrfcOwnerDecision[];
|
|
37
65
|
error?: string | undefined;
|
|
38
66
|
/** Buffered agent completion — set when agent finishes while chain is still queued/pending. */
|
|
39
67
|
bufferedCompletion?: {
|
|
40
68
|
agentId: string;
|
|
41
69
|
fullOutput?: string | undefined;
|
|
42
70
|
} | undefined;
|
|
71
|
+
/** True once the durable owner agent terminal event has been emitted. */
|
|
72
|
+
ownerTerminalEmitted: boolean;
|
|
43
73
|
/** Constraints propagated for this chain. Initialized to [] on construction. */
|
|
44
74
|
constraints: Constraint[];
|
|
45
75
|
/** True once constraints have been captured and WORKFLOW_CONSTRAINTS_ENUMERATED has been emitted. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrfc-types.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qCAAqC;AACrC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,mCAAmC;AACnC,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,aAAa,GACb,WAAW,GACX,QAAQ,GACR,gBAAgB,GAChB,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,YAAY,CAAC;AAEjB,oCAAoC;AACpC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,mEAAmE;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC9C,cAAc,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,
|
|
1
|
+
{"version":3,"file":"wrfc-types.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export interface WorkmapEntry {
|
|
2
2
|
ts: string;
|
|
3
3
|
wrfcId: string;
|
|
4
|
-
event: 'engineer_complete' | 'review_complete' | 'fix_started' | 'gate_result' | 'chain_passed' | 'chain_failed';
|
|
4
|
+
event: 'engineer_complete' | 'review_complete' | 'fix_started' | 'gate_result' | 'chain_passed' | 'chain_failed' | 'owner_decision';
|
|
5
5
|
agentId?: string | undefined;
|
|
6
|
+
role?: string | undefined;
|
|
6
7
|
task?: string;
|
|
7
8
|
score?: number;
|
|
8
9
|
passed?: boolean;
|
|
@@ -15,6 +16,11 @@ export interface WorkmapEntry {
|
|
|
15
16
|
gateOutput?: string;
|
|
16
17
|
attempt?: number;
|
|
17
18
|
reason?: string;
|
|
19
|
+
action?: string;
|
|
20
|
+
state?: string;
|
|
21
|
+
model?: string | undefined;
|
|
22
|
+
provider?: string | undefined;
|
|
23
|
+
reasoningEffort?: string | undefined;
|
|
18
24
|
}
|
|
19
25
|
export declare class WrfcWorkmap {
|
|
20
26
|
private filePath;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrfc-workmap.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-workmap.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"wrfc-workmap.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-workmap.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,GAAG,gBAAgB,CAAC;IACpI,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IACrF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAS;gBAEb,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAKtJ,OAAO,CAAC,UAAU,CAAS;IAE3B,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAYjC,sDAAsD;IACtD,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAoBrC,6DAA6D;IAC7D,UAAU,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAe1G,gEAAgE;IAChE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CActD"}
|
|
@@ -7,6 +7,7 @@ interface GapRepairSearch {
|
|
|
7
7
|
interface GapRepairIngest {
|
|
8
8
|
ingestUrl(input: {
|
|
9
9
|
readonly url: string;
|
|
10
|
+
readonly knowledgeSpaceId?: string | undefined;
|
|
10
11
|
readonly title?: string | undefined;
|
|
11
12
|
readonly tags?: readonly string[] | undefined;
|
|
12
13
|
readonly sourceType?: KnowledgeSourceType | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gap-repair.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/gap-repair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAElB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EACV,4BAA4B,EAG7B,MAAM,YAAY,CAAC;AAIpB,UAAU,eAAe;IACvB,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAC/D;AAED,UAAU,eAAe;IACvB,SAAS,CAAC,KAAK,EAAE;QACf,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;QAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;QACtD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KACzD,GAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACpF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C;AA0BD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,GAAG,4BAA4B,CAExG"}
|
|
1
|
+
{"version":3,"file":"gap-repair.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/gap-repair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAElB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EACV,4BAA4B,EAG7B,MAAM,YAAY,CAAC;AAIpB,UAAU,eAAe;IACvB,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAC/D;AAED,UAAU,eAAe;IACvB,SAAS,CAAC,KAAK,EAAE;QACf,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC/C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;QAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;QACtD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KACzD,GAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACpF;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C;AA0BD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,GAAG,4BAA4B,CAExG"}
|
|
@@ -91,6 +91,7 @@ async function repairKnowledgeGapsWithWeb(request, options) {
|
|
|
91
91
|
break;
|
|
92
92
|
const ingested = await withTimeout(options.ingestService.ingestUrl({
|
|
93
93
|
url: result.url,
|
|
94
|
+
knowledgeSpaceId: request.spaceId,
|
|
94
95
|
...(result.title ? { title: result.title } : {}),
|
|
95
96
|
sourceType: 'url',
|
|
96
97
|
connectorId: 'semantic-gap-repair',
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
export declare const REGULAR_KNOWLEDGE_DB_FILE = "knowledge-wiki.sqlite";
|
|
2
|
+
export declare const HOME_GRAPH_KNOWLEDGE_DB_FILE = "knowledge-home-graph.sqlite";
|
|
1
3
|
export interface KnowledgeStoreConfig {
|
|
2
4
|
readonly dbPath?: string | undefined;
|
|
5
|
+
readonly dbFileName?: string | undefined;
|
|
3
6
|
readonly configManager?: {
|
|
4
7
|
getControlPlaneConfigDir?: (() => string) | undefined;
|
|
5
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-config.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/store-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"store-config.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/store-config.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,yBAAyB,0BAA4B,CAAC;AACnE,eAAO,MAAM,4BAA4B,gCAAgC,CAAC;AAE1E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE;QACvB,wBAAwB,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,SAAS,CAAC;KACvD,CAAC;CACH;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAS3E"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import { resolveKnowledgeDbPathFromControlPlaneDir } from './store-schema.js';
|
|
1
|
+
import { DEFAULT_KNOWLEDGE_DB_FILE, resolveKnowledgeDbPathFromControlPlaneDir, } from './store-schema.js';
|
|
2
|
+
export const REGULAR_KNOWLEDGE_DB_FILE = DEFAULT_KNOWLEDGE_DB_FILE;
|
|
3
|
+
export const HOME_GRAPH_KNOWLEDGE_DB_FILE = 'knowledge-home-graph.sqlite';
|
|
2
4
|
export function resolveKnowledgeDbPath(config) {
|
|
3
5
|
const controlPlaneDir = typeof config.configManager?.getControlPlaneConfigDir === 'function'
|
|
4
6
|
? config.configManager.getControlPlaneConfigDir()
|
|
5
7
|
: undefined;
|
|
6
|
-
const dbPath = config.dbPath ?? (controlPlaneDir
|
|
8
|
+
const dbPath = config.dbPath ?? (controlPlaneDir
|
|
9
|
+
? resolveKnowledgeDbPathFromControlPlaneDir(controlPlaneDir, config.dbFileName)
|
|
10
|
+
: undefined);
|
|
7
11
|
if (!dbPath)
|
|
8
12
|
throw new Error('KnowledgeStore requires an explicit dbPath or configManager.getControlPlaneConfigDir().');
|
|
9
13
|
return dbPath;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { KnowledgeConsolidationCandidateRecord, KnowledgeConsolidationReportRecord, KnowledgeEdgeRecord, KnowledgeExtractionRecord, KnowledgeIssueRecord, KnowledgeIssueUpsertInput, KnowledgeJobRunRecord, KnowledgeNodeRecord, KnowledgeScheduleRecord, KnowledgeSourceRecord, KnowledgeRefinementTaskRecord, KnowledgeUsageRecord } from './types.js';
|
|
2
|
-
export declare
|
|
2
|
+
export declare const DEFAULT_KNOWLEDGE_DB_FILE = "knowledge-wiki.sqlite";
|
|
3
|
+
export declare function resolveKnowledgeDbPathFromControlPlaneDir(controlPlaneDir: string, dbFileName?: string): string;
|
|
3
4
|
export declare function nowMs(): number;
|
|
4
5
|
export declare function stableText(value: string | undefined): string | null;
|
|
5
6
|
export declare function issueStatusForUpsert(existing: KnowledgeIssueRecord | null | undefined, input: KnowledgeIssueUpsertInput): KnowledgeIssueRecord['status'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-schema.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/store-schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,qCAAqC,EACrC,kCAAkC,EAClC,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EAOrB,6BAA6B,EAQ7B,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,yCAAyC,
|
|
1
|
+
{"version":3,"file":"store-schema.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/store-schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,qCAAqC,EACrC,kCAAkC,EAClC,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EAOrB,6BAA6B,EAQ7B,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,yBAAyB,0BAA0B,CAAC;AAEjE,wBAAgB,yCAAyC,CACvD,eAAe,EAAE,MAAM,EACvB,UAAU,SAA4B,GACrC,MAAM,CAER;AAED,wBAAgB,KAAK,IAAI,MAAM,CAE9B;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAInE;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,EACjD,KAAK,EAAE,yBAAyB,GAC/B,oBAAoB,CAAC,QAAQ,CAAC,CAOhC;AAED,wBAAgB,IAAI,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,CAWpE;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAOhE;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CA4MjE;AAED,wBAAgB,4BAA4B,IAAI,SAAS,MAAM,EAAE,CAShE;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAIjD;AAMD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAuBxF;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAgBpF;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAcpF;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,CActF;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,yBAAyB,CAmBhG;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAgBxF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,6BAA6B,CAqCxG;AAuBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,CAatF;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,qCAAqC,CAoB3G;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,kCAAkC,CAarG;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAc5F"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { join } from 'node:path';
|
|
2
|
-
export
|
|
3
|
-
|
|
2
|
+
export const DEFAULT_KNOWLEDGE_DB_FILE = 'knowledge-wiki.sqlite';
|
|
3
|
+
export function resolveKnowledgeDbPathFromControlPlaneDir(controlPlaneDir, dbFileName = DEFAULT_KNOWLEDGE_DB_FILE) {
|
|
4
|
+
return join(controlPlaneDir, dbFileName);
|
|
4
5
|
}
|
|
5
6
|
export function nowMs() {
|
|
6
7
|
return Date.now();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/platform/runtime/services.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEtG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAGhB,sBAAsB,EAIvB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/platform/runtime/services.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ import { buildSharedSessionAgentSpawnRoutingInput } from '../control-plane/sessi
|
|
|
12
12
|
import { WatcherRegistry } from '../watchers/index.js';
|
|
13
13
|
import { ArtifactStore } from '../artifacts/index.js';
|
|
14
14
|
import { HomeGraphService, HOME_GRAPH_KNOWLEDGE_EXTENSION, KnowledgeService, KnowledgeSemanticService, KnowledgeStore, ProjectPlanningService, createProviderBackedKnowledgeSemanticLlm, createWebKnowledgeGapRepairer, projectPlanningProjectIdFromPath, } from '../knowledge/index.js';
|
|
15
|
+
import { HOME_GRAPH_KNOWLEDGE_DB_FILE, REGULAR_KNOWLEDGE_DB_FILE, } from '../knowledge/store-config.js';
|
|
15
16
|
import { MediaProviderRegistry, ensureBuiltinMediaProviders } from '../media/index.js';
|
|
16
17
|
import { MultimodalService } from '../multimodal/index.js';
|
|
17
18
|
import { AgentManager } from '../tools/agent/index.js';
|
|
@@ -245,12 +246,24 @@ export function createRuntimeServices(options) {
|
|
|
245
246
|
return record.id;
|
|
246
247
|
},
|
|
247
248
|
});
|
|
248
|
-
const knowledgeStore = new KnowledgeStore({
|
|
249
|
+
const knowledgeStore = new KnowledgeStore({
|
|
250
|
+
configManager,
|
|
251
|
+
dbFileName: REGULAR_KNOWLEDGE_DB_FILE,
|
|
252
|
+
});
|
|
253
|
+
const homeGraphKnowledgeStore = new KnowledgeStore({
|
|
254
|
+
configManager,
|
|
255
|
+
dbFileName: HOME_GRAPH_KNOWLEDGE_DB_FILE,
|
|
256
|
+
});
|
|
257
|
+
const knowledgeSemanticLlm = createProviderBackedKnowledgeSemanticLlm(providerRegistry, {
|
|
258
|
+
timeoutMs: 20_000,
|
|
259
|
+
maxConcurrent: 1,
|
|
260
|
+
});
|
|
249
261
|
const knowledgeSemanticService = new KnowledgeSemanticService(knowledgeStore, {
|
|
250
|
-
llm:
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
262
|
+
llm: knowledgeSemanticLlm,
|
|
263
|
+
maxLlmSourcesPerReindex: 3,
|
|
264
|
+
});
|
|
265
|
+
const homeGraphSemanticService = new KnowledgeSemanticService(homeGraphKnowledgeStore, {
|
|
266
|
+
llm: knowledgeSemanticLlm,
|
|
254
267
|
maxLlmSourcesPerReindex: 3,
|
|
255
268
|
objectProfiles: HOME_GRAPH_KNOWLEDGE_EXTENSION.objectProfiles,
|
|
256
269
|
});
|
|
@@ -260,8 +273,8 @@ export function createRuntimeServices(options) {
|
|
|
260
273
|
semanticService: knowledgeSemanticService,
|
|
261
274
|
});
|
|
262
275
|
knowledgeService.attachRuntimeBus(options.runtimeBus);
|
|
263
|
-
const homeGraphService = new HomeGraphService(
|
|
264
|
-
semanticService:
|
|
276
|
+
const homeGraphService = new HomeGraphService(homeGraphKnowledgeStore, artifactStore, {
|
|
277
|
+
semanticService: homeGraphSemanticService,
|
|
265
278
|
});
|
|
266
279
|
const projectPlanningService = new ProjectPlanningService(knowledgeStore, {
|
|
267
280
|
defaultProjectId: projectPlanningProjectIdFromPath(workingDirectory),
|
|
@@ -281,6 +294,10 @@ export function createRuntimeServices(options) {
|
|
|
281
294
|
searchService: webSearchService,
|
|
282
295
|
ingestService: knowledgeService,
|
|
283
296
|
}));
|
|
297
|
+
homeGraphSemanticService.setGapRepairer(createWebKnowledgeGapRepairer({
|
|
298
|
+
searchService: webSearchService,
|
|
299
|
+
ingestService: homeGraphService,
|
|
300
|
+
}));
|
|
284
301
|
const mediaProviders = new MediaProviderRegistry();
|
|
285
302
|
ensureBuiltinMediaProviders(mediaProviders, artifactStore, providerRegistry);
|
|
286
303
|
const multimodalService = new MultimodalService(artifactStore, mediaProviders, voiceService, knowledgeService);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAmB,YAAY,EAAE,MAAM,cAAc,CAAC;AAI7D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAmB,YAAY,EAAE,MAAM,cAAc,CAAC;AAI7D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAqB7D,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IAC1D,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;IAChE,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC;IACrE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;CAC3C,GAAG,IAAI,CAkkBP"}
|
|
@@ -11,9 +11,13 @@ export { AGENT_TEMPLATES, AgentManager } from './manager.js';
|
|
|
11
11
|
// ---------------------------------------------------------------------------
|
|
12
12
|
function summarizeWrfcEvent(event) {
|
|
13
13
|
return {
|
|
14
|
-
type: event.type,
|
|
15
|
-
timestamp: event.timestamp,
|
|
14
|
+
type: event.event ?? event.type,
|
|
15
|
+
timestamp: event.ts ?? event.timestamp,
|
|
16
16
|
status: event.status,
|
|
17
|
+
action: event.action,
|
|
18
|
+
reason: event.reason,
|
|
19
|
+
agentId: event.agentId,
|
|
20
|
+
role: event.role,
|
|
17
21
|
score: event.score,
|
|
18
22
|
gate: event.gate,
|
|
19
23
|
issueCount: Array.isArray(event.issues) ? event.issues.length : undefined,
|
|
@@ -5,6 +5,7 @@ import type { ConfigManager } from '../../config/manager.js';
|
|
|
5
5
|
import type { RuntimeEventBus } from '../../runtime/events/index.js';
|
|
6
6
|
import type { ExecutionIntent } from '../../runtime/execution-intents.js';
|
|
7
7
|
import type { AgentInput } from './schema.js';
|
|
8
|
+
import type { WrfcAgentRole } from '../../agents/wrfc-types.js';
|
|
8
9
|
export type AgentExecutor = {
|
|
9
10
|
runAgent(record: AgentRecord): Promise<void>;
|
|
10
11
|
};
|
|
@@ -50,6 +51,8 @@ export interface AgentRecord {
|
|
|
50
51
|
fullOutput?: string | undefined;
|
|
51
52
|
streamingContent?: string | undefined;
|
|
52
53
|
wrfcId?: string | undefined;
|
|
54
|
+
wrfcRole?: WrfcAgentRole | undefined;
|
|
55
|
+
wrfcRouteReason?: string | undefined;
|
|
53
56
|
dangerously_disable_wrfc?: boolean | undefined;
|
|
54
57
|
cohort?: string | undefined;
|
|
55
58
|
orchestrationGraphId?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAcrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC;IAC9E,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC;IACzE,QAAQ,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;CACjE;AAED,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CAqB3F,CAAC;AAoBF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC5C,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IAC9C,eAAe,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IACpE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE;QACN,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,qBAAqB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5C,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9C,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,iBAAiB,EAAE,QAAQ,GAAG,mBAAmB,CAAC;IAClD,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,iBAAiB,EAAE,aAAa,GAAG,qBAAqB,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC/E,6GAA6G;IAC7G,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,mBAAmB,CAAC,EAAE,KAAK,CAAC;QAC1B,EAAE,EAAE,MAAM,CAAC;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC;KAC9D,CAAC,CAAC;CACJ;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,UAAU,CAAgC;IAClD,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyC;IACzE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyC;IACpE,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoC;gBAEtD,IAAI,GAAE,wBAA6B;IAQ/C,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAIvD,OAAO,CAAC,oBAAoB;IAkC5B,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW;IAmQrC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAIzC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAkC3B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE;IAI3C,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;IAkB5C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAQtC,IAAI,IAAI,WAAW,EAAE;IAIrB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE;IAI3C,KAAK,IAAI,IAAI;IAKb,WAAW,IAAI,WAAW,EAAE;IAU5B,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI;IAOzC,WAAW,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAIjD,iBAAiB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,GAAG,IAAI,GAAG,IAAI;CAGpF"}
|