@devflow-tools/memory-engine 0.16.26 → 0.16.28

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.
Files changed (59) hide show
  1. package/dist/explicit-memory-enricher.d.ts +3 -1
  2. package/dist/explicit-memory-enricher.d.ts.map +1 -1
  3. package/dist/explicit-memory-enricher.js +15 -0
  4. package/dist/explicit-memory-enricher.js.map +1 -1
  5. package/dist/hybrid-search.d.ts +8 -0
  6. package/dist/hybrid-search.d.ts.map +1 -1
  7. package/dist/hybrid-search.js +86 -15
  8. package/dist/hybrid-search.js.map +1 -1
  9. package/dist/index.d.ts +6 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +3 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/memory-engine.d.ts +1 -0
  14. package/dist/memory-engine.d.ts.map +1 -1
  15. package/dist/memory-engine.js +67 -21
  16. package/dist/memory-engine.js.map +1 -1
  17. package/dist/memory-gate.d.ts +21 -0
  18. package/dist/memory-gate.d.ts.map +1 -1
  19. package/dist/memory-gate.js +65 -0
  20. package/dist/memory-gate.js.map +1 -1
  21. package/dist/memory-maintenance.d.ts +4 -1
  22. package/dist/memory-maintenance.d.ts.map +1 -1
  23. package/dist/memory-maintenance.js +15 -0
  24. package/dist/memory-maintenance.js.map +1 -1
  25. package/dist/memory-relevance.d.ts +5 -0
  26. package/dist/memory-relevance.d.ts.map +1 -1
  27. package/dist/memory-relevance.js +42 -5
  28. package/dist/memory-relevance.js.map +1 -1
  29. package/dist/memory-store.d.ts +49 -0
  30. package/dist/memory-store.d.ts.map +1 -1
  31. package/dist/memory-store.js +163 -0
  32. package/dist/memory-store.js.map +1 -1
  33. package/dist/migrations/v11-to-v12.d.ts +52 -0
  34. package/dist/migrations/v11-to-v12.d.ts.map +1 -0
  35. package/dist/migrations/v11-to-v12.js +377 -0
  36. package/dist/migrations/v11-to-v12.js.map +1 -0
  37. package/dist/policy-retriever.d.ts +9 -0
  38. package/dist/policy-retriever.d.ts.map +1 -0
  39. package/dist/policy-retriever.js +62 -0
  40. package/dist/policy-retriever.js.map +1 -0
  41. package/dist/preference-conflicts.d.ts.map +1 -1
  42. package/dist/preference-conflicts.js +11 -1
  43. package/dist/preference-conflicts.js.map +1 -1
  44. package/dist/preference-conflicts.test.js +8 -0
  45. package/dist/preference-conflicts.test.js.map +1 -1
  46. package/dist/retrieval-scoring-profile.d.ts +9 -0
  47. package/dist/retrieval-scoring-profile.d.ts.map +1 -0
  48. package/dist/retrieval-scoring-profile.js +17 -0
  49. package/dist/retrieval-scoring-profile.js.map +1 -0
  50. package/dist/rule-extractor.d.ts.map +1 -1
  51. package/dist/rule-extractor.js +54 -5
  52. package/dist/rule-extractor.js.map +1 -1
  53. package/dist/semantic-memory.d.ts +4 -2
  54. package/dist/semantic-memory.d.ts.map +1 -1
  55. package/dist/semantic-memory.js +43 -7
  56. package/dist/semantic-memory.js.map +1 -1
  57. package/dist/semantic-memory.test.js +22 -0
  58. package/dist/semantic-memory.test.js.map +1 -1
  59. package/package.json +4 -4
