@knowledgine/core 0.4.1 → 0.5.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.
Files changed (66) hide show
  1. package/dist/embedding/onnx-embedding-provider.d.ts +1 -0
  2. package/dist/embedding/onnx-embedding-provider.d.ts.map +1 -1
  3. package/dist/embedding/onnx-embedding-provider.js +9 -3
  4. package/dist/embedding/onnx-embedding-provider.js.map +1 -1
  5. package/dist/graph/entity-extractor.d.ts +11 -3
  6. package/dist/graph/entity-extractor.d.ts.map +1 -1
  7. package/dist/graph/entity-extractor.js +191 -4
  8. package/dist/graph/entity-extractor.js.map +1 -1
  9. package/dist/graph/graph-repository.d.ts +1 -0
  10. package/dist/graph/graph-repository.d.ts.map +1 -1
  11. package/dist/graph/graph-repository.js +7 -0
  12. package/dist/graph/graph-repository.js.map +1 -1
  13. package/dist/index.d.ts +5 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +7 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/search/hybrid-searcher.d.ts.map +1 -1
  18. package/dist/search/hybrid-searcher.js +5 -1
  19. package/dist/search/hybrid-searcher.js.map +1 -1
  20. package/dist/search/knowledge-searcher.d.ts +2 -2
  21. package/dist/search/knowledge-searcher.d.ts.map +1 -1
  22. package/dist/search/knowledge-searcher.js +33 -15
  23. package/dist/search/knowledge-searcher.js.map +1 -1
  24. package/dist/search/link-generator.d.ts +1 -0
  25. package/dist/search/link-generator.d.ts.map +1 -1
  26. package/dist/search/link-generator.js +44 -11
  27. package/dist/search/link-generator.js.map +1 -1
  28. package/dist/search/query-orchestrator.d.ts +2 -2
  29. package/dist/search/query-orchestrator.d.ts.map +1 -1
  30. package/dist/search/query-orchestrator.js +43 -23
  31. package/dist/search/query-orchestrator.js.map +1 -1
  32. package/dist/search/reasoning-reranker.d.ts +4 -4
  33. package/dist/search/reasoning-reranker.d.ts.map +1 -1
  34. package/dist/search/reasoning-reranker.js +9 -5
  35. package/dist/search/reasoning-reranker.js.map +1 -1
  36. package/dist/search/semantic-searcher.d.ts +2 -2
  37. package/dist/search/semantic-searcher.d.ts.map +1 -1
  38. package/dist/search/semantic-searcher.js +5 -1
  39. package/dist/search/semantic-searcher.js.map +1 -1
  40. package/dist/services/knowledge-service.d.ts +1 -0
  41. package/dist/services/knowledge-service.d.ts.map +1 -1
  42. package/dist/services/knowledge-service.js +12 -1
  43. package/dist/services/knowledge-service.js.map +1 -1
  44. package/dist/storage/database.d.ts.map +1 -1
  45. package/dist/storage/database.js +5 -0
  46. package/dist/storage/database.js.map +1 -1
  47. package/dist/storage/knowledge-repository.d.ts +42 -0
  48. package/dist/storage/knowledge-repository.d.ts.map +1 -1
  49. package/dist/storage/knowledge-repository.js +278 -145
  50. package/dist/storage/knowledge-repository.js.map +1 -1
  51. package/dist/storage/migrations/011_fts_unicode61.d.ts +10 -0
  52. package/dist/storage/migrations/011_fts_unicode61.d.ts.map +1 -0
  53. package/dist/storage/migrations/011_fts_unicode61.js +88 -0
  54. package/dist/storage/migrations/011_fts_unicode61.js.map +1 -0
  55. package/dist/storage/migrations/012_fts_trigram_cjk.d.ts +10 -0
  56. package/dist/storage/migrations/012_fts_trigram_cjk.d.ts.map +1 -0
  57. package/dist/storage/migrations/012_fts_trigram_cjk.js +53 -0
  58. package/dist/storage/migrations/012_fts_trigram_cjk.js.map +1 -0
  59. package/dist/storage/schema.d.ts +1 -1
  60. package/dist/storage/schema.d.ts.map +1 -1
  61. package/dist/storage/schema.js +1 -1
  62. package/dist/utils/semantic-readiness.d.ts +13 -0
  63. package/dist/utils/semantic-readiness.d.ts.map +1 -0
  64. package/dist/utils/semantic-readiness.js +21 -0
  65. package/dist/utils/semantic-readiness.js.map +1 -0
  66. package/package.json +1 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid-searcher.d.ts","sourceRoot":"","sources":["../../src/search/hybrid-searcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,qBAAa,cAAc;IAKvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,KAAK;IANf;;OAEG;gBAEO,UAAU,EAAE,mBAAmB,EAC/B,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,GAAE,MAAY;IAGvB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;CA0DjF"}
