@devflow-tools/memory-engine 0.17.8 → 0.18.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/LICENSE +21 -0
- package/dist/consolidator.d.ts.map +1 -1
- package/dist/consolidator.js +2 -0
- package/dist/consolidator.js.map +1 -1
- package/dist/embedding-model-store.d.ts +1 -4
- package/dist/embedding-model-store.d.ts.map +1 -1
- package/dist/embedding-model-store.js +3 -75
- package/dist/embedding-model-store.js.map +1 -1
- package/dist/embedding-provider.d.ts +3 -2
- package/dist/embedding-provider.d.ts.map +1 -1
- package/dist/embedding-provider.js +151 -43
- package/dist/embedding-provider.js.map +1 -1
- package/dist/hybrid-search.d.ts +5 -1
- package/dist/hybrid-search.d.ts.map +1 -1
- package/dist/hybrid-search.js +92 -56
- package/dist/hybrid-search.js.map +1 -1
- package/dist/index.d.ts +16 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/lease-store.d.ts.map +1 -1
- package/dist/lease-store.js +30 -0
- package/dist/lease-store.js.map +1 -1
- package/dist/memory-command-service.d.ts +73 -0
- package/dist/memory-command-service.d.ts.map +1 -0
- package/dist/memory-command-service.js +283 -0
- package/dist/memory-command-service.js.map +1 -0
- package/dist/memory-engine.d.ts +19 -15
- package/dist/memory-engine.d.ts.map +1 -1
- package/dist/memory-engine.js +207 -158
- package/dist/memory-engine.js.map +1 -1
- package/dist/memory-episode-repository.d.ts +77 -0
- package/dist/memory-episode-repository.d.ts.map +1 -0
- package/dist/memory-episode-repository.js +262 -0
- package/dist/memory-episode-repository.js.map +1 -0
- package/dist/memory-fact-provider-port.d.ts +83 -0
- package/dist/memory-fact-provider-port.d.ts.map +1 -0
- package/dist/memory-fact-provider-port.js +22 -0
- package/dist/memory-fact-provider-port.js.map +1 -0
- package/dist/memory-fact-validator.d.ts +16 -0
- package/dist/memory-fact-validator.d.ts.map +1 -0
- package/dist/memory-fact-validator.js +52 -0
- package/dist/memory-fact-validator.js.map +1 -0
- package/dist/memory-gate.d.ts +14 -17
- package/dist/memory-gate.d.ts.map +1 -1
- package/dist/memory-gate.js +369 -329
- package/dist/memory-gate.js.map +1 -1
- package/dist/memory-identity-compiler.d.ts +18 -0
- package/dist/memory-identity-compiler.d.ts.map +1 -0
- package/dist/memory-identity-compiler.js +26 -0
- package/dist/memory-identity-compiler.js.map +1 -0
- package/dist/memory-index-projector.d.ts +22 -0
- package/dist/memory-index-projector.d.ts.map +1 -0
- package/dist/memory-index-projector.js +11 -0
- package/dist/memory-index-projector.js.map +1 -0
- package/dist/memory-lifecycle-reducer.d.ts +21 -0
- package/dist/memory-lifecycle-reducer.d.ts.map +1 -0
- package/dist/memory-lifecycle-reducer.js +34 -0
- package/dist/memory-lifecycle-reducer.js.map +1 -0
- package/dist/memory-maintenance.d.ts +1 -4
- package/dist/memory-maintenance.d.ts.map +1 -1
- package/dist/memory-maintenance.js +3 -20
- package/dist/memory-maintenance.js.map +1 -1
- package/dist/memory-query-service.d.ts +24 -0
- package/dist/memory-query-service.d.ts.map +1 -0
- package/dist/memory-query-service.js +180 -0
- package/dist/memory-query-service.js.map +1 -0
- package/dist/memory-relevance.d.ts +16 -1
- package/dist/memory-relevance.d.ts.map +1 -1
- package/dist/memory-relevance.js +83 -139
- package/dist/memory-relevance.js.map +1 -1
- package/dist/memory-store.d.ts +52 -36
- package/dist/memory-store.d.ts.map +1 -1
- package/dist/memory-store.js +406 -704
- package/dist/memory-store.js.map +1 -1
- package/dist/semantic-memory-compiler.d.ts +0 -2
- package/dist/semantic-memory-compiler.d.ts.map +1 -1
- package/dist/semantic-memory-compiler.js +4 -4
- package/dist/semantic-memory-compiler.js.map +1 -1
- package/dist/session-summarizer.d.ts +3 -0
- package/dist/session-summarizer.d.ts.map +1 -1
- package/dist/session-summarizer.js.map +1 -1
- package/dist/signal-analyzer.d.ts +2 -2
- package/dist/signal-analyzer.d.ts.map +1 -1
- package/dist/signal-analyzer.js +10 -16
- package/dist/signal-analyzer.js.map +1 -1
- package/package.json +14 -5
- package/dist/lease-store.test.d.ts +0 -2
- package/dist/lease-store.test.d.ts.map +0 -1
- package/dist/lease-store.test.js +0 -182
- package/dist/lease-store.test.js.map +0 -1
- package/dist/migrations/v10-to-v11.d.ts +0 -3
- package/dist/migrations/v10-to-v11.d.ts.map +0 -1
- package/dist/migrations/v10-to-v11.js +0 -21
- package/dist/migrations/v10-to-v11.js.map +0 -1
- package/dist/migrations/v11-to-v12.d.ts +0 -66
- package/dist/migrations/v11-to-v12.d.ts.map +0 -1
- package/dist/migrations/v11-to-v12.js +0 -577
- package/dist/migrations/v11-to-v12.js.map +0 -1
- package/dist/migrations/v12-to-v13.d.ts +0 -3
- package/dist/migrations/v12-to-v13.d.ts.map +0 -1
- package/dist/migrations/v12-to-v13.js +0 -50
- package/dist/migrations/v12-to-v13.js.map +0 -1
- package/dist/migrations/v2-to-v3.d.ts +0 -3
- package/dist/migrations/v2-to-v3.d.ts.map +0 -1
- package/dist/migrations/v2-to-v3.js +0 -122
- package/dist/migrations/v2-to-v3.js.map +0 -1
- package/dist/migrations/v2-to-v3.test.d.ts +0 -2
- package/dist/migrations/v2-to-v3.test.d.ts.map +0 -1
- package/dist/migrations/v2-to-v3.test.js +0 -88
- package/dist/migrations/v2-to-v3.test.js.map +0 -1
- package/dist/migrations/v3-to-v4.d.ts +0 -3
- package/dist/migrations/v3-to-v4.d.ts.map +0 -1
- package/dist/migrations/v3-to-v4.js +0 -97
- package/dist/migrations/v3-to-v4.js.map +0 -1
- package/dist/migrations/v4-to-v5.d.ts +0 -3
- package/dist/migrations/v4-to-v5.d.ts.map +0 -1
- package/dist/migrations/v4-to-v5.js +0 -34
- package/dist/migrations/v4-to-v5.js.map +0 -1
- package/dist/migrations/v4-to-v5.test.d.ts +0 -2
- package/dist/migrations/v4-to-v5.test.d.ts.map +0 -1
- package/dist/migrations/v4-to-v5.test.js +0 -32
- package/dist/migrations/v4-to-v5.test.js.map +0 -1
- package/dist/migrations/v6-to-v7.d.ts +0 -3
- package/dist/migrations/v6-to-v7.d.ts.map +0 -1
- package/dist/migrations/v6-to-v7.js +0 -18
- package/dist/migrations/v6-to-v7.js.map +0 -1
- package/dist/migrations/v6-to-v7.test.d.ts +0 -2
- package/dist/migrations/v6-to-v7.test.d.ts.map +0 -1
- package/dist/migrations/v6-to-v7.test.js +0 -33
- package/dist/migrations/v6-to-v7.test.js.map +0 -1
- package/dist/migrations/v7-to-v8.d.ts +0 -3
- package/dist/migrations/v7-to-v8.d.ts.map +0 -1
- package/dist/migrations/v7-to-v8.js +0 -20
- package/dist/migrations/v7-to-v8.js.map +0 -1
- package/dist/migrations/v8-to-v9.d.ts +0 -3
- package/dist/migrations/v8-to-v9.d.ts.map +0 -1
- package/dist/migrations/v8-to-v9.js +0 -18
- package/dist/migrations/v8-to-v9.js.map +0 -1
- package/dist/migrations/v9-to-v10.d.ts +0 -3
- package/dist/migrations/v9-to-v10.d.ts.map +0 -1
- package/dist/migrations/v9-to-v10.js +0 -45
- package/dist/migrations/v9-to-v10.js.map +0 -1
- package/dist/migrations/v9-to-v10.test.d.ts +0 -2
- package/dist/migrations/v9-to-v10.test.d.ts.map +0 -1
- package/dist/migrations/v9-to-v10.test.js +0 -40
- package/dist/migrations/v9-to-v10.test.js.map +0 -1
- package/dist/preference-conflicts.test.d.ts +0 -2
- package/dist/preference-conflicts.test.d.ts.map +0 -1
- package/dist/preference-conflicts.test.js +0 -80
- package/dist/preference-conflicts.test.js.map +0 -1
- package/dist/semantic-memory.test.d.ts +0 -2
- package/dist/semantic-memory.test.d.ts.map +0 -1
- package/dist/semantic-memory.test.js +0 -61
- package/dist/semantic-memory.test.js.map +0 -1
package/dist/memory-relevance.js
CHANGED
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
export const MEMORY_SEMANTIC_ELIGIBILITY_THRESHOLD = 0.55;
|
|
2
2
|
export const MEMORY_LEXICAL_ELIGIBILITY_THRESHOLD = 0.25;
|
|
3
3
|
export const MEMORY_SELECTION_THRESHOLD = 0.35;
|
|
4
|
+
/** Hard safety checks only. Applicability is intentionally not decided here. */
|
|
5
|
+
export function applyMemorySafetyEligibility(input) {
|
|
6
|
+
if (input.resolutionState === 'superseded')
|
|
7
|
+
return { allowed: false, rejectionReason: 'superseded' };
|
|
8
|
+
if (isOperationalObservation(input.type, input.title, input.content)) {
|
|
9
|
+
return { allowed: false, rejectionReason: 'operational_observation' };
|
|
10
|
+
}
|
|
11
|
+
const failureScoped = input.type === 'error_resolution'
|
|
12
|
+
|| /\b(?:error|failed?|failure|exception|crash|timeout|fallback)\b|报错|错误|失败|异常/iu
|
|
13
|
+
.test(`${input.title}\n${input.content}`);
|
|
14
|
+
const intent = taskIntent(input.semanticTask?.primaryIntent ?? input.purpose);
|
|
15
|
+
if (failureScoped && input.failureCategory && !isFailureCategoryApplicable(intent)) {
|
|
16
|
+
return { allowed: false, rejectionReason: 'incompatible_failure_category' };
|
|
17
|
+
}
|
|
18
|
+
const hardConstraint = isHardConstraint(input.type, input.source, input.title, input.content);
|
|
19
|
+
const explicitPreference = input.source === 'explicit_intent' && input.type === 'user_preference';
|
|
20
|
+
if (hardConstraint && !explicitPreference && input.evidenceStatus !== 'verified') {
|
|
21
|
+
return { allowed: false, rejectionReason: 'unverified_constraint' };
|
|
22
|
+
}
|
|
23
|
+
if (!isScopeApplicable(input.scope, input.semanticTask?.targetAnchors ?? [])) {
|
|
24
|
+
return { allowed: false, rejectionReason: 'inapplicable_scope' };
|
|
25
|
+
}
|
|
26
|
+
const queryPolarity = input.semanticTask?.queryPolarity ?? 'neutral';
|
|
27
|
+
if (queryPolarity !== 'neutral' && input.semanticPolarity
|
|
28
|
+
&& input.semanticPolarity !== 'neutral' && queryPolarity !== input.semanticPolarity) {
|
|
29
|
+
return { allowed: false, rejectionReason: 'incompatible_polarity' };
|
|
30
|
+
}
|
|
31
|
+
return { allowed: true };
|
|
32
|
+
}
|
|
4
33
|
const STOP_WORDS = new Set([
|
|
5
34
|
'about', 'after', 'always', 'before', 'component', 'components', 'convention', 'devflow',
|
|
6
35
|
'from', 'have', 'into', 'project', 'remember', 'should', 'that', 'this', 'use', 'using', 'with',
|
|
@@ -28,7 +57,10 @@ const KNOWN_TECHNICAL_ENTITIES = new Set(ENTITY_ALIASES.map(definition => defini
|
|
|
28
57
|
export function evaluateMemoryRelevance(input) {
|
|
29
58
|
const semantic = clamp(input.semanticScore ?? 0);
|
|
30
59
|
const lexical = clamp(input.lexicalScore ?? 0);
|
|
31
|
-
const queryEntities = normalizeMemoryEntities(
|
|
60
|
+
const queryEntities = normalizeMemoryEntities([
|
|
61
|
+
...(input.semanticTask?.entities ?? []),
|
|
62
|
+
input.query,
|
|
63
|
+
].join(' '));
|
|
32
64
|
const candidateEntities = normalizeMemoryEntities(`${input.title}\n${input.content}\n${(input.concepts ?? []).join(' ')}`);
|
|
33
65
|
const identityEntities = normalizeMemoryEntities((input.entities ?? []).join(' '));
|
|
34
66
|
const queryHasTechnicalEntity = [...queryEntities].some(entity => KNOWN_TECHNICAL_ENTITIES.has(entity));
|
|
@@ -38,15 +70,13 @@ export function evaluateMemoryRelevance(input) {
|
|
|
38
70
|
const rawEntityOverlap = overlapScore(queryEntities, overlapCandidates);
|
|
39
71
|
const exactTechnicalEntityMatch = [...queryEntities].some(entity => KNOWN_TECHNICAL_ENTITIES.has(entity) && overlapCandidates.has(entity));
|
|
40
72
|
const entityOverlap = exactTechnicalEntityMatch ? Math.max(rawEntityOverlap, 1) : rawEntityOverlap;
|
|
41
|
-
const intent =
|
|
42
|
-
const facet = input.facet ??
|
|
43
|
-
const
|
|
44
|
-
const
|
|
45
|
-
const queryPolarity = inferQueryPolarity(input.query);
|
|
46
|
-
const policyApplicable = facet !== 'generic' && facet !== 'animation'
|
|
73
|
+
const intent = taskIntent(input.semanticTask?.primaryIntent ?? input.purpose);
|
|
74
|
+
const facet = input.facet ?? 'generic';
|
|
75
|
+
const queryPolarity = input.semanticTask?.queryPolarity ?? 'neutral';
|
|
76
|
+
const policyApplicable = facet !== 'generic'
|
|
47
77
|
&& (input.requiredPolicyFacets ?? []).includes(facet);
|
|
48
78
|
const facetApplicable = entityOverlap > 0 || policyApplicable
|
|
49
|
-
|| isFacetApplicable(facet, intent, input.
|
|
79
|
+
|| isFacetApplicable(facet, intent, input.semanticTask?.primaryAction ?? input.action);
|
|
50
80
|
const evidenceStrength = getEvidenceStrength(input.source, input.evidenceStatus);
|
|
51
81
|
const taskApplicability = getTaskApplicability(input.type, facet, intent, facetApplicable);
|
|
52
82
|
const confidence = clamp(input.confidence);
|
|
@@ -70,53 +100,35 @@ export function evaluateMemoryRelevance(input) {
|
|
|
70
100
|
eligible: false,
|
|
71
101
|
score: 0,
|
|
72
102
|
rejectionReason,
|
|
103
|
+
applicabilityStatus: 'unknown',
|
|
73
104
|
applicability,
|
|
74
105
|
signals,
|
|
75
106
|
});
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
return reject('operational_observation');
|
|
80
|
-
}
|
|
81
|
-
const failureScoped = input.type === 'error_resolution'
|
|
82
|
-
|| /\b(?:error|failed?|failure|exception|crash|timeout|fallback)\b|报错|错误|失败|异常/iu
|
|
83
|
-
.test(`${input.title}\n${input.content}`);
|
|
84
|
-
if (failureScoped && input.failureCategory
|
|
85
|
-
&& !isFailureCategoryApplicable(input.failureCategory, intent, input.query)) {
|
|
86
|
-
return reject('incompatible_failure_category');
|
|
87
|
-
}
|
|
107
|
+
const safety = applyMemorySafetyEligibility(input);
|
|
108
|
+
if (!safety.allowed)
|
|
109
|
+
return reject(safety.rejectionReason);
|
|
88
110
|
const hardConstraint = isHardConstraint(input.type, input.source, input.title, input.content);
|
|
89
|
-
const
|
|
90
|
-
if (
|
|
91
|
-
return reject('unverified_constraint');
|
|
92
|
-
}
|
|
93
|
-
if (!isScopeApplicable(input.scope, input.query))
|
|
94
|
-
return reject('inapplicable_scope');
|
|
95
|
-
if (queryDomains.size > 0 && candidateDomains.size > 0
|
|
96
|
-
&& !setsOverlap(queryDomains, candidateDomains)
|
|
97
|
-
&& !policyApplicable) {
|
|
98
|
-
return reject('incompatible_domain');
|
|
99
|
-
}
|
|
100
|
-
if (queryPolarity !== 'neutral' && input.semanticPolarity
|
|
101
|
-
&& input.semanticPolarity !== 'neutral' && queryPolarity !== input.semanticPolarity) {
|
|
102
|
-
return reject('incompatible_polarity');
|
|
103
|
-
}
|
|
104
|
-
if (facet !== 'generic' && !facetApplicable)
|
|
111
|
+
const requiredFacet = facet !== 'generic' && (input.requiredPolicyFacets ?? []).includes(facet);
|
|
112
|
+
if (requiredFacet && !facetApplicable)
|
|
105
113
|
return reject('inapplicable_facet');
|
|
106
114
|
const focusedFrameworkTask = facet === 'framework'
|
|
107
115
|
&& (intent === 'performance' || intent === 'code' || intent === 'debug');
|
|
108
116
|
const specificEntityOverlap = overlapScore(withoutEntities(queryEntities, ['react']), withoutEntities(candidateEntities, ['react']));
|
|
109
|
-
if (focusedFrameworkTask
|
|
117
|
+
if (focusedFrameworkTask && requiredFacet
|
|
110
118
|
&& !policyApplicable
|
|
111
119
|
&& specificEntityOverlap === 0
|
|
112
120
|
&& Math.max(semantic, lexical) < MEMORY_SEMANTIC_ELIGIBILITY_THRESHOLD) {
|
|
113
121
|
return reject('no_applicable_signal');
|
|
114
122
|
}
|
|
123
|
+
const facetProvidesTypedApplicability = facet !== 'generic' && facet !== 'framework' && facetApplicable;
|
|
124
|
+
const hasTypedApplicability = entityOverlap > 0
|
|
125
|
+
|| policyApplicable
|
|
126
|
+
|| facetProvidesTypedApplicability
|
|
127
|
+
|| (hardConstraint && facetProvidesTypedApplicability);
|
|
128
|
+
const applicabilityStatus = hasTypedApplicability ? 'known' : 'unknown';
|
|
115
129
|
const hasEligibilitySignal = semantic >= MEMORY_SEMANTIC_ELIGIBILITY_THRESHOLD
|
|
116
130
|
|| lexical >= MEMORY_LEXICAL_ELIGIBILITY_THRESHOLD
|
|
117
|
-
||
|
|
118
|
-
|| policyApplicable
|
|
119
|
-
|| (hardConstraint && facetApplicable);
|
|
131
|
+
|| hasTypedApplicability;
|
|
120
132
|
if (!hasEligibilitySignal)
|
|
121
133
|
return reject('no_applicable_signal');
|
|
122
134
|
const retrievalEvidence = Math.max(semantic, lexical);
|
|
@@ -131,10 +143,12 @@ export function evaluateMemoryRelevance(input) {
|
|
|
131
143
|
? 0.45 + 0.15 * evidenceStrength + 0.10 * taskApplicability
|
|
132
144
|
+ 0.10 * confidence + 0.10 * importance + 0.10 * recency
|
|
133
145
|
: 0;
|
|
134
|
-
|
|
146
|
+
// Similarity alone cannot establish applicability. Unknown candidates stay
|
|
147
|
+
// visible to diagnostics/rerankers but receive a conservative score floor.
|
|
148
|
+
const score = Math.max(semanticScore, policyScore) * (applicabilityStatus === 'unknown' ? 0.4 : 1);
|
|
135
149
|
if (score < MEMORY_SELECTION_THRESHOLD)
|
|
136
150
|
return reject('below_quality_threshold');
|
|
137
|
-
return { eligible: true, score, applicability, signals };
|
|
151
|
+
return { eligible: true, score, applicability, applicabilityStatus, signals };
|
|
138
152
|
}
|
|
139
153
|
export function evaluateBootstrapMemory(input) {
|
|
140
154
|
const evidenceStrength = getEvidenceStrength(input.source, input.evidenceStatus);
|
|
@@ -152,14 +166,13 @@ export function evaluateBootstrapMemory(input) {
|
|
|
152
166
|
recency,
|
|
153
167
|
policyApplicability: 0,
|
|
154
168
|
};
|
|
155
|
-
const base = { applicability: ['session_bootstrap'], signals };
|
|
169
|
+
const base = { applicability: ['session_bootstrap'], applicabilityStatus: 'known', signals };
|
|
156
170
|
if (input.resolutionState === 'superseded') {
|
|
157
171
|
return { ...base, eligible: false, score: 0, rejectionReason: 'superseded' };
|
|
158
172
|
}
|
|
159
173
|
if (isOperationalObservation(input.type, input.title, input.content)) {
|
|
160
174
|
return { ...base, eligible: false, score: 0, rejectionReason: 'operational_observation' };
|
|
161
175
|
}
|
|
162
|
-
const legacyExplicitPreference = input.source === 'explicit_intent' && input.type === 'user_preference';
|
|
163
176
|
const durableBootstrapType = input.source === 'explicit_intent'
|
|
164
177
|
|| input.type === 'project_convention'
|
|
165
178
|
|| input.type === 'decision_made'
|
|
@@ -167,7 +180,8 @@ export function evaluateBootstrapMemory(input) {
|
|
|
167
180
|
if (!durableBootstrapType) {
|
|
168
181
|
return { ...base, eligible: false, score: 0, rejectionReason: 'no_applicable_signal' };
|
|
169
182
|
}
|
|
170
|
-
|
|
183
|
+
const explicitPreference = input.source === 'explicit_intent' && input.type === 'user_preference';
|
|
184
|
+
if (!explicitPreference && input.type === 'project_convention'
|
|
171
185
|
&& input.evidenceStatus !== 'verified') {
|
|
172
186
|
return { ...base, eligible: false, score: 0, rejectionReason: 'unverified_constraint' };
|
|
173
187
|
}
|
|
@@ -216,80 +230,24 @@ export function normalizeMemoryEntities(value) {
|
|
|
216
230
|
}
|
|
217
231
|
return entities;
|
|
218
232
|
}
|
|
219
|
-
function
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
return '
|
|
223
|
-
|
|
224
|
-
return 'animation';
|
|
225
|
-
|
|
226
|
-
return '
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
return '
|
|
233
|
-
|
|
234
|
-
return 'debug';
|
|
235
|
-
if (/component|hook|function|class|module|file|src\/|组件|函数|模块|文件/iu.test(value))
|
|
236
|
-
return 'code';
|
|
237
|
-
return 'unknown';
|
|
238
|
-
}
|
|
239
|
-
function inferDomainFamilies(value) {
|
|
240
|
-
const domains = new Set();
|
|
241
|
-
const normalized = value.normalize('NFKC');
|
|
242
|
-
const patterns = [
|
|
243
|
-
['performance', /performance|profil(?:e|ing)|render|re-render|latency|memory leak|性能|卡顿|渲染|内存泄漏/iu],
|
|
244
|
-
['database', /database|sqlite|postgres|mysql|migration|schema|数据库|迁移|数据表/iu],
|
|
245
|
-
['container', /docker|container|kubernetes|image|compose|容器|镜像/iu],
|
|
246
|
-
['dependency', /dependency|package manager|lockfile|pnpm|npm|yarn|bun|依赖|包管理/iu],
|
|
247
|
-
['testing', /vitest|jest|testing|\btests?\b|测试/iu],
|
|
248
|
-
['build', /\bbuild\b|compile|bundle|构建|编译|打包/iu],
|
|
249
|
-
['styling', /tailwind|shadcn|\bcss\b|style|layout|样式|布局/iu],
|
|
250
|
-
['animation', /motion|animation|transition|动画|动效|过渡/iu],
|
|
251
|
-
['auth', /auth|login|logout|session|登录|认证|鉴权/iu],
|
|
252
|
-
['frontend', /react|vue|component|hook|jsx|tsx|前端|组件|钩子/iu],
|
|
253
|
-
['api', /\bapi\b|graphql|rest|endpoint|接口/iu],
|
|
254
|
-
];
|
|
255
|
-
for (const [domain, pattern] of patterns)
|
|
256
|
-
if (pattern.test(normalized))
|
|
257
|
-
domains.add(domain);
|
|
258
|
-
return domains;
|
|
259
|
-
}
|
|
260
|
-
function inferQueryPolarity(value) {
|
|
261
|
-
if (/\b(?:avoid|never|do not|don't|must not|without)\b|避免|不要|禁止|不使用|不能使用/iu.test(value))
|
|
262
|
-
return 'negative';
|
|
263
|
-
if (/\b(?:use|prefer|require|must|always)\b|使用|采用|偏好|必须|统一|一律/iu.test(value))
|
|
264
|
-
return 'positive';
|
|
265
|
-
return 'neutral';
|
|
266
|
-
}
|
|
267
|
-
function setsOverlap(left, right) {
|
|
268
|
-
for (const item of left)
|
|
269
|
-
if (right.has(item))
|
|
270
|
-
return true;
|
|
271
|
-
return false;
|
|
272
|
-
}
|
|
273
|
-
function inferMemoryFacet(entities, text) {
|
|
274
|
-
if (hasAny(entities, ['pnpm', 'npm', 'yarn', 'bun'])
|
|
275
|
-
|| /package manager|package-lock|lockfile|legacy-peer-deps|install(?:ing)? dependencies|包管理|安装.{0,8}依赖|依赖.{0,8}(?:安装|更新)/iu.test(text)) {
|
|
276
|
-
return 'package_manager';
|
|
233
|
+
function taskIntent(value) {
|
|
234
|
+
switch (value) {
|
|
235
|
+
case 'performance': return 'performance';
|
|
236
|
+
case 'debug': return 'debug';
|
|
237
|
+
case 'style': return 'style';
|
|
238
|
+
case 'animation': return 'animation';
|
|
239
|
+
case 'dependency': return 'dependency';
|
|
240
|
+
case 'test': return 'test';
|
|
241
|
+
case 'build': return 'build';
|
|
242
|
+
case 'code':
|
|
243
|
+
case 'feature':
|
|
244
|
+
case 'refactor':
|
|
245
|
+
case 'review':
|
|
246
|
+
case 'understand': return 'code';
|
|
247
|
+
default: return 'unknown';
|
|
277
248
|
}
|
|
278
|
-
if (entities.has('prettier') || /code formatter|formatting|格式化/iu.test(text))
|
|
279
|
-
return 'formatting';
|
|
280
|
-
if (hasAny(entities, ['tailwind', 'shadcn']) || /\bcss\b|styling|样式/iu.test(text))
|
|
281
|
-
return 'styling';
|
|
282
|
-
if (entities.has('motion') || /animation|动画|动效/iu.test(text))
|
|
283
|
-
return 'animation';
|
|
284
|
-
if (entities.has('react') || /framework|框架/iu.test(text))
|
|
285
|
-
return 'framework';
|
|
286
|
-
if (hasAny(entities, ['vitest', 'jest']) || /\btests?\b|测试/iu.test(text))
|
|
287
|
-
return 'testing';
|
|
288
|
-
if (/\bbuild\b|compile|bundle|构建|编译|打包/iu.test(text))
|
|
289
|
-
return 'build';
|
|
290
|
-
return 'generic';
|
|
291
249
|
}
|
|
292
|
-
function isFacetApplicable(facet, intent,
|
|
250
|
+
function isFacetApplicable(facet, intent, action) {
|
|
293
251
|
if (facet === 'generic')
|
|
294
252
|
return true;
|
|
295
253
|
if (facet === 'package_manager')
|
|
@@ -305,7 +263,7 @@ function isFacetApplicable(facet, intent, query, action) {
|
|
|
305
263
|
if (facet === 'animation')
|
|
306
264
|
return intent === 'animation';
|
|
307
265
|
if (facet === 'testing')
|
|
308
|
-
return intent === 'test'
|
|
266
|
+
return intent === 'test';
|
|
309
267
|
if (facet === 'build')
|
|
310
268
|
return intent === 'build' || intent === 'dependency';
|
|
311
269
|
if (facet === 'generated_files')
|
|
@@ -313,8 +271,7 @@ function isFacetApplicable(facet, intent, query, action) {
|
|
|
313
271
|
if (facet === 'architecture' || facet === 'api')
|
|
314
272
|
return intent === 'code' || intent === 'debug';
|
|
315
273
|
if (facet === 'framework') {
|
|
316
|
-
return intent === 'performance' || intent === 'code' || intent === 'debug'
|
|
317
|
-
|| /react|jsx|tsx|framework|框架/iu.test(query);
|
|
274
|
+
return intent === 'performance' || intent === 'code' || intent === 'debug';
|
|
318
275
|
}
|
|
319
276
|
return false;
|
|
320
277
|
}
|
|
@@ -356,18 +313,16 @@ function isOperationalObservation(type, title, content) {
|
|
|
356
313
|
&& /mcp|hook|tool call|调用工具|会话事件|协议流程/iu.test(value)
|
|
357
314
|
&& !/architecture|架构|project convention|项目约定/iu.test(value);
|
|
358
315
|
}
|
|
359
|
-
function isFailureCategoryApplicable(
|
|
360
|
-
|
|
361
|
-
return false;
|
|
362
|
-
const normalized = category.replace(/[_-]+/g, ' ').toLocaleLowerCase('en-US');
|
|
363
|
-
return query.toLocaleLowerCase('en-US').includes(normalized)
|
|
364
|
-
|| normalizeMemoryEntities(query).has(normalized.replace(/\s+/g, '-'));
|
|
316
|
+
function isFailureCategoryApplicable(intent) {
|
|
317
|
+
return intent === 'debug';
|
|
365
318
|
}
|
|
366
|
-
function isScopeApplicable(scope,
|
|
319
|
+
function isScopeApplicable(scope, targetAnchors) {
|
|
367
320
|
const normalizedScope = normalizeRelativeCodePath(scope);
|
|
368
321
|
if (!normalizedScope)
|
|
369
322
|
return true;
|
|
370
|
-
const queryPaths =
|
|
323
|
+
const queryPaths = targetAnchors
|
|
324
|
+
.map(anchor => normalizeRelativeCodePath(anchor))
|
|
325
|
+
.filter((anchor) => anchor !== null);
|
|
371
326
|
if (queryPaths.length === 0)
|
|
372
327
|
return true;
|
|
373
328
|
return queryPaths.some(path => pathsOverlap(normalizedScope, path));
|
|
@@ -383,14 +338,6 @@ function normalizeRelativeCodePath(value) {
|
|
|
383
338
|
return null;
|
|
384
339
|
return segments.join('/');
|
|
385
340
|
}
|
|
386
|
-
function extractRelativeCodePaths(query) {
|
|
387
|
-
const candidates = query.replace(/\\/g, '/').match(/(?:^|[\s`'"(])((?:\.?[a-z0-9_@.-]+\/)+[a-z0-9_@.-]+)(?=$|[\s`'"),:;])/giu) ?? [];
|
|
388
|
-
const paths = candidates
|
|
389
|
-
.map(candidate => candidate.trim().replace(/^[`'"(]+|[`'"),:;]+$/gu, ''))
|
|
390
|
-
.map(candidate => normalizeRelativeCodePath(candidate))
|
|
391
|
-
.filter((candidate) => candidate !== null);
|
|
392
|
-
return [...new Set(paths)];
|
|
393
|
-
}
|
|
394
341
|
function pathsOverlap(left, right) {
|
|
395
342
|
return left === right || left.startsWith(`${right}/`) || right.startsWith(`${left}/`);
|
|
396
343
|
}
|
|
@@ -414,9 +361,6 @@ function containsAlias(normalized, alias) {
|
|
|
414
361
|
.join('[\\s/.-]+');
|
|
415
362
|
return new RegExp(`(^|[^\\p{L}\\p{N}])${escaped}(?=$|[^\\p{L}\\p{N}])`, 'u').test(normalized);
|
|
416
363
|
}
|
|
417
|
-
function hasAny(values, candidates) {
|
|
418
|
-
return candidates.some(candidate => values.has(candidate));
|
|
419
|
-
}
|
|
420
364
|
function withoutEntities(values, excluded) {
|
|
421
365
|
const filtered = new Set(values);
|
|
422
366
|
for (const value of excluded)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-relevance.js","sourceRoot":"","sources":["../src/memory-relevance.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory-relevance.js","sourceRoot":"","sources":["../src/memory-relevance.ts"],"names":[],"mappings":"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"}
|
package/dist/memory-store.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type EmbeddingProfileV1, type MemoryCapsule, type MemoryProjectScope, type MemoryProjection } from '@devflow-tools/sdk';
|
|
2
2
|
import type { MemoryRelationType } from './memory-relations.js';
|
|
3
|
-
import type { ExplicitMemoryEvidence } from './explicit-memory-enricher.js';
|
|
4
3
|
import type { LeaseStore } from './lease-store.js';
|
|
5
4
|
import { type ObservationSource, type ObservationType } from './observation-types.js';
|
|
6
5
|
import { type NormalizedSemanticMemory, type SemanticMemoryPolarity } from './semantic-memory.js';
|
|
7
6
|
export interface MemoryRow {
|
|
8
7
|
id: string;
|
|
8
|
+
project_id: string;
|
|
9
|
+
memory_namespace: string;
|
|
10
|
+
actor_id: string;
|
|
9
11
|
type: string;
|
|
10
12
|
title: string;
|
|
11
13
|
content: string;
|
|
@@ -18,7 +20,7 @@ export interface MemoryRow {
|
|
|
18
20
|
confidence: number;
|
|
19
21
|
tags: string;
|
|
20
22
|
scope: string;
|
|
21
|
-
session_id: string
|
|
23
|
+
session_id: string;
|
|
22
24
|
original_text: string | null;
|
|
23
25
|
source: string;
|
|
24
26
|
created_at: number;
|
|
@@ -34,6 +36,9 @@ export interface MemoryRow {
|
|
|
34
36
|
}
|
|
35
37
|
export interface ObservationRow {
|
|
36
38
|
id: string;
|
|
39
|
+
project_id: string;
|
|
40
|
+
memory_namespace: string;
|
|
41
|
+
actor_id: string;
|
|
37
42
|
session_id: string;
|
|
38
43
|
project: string;
|
|
39
44
|
type: string;
|
|
@@ -141,7 +146,7 @@ export interface DecidedTurnEventReconciliation {
|
|
|
141
146
|
export interface RetrievalAccessInput {
|
|
142
147
|
sourceType: 'memory' | 'observation';
|
|
143
148
|
sourceId: string;
|
|
144
|
-
accessType
|
|
149
|
+
accessType: 'selected' | 'consumed' | 'verified' | 'rejected' | 'positive_outcome' | 'negative_outcome' | 'unknown_outcome';
|
|
145
150
|
project?: string;
|
|
146
151
|
sessionId?: string;
|
|
147
152
|
requestId?: string;
|
|
@@ -206,24 +211,23 @@ export interface SignalRow {
|
|
|
206
211
|
payload: string;
|
|
207
212
|
timestamp: number;
|
|
208
213
|
}
|
|
209
|
-
export declare function isRecoverableObservationFtsError(error: unknown): boolean;
|
|
210
214
|
export declare class MemoryStore {
|
|
215
|
+
private readonly embeddingProfile;
|
|
216
|
+
private readonly projectIdentity;
|
|
211
217
|
private db;
|
|
212
218
|
private dbPath;
|
|
213
219
|
private defaultProjectRoot;
|
|
214
220
|
private leaseStore;
|
|
215
221
|
private retrievalRevision;
|
|
216
|
-
constructor(rootPath: string);
|
|
222
|
+
constructor(rootPath: string, embeddingProfile: EmbeddingProfileV1 | undefined, projectIdentity: MemoryProjectScope);
|
|
217
223
|
setLeaseStore(store: LeaseStore): void;
|
|
218
224
|
private countTables;
|
|
219
|
-
private
|
|
220
|
-
private ensureObservationFts;
|
|
221
|
-
private migrateV1ToV2;
|
|
225
|
+
private assertCanonicalSchemaOrEmpty;
|
|
222
226
|
private getTableColumns;
|
|
223
227
|
add(entry: {
|
|
224
228
|
id?: string;
|
|
229
|
+
actorId: string;
|
|
225
230
|
type?: string;
|
|
226
|
-
category?: string;
|
|
227
231
|
content: string;
|
|
228
232
|
title?: string;
|
|
229
233
|
originalText?: string;
|
|
@@ -232,10 +236,16 @@ export declare class MemoryStore {
|
|
|
232
236
|
confidence?: number;
|
|
233
237
|
strength?: number;
|
|
234
238
|
scope?: string;
|
|
235
|
-
sessionId
|
|
239
|
+
sessionId: string;
|
|
236
240
|
}): MemoryRow;
|
|
237
241
|
get(id: string): MemoryRow | null;
|
|
238
|
-
|
|
242
|
+
updateScoped(scope: {
|
|
243
|
+
id: string;
|
|
244
|
+
projectId: string;
|
|
245
|
+
memoryNamespace: string;
|
|
246
|
+
actorId: string;
|
|
247
|
+
sessionId: string;
|
|
248
|
+
}, updates: {
|
|
239
249
|
title?: string;
|
|
240
250
|
content?: string;
|
|
241
251
|
context?: string;
|
|
@@ -243,17 +253,21 @@ export declare class MemoryStore {
|
|
|
243
253
|
strength?: number;
|
|
244
254
|
confidence?: number;
|
|
245
255
|
tags?: string;
|
|
246
|
-
scope?: string;
|
|
247
256
|
version?: number;
|
|
248
257
|
supersedes?: string;
|
|
249
258
|
superseded_by?: string;
|
|
250
259
|
reinforce_count?: number;
|
|
251
260
|
last_reinforced_at?: number;
|
|
252
261
|
}): void;
|
|
253
|
-
|
|
262
|
+
deleteScoped(scope: {
|
|
263
|
+
id: string;
|
|
264
|
+
projectId: string;
|
|
265
|
+
memoryNamespace: string;
|
|
266
|
+
actorId: string;
|
|
267
|
+
sessionId: string;
|
|
268
|
+
}): void;
|
|
254
269
|
list(filter?: {
|
|
255
270
|
type?: string;
|
|
256
|
-
category?: string;
|
|
257
271
|
status?: string;
|
|
258
272
|
scope?: string;
|
|
259
273
|
source?: string;
|
|
@@ -261,7 +275,6 @@ export declare class MemoryStore {
|
|
|
261
275
|
getPending(): MemoryRow[];
|
|
262
276
|
listByType(type: string, limit?: number): MemoryRow[];
|
|
263
277
|
listByTypes(types: string[], limit?: number): MemoryRow[];
|
|
264
|
-
listByCategory(category: string, limit?: number): MemoryRow[];
|
|
265
278
|
countByStatus(status: string): number;
|
|
266
279
|
insertEmbedding(id: string, embedding: Float32Array): void;
|
|
267
280
|
insertObservationEmbedding(obsId: string, embedding: Float32Array): void;
|
|
@@ -291,12 +304,22 @@ export declare class MemoryStore {
|
|
|
291
304
|
id: string;
|
|
292
305
|
rank: number;
|
|
293
306
|
}>;
|
|
294
|
-
private searchObservationFtsWithRecovery;
|
|
295
307
|
private searchObservationFts;
|
|
296
308
|
searchVector(embedding: Float32Array, limit?: number): Array<{
|
|
297
309
|
id: string;
|
|
298
310
|
distance: number;
|
|
299
311
|
}>;
|
|
312
|
+
getEmbeddingProfileState(sourceType: 'memory' | 'observation'): {
|
|
313
|
+
status: 'ready' | 'backfill_pending' | 'dimension_mismatch';
|
|
314
|
+
profileHash: string;
|
|
315
|
+
generation: number;
|
|
316
|
+
indexed: number;
|
|
317
|
+
total: number;
|
|
318
|
+
};
|
|
319
|
+
private putEmbeddingProfile;
|
|
320
|
+
private memoryEmbeddingSourceHash;
|
|
321
|
+
private observationEmbeddingSourceHash;
|
|
322
|
+
private assertEmbeddingProfile;
|
|
300
323
|
addEdge(sourceId: string, targetId: string, type: string, weight?: number): void;
|
|
301
324
|
getNeighbors(id: string): Array<{
|
|
302
325
|
targetId: string;
|
|
@@ -366,7 +389,6 @@ export declare class MemoryStore {
|
|
|
366
389
|
requeueProcessedEventsWithoutAcceptedEvidence(): number;
|
|
367
390
|
eventWindowExists(tool: string, command: string | undefined, windowMs?: number): boolean;
|
|
368
391
|
ensureSession(id: string, projectRoot?: string, task?: string): SessionRow;
|
|
369
|
-
repairOrphanSessions(projectRoot?: string): number;
|
|
370
392
|
createSession(id: string, projectRoot: string, task?: string): void;
|
|
371
393
|
closeSession(id: string): void;
|
|
372
394
|
getSession(id: string): SessionRow | null;
|
|
@@ -380,6 +402,7 @@ export declare class MemoryStore {
|
|
|
380
402
|
id?: string;
|
|
381
403
|
sessionId: string;
|
|
382
404
|
project?: string;
|
|
405
|
+
actorId: string;
|
|
383
406
|
type: ObservationType;
|
|
384
407
|
title: string;
|
|
385
408
|
narrative?: string;
|
|
@@ -396,6 +419,8 @@ export declare class MemoryStore {
|
|
|
396
419
|
quarantineReason?: string;
|
|
397
420
|
qualityDetails?: Record<string, unknown>;
|
|
398
421
|
failureCategory?: string;
|
|
422
|
+
/** Explicit instance identity for proposal-compiled facts; never provider-authored. */
|
|
423
|
+
dedupKey?: string;
|
|
399
424
|
resolutionState?: 'current' | 'resolved' | 'superseded';
|
|
400
425
|
evidenceStatus?: 'verified' | 'unverified';
|
|
401
426
|
evidenceDetails?: Array<Record<string, unknown>>;
|
|
@@ -407,10 +432,6 @@ export declare class MemoryStore {
|
|
|
407
432
|
semantic: NormalizedSemanticMemory;
|
|
408
433
|
preferIncomingNarrative?: boolean;
|
|
409
434
|
}): SemanticObservationWriteResult;
|
|
410
|
-
findCurrentObservationBySemanticKey(project: string, semanticKey: string): ObservationRow | null;
|
|
411
|
-
private findCurrentObservationByNarrative;
|
|
412
|
-
private findCurrentObservationByDurableNarrative;
|
|
413
|
-
findCurrentObservationsByFacetKey(project: string, facetKey: string): ObservationRow[];
|
|
414
435
|
searchObservationEntities(project: string, entities: string[], limit?: number): ObservationRow[];
|
|
415
436
|
searchDefaultProjectObservationEntities(entities: string[], limit?: number): ObservationRow[];
|
|
416
437
|
getObservationEntityDegree(project: string, entity: string): number;
|
|
@@ -420,21 +441,9 @@ export declare class MemoryStore {
|
|
|
420
441
|
private findCurrentObservationIdsByEntities;
|
|
421
442
|
private addObservationRelation;
|
|
422
443
|
addSemanticObservationRelation(sourceObservationId: string, targetObservationId: string, type: MemoryRelationType, createdAt?: number): void;
|
|
423
|
-
private supersedeSemanticFacetConflicts;
|
|
424
444
|
addObservationWithEmbedding(obs: Parameters<MemoryStore['addObservation']>[0], embedding: Float32Array): ObservationRow;
|
|
425
|
-
|
|
426
|
-
sessionId: string;
|
|
427
|
-
project: string;
|
|
428
|
-
title: string;
|
|
429
|
-
content: string;
|
|
430
|
-
sourceEventId?: string;
|
|
431
|
-
enrichment?: ExplicitMemoryEvidence;
|
|
432
|
-
}): ObservationRow;
|
|
433
|
-
applyExplicitMemoryEnrichment(observationId: string, enrichment: ExplicitMemoryEvidence): ObservationRow;
|
|
434
|
-
reconcileExplicitPreferenceConflicts(project?: string): number;
|
|
445
|
+
markObservationExplicitlyAccepted(observationId: string, acceptedAt?: number): void;
|
|
435
446
|
listCurrentExplicitPreferences(project?: string): ObservationRow[];
|
|
436
|
-
private explicitPreferenceAcceptanceTime;
|
|
437
|
-
private supersedeConflictingExplicitPreferences;
|
|
438
447
|
getObservation(id: string): ObservationRow | null;
|
|
439
448
|
linkObservationToEvents(observationId: string, eventIds: string[]): void;
|
|
440
449
|
findObservationByDedupKey(dedupKey: string): ObservationRow | null;
|
|
@@ -461,6 +470,14 @@ export declare class MemoryStore {
|
|
|
461
470
|
};
|
|
462
471
|
quarantineObservation(id: string, reason: string, details?: Record<string, unknown>, now?: number): boolean;
|
|
463
472
|
setObservationResolution(id: string, state: 'current' | 'resolved' | 'superseded', supersededBy?: string): void;
|
|
473
|
+
reinforceObservation(id: string, input?: {
|
|
474
|
+
sourceEventIds?: string[];
|
|
475
|
+
source?: ObservationSource;
|
|
476
|
+
importance?: number;
|
|
477
|
+
confidence?: number;
|
|
478
|
+
evidenceStatus?: ObservationRow['evidence_status'];
|
|
479
|
+
evidenceDetails?: Array<Record<string, unknown>>;
|
|
480
|
+
}, now?: number): ObservationRow;
|
|
464
481
|
getObservationsByConcept(concept: string, limit?: number): ObservationRow[];
|
|
465
482
|
countObservationsByConcept(concept: string): number;
|
|
466
483
|
getConceptsForObservation(obsId: string): string[];
|
|
@@ -506,7 +523,6 @@ export declare class MemoryStore {
|
|
|
506
523
|
positive: number;
|
|
507
524
|
negative: number;
|
|
508
525
|
};
|
|
509
|
-
recordAccess(memoryId: string, accessType: string, sessionId?: string): void;
|
|
510
526
|
incrementAccess(id: string): void;
|
|
511
527
|
listRetrievalAccessLog(limit?: number): RetrievalAccessRow[];
|
|
512
528
|
listRetrievalAccessForAttribution(sessionId: string, executionId?: string): RetrievalAccessRow[];
|