@@ -0,0 +1,17 @@
1
+ export const MEMORY_RETRIEVAL_SCORING_PROFILE = Object.freeze({
2
+ version: 'memory-r6a.v1',
3
+ rrfK: 60,
4
+ overfetchMultiplier: 4,
5
+ minimumChannelCandidates: 20,
6
+ channelWeights: Object.freeze({
7
+ policy: 0.30,
8
+ observationBm25: 0.20,
9
+ bm25: 0.15,
10
+ entity: 0.15,
11
+ observation: 0.25,
12
+ vector: 0.20,
13
+ graph: 0.08,
14
+ retention: 0.07,
15
+ }),
16
+ });
17
+ //# sourceMappingURL=retrieval-scoring-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval-scoring-profile.js","sourceRoot":"","sources":["../src/retrieval-scoring-profile.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,gCAAgC,GAA4B,MAAM,CAAC,MAAM,CAAC;IACrF,OAAO,EAAE,eAAe;IACxB,IAAI,EAAE,EAAE;IACR,mBAAmB,EAAE,CAAC;IACtB,wBAAwB,EAAE,EAAE;IAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;QAC5B,MAAM,EAAE,IAAI;QACZ,eAAe,EAAE,IAAI;QACrB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;KAChB,CAAC;CACH,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rule-extractor.d.ts","sourceRoot":"","sources":["../src/rule-extractor.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,GAAG,UAAU,GAAG,gBAAgB,GAAG,UAAU,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AA6GD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAMrE"}
1
+ {"version":3,"file":"rule-extractor.d.ts","sourceRoot":"","sources":["../src/rule-extractor.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,GAAG,UAAU,GAAG,gBAAgB,GAAG,UAAU,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAgKD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAMrE"}
@@ -47,15 +47,19 @@ function extractCorrections(events) {
47
47
  const results = [];
48
48
  for (let index = 0; index < events.length; index++) {
49
49
  const current = events[index];
50
- if (!current?.command || current.exitCode === 0)
50
+ if (!current?.command || !isShellEvent(current) || !isExplicitFailure(current.exitCode))
51
+ continue;
52
+ const currentOperation = normalizeCommandOperation(current.command);
53
+ if (!currentOperation)
51
54
  continue;
52
55
  for (let laterIndex = index + 1; laterIndex < Math.min(index + 6, events.length); laterIndex++) {
53
56
  const later = events[laterIndex];
54
- if (!later?.command || (later.exitCode != null && later.exitCode !== 0))
57
+ if (!later?.command || !isShellEvent(later) || !isExplicitSuccess(later.exitCode))
58
+ continue;
59
+ const laterOperation = normalizeCommandOperation(later.command);
60
+ if (!laterOperation || later.command === current.command)
55
61
  continue;
56
- const currentBase = current.command.split(' ')[0];
57
- const laterBase = later.command.split(' ')[0];
58
- if (currentBase === laterBase && later.command !== current.command) {
62
+ if (currentOperation === laterOperation) {
59
63
  const content = `When \`${current.command.slice(0, 60)}\` fails, use \`${later.command.slice(0, 60)}\` instead`;
60
64
  if (!results.some(result => result.content === content)) {
61
65
  results.push({ category: 'procedural', content, confidence: 0.9 });
@@ -66,6 +70,51 @@ function extractCorrections(events) {
66
70
  }
67
71
  return results;
68
72
  }
73
+ function isShellEvent(event) {
74
+ return event.tool === 'Bash' || event.tool === 'bash_command';
75
+ }
76
+ function isExplicitFailure(exitCode) {
77
+ return typeof exitCode === 'number' && Number.isInteger(exitCode) && exitCode !== 0;
78
+ }
79
+ function isExplicitSuccess(exitCode) {
80
+ return exitCode === 0;
81
+ }
82
+ function normalizeCommandOperation(command) {
83
+ const tokens = tokenizeCommand(command);
84
+ while (tokens[0] && /^[A-Za-z_][A-Za-z0-9_]*=.*/u.test(tokens[0]))
85
+ tokens.shift();
86
+ while (tokens[0] && ['command', 'env', 'sudo'].includes(tokens[0]))
87
+ tokens.shift();
88
+ if (tokens.length === 0)
89
+ return null;
90
+ const executable = tokens[0].split('/').pop().toLocaleLowerCase('en-US');
91
+ const operation = (tokens[1] ?? '').toLocaleLowerCase('en-US');
92
+ if (['npm', 'pnpm', 'yarn', 'bun'].includes(executable)) {
93
+ const target = packageManagerTarget(operation, tokens.slice(2));
94
+ return [executable, operation, target].filter(Boolean).join(':');
95
+ }
96
+ const target = tokens.slice(1).find(token => token !== '--' && !token.startsWith('-')) ?? '';
97
+ return [executable, target].filter(Boolean).join(':');
98
+ }
99
+ function packageManagerTarget(operation, args) {
100
+ if (['run', 'run-script', 'exec', 'dlx'].includes(operation)) {
101
+ return args.find(token => token !== '--' && !token.startsWith('-'))?.toLocaleLowerCase('en-US') ?? '';
102
+ }
103
+ if (['install', 'add', 'remove', 'uninstall', 'update', 'upgrade'].includes(operation)) {
104
+ return args.find(token => token !== '--' && !token.startsWith('-'))?.toLocaleLowerCase('en-US') ?? '';
105
+ }
106
+ return '';
107
+ }
108
+ function tokenizeCommand(command) {
109
+ const tokens = [];
110
+ const matcher = /"((?:\\.|[^"\\])*)"|'([^']*)'|([^\s]+)/gu;
111
+ for (const match of command.matchAll(matcher)) {
112
+ const token = match[1] ?? match[2] ?? match[3];
113
+ if (token)
114
+ tokens.push(token);
115
+ }
116
+ return tokens;
117
+ }
69
118
  function extractProjectKnowledge(events) {
70
119
  const results = [];
71
120
  for (const event of events) {
@@ -1 +1 @@
1
- {"version":3,"file":"rule-extractor.js","sourceRoot":"","sources":["../src/rule-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rule-extractor.js","sourceRoot":"","sources":["../src/rule-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { PolicyFacet, SemanticMemoryPredicate } from '@devflow-tools/sdk';
1
2
  import type { ObservationType } from './observation-types.js';
2
3
  export type SemanticMemoryPolarity = 'positive' | 'negative' | 'neutral';
3
4
  export interface SemanticMemoryTemporal {
@@ -8,7 +9,7 @@ export interface SemanticMemoryTemporal {
8
9
  }
9
10
  export interface SemanticMemoryFields {
10
11
  subject?: string;
11
- predicate?: string;
12
+ predicate?: SemanticMemoryPredicate | string;
12
13
  value?: string;
13
14
  polarity?: SemanticMemoryPolarity;
14
15
  entities?: string[];
@@ -16,10 +17,11 @@ export interface SemanticMemoryFields {
16
17
  }
17
18
  export interface NormalizedSemanticMemory {
18
19
  subject: string;
19
- predicate: string;
20
+ predicate: SemanticMemoryPredicate;
20
21
  value: string;
21
22
  polarity: SemanticMemoryPolarity;
22
23
  entities: string[];
24
+ facet: PolicyFacet | 'generic';
23
25
  temporal: SemanticMemoryTemporal | null;
24
26
  semanticKey: string;
25
27
  facetKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-memory.d.ts","sourceRoot":"","sources":["../src/semantic-memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,YAAY,CAAC;CACjD;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,sBAAsB,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAuBD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,wBAAwB,CA0BrG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB/D;AAED,wBAAgB,qBAAqB,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,CAuBrE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD"}
1
+ {"version":3,"file":"semantic-memory.d.ts","sourceRoot":"","sources":["../src/semantic-memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,YAAY,CAAC;CACjD;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,MAAM,CAAC;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,uBAAuB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,sBAAsB,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AA2BD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,wBAAwB,CA4BrG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CA0B/D;AAED,wBAAgB,qBAAqB,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,CAuBrE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD"}
@@ -5,6 +5,10 @@ const MAX_ENTITY_LENGTH = 120;
5
5
  const PACKAGE_MANAGERS = new Set(['npm', 'pnpm', 'yarn', 'bun']);
6
6
  const TEST_RUNNERS = new Set(['vitest', 'jest', 'mocha']);
7
7
  const BUILD_TOOLS = new Set(['vite', 'webpack', 'rspack', 'rsbuild', 'esbuild', 'rollup']);
8
+ const FORMATTERS = new Set(['prettier', 'biome', 'dprint']);
9
+ const STYLING_TOOLS = new Set(['tailwind', 'tailwindcss', 'css', 'sass', 'less', 'styled-components']);
10
+ const COMPONENT_LIBRARIES = new Set(['shadcn', 'shadcn/ui', 'antd', 'mui', '@mui/material', 'chakra-ui']);
11
+ const FRAMEWORKS = new Set(['react', 'vue', 'angular', 'next', 'next.js', 'svelte', 'taro']);
8
12
  const GENERIC_IDENTIFIERS = new Set([
9
13
  'always', 'never', 'project', 'repository', 'codebase', 'dependency', 'dependencies',
10
14
  'install', 'update', 'using', 'default', 'config', 'configuration', 'memory', 'remember',
@@ -25,6 +29,7 @@ export function normalizeSemanticMemory(input) {
25
29
  const subject = normalizeField(input.subject) || inferred.subject || primaryEntity(entities) || normalizeField(input.title);
26
30
  const predicate = normalizePredicate(input.predicate) || inferred.predicate || 'state';
27
31
  const value = normalizeField(input.value) || inferred.value || primaryEntity(entities) || subject;
32
+ const facet = inferred.facet;
28
33
  const polarity = input.polarity === 'positive' || input.polarity === 'negative' || input.polarity === 'neutral'
29
34
  ? input.polarity
30
35
  : inferred.polarity;
@@ -39,6 +44,7 @@ export function normalizeSemanticMemory(input) {
39
44
  value,
40
45
  polarity,
41
46
  entities,
47
+ facet,
42
48
  temporal,
43
49
  semanticKey: hashKey('semantic', semanticMaterial),
44
50
  facetKey: hashKey('facet', facetMaterial),
@@ -56,7 +62,8 @@ export function extractTechnicalEntities(text) {
56
62
  { expression: /\b[A-Za-z_$][A-Za-z0-9$]*(?:_[A-Za-z0-9$]+)+\b/gu, priority: 1 },
57
63
  { expression: /\b(?:react|vue|angular|node(?:\.js)?|typescript)\s*v?\d+(?:\.\d+){0,2}\b/giu, priority: 1 },
58
64
  { expression: /(?:^|[\s`'"(])((?:src|app|apps|packages|plugins|lib|test|tests)\/[A-Za-z0-9_./@-]+)/gmu, priority: 2 },
59
- { expression: /\b(?:npm|pnpm|yarn|bun|npx|vitest|jest|mocha|vite|webpack|rspack|rsbuild|esbuild|rollup|react|vue|angular|typescript|tailwindcss?|shadcn(?:\/ui)?|motion)\b/giu, priority: 3 },
65
+ { expression: /\b(?:npm|pnpm|yarn|bun|npx|vitest|jest|mocha|vite|webpack|rspack|rsbuild|esbuild|rollup|react|vue|angular|typescript|tailwindcss?|prettier|biome|dprint|eslint|motion|antd|mui)\b/giu, priority: 3 },
66
+ { expression: /(?:^|[\s`'"(])(shadcn\/ui)(?=$|[\s`'"),.;:])/gimu, priority: 2 },
60
67
  ];
61
68
  for (const { expression, priority } of patterns) {
62
69
  for (const match of normalized.matchAll(expression)) {
@@ -102,16 +109,25 @@ function inferSemanticFacet(text, entities) {
102
109
  const entity = primaryEntity(entities);
103
110
  const entityKey = normalizeEntityKey(entity);
104
111
  if (PACKAGE_MANAGERS.has(entityKey)) {
105
- return { subject: 'package manager', predicate: 'use', value: entity, polarity };
112
+ return { subject: 'package manager', predicate: 'use', value: entity, polarity, facet: 'package_manager' };
106
113
  }
107
114
  if (TEST_RUNNERS.has(entityKey)) {
108
- return { subject: 'test runner', predicate: 'use', value: entity, polarity };
115
+ return { subject: 'test runner', predicate: 'use', value: entity, polarity, facet: 'testing' };
109
116
  }
110
117
  if (BUILD_TOOLS.has(entityKey)) {
111
- return { subject: 'build tool', predicate: 'use', value: entity, polarity };
118
+ return { subject: 'build tool', predicate: 'use', value: entity, polarity, facet: 'build' };
119
+ }
120
+ if (FORMATTERS.has(entityKey)) {
121
+ return { subject: 'code formatter', predicate: 'use', value: entity, polarity, facet: 'formatting' };
122
+ }
123
+ if (STYLING_TOOLS.has(entityKey)) {
124
+ return { subject: 'styling', predicate: 'use', value: entity, polarity, facet: 'styling' };
125
+ }
126
+ if (COMPONENT_LIBRARIES.has(entityKey)) {
127
+ return { subject: 'component library', predicate: 'use', value: entity, polarity, facet: 'component_library' };
112
128
  }
113
129
  if (entity.startsWith('--') && DEPENDENCY_CONTEXT.test(text)) {
114
- return { subject: 'dependency installation', predicate: 'require', value: entity, polarity };
130
+ return { subject: 'dependency installation', predicate: 'require', value: entity, polarity, facet: 'dependency_installation' };
115
131
  }
116
132
  const version = text.match(/\b(react|vue|angular|node(?:\.js)?|typescript)\s*v?(\d+(?:\.\d+){0,2})\b/iu);
117
133
  if (version) {
@@ -120,8 +136,12 @@ function inferSemanticFacet(text, entities) {
120
136
  predicate: 'version',
121
137
  value: version[2],
122
138
  polarity,
139
+ facet: 'framework',
123
140
  };
124
141
  }
142
+ if (FRAMEWORKS.has(entityKey)) {
143
+ return { subject: 'framework', predicate: 'use', value: entity, polarity, facet: 'framework' };
144
+ }
125
145
  const genericTarget = inferGenericTarget(text);
126
146
  const subject = API_CONTEXT.test(text)
127
147
  ? 'API data fetching'
@@ -139,7 +159,18 @@ function inferSemanticFacet(text, entities) {
139
159
  : REQUIRE_INTENT.test(text)
140
160
  ? 'require'
141
161
  : 'state';
142
- return { subject, predicate, value: entity || genericTarget || subject, polarity };
162
+ const facet = API_CONTEXT.test(text)
163
+ ? 'api'
164
+ : ANIMATION_CONTEXT.test(text)
165
+ ? 'generic'
166
+ : STYLE_CONTEXT.test(text)
167
+ ? 'styling'
168
+ : /(?:architecture|架构)/iu.test(text)
169
+ ? 'architecture'
170
+ : /(?:generated|codegen|生成文件)/iu.test(text)
171
+ ? 'generated_files'
172
+ : 'generic';
173
+ return { subject, predicate, value: entity || genericTarget || subject, polarity, facet };
143
174
  }
144
175
  function inferGenericTarget(text) {
145
176
  const english = text.match(/\b(?:(?:do\s+not|don't|dont|never)\s+)?(?:use|prefer|require|avoid)\s+([^.!?\n]+)/iu)?.[1];
@@ -165,7 +196,12 @@ function normalizePredicate(value) {
165
196
  return 'require';
166
197
  if (['prefers', 'preference'].includes(normalized))
167
198
  return 'prefer';
168
- return normalized;
199
+ if (['avoid', 'avoids'].includes(normalized))
200
+ return 'avoid';
201
+ if (['use', 'require', 'prefer', 'version', 'state'].includes(normalized)) {
202
+ return normalized;
203
+ }
204
+ return '';
169
205
  }
170
206
  function normalizeField(value) {
171
207
  return (value ?? '').normalize('NFKC').trim().replace(/\s+/gu, ' ').slice(0, MAX_FIELD_LENGTH);
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-memory.js","sourceRoot":"","sources":["../src/semantic-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAwCzC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,yBAAyB,GAAG,GAAG,CAAC;AACtC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AACjE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC3F,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc;IACpF,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU;CACzF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,uEAAuE,CAAC;AAChG,MAAM,cAAc,GAAG,uDAAuD,CAAC;AAC/E,MAAM,iBAAiB,GAAG,4BAA4B,CAAC;AACvD,MAAM,cAAc,GAAG,qFAAqF,CAAC;AAC7G,MAAM,UAAU,GAAG,gEAAgE,CAAC;AACpF,MAAM,kBAAkB,GAAG,iEAAiE,CAAC;AAC7F,MAAM,WAAW,GAAG,+CAA+C,CAAC;AACpE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AACnD,MAAM,aAAa,GAAG,oCAAoC,CAAC;AAE3D,MAAM,UAAU,uBAAuB,CAAC,KAAmC;IACzE,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5H,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC;IACvF,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC;IAClG,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC7G,CAAC,CAAC,KAAK,CAAC,QAAQ;QAChB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACtB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC;SAClE,GAAG,CAAC,gBAAgB,CAAC;SACrB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,gBAAgB,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3F,OAAO;QACL,OAAO;QACP,SAAS;QACT,KAAK;QACL,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC;QAClD,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,UAAU,GAA8D,EAAE,CAAC;IACjF,MAAM,QAAQ,GAAoD;QAChE,EAAE,UAAU,EAAE,gDAAgD,EAAE,QAAQ,EAAE,CAAC,EAAE;QAC7E,EAAE,UAAU,EAAE,yBAAyB,EAAE,QAAQ,EAAE,CAAC,EAAE;QACtD,EAAE,UAAU,EAAE,4CAA4C,EAAE,QAAQ,EAAE,CAAC,EAAE;QACzE,EAAE,UAAU,EAAE,sCAAsC,EAAE,QAAQ,EAAE,CAAC,EAAE;QACnE,EAAE,UAAU,EAAE,+CAA+C,EAAE,QAAQ,EAAE,CAAC,EAAE;QAC5E,EAAE,UAAU,EAAE,kDAAkD,EAAE,QAAQ,EAAE,CAAC,EAAE;QAC/E,EAAE,UAAU,EAAE,6EAA6E,EAAE,QAAQ,EAAE,CAAC,EAAE;QAC1G,EAAE,UAAU,EAAE,wFAAwF,EAAE,QAAQ,EAAE,CAAC,EAAE;QACrH,EAAE,UAAU,EAAE,gKAAgK,EAAE,QAAQ,EAAE,CAAC,EAAE;KAC9L,CAAC;IAEF,KAAK,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,QAAQ,EAAE,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,KAAK,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAAE,SAAS;YAClF,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvI,OAAO,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAG,MAAkB;IACzD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAErD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;YACtD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACjD,OAAO,WAAW,KAAK,GAAG,IAAI,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QACH,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC;YAC3B,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAE,CAAC,CAAC,CAAC;YACpE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YAC9C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,SAAS;QAC7F,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAY,EACZ,QAAkB;IAElB,MAAM,QAAQ,GAA2B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9F,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnF,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC9E,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,OAAO,EAAE,yBAAyB,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;IACzG,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO;YACL,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU;YAC5D,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAE;YAClB,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,IAAI,aAAa,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IACvG,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,UAAU;gBAChD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;oBACzB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,aAAa,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;AACrF,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,qFAAqF,CACtF,EAAE,CAAC,CAAC,CAAC,CAAC;IACP,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,8DAA8D,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,IAAI,OAAO,CAAC;SAC9C,OAAO,CAAC,+DAA+D,EAAE,EAAE,CAAC;SAC5E,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;SACtC,IAAI,EAAE,CAAC;IACV,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,QAAkB;IACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;WAClD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;WAC/C,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;WAC7F,QAAQ,CAAC,CAAC,CAAC;WACX,EAAE,CAAC;AACV,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAyB;IACnD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/F,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5E,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,QAAQ,CAAC;IACpE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,KAAyB;IAC/C,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAyC;IAClE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,EAAE,CAAC;QACrE,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAE,CAAC,IAAI,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAChG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,MAAc;IACvD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,MAAM,KAAK,KAAK,OAAO,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC/D,OAAO,IAAI,MAAM,CAAC,cAAc,OAAO,eAAe,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,OAAO,CAAC,SAAiB,EAAE,KAAa;IAC/C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,KAAK,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"semantic-memory.js","sourceRoot":"","sources":["../src/semantic-memory.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,29 @@ describe('semantic memory normalization', () => {
33
33
  predicate: 'require',
34
34
  value: '--legacy-peer-deps',
35
35
  entities: ['--legacy-peer-deps'],
36
+ facet: 'dependency_installation',
36
37
  });
37
38
  });
39
+ it('normalizes Prettier as the project formatting policy', () => {
40
+ const semantic = normalizeSemanticMemory({
41
+ project: '/project',
42
+ type: 'project_convention',
43
+ title: 'Formatting convention',
44
+ narrative: '在该项目中使用 prettier 作为代码格式化的方案。',
45
+ });
46
+ expect(semantic).toMatchObject({
47
+ subject: 'code formatter',
48
+ predicate: 'use',
49
+ value: 'prettier',
50
+ polarity: 'positive',
51
+ entities: ['prettier'],
52
+ facet: 'formatting',
53
+ });
54
+ });
55
+ it('extracts package names, flags, versions, paths, and identifiers independently', () => {
56
+ expect(extractTechnicalEntities('Use @biomejs/biome --write with React 19 in src/components/Login.tsx via formatCode.')).toEqual(expect.arrayContaining([
57
+ '@biomejs/biome', '--write', 'React 19', 'src/components/Login.tsx', 'formatCode',
58
+ ]));
59
+ });
38
60
  });
39
61
  //# sourceMappingURL=semantic-memory.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-memory.test.js","sourceRoot":"","sources":["../src/semantic-memory.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,MAAM,CAAC,wBAAwB,CAC7B,6EAA6E,CAC9E,CAAC,CAAC,OAAO,CAAC;YACT,aAAa;YACb,uBAAuB;YACvB,oBAAoB;SACrB,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACnF,MAAM,CAAC,wBAAwB,CAAC,wDAAwD,CAAC,CAAC;aACvF,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACrF,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,oBAA6B,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;QACnG,MAAM,OAAO,GAAG,uBAAuB,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,sCAAsC,EAAE,CAAC,CAAC;QACxG,MAAM,OAAO,GAAG,uBAAuB,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,+BAA+B,EAAE,CAAC,CAAC;QAEjG,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC;YAC5B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU;SAC3F,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,QAAQ,GAAG,uBAAuB,CAAC;YACvC,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,yBAAyB;YAChC,SAAS,EAAE,kCAAkC;SAC9C,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC;YAC7B,OAAO,EAAE,yBAAyB;YAClC,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,oBAAoB;YAC3B,QAAQ,EAAE,CAAC,oBAAoB,CAAC;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"semantic-memory.test.js","sourceRoot":"","sources":["../src/semantic-memory.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devflow-tools/memory-engine",
3
- "version": "0.16.26",
3
+ "version": "0.16.28",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -17,19 +17,19 @@
17
17
  "clean": "rm -rf dist"
18
18
  },
19
19
  "dependencies": {
20
- "@devflow-tools/sdk": "0.16.26",
20
+ "@devflow-tools/sdk": "0.16.28",
21
21
  "@xenova/transformers": "^2.17.0",
22
22
  "better-sqlite3": "^12.0.0",
23
23
  "sqlite-vec": "^0.1.9",
24
24
  "ulidx": "^2.4.1"
25
25
  },
26
26
  "devDependencies": {
27
- "@devflow-tools/knowledge-engine": "0.16.26",
27
+ "@devflow-tools/knowledge-engine": "0.16.28",
28
28
  "typescript": "^5.5.0",
29
29
  "vitest": "^2.0.0"
30
30
  },
31
31
  "files": [
32
32
  "dist"
33
33
  ],
34
- "gitHead": "1972fd3dc463e84c5fb7c28de527494d8a903653"
34
+ "gitHead": "730a5299fc2b96d0f7435e51cae8d0669d31fe2f"
35
35
  }