1
+ {"version":3,"file":"hybrid-searcher.d.ts","sourceRoot":"","sources":["../../src/search/hybrid-searcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,oCAAoC,CAAC;AACpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,qBAAa,cAAc;IAKvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,KAAK;IANf;;OAEG;gBAEO,UAAU,EAAE,mBAAmB,EAC/B,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,GAAE,MAAY;IAGvB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;CA+DjF"}
@@ -47,9 +47,13 @@ export class HybridSearcher {
47
47
  }
48
48
  scored.sort((a, b) => b.score - a.score);
49
49
  const topN = scored.slice(0, limit);
50
+ // N+1解消: IDリストを先に集めてバッチ取得
51
+ const topNIds = topN.map(({ noteId }) => noteId);
52
+ const notes = this.repository.getNotesSummaryByIds(topNIds);
53
+ const noteMap = new Map(notes.map((n) => [n.id, n]));
50
54
  const results = [];
51
55
  for (const { noteId, score } of topN) {
52
- const note = this.repository.getNoteById(noteId);
56
+ const note = noteMap.get(noteId);
53
57
  if (!note)
54
58
  continue;
55
59
  const hasFts = ftsMap.has(noteId);
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid-searcher.js","sourceRoot":"","sources":["../../src/search/hybrid-searcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hybrid-searcher.js","sourceRoot":"","sources":["../../src/search/hybrid-searcher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { KnowledgeRepository, KnowledgeNote } from "../storage/knowledge-repository.js";
1
+ import type { KnowledgeRepository, KnowledgeNote, KnowledgeNoteSummary } from "../storage/knowledge-repository.js";
2
2
  import type { GraphRepository } from "../graph/graph-repository.js";
3
3
  import type { EmbeddingProvider } from "../embedding/embedding-provider.js";
4
4
  import type { LLMProvider } from "../llm/types.js";
@@ -16,7 +16,7 @@ export interface SearchOptions {
16
16
  agentic?: boolean;
17
17
  }
18
18
  export interface SearchResult {
19
- note: KnowledgeNote;
19
+ note: KnowledgeNote | KnowledgeNoteSummary;
20
20
  score: number;
21
21
  matchReason: string[];
22
22
  fellBack?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge-searcher.d.ts","sourceRoot":"","sources":["../../src/search/knowledge-searcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,iBAAiB;IAQ1B,OAAO,CAAC,UAAU;IAPpB,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;gBAG/B,UAAU,EAAE,mBAAmB,EACvC,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,WAAW,GAAE,MAAY,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,CAAC,EAAE,eAAe;IAoB7B,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA0HvD,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI7D,YAAY,CAAC,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAYjE,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG;QACvC,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB;CAWF"}
1
+ {"version":3,"file":"knowledge-searcher.d.ts","sourceRoot":"","sources":["../../src/search/knowledge-searcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,iBAAiB;IAQ1B,OAAO,CAAC,UAAU;IAPpB,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;gBAG/B,UAAU,EAAE,mBAAmB,EACvC,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,WAAW,GAAE,MAAY,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,CAAC,EAAE,eAAe;IAoB7B,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA+IvD,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI7D,YAAY,CAAC,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAYjE,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG;QACvC,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB;CAWF"}
@@ -1,3 +1,4 @@
1
+ import { basename } from "path";
1
2
  import { SemanticSearcher } from "./semantic-searcher.js";
2
3
  import { HybridSearcher } from "./hybrid-searcher.js";
3
4
  import { ReasoningReranker } from "./reasoning-reranker.js";
@@ -53,24 +54,39 @@ export class KnowledgeSearcher {
53
54
  if (rows.length === 0) {
54
55
  return [];
55
56
  }
56
- // FTSスコアをmin-max正規化
57
- const rawRanks = rows.map((r) => Math.abs(r.rank));
58
- const minRank = Math.min(...rawRanks);
59
- const maxRank = Math.max(...rawRanks);
60
- const range = maxRank - minRank;
61
- const now = Date.now();
62
- results = rows.map(({ note, rank }) => {
63
- const normalized = range > 0 ? (Math.abs(rank) - minRank) / range : 1.0;
64
- let score = 1 - normalized;
65
- // valid_from スコアボーナス: 新しいほど高スコア (最大+0.5)
66
- // yearsSinceNow が小さいほど (= より新しい) ボーナスが大きい
57
+ // BM25 rank はマイナス値で、より負の値ほど良いスコア
58
+ // CHANGELOG / CHANGES / HISTORY は 70% discount: rank を 0.3 倍して 0 に近づける(悪くする)
59
+ // newness bonus: 新しいノートの rank をより負にして良くする(乗算ボーナス)
60
+ const CHANGELOG_PATTERN = /^(CHANGELOG|CHANGES|HISTORY)\.(md|txt|rst)$/i;
61
+ const CHANGELOG_DISCOUNT = 0.3;
62
+ const adjustedRanks = rows.map(({ note, rank }) => {
63
+ let adjusted = rank;
64
+ // newness boost: 新しいノートの rank をより負に(係数 > 1 で乗算)
67
65
  const validFrom = note.valid_from ?? note.created_at;
68
66
  if (validFrom) {
69
- const ageMs = now - new Date(validFrom).getTime();
70
- const yearsSinceNow = ageMs / (1000 * 60 * 60 * 24 * 365);
71
- // 新しさボーナス: 経過年数が少ないほど高い (上限0.5、最低0)
72
- score += Math.max(0, 0.5 - yearsSinceNow * 0.1);
67
+ const yearsSinceNow = (Date.now() - new Date(validFrom).getTime()) / (365.25 * 24 * 60 * 60 * 1000);
68
+ if (!Number.isFinite(yearsSinceNow))
69
+ return adjusted; // skip NaN / Infinity dates (no boost)
70
+ // boost factor: 最大 1.3x(新しいほど rank が大きくなる = より負に近い)
71
+ // Math.min(0.3, ...) で未来日付によるブーストが 1.3x を超えないようクランプ
72
+ const boost = 1 + Math.min(0.3, Math.max(0, 0.3 - yearsSinceNow * 0.06));
73
+ adjusted = adjusted * boost; // rank はマイナスなので * boost でより負になる
74
+ }
75
+ // CHANGELOG discount: rank をより0に近づける(0.3倍)
76
+ if (CHANGELOG_PATTERN.test(basename(note.file_path))) {
77
+ adjusted = adjusted * CHANGELOG_DISCOUNT;
73
78
  }
79
+ return adjusted;
80
+ });
81
+ // FTSスコアをmin-max正規化(より負の値ほど良い)
82
+ // minRank = 最も負の値 = 最良スコア → normalized=0 → score=1.0
83
+ // maxRank = 最も0に近い値 = 最悪スコア → normalized=1 → score=0
84
+ const minRank = Math.min(...adjustedRanks);
85
+ const maxRank = Math.max(...adjustedRanks);
86
+ const range = maxRank - minRank;
87
+ results = rows.map(({ note }, i) => {
88
+ const normalized = range > 0 ? (adjustedRanks[i] - minRank) / range : 0;
89
+ const score = 1 - normalized;
74
90
  const reasons = [`キーワード一致: "${query}"`];
75
91
  if (fellBack) {
76
92
  reasons.push(`Warning: ${mode} search is not available. Showing keyword results instead. Run 'knowledgine upgrade --semantic' to enable.`);
@@ -82,6 +98,8 @@ export class KnowledgeSearcher {
82
98
  fellBack,
83
99
  };
84
100
  });
101
+ // newness bonus 等の事後スコア調整後に降順ソート
102
+ results.sort((a, b) => b.score - a.score);
85
103
  }
86
104
  // agentic モード: LLMベース ReasoningReranker を使用
87
105
  if (agentic && results.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge-searcher.js","sourceRoot":"","sources":["../../src/search/knowledge-searcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge-searcher.js","sourceRoot":"","sources":["../../src/search/knowledge-searcher.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare class LocalLinkGenerator {
14
14
  findRelatedNotes(noteId: number, limit?: number): RelatedNote[];
15
15
  /**
16
16
  * グラフトラバーサルで同じエンティティを共有するノートを取得する。
17
+ * IDF重み付け(対数減衰)により稀なエンティティほど高スコアを付与する。
17
18
  */
18
19
  private findByGraphTraversal;
19
20
  private findByTagSimilarity;
@@ -1 +1 @@
1
- {"version":3,"file":"link-generator.d.ts","sourceRoot":"","sources":["../../src/search/link-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe,CAAC;gBADhB,UAAU,EAAE,mBAAmB,EAC/B,eAAe,CAAC,EAAE,eAAe,YAAA;IAG3C,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,WAAW,EAAE;IAkB1D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,mBAAmB;IA6B3B,OAAO,CAAC,0BAA0B;IAyBlC,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,eAAe;CAOxB"}
1
+ {"version":3,"file":"link-generator.d.ts","sourceRoot":"","sources":["../../src/search/link-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe,CAAC;gBADhB,UAAU,EAAE,mBAAmB,EAC/B,eAAe,CAAC,EAAE,eAAe,YAAA;IAG3C,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,WAAW,EAAE;IAkB1D;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,mBAAmB;IA+C3B,OAAO,CAAC,0BAA0B;IAyBlC,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,eAAe;CAOxB"}
@@ -22,6 +22,7 @@ export class LocalLinkGenerator {
22
22
  }
23
23
  /**
24
24
  * グラフトラバーサルで同じエンティティを共有するノートを取得する。
25
+ * IDF重み付け(対数減衰)により稀なエンティティほど高スコアを付与する。
25
26
  */
26
27
  findByGraphTraversal(noteId, limit) {
27
28
  if (!this.graphRepository)
@@ -30,6 +31,9 @@ export class LocalLinkGenerator {
30
31
  const relatedNotes = [];
31
32
  const seen = new Set([noteId]);
32
33
  for (const entity of linkedEntities) {
34
+ // IDF-based scoring: 稀なエンティティ(df小)ほど高スコア
35
+ const df = this.graphRepository.getEntityNoteCount(entity.id);
36
+ const similarity = 1 / (1 + Math.log(1 + df)); // df=0→1.0, df=1→0.59, df=10→0.29, df=100→0.18
33
37
  const entityNotes = this.graphRepository.getLinkedNotes(entity.id);
34
38
  for (const { noteId: linkedNoteId } of entityNotes) {
35
39
  if (seen.has(linkedNoteId))
@@ -41,7 +45,7 @@ export class LocalLinkGenerator {
41
45
  id: note.id,
42
46
  filePath: note.file_path,
43
47
  title: note.title,
44
- similarity: 0.6,
48
+ similarity,
45
49
  reason: `共通エンティティ: ${entity.name}`,
46
50
  });
47
51
  }
@@ -93,11 +97,28 @@ export class LocalLinkGenerator {
93
97
  findByTimeProximity(currentNote, limit) {
94
98
  const currentDate = new Date(currentNote.created_at);
95
99
  const results = this.repository.findNotesByTimeProximity(currentNote.id, currentNote.created_at, 7, limit);
100
+ if (results.length === 0)
101
+ return [];
96
102
  const relatedNotes = [];
97
- for (const note of results) {
103
+ const DAY_MS = 1000 * 60 * 60 * 24;
104
+ const allDaysDiffs = results.map((note) => {
98
105
  const noteDate = new Date(note.created_at);
99
- const daysDiff = Math.abs((currentDate.getTime() - noteDate.getTime()) / (1000 * 60 * 60 * 24));
100
- const similarity = Math.max(0, 1 - daysDiff / 7);
106
+ return Math.abs((currentDate.getTime() - noteDate.getTime()) / DAY_MS);
107
+ });
108
+ const sorted = [...allDaysDiffs].sort((a, b) => a - b);
109
+ const medianDiff = sorted[Math.floor(sorted.length / 2)] || 1;
110
+ const lambda = Math.LN2 / Math.max(medianDiff, 0.1);
111
+ // timestamp分散を計算し、低分散時はtime-proximityの重みを自動低減
112
+ const mean = allDaysDiffs.reduce((a, b) => a + b, 0) / allDaysDiffs.length;
113
+ const variance = allDaysDiffs.reduce((a, b) => a + (b - mean) ** 2, 0) / allDaysDiffs.length;
114
+ // 分散が0.01未満(≒全同一timestamp)なら dampening → 0.1、分散が大きくなるにつれ1.0に近づく
115
+ const dampening = Math.min(1.0, Math.sqrt(variance) / 1.0);
116
+ const effectiveDampening = Math.max(dampening, 0.1);
117
+ for (let i = 0; i < results.length; i++) {
118
+ const note = results[i];
119
+ const daysDiff = allDaysDiffs[i];
120
+ const rawSimilarity = Math.exp(-lambda * daysDiff) * 0.8 + 0.2;
121
+ const similarity = rawSimilarity * effectiveDampening;
101
122
  relatedNotes.push({
102
123
  id: note.id,
103
124
  filePath: note.file_path,
@@ -129,20 +150,32 @@ export class LocalLinkGenerator {
129
150
  return relatedNotes;
130
151
  }
131
152
  deduplicateAndRank(relatedNotes, excludeNoteId) {
132
- const noteMap = new Map();
153
+ const noteScores = new Map();
133
154
  for (const note of relatedNotes) {
134
155
  if (note.id === excludeNoteId)
135
156
  continue;
136
- if (noteMap.has(note.id)) {
137
- const existing = noteMap.get(note.id);
138
- existing.similarity = Math.max(existing.similarity, note.similarity);
139
- existing.reason += `, ${note.reason}`;
157
+ if (noteScores.has(note.id)) {
158
+ const entry = noteScores.get(note.id);
159
+ entry.scores.push(note.similarity);
160
+ entry.note.reason += `, ${note.reason}`;
140
161
  }
141
162
  else {
142
- noteMap.set(note.id, { ...note });
163
+ noteScores.set(note.id, { scores: [note.similarity], note: { ...note } });
164
+ }
165
+ }
166
+ // max + diminishing boost: 最大スコアをベースに、追加シグナルは (1-max) の一部をブースト
167
+ const BOOST_FACTOR = 0.15;
168
+ for (const entry of noteScores.values()) {
169
+ const sorted = entry.scores.sort((a, b) => b - a);
170
+ let combined = sorted[0];
171
+ for (let i = 1; i < sorted.length; i++) {
172
+ combined += (1 - combined) * sorted[i] * BOOST_FACTOR;
143
173
  }
174
+ entry.note.similarity = Math.min(combined, 0.99);
144
175
  }
145
- return Array.from(noteMap.values()).sort((a, b) => b.similarity - a.similarity);
176
+ return Array.from(noteScores.values())
177
+ .map((e) => e.note)
178
+ .sort((a, b) => b.similarity - a.similarity);
146
179
  }
147
180
  parseTags(frontmatterJson) {
148
181
  if (!frontmatterJson)
@@ -1 +1 @@
1
- {"version":3,"file":"link-generator.js","sourceRoot":"","sources":["../../src/search/link-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"link-generator.js","sourceRoot":"","sources":["../../src/search/link-generator.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { KnowledgeNote, KnowledgeRepository } from "../storage/knowledge-repository.js";
1
+ import type { KnowledgeNote, KnowledgeNoteSummary, KnowledgeRepository } from "../storage/knowledge-repository.js";
2
2
  import type { GraphRepository } from "../graph/graph-repository.js";
3
3
  import type { EmbeddingProvider } from "../embedding/embedding-provider.js";
4
4
  import type { LLMProvider } from "../llm/types.js";
5
5
  import type { EntityWithGraph } from "../types.js";
6
6
  import type { SearchOptions } from "./knowledge-searcher.js";
7
7
  export interface OrchestratedResult {
8
- note: KnowledgeNote;
8
+ note: KnowledgeNote | KnowledgeNoteSummary;
9
9
  score: number;
10
10
  layerScores: Record<string, number>;
11
11
  matchReason: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"query-orchestrator.d.ts","sourceRoot":"","sources":["../../src/search/query-orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAO7D,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;GAGG;AACH,qBAAa,iBAAiB;IAQ1B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe;IARzB,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;gBAGhB,UAAU,EAAE,mBAAmB,EAC/B,eAAe,EAAE,eAAe,EACxC,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,WAAW,CAAC,EAAE,WAAW,EACzB,MAAM,CAAC,EAAE,uBAAuB;IAW5B,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAwBpD,kBAAkB;YAuClB,iBAAiB;IAyE/B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,iBAAiB;YA4DX,iBAAiB;CAgEhC"}
1
+ {"version":3,"file":"query-orchestrator.d.ts","sourceRoot":"","sources":["../../src/search/query-orchestrator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAO7D,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;GAGG;AACH,qBAAa,iBAAiB;IAQ1B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe;IARzB,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;gBAGhB,UAAU,EAAE,mBAAmB,EAC/B,eAAe,EAAE,eAAe,EACxC,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,WAAW,CAAC,EAAE,WAAW,EACzB,MAAM,CAAC,EAAE,uBAAuB;IAW5B,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAwBpD,kBAAkB;YA8DlB,iBAAiB;IAyE/B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,iBAAiB;YA8DX,iBAAiB;CAgEhC"}
@@ -1,3 +1,4 @@
1
+ import { basename } from "path";
1
2
  import { SemanticSearcher } from "./semantic-searcher.js";
2
3
  import { HybridSearcher } from "./hybrid-searcher.js";
3
4
  import { ReasoningReranker } from "./reasoning-reranker.js";
@@ -61,12 +62,29 @@ export class QueryOrchestrator {
61
62
  if (rows.length === 0) {
62
63
  return [];
63
64
  }
64
- const rawRanks = rows.map((r) => Math.abs(r.rank));
65
- const minRank = Math.min(...rawRanks);
66
- const maxRank = Math.max(...rawRanks);
65
+ // CHANGELOG discount + newness bonus (knowledge-searcher.ts と同一ロジック)
66
+ const CHANGELOG_PATTERN = /^(CHANGELOG|CHANGES|HISTORY)\.(md|txt|rst)$/i;
67
+ const CHANGELOG_DISCOUNT = 0.3;
68
+ const adjustedRanks = rows.map(({ note, rank }) => {
69
+ let adjusted = rank;
70
+ const validFrom = note.valid_from ?? note.created_at;
71
+ if (validFrom) {
72
+ const yearsSinceNow = (Date.now() - new Date(validFrom).getTime()) / (365.25 * 24 * 60 * 60 * 1000);
73
+ if (Number.isFinite(yearsSinceNow)) {
74
+ const boost = 1 + Math.min(0.3, Math.max(0, 0.3 - yearsSinceNow * 0.06));
75
+ adjusted = adjusted * boost;
76
+ }
77
+ }
78
+ if (CHANGELOG_PATTERN.test(basename(note.file_path))) {
79
+ adjusted = adjusted * CHANGELOG_DISCOUNT;
80
+ }
81
+ return adjusted;
82
+ });
83
+ const minRank = Math.min(...adjustedRanks);
84
+ const maxRank = Math.max(...adjustedRanks);
67
85
  const range = maxRank - minRank;
68
- return rows.map(({ note, rank }) => {
69
- const normalized = range > 0 ? (Math.abs(rank) - minRank) / range : 1.0;
86
+ return rows.map(({ note }, i) => {
87
+ const normalized = range > 0 ? (adjustedRanks[i] - minRank) / range : 0;
70
88
  const score = 1 - normalized;
71
89
  return {
72
90
  note,
@@ -113,18 +131,18 @@ export class QueryOrchestrator {
113
131
  matchReason: [`グラフ関連エンティティ数: ${linkedEntities.length}`],
114
132
  });
115
133
  }
116
- // 関連ノートを新規候補として追加
117
- for (const additionalNoteId of linkedNoteIds) {
118
- if (!graphResultMap.has(additionalNoteId)) {
119
- const note = this.repository.getNoteById(additionalNoteId);
120
- if (note) {
121
- const graphScore = 0.3; // 間接的な関連のスコア
122
- graphResultMap.set(additionalNoteId, {
123
- score: graphScore,
124
- graphContext: entityGraphs,
125
- matchReason: [`グラフ経由の関連ノート (entity: ${linkedEntities[0]?.name ?? ""})`],
126
- });
127
- }
134
+ // 関連ノートを新規候補として追加(バッチ取得)
135
+ const newLinkedNoteIds = [...linkedNoteIds].filter((id) => !graphResultMap.has(id));
136
+ if (newLinkedNoteIds.length > 0) {
137
+ const linkedNotes = this.repository.getNotesSummaryByIds(newLinkedNoteIds);
138
+ const entityName = linkedEntities[0]?.name ?? "";
139
+ for (const note of linkedNotes) {
140
+ const graphScore = 0.3; // 間接的な関連のスコア
141
+ graphResultMap.set(note.id, {
142
+ score: graphScore,
143
+ graphContext: entityGraphs,
144
+ matchReason: [`グラフ経由の関連ノート (entity: ${entityName})`],
145
+ });
128
146
  }
129
147
  }
130
148
  }
@@ -164,15 +182,17 @@ export class QueryOrchestrator {
164
182
  graphContext: graphData?.graphContext,
165
183
  });
166
184
  }
167
- // graphResultMapに含まれる新規ノート(vectorになかったもの)を追加
168
- for (const [noteId, graphData] of graphResultMap) {
169
- if (!noteMap.has(noteId)) {
170
- const note = this.repository.getNoteById(noteId);
171
- if (!note)
185
+ // graphResultMapに含まれる新規ノート(vectorになかったもの)をバッチ取得して追加
186
+ const newGraphNoteIds = [...graphResultMap.keys()].filter((id) => !noteMap.has(id));
187
+ if (newGraphNoteIds.length > 0) {
188
+ const newGraphNotes = this.repository.getNotesSummaryByIds(newGraphNoteIds);
189
+ for (const note of newGraphNotes) {
190
+ const graphData = graphResultMap.get(note.id);
191
+ if (!graphData)
172
192
  continue;
173
193
  const graphScore = graphData.score;
174
194
  const finalScore = weights.graph * graphScore;
175
- noteMap.set(noteId, {
195
+ noteMap.set(note.id, {
176
196
  note,
177
197
  score: finalScore,
178
198
  layerScores: {
@@ -1 +1 @@
1
- {"version":3,"file":"query-orchestrator.js","sourceRoot":"","sources":["../../src/search/query-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-orchestrator.js","sourceRoot":"","sources":["../../src/search/query-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import type { LLMProvider } from "../llm/types.js";
2
- import type { KnowledgeRepository, KnowledgeNote } from "../storage/knowledge-repository.js";
2
+ import type { KnowledgeRepository, KnowledgeNote, KnowledgeNoteSummary } from "../storage/knowledge-repository.js";
3
3
  import type { SearchResult } from "./knowledge-searcher.js";
4
4
  export interface RerankOptions {
5
5
  maxCandidates?: number;
6
6
  maxResults?: number;
7
7
  }
8
8
  export interface RerankedResult {
9
- note: KnowledgeNote;
9
+ note: KnowledgeNote | KnowledgeNoteSummary;
10
10
  score: number;
11
11
  originalScore: number;
12
12
  matchReason: string[];
@@ -18,7 +18,7 @@ export interface RerankedResult {
18
18
  };
19
19
  }
20
20
  export interface RerankInput {
21
- note: KnowledgeNote;
21
+ note: KnowledgeNote | KnowledgeNoteSummary;
22
22
  baseScore: number;
23
23
  matchReason: string[];
24
24
  }
@@ -28,7 +28,7 @@ export interface AxisScores {
28
28
  psp: number;
29
29
  }
30
30
  export interface RerankResult {
31
- note: KnowledgeNote;
31
+ note: KnowledgeNote | KnowledgeNoteSummary;
32
32
  baseScore: number;
33
33
  scores: AxisScores;
34
34
  finalScore: number;
@@ -1 +1 @@
1
- {"version":3,"file":"reasoning-reranker.d.ts","sourceRoot":"","sources":["../../src/search/reasoning-reranker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAID,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA8JD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU;IAElB,OAAO,CAAC,cAAc,CAAC;gBAHf,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,UAAU,EAAE,mBAAmB,EAE/B,cAAc,CAAC,EAAE,eAAe,YAAA;IAG1C;;OAEG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,YAAY,EAAE,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,cAAc,EAAE,CAAC;IAwG5B;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA0C/F"}
1
+ {"version":3,"file":"reasoning-reranker.d.ts","sourceRoot":"","sources":["../../src/search/reasoning-reranker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAID,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkKD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU;IAElB,OAAO,CAAC,cAAc,CAAC;gBAHf,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,UAAU,EAAE,mBAAmB,EAE/B,cAAc,CAAC,EAAE,eAAe,YAAA;IAG1C;;OAEG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,YAAY,EAAE,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,cAAc,EAAE,CAAC;IAwG5B;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA0C/F"}
@@ -72,12 +72,15 @@ Example output:
72
72
  }`;
73
73
  const candidateLines = candidates
74
74
  .map((c) => {
75
- const preview = c.note.content.slice(0, 200).replace(/\n/g, " ");
76
- const fm = c.note.frontmatter_json ? JSON.parse(c.note.frontmatter_json) : {};
75
+ const note = c.note;
76
+ const content = "content" in note ? note.content : "";
77
+ const frontmatterJson = "frontmatter_json" in note ? note.frontmatter_json : null;
78
+ const preview = content.slice(0, 200).replace(/\n/g, " ");
79
+ const fm = frontmatterJson ? JSON.parse(frontmatterJson) : {};
77
80
  const tags = Array.isArray(fm.tags) ? fm.tags : [];
78
81
  return JSON.stringify({
79
- id: c.note.id,
80
- title: c.note.title,
82
+ id: note.id,
83
+ title: note.title,
81
84
  content: preview,
82
85
  tags,
83
86
  });
@@ -307,7 +310,8 @@ function scoreLegacyTemporalAxis(note) {
307
310
  function scoreLegacyContextAxis(note, queryTokens) {
308
311
  if (queryTokens.length === 0)
309
312
  return 0.5;
310
- const tags = extractTags(note.frontmatter_json);
313
+ const frontmatterJson = "frontmatter_json" in note ? note.frontmatter_json : null;
314
+ const tags = extractTags(frontmatterJson);
311
315
  if (tags.length === 0)
312
316
  return 0.3;
313
317
  const matchCount = queryTokens.filter((token) => tags.some((tag) => tag.toLowerCase().includes(token) || token.includes(tag.toLowerCase()))).length;