stellar-memory 0.7.0 → 0.8.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.
@@ -0,0 +1,24 @@
1
+ /**
2
+ * content-weight.ts — Content-Based Value Evaluation
3
+ *
4
+ * Produces a multiplier in [0, 1] that reflects how *valuable* a memory's
5
+ * content is, independent of how recent or frequently accessed it is.
6
+ *
7
+ * Two signals are combined:
8
+ * - scope_multiplier : how broad / well-connected the memory is
9
+ * - reversibility_bonus: penalty/bonus based on how hard the decision is to undo
10
+ *
11
+ * The final value is clamped to [0, 1].
12
+ */
13
+ import type { MemoryType } from './types.js';
14
+ /**
15
+ * Calculate a content-based weight for a memory.
16
+ *
17
+ * Returns a value in [0, 1].
18
+ *
19
+ * @param content - Memory content text
20
+ * @param type - MemoryType (decision, observation, etc.)
21
+ * @param memoryId - Optional: used to look up constellation edge count
22
+ */
23
+ export declare function calculateContentWeight(content: string, type: MemoryType, memoryId?: string): number;
24
+ //# sourceMappingURL=content-weight.d.ts.map
@@ -0,0 +1,94 @@
1
+ /**
2
+ * content-weight.ts — Content-Based Value Evaluation
3
+ *
4
+ * Produces a multiplier in [0, 1] that reflects how *valuable* a memory's
5
+ * content is, independent of how recent or frequently accessed it is.
6
+ *
7
+ * Two signals are combined:
8
+ * - scope_multiplier : how broad / well-connected the memory is
9
+ * - reversibility_bonus: penalty/bonus based on how hard the decision is to undo
10
+ *
11
+ * The final value is clamped to [0, 1].
12
+ */
13
+ import { IMPACT_DEFAULTS } from './types.js';
14
+ import { getEdgeCountForMemory } from '../storage/queries.js';
15
+ // ---------------------------------------------------------------------------
16
+ // Reversibility keyword lists
17
+ // ---------------------------------------------------------------------------
18
+ const HIGH_COST_KEYWORDS = [
19
+ 'migration', 'architecture', 'database', 'schema', 'breaking',
20
+ 'infrastructure', 'security', 'authentication',
21
+ '마이그레이션', '아키텍처', '스키마', '데이터베이스', '인프라', '보안', '인증',
22
+ ];
23
+ const LOW_COST_KEYWORDS = [
24
+ 'rename', 'style', 'format', 'lint', 'typo', 'comment',
25
+ '이름변경', '포맷', '스타일', '오타', '주석',
26
+ ];
27
+ // ---------------------------------------------------------------------------
28
+ // Named entity extraction (reuse same heuristics as quality.ts)
29
+ // ---------------------------------------------------------------------------
30
+ function extractEntities(text) {
31
+ const found = [];
32
+ const camelPascal = text.match(/\b[A-Z][a-zA-Z0-9]{2,}\b|\b[a-z][a-z0-9]*[A-Z][a-zA-Z0-9]*\b/g);
33
+ if (camelPascal)
34
+ found.push(...camelPascal);
35
+ const kebabSnake = text.match(/\b[a-z][a-z0-9]*(?:[-_][a-z0-9]+){1,}\b/g);
36
+ if (kebabSnake)
37
+ found.push(...kebabSnake.filter(t => t.length > 4));
38
+ const versions = text.match(/\bv?\d+\.\d+(?:\.\d+)?(?:-[a-z0-9.]+)?\b|\^?\d+\.\d+|\~\d+\.\d+/gi);
39
+ if (versions)
40
+ found.push(...versions);
41
+ const paths = text.match(/(?:\/[\w.\-]+){2,}|(?:\.\/)[\w.\-/]+|[A-Za-z]:\\[\w.\\\-]+/g);
42
+ if (paths)
43
+ found.push(...paths);
44
+ const urls = text.match(/https?:\/\/[^\s)>"']+/g);
45
+ if (urls)
46
+ found.push(...urls);
47
+ return [...new Set(found)];
48
+ }
49
+ // ---------------------------------------------------------------------------
50
+ // Scope multiplier — how broad / well-connected is this memory?
51
+ // ---------------------------------------------------------------------------
52
+ function calculateScope(content, memoryId) {
53
+ const entityCount = extractEntities(content).length;
54
+ let referenceCount = 0;
55
+ if (memoryId) {
56
+ referenceCount = getEdgeCountForMemory(memoryId);
57
+ }
58
+ const contentLengthFactor = Math.min(1.0, content.length / 300);
59
+ const scopeRaw = 0.4 * Math.min(1, entityCount / 5) +
60
+ 0.3 * Math.min(1, referenceCount / 3) +
61
+ 0.3 * contentLengthFactor;
62
+ // Range: [0.7, 1.3]
63
+ return 0.7 + 0.6 * scopeRaw;
64
+ }
65
+ // ---------------------------------------------------------------------------
66
+ // Reversibility bonus — how costly is this change to undo?
67
+ // ---------------------------------------------------------------------------
68
+ function calculateReversibility(content) {
69
+ const lower = content.toLowerCase();
70
+ if (HIGH_COST_KEYWORDS.some(kw => lower.includes(kw)))
71
+ return 0.15;
72
+ if (LOW_COST_KEYWORDS.some(kw => lower.includes(kw)))
73
+ return -0.10;
74
+ return 0;
75
+ }
76
+ // ---------------------------------------------------------------------------
77
+ // Public API
78
+ // ---------------------------------------------------------------------------
79
+ /**
80
+ * Calculate a content-based weight for a memory.
81
+ *
82
+ * Returns a value in [0, 1].
83
+ *
84
+ * @param content - Memory content text
85
+ * @param type - MemoryType (decision, observation, etc.)
86
+ * @param memoryId - Optional: used to look up constellation edge count
87
+ */
88
+ export function calculateContentWeight(content, type, memoryId) {
89
+ const typeBase = IMPACT_DEFAULTS[type];
90
+ const scopeMultiplier = calculateScope(content, memoryId);
91
+ const reversibilityBonus = calculateReversibility(content);
92
+ return Math.max(0, Math.min(1, typeBase * scopeMultiplier + reversibilityBonus));
93
+ }
94
+ //# sourceMappingURL=content-weight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-weight.js","sourceRoot":"","sources":["../../src/engine/content-weight.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,16 @@
1
1
  /**
2
- * gravity.ts — Relevance calculation (keyword + vector)
2
+ * gravity.ts — Relevance calculation (keyword + vector) and retrieval scoring
3
3
  *
4
4
  * Phase 1: keyword overlap between memory content and sun context.
5
5
  * Phase 2: cosine vector similarity + hybrid score combining both.
6
6
  *
7
- * Hybrid formula: 0.7 × vectorRelevance + 0.3 × keywordRelevance
7
+ * Hybrid formula (storage relevance): 0.7 × vectorRelevance + 0.3 × keywordRelevance
8
+ *
9
+ * Retrieval formula (search ranking):
10
+ * retrieval_score = semanticW × semantic_similarity
11
+ * + keywordW × keyword_overlap
12
+ * + proximityW × proximity_bonus
13
+ * where proximity_bonus = 1.0 - (distance / 100)
8
14
  *
9
15
  * The keyword score is retained as a fast fallback when embeddings are not
10
16
  * available (e.g., during unit tests or before the model has loaded).
@@ -60,4 +66,27 @@ export declare function vectorRelevance(memoryEmbedding: Float32Array | null | u
60
66
  * - If sunText is empty → pure vector score (if embedding available).
61
67
  */
62
68
  export declare function hybridRelevance(memoryText: string, sunText: string, memoryEmbedding: Float32Array | null | undefined, sunEmbedding: Float32Array | null | undefined): number;
69
+ /**
70
+ * Calculate retrieval score for ranking search results.
71
+ *
72
+ * Separate from storage importance — this score is computed at query time
73
+ * and reflects how well a memory matches the user's current query, biased
74
+ * toward memories that are already close (high proximity bonus).
75
+ *
76
+ * retrieval_score = semanticW × semantic_similarity
77
+ * + keywordW × keyword_overlap
78
+ * + proximityW × proximity_bonus
79
+ *
80
+ * proximity_bonus = 1.0 - clamp(distance / 100, 0, 1)
81
+ * → 1.0 for a memory at 0 AU (core), 0.0 at 100 AU (forgotten)
82
+ *
83
+ * Falls back to keyword + proximity when embeddings are absent.
84
+ *
85
+ * Weights default to 0.55 / 0.25 / 0.20 but can be overridden from config.
86
+ */
87
+ export declare function retrievalScore(memoryText: string, queryText: string, memoryDistance: number, memoryEmbedding: Float32Array | null | undefined, queryEmbedding: Float32Array | null | undefined, weights?: {
88
+ semantic: number;
89
+ keyword: number;
90
+ proximity: number;
91
+ }): number;
63
92
  //# sourceMappingURL=gravity.d.ts.map
@@ -1,17 +1,27 @@
1
1
  /**
2
- * gravity.ts — Relevance calculation (keyword + vector)
2
+ * gravity.ts — Relevance calculation (keyword + vector) and retrieval scoring
3
3
  *
4
4
  * Phase 1: keyword overlap between memory content and sun context.
5
5
  * Phase 2: cosine vector similarity + hybrid score combining both.
6
6
  *
7
- * Hybrid formula: 0.7 × vectorRelevance + 0.3 × keywordRelevance
7
+ * Hybrid formula (storage relevance): 0.7 × vectorRelevance + 0.3 × keywordRelevance
8
+ *
9
+ * Retrieval formula (search ranking):
10
+ * retrieval_score = semanticW × semantic_similarity
11
+ * + keywordW × keyword_overlap
12
+ * + proximityW × proximity_bonus
13
+ * where proximity_bonus = 1.0 - (distance / 100)
8
14
  *
9
15
  * The keyword score is retained as a fast fallback when embeddings are not
10
16
  * available (e.g., during unit tests or before the model has loaded).
11
17
  */
12
- // Hybrid weighting constants
18
+ // Hybrid weighting constants (storage relevance)
13
19
  const VECTOR_WEIGHT = 0.7;
14
20
  const KEYWORD_WEIGHT = 0.3;
21
+ // Default retrieval scoring weights
22
+ const DEFAULT_RETRIEVAL_SEMANTIC_WEIGHT = 0.55;
23
+ const DEFAULT_RETRIEVAL_KEYWORD_WEIGHT = 0.25;
24
+ const DEFAULT_RETRIEVAL_PROXIMITY_WEIGHT = 0.20;
15
25
  /**
16
26
  * Tokenize text: split by whitespace, lowercase, strip punctuation, filter
17
27
  * words shorter than 2 characters.
@@ -118,4 +128,43 @@ export function hybridRelevance(memoryText, sunText, memoryEmbedding, sunEmbeddi
118
128
  return kwScore;
119
129
  return Math.min(1.0, VECTOR_WEIGHT * vecScore + KEYWORD_WEIGHT * kwScore);
120
130
  }
131
+ // ---------------------------------------------------------------------------
132
+ // Retrieval score (search ranking)
133
+ // ---------------------------------------------------------------------------
134
+ /**
135
+ * Calculate retrieval score for ranking search results.
136
+ *
137
+ * Separate from storage importance — this score is computed at query time
138
+ * and reflects how well a memory matches the user's current query, biased
139
+ * toward memories that are already close (high proximity bonus).
140
+ *
141
+ * retrieval_score = semanticW × semantic_similarity
142
+ * + keywordW × keyword_overlap
143
+ * + proximityW × proximity_bonus
144
+ *
145
+ * proximity_bonus = 1.0 - clamp(distance / 100, 0, 1)
146
+ * → 1.0 for a memory at 0 AU (core), 0.0 at 100 AU (forgotten)
147
+ *
148
+ * Falls back to keyword + proximity when embeddings are absent.
149
+ *
150
+ * Weights default to 0.55 / 0.25 / 0.20 but can be overridden from config.
151
+ */
152
+ export function retrievalScore(memoryText, queryText, memoryDistance, memoryEmbedding, queryEmbedding, weights) {
153
+ const w = weights ?? {
154
+ semantic: DEFAULT_RETRIEVAL_SEMANTIC_WEIGHT,
155
+ keyword: DEFAULT_RETRIEVAL_KEYWORD_WEIGHT,
156
+ proximity: DEFAULT_RETRIEVAL_PROXIMITY_WEIGHT,
157
+ };
158
+ const semantic = vectorRelevance(memoryEmbedding, queryEmbedding);
159
+ const keyword = keywordRelevance(memoryText, queryText);
160
+ const proximity = 1.0 - Math.min(1.0, Math.max(0.0, memoryDistance / 100));
161
+ // When no embeddings available, redistribute semantic weight to keyword
162
+ if (!memoryEmbedding || !queryEmbedding) {
163
+ const totalNonSemantic = w.keyword + w.proximity;
164
+ const kwNorm = totalNonSemantic > 0 ? w.keyword / totalNonSemantic : 0.5;
165
+ const prxNorm = totalNonSemantic > 0 ? w.proximity / totalNonSemantic : 0.5;
166
+ return Math.min(1.0, kwNorm * keyword + prxNorm * proximity);
167
+ }
168
+ return Math.min(1.0, w.semantic * semantic + w.keyword * keyword + w.proximity * proximity);
169
+ }
121
170
  //# sourceMappingURL=gravity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gravity.js","sourceRoot":"","sources":["../../src/engine/gravity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gravity.js","sourceRoot":"","sources":["../../src/engine/gravity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,iDAAiD;AACjD,MAAM,aAAa,GAAI,GAAG,CAAC;AAC3B,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B,oCAAoC;AACpC,MAAM,iCAAiC,GAAI,IAAI,CAAC;AAChD,MAAM,gCAAgC,GAAK,IAAI,CAAC;AAChD,MAAM,kCAAkC,GAAG,IAAI,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,KAAK,CAAC,KAAK,CAAC;SACZ,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,OAAe;IAClE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE1C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC;AAC9C,CAAC;AAED,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAe,EAAE,CAAe;IAC/D,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC;IAEtD,IAAI,GAAG,GAAI,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,GAAG,IAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAE1B,2EAA2E;IAC3E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAC7B,eAAgD,EAChD,YAA+C;IAE/C,IAAI,CAAC,eAAe,IAAI,CAAC,YAAY;QAAE,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkB,EAClB,OAAe,EACf,eAAgD,EAChD,YAA+C;IAE/C,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAChE,MAAM,OAAO,GAAI,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEvD,+DAA+D;IAC/D,IAAI,CAAC,eAAe,IAAI,CAAC,YAAY;QAAE,OAAO,OAAO,CAAC;IAEtD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,GAAG,QAAQ,GAAG,cAAc,GAAG,OAAO,CAAC,CAAC;AAC5E,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,cAAc,CAC5B,UAAkB,EAClB,SAAiB,EACjB,cAAsB,EACtB,eAAgD,EAChD,cAAgD,EAChD,OAIC;IAED,MAAM,CAAC,GAAG,OAAO,IAAI;QACnB,QAAQ,EAAG,iCAAiC;QAC5C,OAAO,EAAI,gCAAgC;QAC3C,SAAS,EAAE,kCAAkC;KAC9C,CAAC;IAEF,MAAM,QAAQ,GAAI,eAAe,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,OAAO,GAAK,gBAAgB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC;IAE3E,wEAAwE;IACxE,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc,EAAE,CAAC;QACxC,MAAM,gBAAgB,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;QACjD,MAAM,MAAM,GAAI,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAK,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5E,MAAM,OAAO,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;AAC9F,CAAC"}
@@ -1,55 +1,68 @@
1
1
  /**
2
2
  * orbit.ts — Core importance function and orbital mechanics
3
3
  *
4
- * Implements the celestial mechanics metaphor:
5
- * - High importance → small orbital distance (close to the sun)
6
- * - Low importance → large orbital distance (far from the sun, fading)
7
- * - Access boost → pulls a memory closer when it is recalled
8
- * - Decay → memories drift outward over time via recency score
4
+ * Implements an ACT-R-inspired activation model:
5
+ * - Adaptive half-life grows with access count (stable memories decay slower)
6
+ * - Activation = 0.6×recency + 0.4×frequency (replaces raw recency/frequency weights)
7
+ * - storageImportance = activation × contentWeight × qualityModifier
8
+ * - Segment-based distance mapping for sharper zone boundaries
9
+ *
10
+ * High importance → small orbital distance (close to the sun)
11
+ * Low importance → large orbital distance (far from the sun, fading)
9
12
  */
10
13
  import type { Memory, ImportanceComponents, OrbitChange, StellarConfig } from './types.js';
11
14
  import type { MemoryType } from './types.js';
12
15
  /**
13
- * Calculate recency score using exponential decay.
16
+ * Calculate recency score using ACT-R adaptive half-life.
17
+ *
18
+ * The effective half-life grows with access count so that frequently-accessed
19
+ * memories decay much more slowly (stable memories persist longer).
20
+ *
21
+ * effectiveHalflife = min(maxStabilityHours, baseHalfLife × stabilityGrowth^min(accessCount,15))
14
22
  *
15
- * Formula: 0.5 ^ (hoursSince / effectiveHalfLife)
23
+ * Formula: 0.5 ^ (hoursSince / effectiveHalflife)
16
24
  * - At t=0 → score = 1.0
17
25
  * - At t=halfLife → score = 0.5
18
- * - At t=2×halfLife → score = 0.25
19
- *
20
- * Procedural memories use a slower decay rate (halfLife / 0.3 ≈ 240h for default 72h)
21
- * so hard-won knowledge persists longer.
22
26
  *
23
27
  * Returns a value in [0, 1].
24
28
  */
25
- export declare function recencyScore(lastAccessedAt: string | null, createdAt: string, halfLifeHours?: number, memoryType?: MemoryType): number;
29
+ export declare function recencyScore(lastAccessedAt: string | null, createdAt: string, halfLifeHours?: number, memoryType?: MemoryType, accessCount?: number, stabilityGrowth?: number, maxStabilityHours?: number): number;
26
30
  /**
27
- * Calculate frequency score using logarithmic saturation.
31
+ * Calculate frequency factor using logarithmic saturation.
28
32
  *
29
33
  * Formula: log(1 + count) / log(1 + saturationPoint)
30
34
  * - Grows quickly for the first few accesses.
31
- * - Plateaus as count approaches saturationPoint.
35
+ * - Plateaus as count approaches saturationPoint (default 50).
32
36
  *
33
37
  * Returns a value in [0, 1].
34
38
  */
35
39
  export declare function frequencyScore(accessCount: number, saturationPoint?: number): number;
36
40
  /**
37
- * Calculate overall importance from all four components.
41
+ * Calculate overall importance using ACT-R activation model.
42
+ *
43
+ * activation = activationRecencyWeight × recency + activationFrequencyWeight × frequencyFactor
44
+ * storageImportance = clamp(activation × contentWeight × qualityModifier, 0, 1)
38
45
  *
39
- * Weights are configured via StellarConfig and must sum to 1.0 for a
40
- * meaningful 0–1 total (they do in the defaults: 0.30+0.20+0.30+0.20=1.00).
46
+ * qualityModifier [0.7, 1.2]: 0.7 + 0.5 × qualityScore
47
+ * contentWeight: injected externally (defaults to memory.impact for backward compat)
48
+ *
49
+ * The legacy weights (recency/frequency/impact/relevance) are ignored in the
50
+ * new activation path but kept in the return value for callers that inspect them.
41
51
  */
42
- export declare function calculateImportance(memory: Memory, sunText: string, config: StellarConfig): ImportanceComponents;
52
+ export declare function calculateImportance(memory: Memory, sunText: string, config: StellarConfig, contentWeight?: number): ImportanceComponents;
43
53
  /**
44
- * Convert importance (0–1) to orbital distance (0.1–100).
54
+ * Convert importance (0–1) to orbital distance (0.1–100 AU).
45
55
  *
46
- * Uses quadratic mapping so that:
47
- * - importance = 1.0 distance 0.1 (core / working memory)
48
- * - importance = 0.0 → distance = 100 (Oort cloud / nearly forgotten)
56
+ * Uses segment-based linear interpolation aligned with ORBIT_ZONES boundaries,
57
+ * giving sharper zone transitions than the old quadratic formula.
49
58
  *
50
- * The quadratic curve creates a non-linear relationship: a memory must fall
51
- * significantly in importance before it drifts noticeably outward, which
52
- * mirrors how cognitive salience works in practice.
59
+ * Zone thresholds:
60
+ * Core [0.85, 1.0] → [0.1, 1.0)
61
+ * Near [0.65, 0.85) [1.0, 5.0)
62
+ * Active [0.40, 0.65) → [5.0, 15.0)
63
+ * Archive [0.20, 0.40) → [15.0, 40.0)
64
+ * Fading [0.05, 0.20) → [40.0, 70.0)
65
+ * Forgotten [0, 0.05) → [70.0, 100.0]
53
66
  */
54
67
  export declare function importanceToDistance(importance: number): number;
55
68
  /**
@@ -60,32 +73,17 @@ export declare function importanceToDistance(importance: number): number;
60
73
  export declare function distanceToImportance(distance: number): number;
61
74
  /**
62
75
  * Return the orbit zone label for a given distance.
63
- *
64
- * Iterates ORBIT_ZONES in definition order (core → forgotten) and returns the
65
- * first zone whose [min, max) range contains the distance. Falls back to
66
- * the 'forgotten' label for any distance at or beyond 70.
67
76
  */
68
77
  export declare function getOrbitZone(distance: number): string;
69
78
  /**
70
79
  * Apply access boost — pull a memory closer when it is recalled.
71
80
  *
72
- * The boost is proportional to the current distance so that:
73
- * - Far-away memories (high distance) receive a large absolute pull.
74
- * - Close memories (low distance) are nudged only slightly.
75
- *
81
+ * Proportional to current distance so far-away memories get a larger pull.
76
82
  * MIN_BOOST ensures even core memories get a small reward.
77
- * The floor of 0.1 prevents distance from going below the core minimum.
78
83
  */
79
84
  export declare function applyAccessBoost(currentDistance: number): number;
80
85
  /**
81
86
  * Run a full orbit recalculation for all memories in a project.
82
- *
83
- * Called during stellar_commit and stellar_orbit. For each non-deleted memory:
84
- * 1. Compute new importance using current sun context.
85
- * 2. Map importance → distance.
86
- * 3. If the distance shifted by more than 0.01, persist the change and log it.
87
- *
88
- * Returns every OrbitChange that was actually written.
89
87
  */
90
88
  export declare function recalculateOrbits(project: string, config: StellarConfig): OrbitChange[];
91
89
  //# sourceMappingURL=orbit.d.ts.map
@@ -1,11 +1,14 @@
1
1
  /**
2
2
  * orbit.ts — Core importance function and orbital mechanics
3
3
  *
4
- * Implements the celestial mechanics metaphor:
5
- * - High importance → small orbital distance (close to the sun)
6
- * - Low importance → large orbital distance (far from the sun, fading)
7
- * - Access boost → pulls a memory closer when it is recalled
8
- * - Decay → memories drift outward over time via recency score
4
+ * Implements an ACT-R-inspired activation model:
5
+ * - Adaptive half-life grows with access count (stable memories decay slower)
6
+ * - Activation = 0.6×recency + 0.4×frequency (replaces raw recency/frequency weights)
7
+ * - storageImportance = activation × contentWeight × qualityModifier
8
+ * - Segment-based distance mapping for sharper zone boundaries
9
+ *
10
+ * High importance → small orbital distance (close to the sun)
11
+ * Low importance → large orbital distance (far from the sun, fading)
9
12
  */
10
13
  import { ORBIT_ZONES } from './types.js';
11
14
  import { keywordRelevance, hybridRelevance } from './gravity.js';
@@ -18,19 +21,20 @@ import { getProceduralDecayMultiplier } from './procedural.js';
18
21
  // Scoring primitives
19
22
  // ---------------------------------------------------------------------------
20
23
  /**
21
- * Calculate recency score using exponential decay.
24
+ * Calculate recency score using ACT-R adaptive half-life.
25
+ *
26
+ * The effective half-life grows with access count so that frequently-accessed
27
+ * memories decay much more slowly (stable memories persist longer).
28
+ *
29
+ * effectiveHalflife = min(maxStabilityHours, baseHalfLife × stabilityGrowth^min(accessCount,15))
22
30
  *
23
- * Formula: 0.5 ^ (hoursSince / effectiveHalfLife)
31
+ * Formula: 0.5 ^ (hoursSince / effectiveHalflife)
24
32
  * - At t=0 → score = 1.0
25
33
  * - At t=halfLife → score = 0.5
26
- * - At t=2×halfLife → score = 0.25
27
- *
28
- * Procedural memories use a slower decay rate (halfLife / 0.3 ≈ 240h for default 72h)
29
- * so hard-won knowledge persists longer.
30
34
  *
31
35
  * Returns a value in [0, 1].
32
36
  */
33
- export function recencyScore(lastAccessedAt, createdAt, halfLifeHours = 72, memoryType) {
37
+ export function recencyScore(lastAccessedAt, createdAt, halfLifeHours = 72, memoryType, accessCount = 0, stabilityGrowth = 1.5, maxStabilityHours = 8760) {
34
38
  const referenceTime = lastAccessedAt ?? createdAt;
35
39
  // Append 'Z' only when there is no existing timezone designator so that
36
40
  // Date.parse interprets bare ISO strings as UTC rather than local time.
@@ -42,22 +46,24 @@ export function recencyScore(lastAccessedAt, createdAt, halfLifeHours = 72, memo
42
46
  throw new Error(`Invalid reference date: "${referenceTime}"`);
43
47
  const now = new Date();
44
48
  const hoursSince = (now.getTime() - refMs) / (1000 * 60 * 60);
45
- // Procedural memories decay ~3.3x slower than normal
46
- const effectiveHalfLife = memoryType === 'procedural'
49
+ // Adaptive half-life: grows with access frequency, capped at maxStabilityHours
50
+ // Procedural memories use a slower base decay rate (~3.3× slower than normal)
51
+ const baseHalfLife = memoryType === 'procedural'
47
52
  ? halfLifeHours / getProceduralDecayMultiplier()
48
53
  : halfLifeHours;
49
- return Math.pow(0.5, Math.max(0, hoursSince) / effectiveHalfLife);
54
+ const effectiveHalflife = Math.min(maxStabilityHours, baseHalfLife * Math.pow(stabilityGrowth, Math.min(accessCount, 15)));
55
+ return Math.pow(0.5, Math.max(0, hoursSince) / effectiveHalflife);
50
56
  }
51
57
  /**
52
- * Calculate frequency score using logarithmic saturation.
58
+ * Calculate frequency factor using logarithmic saturation.
53
59
  *
54
60
  * Formula: log(1 + count) / log(1 + saturationPoint)
55
61
  * - Grows quickly for the first few accesses.
56
- * - Plateaus as count approaches saturationPoint.
62
+ * - Plateaus as count approaches saturationPoint (default 50).
57
63
  *
58
64
  * Returns a value in [0, 1].
59
65
  */
60
- export function frequencyScore(accessCount, saturationPoint = 20) {
66
+ export function frequencyScore(accessCount, saturationPoint = 50) {
61
67
  if (saturationPoint <= 0)
62
68
  throw new Error('saturationPoint must be positive');
63
69
  return Math.min(1.0, Math.log(1 + accessCount) / Math.log(1 + saturationPoint));
@@ -66,20 +72,35 @@ export function frequencyScore(accessCount, saturationPoint = 20) {
66
72
  // Composite importance
67
73
  // ---------------------------------------------------------------------------
68
74
  /**
69
- * Calculate overall importance from all four components.
75
+ * Calculate overall importance using ACT-R activation model.
76
+ *
77
+ * activation = activationRecencyWeight × recency + activationFrequencyWeight × frequencyFactor
78
+ * storageImportance = clamp(activation × contentWeight × qualityModifier, 0, 1)
79
+ *
80
+ * qualityModifier ∈ [0.7, 1.2]: 0.7 + 0.5 × qualityScore
81
+ * contentWeight: injected externally (defaults to memory.impact for backward compat)
70
82
  *
71
- * Weights are configured via StellarConfig and must sum to 1.0 for a
72
- * meaningful 0–1 total (they do in the defaults: 0.30+0.20+0.30+0.20=1.00).
83
+ * The legacy weights (recency/frequency/impact/relevance) are ignored in the
84
+ * new activation path but kept in the return value for callers that inspect them.
73
85
  */
74
- export function calculateImportance(memory, sunText, config) {
75
- const weights = config.weights;
76
- const weightSum = weights.recency + weights.frequency + weights.impact + weights.relevance;
77
- if (Math.abs(weightSum - 1.0) > 0.01) {
78
- throw new Error(`Weights must sum to 1.0, got ${weightSum.toFixed(3)}`);
79
- }
80
- const rec = recencyScore(memory.last_accessed_at, memory.created_at, config.decayHalfLifeHours, memory.type);
86
+ export function calculateImportance(memory, sunText, config, contentWeight) {
87
+ const stabilityGrowth = config.stabilityGrowth ?? 1.5;
88
+ const maxStabilityHours = config.maxStabilityHours ?? 8760;
89
+ const recencyWeight = config.activationRecencyWeight ?? 0.6;
90
+ const frequencyWeight = config.activationFrequencyWeight ?? 0.4;
91
+ // Effective half-life exposed for callers
92
+ const baseHalfLife = memory.type === 'procedural'
93
+ ? config.decayHalfLifeHours / getProceduralDecayMultiplier()
94
+ : config.decayHalfLifeHours;
95
+ const effectiveHalflife = Math.min(maxStabilityHours, baseHalfLife * Math.pow(stabilityGrowth, Math.min(memory.access_count, 15)));
96
+ const rec = recencyScore(memory.last_accessed_at, memory.created_at, config.decayHalfLifeHours, memory.type, memory.access_count, stabilityGrowth, maxStabilityHours);
81
97
  const freq = frequencyScore(memory.access_count, config.frequencySaturationPoint);
82
- const imp = memory.impact;
98
+ // ACT-R activation
99
+ const activation = recencyWeight * rec + frequencyWeight * freq;
100
+ // contentWeight: externally injected (future content-weight agent), fallback to impact
101
+ const cw = contentWeight ?? memory.impact;
102
+ // qualityModifier ∈ [0.7, 1.2]
103
+ const qualityModifier = 0.7 + 0.5 * (memory.quality_score ?? 0.5);
83
104
  // Combine content + tags so tags act as relevance boosters.
84
105
  const memoryText = memory.content + ' ' + memory.tags.join(' ');
85
106
  // Attempt to load embeddings synchronously from the vec table for hybrid relevance.
@@ -94,7 +115,6 @@ export function calculateImportance(memory, sunText, config) {
94
115
  : sunText;
95
116
  if (memRow?.embedding) {
96
117
  const memEmbedding = new Float32Array(memRow.embedding.buffer, memRow.embedding.byteOffset, memRow.embedding.byteLength / 4);
97
- // Look up the sun embedding via the most-recent sun memory, if available.
98
118
  const sunRow = db.prepare(`SELECT mv.embedding FROM memory_vec mv
99
119
  JOIN memories m ON m.id = mv.memory_id
100
120
  WHERE m.project = ? AND m.deleted_at IS NULL
@@ -111,38 +131,53 @@ export function calculateImportance(memory, sunText, config) {
111
131
  catch {
112
132
  rel = keywordRelevance(memoryText, sunText);
113
133
  }
114
- const total = config.weights.recency * rec +
115
- config.weights.frequency * freq +
116
- config.weights.impact * imp +
117
- config.weights.relevance * rel;
134
+ const total = Math.max(0, Math.min(1, activation * cw * qualityModifier));
118
135
  return {
136
+ // Sub-components
119
137
  recency: rec,
138
+ frequencyFactor: freq,
139
+ effectiveHalflife,
140
+ // Composite
141
+ activation,
142
+ contentWeight: cw,
143
+ qualityModifier,
144
+ // Legacy aliases
120
145
  frequency: freq,
121
- impact: imp,
146
+ impact: cw,
122
147
  relevance: rel,
123
- total: Math.min(1.0, Math.max(0.0, total)),
148
+ total,
124
149
  };
125
150
  }
126
151
  // ---------------------------------------------------------------------------
127
- // Distance mapping
152
+ // Distance mapping — segment-based
128
153
  // ---------------------------------------------------------------------------
129
154
  /**
130
- * Convert importance (0–1) to orbital distance (0.1–100).
155
+ * Convert importance (0–1) to orbital distance (0.1–100 AU).
131
156
  *
132
- * Uses quadratic mapping so that:
133
- * - importance = 1.0 distance 0.1 (core / working memory)
134
- * - importance = 0.0 → distance = 100 (Oort cloud / nearly forgotten)
157
+ * Uses segment-based linear interpolation aligned with ORBIT_ZONES boundaries,
158
+ * giving sharper zone transitions than the old quadratic formula.
135
159
  *
136
- * The quadratic curve creates a non-linear relationship: a memory must fall
137
- * significantly in importance before it drifts noticeably outward, which
138
- * mirrors how cognitive salience works in practice.
160
+ * Zone thresholds:
161
+ * Core [0.85, 1.0] → [0.1, 1.0)
162
+ * Near [0.65, 0.85) [1.0, 5.0)
163
+ * Active [0.40, 0.65) → [5.0, 15.0)
164
+ * Archive [0.20, 0.40) → [15.0, 40.0)
165
+ * Fading [0.05, 0.20) → [40.0, 70.0)
166
+ * Forgotten [0, 0.05) → [70.0, 100.0]
139
167
  */
140
168
  export function importanceToDistance(importance) {
141
- const MIN_DISTANCE = 0.1;
142
- const MAX_DISTANCE = 100.0;
143
169
  const clamped = Math.min(1.0, Math.max(0.0, importance));
144
- const normalized = Math.pow(1 - clamped, 2);
145
- return MIN_DISTANCE + normalized * (MAX_DISTANCE - MIN_DISTANCE);
170
+ if (clamped >= 0.85)
171
+ return 0.1 + (1.0 - clamped) / 0.15 * 0.9;
172
+ if (clamped >= 0.65)
173
+ return 1.0 + (0.85 - clamped) / 0.20 * 4.0;
174
+ if (clamped >= 0.40)
175
+ return 5.0 + (0.65 - clamped) / 0.25 * 10.0;
176
+ if (clamped >= 0.20)
177
+ return 15.0 + (0.40 - clamped) / 0.20 * 25.0;
178
+ if (clamped >= 0.05)
179
+ return 40.0 + (0.20 - clamped) / 0.15 * 30.0;
180
+ return 70.0 + (0.05 - clamped) / 0.05 * 30.0;
146
181
  }
147
182
  /**
148
183
  * Inverse of importanceToDistance — derive importance from a given distance.
@@ -150,18 +185,21 @@ export function importanceToDistance(importance) {
150
185
  * Used when a user manually drags a memory to a new orbital position.
151
186
  */
152
187
  export function distanceToImportance(distance) {
153
- const MIN_DISTANCE = 0.1;
154
- const MAX_DISTANCE = 100.0;
155
- const clamped = Math.min(MAX_DISTANCE, Math.max(MIN_DISTANCE, distance));
156
- const normalized = (clamped - MIN_DISTANCE) / (MAX_DISTANCE - MIN_DISTANCE);
157
- return Math.max(0.0, Math.min(1.0, 1 - Math.sqrt(normalized)));
188
+ const clamped = Math.min(100.0, Math.max(0.1, distance));
189
+ if (clamped < 1.0)
190
+ return 1.0 - (clamped - 0.1) / 0.9 * 0.15;
191
+ if (clamped < 5.0)
192
+ return 0.85 - (clamped - 1.0) / 4.0 * 0.20;
193
+ if (clamped < 15.0)
194
+ return 0.65 - (clamped - 5.0) / 10.0 * 0.25;
195
+ if (clamped < 40.0)
196
+ return 0.40 - (clamped - 15.0) / 25.0 * 0.20;
197
+ if (clamped < 70.0)
198
+ return 0.20 - (clamped - 40.0) / 30.0 * 0.15;
199
+ return Math.max(0, 0.05 - (clamped - 70.0) / 30.0 * 0.05);
158
200
  }
159
201
  /**
160
202
  * Return the orbit zone label for a given distance.
161
- *
162
- * Iterates ORBIT_ZONES in definition order (core → forgotten) and returns the
163
- * first zone whose [min, max) range contains the distance. Falls back to
164
- * the 'forgotten' label for any distance at or beyond 70.
165
203
  */
166
204
  export function getOrbitZone(distance) {
167
205
  for (const [, zone] of Object.entries(ORBIT_ZONES)) {
@@ -169,7 +207,6 @@ export function getOrbitZone(distance) {
169
207
  return zone.label;
170
208
  }
171
209
  }
172
- // Beyond all defined zones — treat as forgotten.
173
210
  return ORBIT_ZONES.forgotten.label;
174
211
  }
175
212
  // ---------------------------------------------------------------------------
@@ -178,12 +215,8 @@ export function getOrbitZone(distance) {
178
215
  /**
179
216
  * Apply access boost — pull a memory closer when it is recalled.
180
217
  *
181
- * The boost is proportional to the current distance so that:
182
- * - Far-away memories (high distance) receive a large absolute pull.
183
- * - Close memories (low distance) are nudged only slightly.
184
- *
218
+ * Proportional to current distance so far-away memories get a larger pull.
185
219
  * MIN_BOOST ensures even core memories get a small reward.
186
- * The floor of 0.1 prevents distance from going below the core minimum.
187
220
  */
188
221
  export function applyAccessBoost(currentDistance) {
189
222
  const BOOST_FACTOR = 0.3;
@@ -196,20 +229,12 @@ export function applyAccessBoost(currentDistance) {
196
229
  // ---------------------------------------------------------------------------
197
230
  /**
198
231
  * Run a full orbit recalculation for all memories in a project.
199
- *
200
- * Called during stellar_commit and stellar_orbit. For each non-deleted memory:
201
- * 1. Compute new importance using current sun context.
202
- * 2. Map importance → distance.
203
- * 3. If the distance shifted by more than 0.01, persist the change and log it.
204
- *
205
- * Returns every OrbitChange that was actually written.
206
232
  */
207
233
  export function recalculateOrbits(project, config) {
208
234
  const memories = getMemoriesByProject(project);
209
235
  if (memories.length === 0) {
210
236
  return [];
211
237
  }
212
- // Build sun context text for relevance scoring.
213
238
  const sunState = getSunState(project);
214
239
  const sunText = sunState
215
240
  ? [sunState.current_work, ...sunState.recent_decisions, ...sunState.next_steps].join(' ')
@@ -218,11 +243,9 @@ export function recalculateOrbits(project, config) {
218
243
  for (const memory of memories) {
219
244
  const components = calculateImportance(memory, sunText, config);
220
245
  const newImportance = components.total;
221
- // Apply quality-based orbit adjustment: low-quality memories drift further out
222
246
  const qualityScore = memory.quality_score ?? 0.5;
223
247
  const newDistance = importanceToDistance(newImportance) * qualityOrbitAdjustment(qualityScore);
224
248
  const velocity = newDistance - memory.distance;
225
- // Skip negligible drifts to avoid write churn.
226
249
  if (Math.abs(velocity) <= 0.01) {
227
250
  continue;
228
251
  }
@@ -239,10 +262,7 @@ export function recalculateOrbits(project, config) {
239
262
  insertOrbitLog(change);
240
263
  changes.push(change);
241
264
  }
242
- // Prune orbit log entries older than 90 days to prevent unbounded growth.
243
265
  cleanupOrbitLog(90);
244
- // Refresh the corona cache after orbit recalculation so distance changes
245
- // are reflected in the in-memory tier immediately.
246
266
  corona.warmup(project);
247
267
  return changes;
248
268
  }
@@ -1 +1 @@
1
- {"version":3,"file":"orbit.js","sourceRoot":"","sources":["../../src/engine/orbit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orbit.js","sourceRoot":"","sources":["../../src/engine/orbit.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ import { IMPACT_DEFAULTS } from './types.js';
19
19
  import { insertMemory, searchMemoriesInRange, updateMemoryAccess, updateMemoryOrbit, insertOrbitLog, softDeleteMemory, getMemoryById, getSunState, getMemoryByIds, getMemoryByContentHash, updateQualityScore, getEdgesForBatch, getMemoriesByProject, } from '../storage/queries.js';
20
20
  import { getConfig } from '../utils/config.js';
21
21
  import { calculateImportance, importanceToDistance, applyAccessBoost, recencyScore, frequencyScore, } from './orbit.js';
22
- import { keywordRelevance } from './gravity.js';
22
+ import { keywordRelevance, retrievalScore } from './gravity.js';
23
23
  import { generateEmbedding } from './embedding.js';
24
24
  import { insertEmbedding, searchByVector, deleteEmbedding } from '../storage/vec.js';
25
25
  import { getDatabase, withTransaction } from '../storage/database.js';
@@ -384,9 +384,10 @@ export async function recallMemoriesAsync(project, query, options) {
384
384
  const ftsResults = searchMemoriesInRange(project, query, 15.0, 100.0, fetchN);
385
385
  // Vector KNN search (async embedding)
386
386
  let vecIds = [];
387
+ let queryEmbedding = null;
387
388
  try {
388
389
  const db = getDatabase();
389
- const queryEmbedding = await generateEmbedding(query);
390
+ queryEmbedding = await generateEmbedding(query);
390
391
  const vecResults = searchByVector(db, queryEmbedding, fetchN);
391
392
  vecIds = vecResults.map(r => r.memoryId);
392
393
  }
@@ -396,21 +397,38 @@ export async function recallMemoriesAsync(project, query, options) {
396
397
  // Merge FTS5 + vector via RRF
397
398
  let merged = mergeRRF(ftsResults, vecIds, fetchN);
398
399
  merged = hydrateVectorOnlyResults(merged, ftsResults);
400
+ // Load memory embeddings for re-ranking with retrieval_score
401
+ const cfg = getConfig();
402
+ const retrievalWeights = {
403
+ semantic: cfg.retrievalSemanticWeight,
404
+ keyword: cfg.retrievalKeywordWeight,
405
+ proximity: cfg.retrievalProximityWeight,
406
+ };
407
+ let memEmbeddingMap = null;
408
+ if (queryEmbedding) {
409
+ try {
410
+ const db = getDatabase();
411
+ const rows = db.prepare(`SELECT memory_id, embedding FROM memory_vec WHERE memory_id IN (${merged.map(() => '?').join(',')})`).all(...merged.map(m => m.id));
412
+ memEmbeddingMap = new Map(rows.map(r => [
413
+ r.memory_id,
414
+ new Float32Array(r.embedding.buffer, r.embedding.byteOffset, r.embedding.byteLength / 4),
415
+ ]));
416
+ }
417
+ catch {
418
+ // embeddings unavailable — fall back to keyword+proximity
419
+ }
420
+ }
399
421
  for (let i = 0; i < merged.length; i++) {
400
422
  const m = merged[i];
401
423
  if (seenIds.has(m.id))
402
424
  continue;
403
425
  if (!m.content)
404
426
  continue; // skip unhydrated stubs
405
- const zoneBoost = m.distance < 40
406
- ? ZONE_BOOST.archive
407
- : m.distance < 70
408
- ? ZONE_BOOST.fading
409
- : ZONE_BOOST.forgotten;
410
- const rankScore = 1 / (1 + i);
427
+ const memEmb = memEmbeddingMap?.get(m.id) ?? null;
428
+ const retScore = retrievalScore(m.content + ' ' + m.tags.join(' '), query, m.distance, memEmb, queryEmbedding, retrievalWeights);
411
429
  scored.push({
412
430
  memory: m,
413
- score: rankScore * zoneBoost * TIER_PRIORITY.tier3,
431
+ score: retScore * TIER_PRIORITY.tier3,
414
432
  tier: 'DEEP',
415
433
  });
416
434
  seenIds.add(m.id);
@@ -1 +1 @@
1
- {"version":3,"file":"planet.js","sourceRoot":"","sources":["../../src/engine/planet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planet.js","sourceRoot":"","sources":["../../src/engine/planet.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,11 @@ export interface OrbitChange {
95
95
  }
96
96
  export interface ImportanceComponents {
97
97
  recency: number;
98
+ frequencyFactor: number;
99
+ effectiveHalflife: number;
100
+ activation: number;
101
+ contentWeight: number;
102
+ qualityModifier: number;
98
103
  frequency: number;
99
104
  impact: number;
100
105
  relevance: number;
@@ -169,6 +174,13 @@ export interface StellarConfig {
169
174
  sunTokenBudget: number;
170
175
  decayHalfLifeHours: number;
171
176
  frequencySaturationPoint: number;
177
+ stabilityGrowth: number;
178
+ maxStabilityHours: number;
179
+ activationRecencyWeight: number;
180
+ activationFrequencyWeight: number;
181
+ retrievalSemanticWeight: number;
182
+ retrievalKeywordWeight: number;
183
+ retrievalProximityWeight: number;
172
184
  weights: {
173
185
  recency: number;
174
186
  frequency: number;
@@ -52,6 +52,7 @@ export declare function getConstellation(memoryId: string, project: string, dept
52
52
  */
53
53
  export declare function getEdgesForBatch(memoryIds: string[], project: string): Map<string, Set<string>>;
54
54
  export declare function deleteEdge(id: string): void;
55
+ export declare function getEdgeCountForMemory(memoryId: string): number;
55
56
  export declare function createConflict(conflict: MemoryConflict): void;
56
57
  export declare function getConflicts(project: string, status?: string): MemoryConflict[];
57
58
  export declare function getConflictsForMemory(memoryId: string): MemoryConflict[];
@@ -535,6 +535,14 @@ export function deleteEdge(id) {
535
535
  const db = getDatabase();
536
536
  db.prepare(`DELETE FROM constellation_edges WHERE id = ?`).run(id);
537
537
  }
538
+ export function getEdgeCountForMemory(memoryId) {
539
+ const db = getDatabase();
540
+ const row = db.prepare(`
541
+ SELECT COUNT(*) as count FROM constellation_edges
542
+ WHERE source_id = ? OR target_id = ?
543
+ `).get(memoryId, memoryId);
544
+ return row?.count ?? 0;
545
+ }
538
546
  // ---------------------------------------------------------------------------
539
547
  // Conflict queries
540
548
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/storage/queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/storage/queries.ts"],"names":[],"mappings":"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"}
@@ -55,7 +55,16 @@ export function loadConfig() {
55
55
  sunTokenBudget: parseInt_(process.env['STELLAR_SUN_TOKEN_BUDGET'], 800),
56
56
  decayHalfLifeHours: parseFloat_(process.env['STELLAR_DECAY_HALF_LIFE'], 72),
57
57
  // Frequency saturation: number of accesses at which frequency score plateaus
58
- frequencySaturationPoint: parseInt_(process.env['STELLAR_FREQ_SAT_POINT'], 20),
58
+ frequencySaturationPoint: parseInt_(process.env['STELLAR_FREQ_SAT_POINT'], 50),
59
+ // ACT-R adaptive stability
60
+ stabilityGrowth: parseFloat_(process.env['STELLAR_STABILITY_GROWTH'], 1.5),
61
+ maxStabilityHours: parseFloat_(process.env['STELLAR_MAX_STABILITY'], 8760),
62
+ activationRecencyWeight: parseFloat_(process.env['STELLAR_ACTIVATION_RECENCY_WEIGHT'], 0.6),
63
+ activationFrequencyWeight: parseFloat_(process.env['STELLAR_ACTIVATION_FREQUENCY_WEIGHT'], 0.4),
64
+ // Retrieval scoring weights
65
+ retrievalSemanticWeight: parseFloat_(process.env['STELLAR_RETRIEVAL_SEMANTIC_WEIGHT'], 0.55),
66
+ retrievalKeywordWeight: parseFloat_(process.env['STELLAR_RETRIEVAL_KEYWORD_WEIGHT'], 0.25),
67
+ retrievalProximityWeight: parseFloat_(process.env['STELLAR_RETRIEVAL_PROXIMITY_WEIGHT'], 0.20),
59
68
  weights: {
60
69
  recency: parseFloat_(process.env['STELLAR_WEIGHT_RECENCY'], 0.30),
61
70
  frequency: parseFloat_(process.env['STELLAR_WEIGHT_FREQUENCY'], 0.20),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stellar-memory",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "AI memory system using celestial mechanics metaphor - MCP server for persistent context across sessions",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",