@roarpeng/graphflow 1.8.0 → 1.9.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/CHANGELOG.md +25 -0
- package/README.md +14 -4
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +3 -0
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/embedding-factory.d.ts +22 -0
- package/dist/config/embedding-factory.d.ts.map +1 -1
- package/dist/config/embedding-factory.js +81 -57
- package/dist/config/embedding-factory.js.map +1 -1
- package/dist/config/graphify-endpoint.d.ts +9 -0
- package/dist/config/graphify-endpoint.d.ts.map +1 -0
- package/dist/config/graphify-endpoint.js +24 -0
- package/dist/config/graphify-endpoint.js.map +1 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +20 -4
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +16 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/core/orchestrator-episode.d.ts +7 -0
- package/dist/core/orchestrator-episode.d.ts.map +1 -1
- package/dist/core/orchestrator-episode.js +18 -0
- package/dist/core/orchestrator-episode.js.map +1 -1
- package/dist/core/orchestrator.d.ts.map +1 -1
- package/dist/core/orchestrator.js +3 -0
- package/dist/core/orchestrator.js.map +1 -1
- package/dist/graph/client-factory.d.ts.map +1 -1
- package/dist/graph/client-factory.js +17 -1
- package/dist/graph/client-factory.js.map +1 -1
- package/dist/graph/graphify-mcp-client.d.ts +46 -4
- package/dist/graph/graphify-mcp-client.d.ts.map +1 -1
- package/dist/graph/graphify-mcp-client.js +99 -22
- package/dist/graph/graphify-mcp-client.js.map +1 -1
- package/dist/graph/language-indexers/plcopen-xml.d.ts.map +1 -1
- package/dist/graph/language-indexers/plcopen-xml.js +18 -1
- package/dist/graph/language-indexers/plcopen-xml.js.map +1 -1
- package/dist/graph/language-indexers/st-analyzer.d.ts.map +1 -1
- package/dist/graph/language-indexers/st-analyzer.js +4 -2
- package/dist/graph/language-indexers/st-analyzer.js.map +1 -1
- package/dist/learning/embedding-quality.d.ts.map +1 -1
- package/dist/learning/embedding-quality.js +2 -0
- package/dist/learning/embedding-quality.js.map +1 -1
- package/dist/learning/seed-skills.d.ts.map +1 -1
- package/dist/learning/seed-skills.js +8 -0
- package/dist/learning/seed-skills.js.map +1 -1
- package/dist/learning/skill-flywheel.d.ts +46 -3
- package/dist/learning/skill-flywheel.d.ts.map +1 -1
- package/dist/learning/skill-flywheel.js +225 -8
- package/dist/learning/skill-flywheel.js.map +1 -1
- package/dist/learning/skill-package.d.ts +49 -8
- package/dist/learning/skill-package.d.ts.map +1 -1
- package/dist/learning/skill-package.js +127 -20
- package/dist/learning/skill-package.js.map +1 -1
- package/dist/learning/skill-store.d.ts.map +1 -1
- package/dist/learning/skill-store.js +12 -0
- package/dist/learning/skill-store.js.map +1 -1
- package/dist/learning/skill-types.d.ts +29 -0
- package/dist/learning/skill-types.d.ts.map +1 -1
- package/dist/learning/skill-types.js.map +1 -1
- package/dist/surfaces/cli/index.js +11 -4
- package/dist/surfaces/cli/index.js.map +1 -1
- package/dist/surfaces/cli/output.js +1 -1
- package/dist/surfaces/cli/output.js.map +1 -1
- package/dist/surfaces/cli/runtime/facade.d.ts +2 -1
- package/dist/surfaces/cli/runtime/facade.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/facade.js +1 -0
- package/dist/surfaces/cli/runtime/facade.js.map +1 -1
- package/dist/surfaces/cli/runtime/graph.d.ts +29 -4
- package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/graph.js +56 -8
- package/dist/surfaces/cli/runtime/graph.js.map +1 -1
- package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/routing.js +27 -1
- package/dist/surfaces/cli/runtime/routing.js.map +1 -1
- package/dist/surfaces/cli/runtime/types.d.ts +2 -0
- package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -27,6 +27,8 @@ function resetEmbeddingQualityStats() {
|
|
|
27
27
|
delete state.lastError;
|
|
28
28
|
delete state.lastCallAt;
|
|
29
29
|
delete state.lastSample;
|
|
30
|
+
delete state.backend;
|
|
31
|
+
delete state.fallbackReason;
|
|
30
32
|
}
|
|
31
33
|
function configureEmbeddingQualityMeta(meta) {
|
|
32
34
|
if (meta.provider !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding-quality.js","sourceRoot":"","sources":["../../src/learning/embedding-quality.ts"],"names":[],"mappings":";;AA+CA,
|
|
1
|
+
{"version":3,"file":"embedding-quality.js","sourceRoot":"","sources":["../../src/learning/embedding-quality.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seed-skills.d.ts","sourceRoot":"","sources":["../../src/learning/seed-skills.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAqD3D,MAAM,WAAW,UAAU;IACzB,mBAAmB;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"seed-skills.d.ts","sourceRoot":"","sources":["../../src/learning/seed-skills.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAqD3D,MAAM,WAAW,UAAU;IACzB,mBAAmB;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAsEhF;AAED,0BAA0B;AAC1B,eAAO,MAAM,uBAAuB,UAAqB,CAAC;AAE1D,2BAA2B;AAC3B,eAAO,MAAM,0BAA0B,oBAAwB,CAAC"}
|
|
@@ -70,6 +70,10 @@ async function seedInitialSkills(client) {
|
|
|
70
70
|
// 种子技能默认记为 pass,仅作为初始状态,不影响后续真实学习
|
|
71
71
|
lastOutcome: "pass",
|
|
72
72
|
updatedAt: now,
|
|
73
|
+
// P0-2: curated baseline — load-time noise cleanup must never prune seeds.
|
|
74
|
+
seeded: true,
|
|
75
|
+
hasSymbolEvidence: true,
|
|
76
|
+
outcomeKind: "proven",
|
|
73
77
|
};
|
|
74
78
|
nodes.push({ id, type: "Skill", content: (0, skill_store_1.serializeAtomic)(state) });
|
|
75
79
|
createdAtomic.push(name);
|
|
@@ -97,6 +101,10 @@ async function seedInitialSkills(client) {
|
|
|
97
101
|
uses: SEED_INITIAL_USES,
|
|
98
102
|
lastOutcome: "pass",
|
|
99
103
|
updatedAt: now,
|
|
104
|
+
// P0-2: curated baseline — load-time noise cleanup must never prune seeds.
|
|
105
|
+
seeded: true,
|
|
106
|
+
hasSymbolEvidence: true,
|
|
107
|
+
outcomeKind: "proven",
|
|
100
108
|
};
|
|
101
109
|
nodes.push({ id, type: "Skill", content: (0, skill_store_1.serializeComposite)(state) });
|
|
102
110
|
createdComposite.push(state.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seed-skills.js","sourceRoot":"","sources":["../../src/learning/seed-skills.ts"],"names":[],"mappings":";;;AAqEA,
|
|
1
|
+
{"version":3,"file":"seed-skills.js","sourceRoot":"","sources":["../../src/learning/seed-skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,39 @@
|
|
|
1
1
|
import type { TaskRunResult } from "../core/types";
|
|
2
2
|
import type { GraphClient } from "../graph/client-factory";
|
|
3
|
-
import type { SkillState } from "./skill-types";
|
|
3
|
+
import type { SkillState, SkillOutcomeKind } from "./skill-types";
|
|
4
4
|
export type { SkillState, CompositeSkillState } from "./skill-types";
|
|
5
5
|
export { composeSkillId, loadCompositeSkill } from "./skill-store";
|
|
6
|
+
/** True when the text references at least one project-specific symbol. */
|
|
7
|
+
export declare function hasProjectSymbolEvidence(text: string): boolean;
|
|
8
|
+
/** Extract project-symbol-shaped tokens from the text (for diagnostics/tests). */
|
|
9
|
+
export declare function extractProjectSymbols(text: string): string[];
|
|
6
10
|
/** True when every non-empty token in the phrase is a stopword (e.g. "update readme"). */
|
|
7
11
|
export declare function isAllStopwordPhrase(phrase: string): boolean;
|
|
8
|
-
export declare function extractSkillAtoms(task: string): string[];
|
|
12
|
+
export declare function extractSkillAtoms(task: string, evidence?: string[]): string[];
|
|
13
|
+
export interface SkillLearningOptions {
|
|
14
|
+
/** Extra episode-record material (plan descriptions, key decisions) that
|
|
15
|
+
* carries project-symbol evidence for the extraction gate. */
|
|
16
|
+
evidence?: string[];
|
|
17
|
+
/** True when the outcome was reported back through the episode outcome loop
|
|
18
|
+
* (bridge reportOutcome) — counts as a "linked successful outcome". */
|
|
19
|
+
linked?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* P0-2 outcome taxonomy classification:
|
|
23
|
+
* - noise: no symbol evidence — never persisted; pruned on load.
|
|
24
|
+
* - anti-pattern: >= 2 consecutive failures with symbol evidence — the ONLY
|
|
25
|
+
* class that accrues negative score.
|
|
26
|
+
* - proven: >= 2 uses or a linked successful outcome — the ONLY class
|
|
27
|
+
* that accrues positive score. Curated seed skills count as
|
|
28
|
+
* proven by design (baseline, never sinkable to negative).
|
|
29
|
+
* - correctable: symbol evidence present, not yet proven. Score stays put.
|
|
30
|
+
*/
|
|
31
|
+
export declare function classifySkillOutcome(options: {
|
|
32
|
+
uses: number;
|
|
33
|
+
failStreak: number;
|
|
34
|
+
linkedSuccess: boolean;
|
|
35
|
+
seeded?: boolean;
|
|
36
|
+
}): SkillOutcomeKind;
|
|
9
37
|
export interface PruneFailedSkillsOptions {
|
|
10
38
|
/** Soft-hide when score is at or below this (default -5). */
|
|
11
39
|
scoreThreshold?: number;
|
|
@@ -23,7 +51,22 @@ export interface PruneFailedSkillsResult {
|
|
|
23
51
|
* insights and hint ranking. Prefer hide over delete (Decision history stays).
|
|
24
52
|
*/
|
|
25
53
|
export declare function pruneFailedSkills(client: GraphClient, options?: PruneFailedSkillsOptions): Promise<PruneFailedSkillsResult>;
|
|
26
|
-
export
|
|
54
|
+
export interface CleanupNoiseSkillsResult {
|
|
55
|
+
/** Nodes deleted (or soft-hidden when deleteNode is unavailable). */
|
|
56
|
+
pruned: number;
|
|
57
|
+
ids: string[];
|
|
58
|
+
/** Legacy nodes whose names carry symbol evidence, re-tagged as correctable. */
|
|
59
|
+
reclassified: number;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* P0-2 load-time cleanup: reclassify / prune existing pure-noise skill nodes.
|
|
63
|
+
* Nodes learned by older versions have no symbol evidence (shallow n-grams
|
|
64
|
+
* like "update" at score=-2). Curated seed nodes (seeded: true) and nodes
|
|
65
|
+
* whose names carry symbol evidence are kept; everything else is pruned.
|
|
66
|
+
* Runs at graph load (orchestration start / outcome report) — idempotent.
|
|
67
|
+
*/
|
|
68
|
+
export declare function cleanupNoiseSkills(client: GraphClient): Promise<CleanupNoiseSkillsResult>;
|
|
69
|
+
export declare function applySkillLearning(client: GraphClient, task: string, run: TaskRunResult, lessons?: string[], options?: SkillLearningOptions): Promise<number>;
|
|
27
70
|
export declare function suggestSkillHints(client: GraphClient, task: string, maxHints: number): Promise<string[]>;
|
|
28
71
|
export interface SkillDecayResult {
|
|
29
72
|
total: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-flywheel.d.ts","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,OAAO,KAAK,EACV,UAAU,
|
|
1
|
+
{"version":3,"file":"skill-flywheel.d.ts","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadCompositeSkill = exports.composeSkillId = void 0;
|
|
4
|
+
exports.hasProjectSymbolEvidence = hasProjectSymbolEvidence;
|
|
5
|
+
exports.extractProjectSymbols = extractProjectSymbols;
|
|
4
6
|
exports.isAllStopwordPhrase = isAllStopwordPhrase;
|
|
5
7
|
exports.extractSkillAtoms = extractSkillAtoms;
|
|
8
|
+
exports.classifySkillOutcome = classifySkillOutcome;
|
|
6
9
|
exports.pruneFailedSkills = pruneFailedSkills;
|
|
10
|
+
exports.cleanupNoiseSkills = cleanupNoiseSkills;
|
|
7
11
|
exports.applySkillLearning = applySkillLearning;
|
|
8
12
|
exports.suggestSkillHints = suggestSkillHints;
|
|
9
13
|
exports.maybeDecaySkills = maybeDecaySkills;
|
|
@@ -22,6 +26,43 @@ const STOPWORDS = new Set([
|
|
|
22
26
|
"or", "not", "but", "this", "that", "it", "as", "if", "do", "done",
|
|
23
27
|
]);
|
|
24
28
|
const PATH_EXT_RE = /\.(ts|tsx|js|jsx|mjs|cjs|json|md|txt|py|go|rs|css|html)\b/i;
|
|
29
|
+
/**
|
|
30
|
+
* P0-2 extraction quality gate: a skill candidate must reference project-specific
|
|
31
|
+
* symbols (file/function/class paths from the episode record, e.g. "goal-anchor.ts").
|
|
32
|
+
* These shapes are unambiguous project-symbol evidence:
|
|
33
|
+
* - file references: goal-anchor.ts, src/a/b.js, readme.md, compose_skill.go
|
|
34
|
+
* - slash paths: src/learning/skill-flywheel.ts
|
|
35
|
+
* - camelCase: skillNodeId, GraphifyClient
|
|
36
|
+
* - snake_case: compose_skill_id
|
|
37
|
+
* Generic bare tokens without symbol evidence (update, readme, create, fix) never
|
|
38
|
+
* qualify, so shallow n-gram noise can no longer become a skill node.
|
|
39
|
+
*/
|
|
40
|
+
const PROJECT_SYMBOL_PATTERNS = [
|
|
41
|
+
{ test: /[a-z0-9_./-]+\.[a-z0-9]{2,8}\b/i, match: /[a-z0-9_./-]+\.[a-z0-9]{2,8}\b/gi },
|
|
42
|
+
{ test: /\b[a-z0-9_-]+\/[a-z0-9_./-]+\b/i, match: /\b[a-z0-9_-]+\/[a-z0-9_./-]+\b/gi },
|
|
43
|
+
{ test: /[a-z]+[A-Z][a-zA-Z0-9]*/, match: /[a-z]+[A-Z][a-zA-Z0-9]*/g },
|
|
44
|
+
{ test: /\b[a-z0-9]+(?:_[a-z0-9]+)+\b/i, match: /\b[a-z0-9]+(?:_[a-z0-9]+)+\b/gi },
|
|
45
|
+
];
|
|
46
|
+
/** True when the text references at least one project-specific symbol. */
|
|
47
|
+
function hasProjectSymbolEvidence(text) {
|
|
48
|
+
if (!text)
|
|
49
|
+
return false;
|
|
50
|
+
return PROJECT_SYMBOL_PATTERNS.some(({ test }) => test.test(text));
|
|
51
|
+
}
|
|
52
|
+
/** Extract project-symbol-shaped tokens from the text (for diagnostics/tests). */
|
|
53
|
+
function extractProjectSymbols(text) {
|
|
54
|
+
const out = new Set();
|
|
55
|
+
if (!text)
|
|
56
|
+
return [];
|
|
57
|
+
for (const { match } of PROJECT_SYMBOL_PATTERNS) {
|
|
58
|
+
for (const m of text.matchAll(match)) {
|
|
59
|
+
const token = m[0].trim();
|
|
60
|
+
if (token.length > 0)
|
|
61
|
+
out.add(token);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return Array.from(out);
|
|
65
|
+
}
|
|
25
66
|
function isPathLikeToken(token) {
|
|
26
67
|
if (token.includes("/")) {
|
|
27
68
|
return true;
|
|
@@ -62,8 +103,15 @@ function isAllStopwordPhrase(phrase) {
|
|
|
62
103
|
}
|
|
63
104
|
return tokens.every((token) => STOPWORDS.has(token));
|
|
64
105
|
}
|
|
65
|
-
function extractSkillAtoms(task) {
|
|
66
|
-
const
|
|
106
|
+
function extractSkillAtoms(task, evidence) {
|
|
107
|
+
const corpus = [task, ...(evidence ?? [])].filter(Boolean).join(" ");
|
|
108
|
+
// P0-2 quality gate: reject corpora that reference no project-specific symbols
|
|
109
|
+
// (file/function/class paths). Generic bare-token text ("update readme",
|
|
110
|
+
// "create fix") is extraction noise and must not become skill candidates.
|
|
111
|
+
if (!hasProjectSymbolEvidence(corpus)) {
|
|
112
|
+
return [];
|
|
113
|
+
}
|
|
114
|
+
const normalized = corpus.trim().toLowerCase();
|
|
67
115
|
const phrases = normalized
|
|
68
116
|
.split(/\band\b|,|;/i)
|
|
69
117
|
.map((part) => part.trim())
|
|
@@ -83,7 +131,7 @@ function extractSkillAtoms(task) {
|
|
|
83
131
|
tokenSkills.push(...extractTokens(part));
|
|
84
132
|
}
|
|
85
133
|
const segmenter = new Intl.Segmenter("zh", { granularity: "word" });
|
|
86
|
-
const zhWords = Array.from(segmenter.segment(
|
|
134
|
+
const zhWords = Array.from(segmenter.segment(corpus))
|
|
87
135
|
.filter((seg) => seg.isWordLike &&
|
|
88
136
|
seg.segment.length >= 2 &&
|
|
89
137
|
/[\u4e00-\u9fa5]/.test(seg.segment))
|
|
@@ -94,6 +142,28 @@ function extractSkillAtoms(task) {
|
|
|
94
142
|
.filter((skill) => !isAllStopwordPhrase(skill))
|
|
95
143
|
.slice(0, 8);
|
|
96
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* P0-2 outcome taxonomy classification:
|
|
147
|
+
* - noise: no symbol evidence — never persisted; pruned on load.
|
|
148
|
+
* - anti-pattern: >= 2 consecutive failures with symbol evidence — the ONLY
|
|
149
|
+
* class that accrues negative score.
|
|
150
|
+
* - proven: >= 2 uses or a linked successful outcome — the ONLY class
|
|
151
|
+
* that accrues positive score. Curated seed skills count as
|
|
152
|
+
* proven by design (baseline, never sinkable to negative).
|
|
153
|
+
* - correctable: symbol evidence present, not yet proven. Score stays put.
|
|
154
|
+
*/
|
|
155
|
+
function classifySkillOutcome(options) {
|
|
156
|
+
if (options.seeded === true) {
|
|
157
|
+
return "proven";
|
|
158
|
+
}
|
|
159
|
+
if (options.failStreak >= 2) {
|
|
160
|
+
return "anti-pattern";
|
|
161
|
+
}
|
|
162
|
+
if (options.uses >= 2 || options.linkedSuccess) {
|
|
163
|
+
return "proven";
|
|
164
|
+
}
|
|
165
|
+
return "correctable";
|
|
166
|
+
}
|
|
97
167
|
function isToxicAtomicSkill(state, scoreThreshold, minUses) {
|
|
98
168
|
if (state.hidden) {
|
|
99
169
|
return false;
|
|
@@ -142,15 +212,126 @@ async function pruneFailedSkills(client, options) {
|
|
|
142
212
|
}
|
|
143
213
|
return { pruned: ids.length, ids };
|
|
144
214
|
}
|
|
145
|
-
|
|
215
|
+
/**
|
|
216
|
+
* A legacy skill name carries project-symbol evidence when it contains a
|
|
217
|
+
* file reference, slash path, camelCase or snake_case token. Bare generic
|
|
218
|
+
* tokens ("update", "readme", "create", "fix") never qualify.
|
|
219
|
+
*/
|
|
220
|
+
function isSymbolicSkillName(name) {
|
|
221
|
+
return hasProjectSymbolEvidence(name.replace(/\+/g, " "));
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* P0-2 load-time cleanup: reclassify / prune existing pure-noise skill nodes.
|
|
225
|
+
* Nodes learned by older versions have no symbol evidence (shallow n-grams
|
|
226
|
+
* like "update" at score=-2). Curated seed nodes (seeded: true) and nodes
|
|
227
|
+
* whose names carry symbol evidence are kept; everything else is pruned.
|
|
228
|
+
* Runs at graph load (orchestration start / outcome report) — idempotent.
|
|
229
|
+
*/
|
|
230
|
+
async function cleanupNoiseSkills(client) {
|
|
231
|
+
const skillNodes = await listSkillNodes(client);
|
|
232
|
+
const ids = [];
|
|
233
|
+
const updates = [];
|
|
234
|
+
let reclassified = 0;
|
|
235
|
+
for (const node of skillNodes) {
|
|
236
|
+
const atomic = (0, skill_store_1.parseSkillState)(node.content);
|
|
237
|
+
if (atomic) {
|
|
238
|
+
// Explicit extraction-time evidence (new versions) or curated seed.
|
|
239
|
+
if (atomic.hasSymbolEvidence === true || atomic.seeded === true) {
|
|
240
|
+
continue;
|
|
241
|
+
}
|
|
242
|
+
if (isSymbolicSkillName(atomic.name)) {
|
|
243
|
+
// Legacy node whose name carries symbol evidence: keep, but tag it
|
|
244
|
+
// explicitly so future loads skip re-inspection.
|
|
245
|
+
if (atomic.outcomeKind !== "correctable") {
|
|
246
|
+
updates.push({
|
|
247
|
+
id: atomic.id,
|
|
248
|
+
type: "Skill",
|
|
249
|
+
content: (0, skill_store_1.serializeAtomic)({
|
|
250
|
+
...atomic,
|
|
251
|
+
hasSymbolEvidence: true,
|
|
252
|
+
outcomeKind: "correctable",
|
|
253
|
+
updatedAt: Date.now(),
|
|
254
|
+
}),
|
|
255
|
+
});
|
|
256
|
+
reclassified += 1;
|
|
257
|
+
}
|
|
258
|
+
continue;
|
|
259
|
+
}
|
|
260
|
+
ids.push(atomic.id);
|
|
261
|
+
if (client.deleteNode) {
|
|
262
|
+
await client.deleteNode(atomic.id);
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
updates.push({
|
|
266
|
+
id: atomic.id,
|
|
267
|
+
type: "Skill",
|
|
268
|
+
content: (0, skill_store_1.serializeAtomic)({
|
|
269
|
+
...atomic,
|
|
270
|
+
hidden: true,
|
|
271
|
+
outcomeKind: "noise",
|
|
272
|
+
updatedAt: Date.now(),
|
|
273
|
+
}),
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
continue;
|
|
277
|
+
}
|
|
278
|
+
const composite = (0, skill_store_1.parseCompositeState)(node.content);
|
|
279
|
+
if (composite) {
|
|
280
|
+
if (composite.hasSymbolEvidence === true || composite.seeded === true) {
|
|
281
|
+
continue;
|
|
282
|
+
}
|
|
283
|
+
if (isSymbolicSkillName(composite.name)) {
|
|
284
|
+
if (composite.outcomeKind !== "correctable") {
|
|
285
|
+
updates.push({
|
|
286
|
+
id: composite.id,
|
|
287
|
+
type: "Skill",
|
|
288
|
+
content: (0, skill_store_1.serializeComposite)({
|
|
289
|
+
...composite,
|
|
290
|
+
hasSymbolEvidence: true,
|
|
291
|
+
outcomeKind: "correctable",
|
|
292
|
+
updatedAt: Date.now(),
|
|
293
|
+
}),
|
|
294
|
+
});
|
|
295
|
+
reclassified += 1;
|
|
296
|
+
}
|
|
297
|
+
continue;
|
|
298
|
+
}
|
|
299
|
+
ids.push(composite.id);
|
|
300
|
+
if (client.deleteNode) {
|
|
301
|
+
await client.deleteNode(composite.id);
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
// CompositeSkillState has no `hidden` flag; tag as noise so the next
|
|
305
|
+
// load (or a deleteNode-capable client) finishes the job.
|
|
306
|
+
updates.push({
|
|
307
|
+
id: composite.id,
|
|
308
|
+
type: "Skill",
|
|
309
|
+
content: (0, skill_store_1.serializeComposite)({
|
|
310
|
+
...composite,
|
|
311
|
+
outcomeKind: "noise",
|
|
312
|
+
updatedAt: Date.now(),
|
|
313
|
+
}),
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
if (updates.length > 0) {
|
|
319
|
+
await client.upsertNodes(updates);
|
|
320
|
+
}
|
|
321
|
+
return { pruned: ids.length, ids, reclassified };
|
|
322
|
+
}
|
|
323
|
+
async function applySkillLearning(client, task, run, lessons, options) {
|
|
146
324
|
const lessonText = (lessons ?? [])
|
|
147
325
|
.map((lesson) => lesson.trim())
|
|
148
326
|
.filter((lesson) => lesson.length > 0);
|
|
149
327
|
// Prefer task atoms; fold reported lessons so bridge report_outcome can seed skills
|
|
150
328
|
// even when the original task string is too short/generic to extract atoms.
|
|
329
|
+
// P0-2: evidence (plan descriptions / key decisions from the episode record)
|
|
330
|
+
// provides project-symbol references for the extraction quality gate.
|
|
151
331
|
const learningCorpus = [task, ...lessonText].filter(Boolean).join(" and ");
|
|
152
|
-
const skills = extractSkillAtoms(learningCorpus);
|
|
332
|
+
const skills = extractSkillAtoms(learningCorpus, options?.evidence);
|
|
153
333
|
const passed = run.status === "COMPLETED";
|
|
334
|
+
const linked = options?.linked === true;
|
|
154
335
|
if (skills.length === 0) {
|
|
155
336
|
if (!passed) {
|
|
156
337
|
await pruneFailedSkills(client);
|
|
@@ -176,13 +357,36 @@ async function applySkillLearning(client, task, run, lessons) {
|
|
|
176
357
|
if (previous?.hidden && !passed) {
|
|
177
358
|
continue;
|
|
178
359
|
}
|
|
360
|
+
const uses = (previous?.uses ?? 0) + 1;
|
|
361
|
+
const failStreak = passed ? 0 : (previous?.failStreak ?? 0) + 1;
|
|
362
|
+
const linkedSuccess = (passed && linked) || previous?.linkedSuccess === true;
|
|
363
|
+
const outcomeKind = classifySkillOutcome({
|
|
364
|
+
uses,
|
|
365
|
+
failStreak,
|
|
366
|
+
linkedSuccess,
|
|
367
|
+
...(previous?.seeded === true ? { seeded: true } : {}),
|
|
368
|
+
});
|
|
369
|
+
// Evidence gate: positive score accrues only for proven skills (>= 2 uses
|
|
370
|
+
// or a linked successful outcome); negative scoring applies ONLY to
|
|
371
|
+
// anti-pattern outcomes (>= 2 consecutive failures).
|
|
372
|
+
let score = previous?.score ?? 0;
|
|
373
|
+
if (passed && outcomeKind === "proven") {
|
|
374
|
+
score += 1;
|
|
375
|
+
}
|
|
376
|
+
else if (!passed && outcomeKind === "anti-pattern") {
|
|
377
|
+
score -= 1;
|
|
378
|
+
}
|
|
179
379
|
const next = {
|
|
180
380
|
id,
|
|
181
381
|
name: skill,
|
|
182
|
-
score: (0, skill_store_1.boundedScore)(
|
|
183
|
-
uses
|
|
382
|
+
score: (0, skill_store_1.boundedScore)(score),
|
|
383
|
+
uses,
|
|
184
384
|
lastOutcome: passed ? "pass" : "fail",
|
|
185
385
|
updatedAt: now,
|
|
386
|
+
hasSymbolEvidence: true,
|
|
387
|
+
linkedSuccess,
|
|
388
|
+
failStreak,
|
|
389
|
+
outcomeKind,
|
|
186
390
|
// Pass clears soft-hide; fail preserves it if already set.
|
|
187
391
|
...(passed ? {} : previous?.hidden ? { hidden: true } : {}),
|
|
188
392
|
};
|
|
@@ -223,8 +427,21 @@ async function applySkillLearning(client, task, run, lessons) {
|
|
|
223
427
|
uses: previous?.uses ?? 0,
|
|
224
428
|
lastOutcome: passed ? "pass" : "fail",
|
|
225
429
|
updatedAt: now,
|
|
430
|
+
hasSymbolEvidence: true,
|
|
431
|
+
...(previous?.seeded === true ? { seeded: true } : {}),
|
|
226
432
|
};
|
|
227
|
-
|
|
433
|
+
// P0-2 taxonomy: negative composite scores apply only to anti-pattern
|
|
434
|
+
// pairs (>= 2 failures and more failures than successes); correctable /
|
|
435
|
+
// proven pairs are clamped to non-negative.
|
|
436
|
+
const compositeAntiPattern = composite.failureCount >= 2 && composite.failureCount > composite.successCount;
|
|
437
|
+
composite.score = (0, skill_store_1.boundedScore)(compositeAntiPattern
|
|
438
|
+
? composite.successCount - composite.failureCount
|
|
439
|
+
: Math.max(0, composite.successCount - composite.failureCount));
|
|
440
|
+
composite.outcomeKind = compositeAntiPattern
|
|
441
|
+
? "anti-pattern"
|
|
442
|
+
: (0, skill_store_1.compositeGateMet)(composite)
|
|
443
|
+
? "proven"
|
|
444
|
+
: "correctable";
|
|
228
445
|
nodes.push({ id: compositeId, type: "Skill", content: (0, skill_store_1.serializeComposite)(composite) });
|
|
229
446
|
if ((0, skill_store_1.compositeGateMet)(composite)) {
|
|
230
447
|
edges.push({ from: (0, skill_store_1.skillNodeId)(n1), to: compositeId, relation: "prerequisite" });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-flywheel.js","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skill-flywheel.js","sourceRoot":"","sources":["../../src/learning/skill-flywheel.ts"],"names":[],"mappings":"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"}
|