kiokuko 1.0.41 → 1.0.44

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 (149) hide show
  1. package/README.ja.md +21 -159
  2. package/README.ko.md +21 -125
  3. package/README.md +21 -194
  4. package/README.zh-CN.md +21 -126
  5. package/dist/agent-file/atomic-write.d.ts.map +1 -1
  6. package/dist/agent-file/atomic-write.js +2 -1
  7. package/dist/agent-file/atomic-write.js.map +1 -1
  8. package/dist/akinator/agent-task.d.ts +4 -2
  9. package/dist/akinator/agent-task.d.ts.map +1 -1
  10. package/dist/akinator/agent-task.js +14 -4
  11. package/dist/akinator/agent-task.js.map +1 -1
  12. package/dist/akinator/preparation-recovery.d.ts.map +1 -1
  13. package/dist/assurance/inspect.d.ts +1 -1
  14. package/dist/cli.d.ts.map +1 -1
  15. package/dist/cli.js +64 -7
  16. package/dist/cli.js.map +1 -1
  17. package/dist/commands/agent.d.ts.map +1 -1
  18. package/dist/commands/agent.js +15 -3
  19. package/dist/commands/agent.js.map +1 -1
  20. package/dist/commands/code-version.d.ts +6 -0
  21. package/dist/commands/code-version.d.ts.map +1 -0
  22. package/dist/commands/code-version.js +66 -0
  23. package/dist/commands/code-version.js.map +1 -0
  24. package/dist/commands/doctor.d.ts +14 -0
  25. package/dist/commands/doctor.d.ts.map +1 -1
  26. package/dist/commands/doctor.js +101 -32
  27. package/dist/commands/doctor.js.map +1 -1
  28. package/dist/commands/use.d.ts.map +1 -1
  29. package/dist/commands/use.js +10 -1
  30. package/dist/commands/use.js.map +1 -1
  31. package/dist/context/broker.d.ts +4 -1
  32. package/dist/context/broker.d.ts.map +1 -1
  33. package/dist/context/broker.js +9 -3
  34. package/dist/context/broker.js.map +1 -1
  35. package/dist/context/ranking.d.ts +1 -1
  36. package/dist/context/ranking.d.ts.map +1 -1
  37. package/dist/context/ranking.js +2 -1
  38. package/dist/context/ranking.js.map +1 -1
  39. package/dist/context/scoped-broker.d.ts +3 -1
  40. package/dist/context/scoped-broker.d.ts.map +1 -1
  41. package/dist/context/scoped-broker.js +8 -5
  42. package/dist/context/scoped-broker.js.map +1 -1
  43. package/dist/gateway/checkpoint-mutation-service.d.ts.map +1 -1
  44. package/dist/gateway/checkpoint-mutation-service.js +2 -1
  45. package/dist/gateway/checkpoint-mutation-service.js.map +1 -1
  46. package/dist/mcp/chatgpt-contract.d.ts +32 -0
  47. package/dist/mcp/chatgpt-contract.d.ts.map +1 -1
  48. package/dist/mcp/chatgpt-contract.js +4 -2
  49. package/dist/mcp/chatgpt-contract.js.map +1 -1
  50. package/dist/mcp/request-deadline.d.ts +1 -1
  51. package/dist/mcp/request-deadline.d.ts.map +1 -1
  52. package/dist/mcp/request-deadline.js +1 -0
  53. package/dist/mcp/request-deadline.js.map +1 -1
  54. package/dist/mcp/server.d.ts.map +1 -1
  55. package/dist/mcp/server.js +47 -4
  56. package/dist/mcp/server.js.map +1 -1
  57. package/dist/memory/applicability-context.d.ts +24 -0
  58. package/dist/memory/applicability-context.d.ts.map +1 -0
  59. package/dist/memory/applicability-context.js +129 -0
  60. package/dist/memory/applicability-context.js.map +1 -0
  61. package/dist/memory/checkpoint-contract.d.ts +30 -0
  62. package/dist/memory/checkpoint-contract.d.ts.map +1 -1
  63. package/dist/memory/checkpoint-contract.js +5 -0
  64. package/dist/memory/checkpoint-contract.js.map +1 -1
  65. package/dist/memory/code-versions.d.ts +79 -0
  66. package/dist/memory/code-versions.d.ts.map +1 -0
  67. package/dist/memory/code-versions.js +159 -0
  68. package/dist/memory/code-versions.js.map +1 -0
  69. package/dist/memory/context-budget.d.ts +5 -0
  70. package/dist/memory/context-budget.d.ts.map +1 -0
  71. package/dist/memory/context-budget.js +5 -0
  72. package/dist/memory/context-budget.js.map +1 -0
  73. package/dist/memory/entry-history.d.ts +29 -0
  74. package/dist/memory/entry-history.d.ts.map +1 -0
  75. package/dist/memory/entry-history.js +66 -0
  76. package/dist/memory/entry-history.js.map +1 -0
  77. package/dist/memory/federated-retrieval.d.ts.map +1 -1
  78. package/dist/memory/federated-retrieval.js +25 -7
  79. package/dist/memory/federated-retrieval.js.map +1 -1
  80. package/dist/memory/global-conversation-query.d.ts +3 -0
  81. package/dist/memory/global-conversation-query.d.ts.map +1 -1
  82. package/dist/memory/global-conversation-query.js +5 -2
  83. package/dist/memory/global-conversation-query.js.map +1 -1
  84. package/dist/memory/history-delivery.d.ts +57 -0
  85. package/dist/memory/history-delivery.d.ts.map +1 -0
  86. package/dist/memory/history-delivery.js +85 -0
  87. package/dist/memory/history-delivery.js.map +1 -0
  88. package/dist/memory/hybrid-retrieval.d.ts +5 -0
  89. package/dist/memory/hybrid-retrieval.d.ts.map +1 -1
  90. package/dist/memory/hybrid-retrieval.js +28 -9
  91. package/dist/memory/hybrid-retrieval.js.map +1 -1
  92. package/dist/memory/interaction-contract.d.ts +12 -2
  93. package/dist/memory/interaction-contract.d.ts.map +1 -1
  94. package/dist/memory/interaction-contract.js +3 -2
  95. package/dist/memory/interaction-contract.js.map +1 -1
  96. package/dist/memory/interaction-recall.d.ts +3 -0
  97. package/dist/memory/interaction-recall.d.ts.map +1 -1
  98. package/dist/memory/interaction-recall.js +2 -1
  99. package/dist/memory/interaction-recall.js.map +1 -1
  100. package/dist/memory/lesson-derivation.d.ts +1 -1
  101. package/dist/memory/lifecycle.d.ts.map +1 -1
  102. package/dist/memory/lifecycle.js +18 -1
  103. package/dist/memory/lifecycle.js.map +1 -1
  104. package/dist/memory/observation-contract.d.ts +8 -2
  105. package/dist/memory/observation-contract.d.ts.map +1 -1
  106. package/dist/memory/observation-contract.js +3 -1
  107. package/dist/memory/observation-contract.js.map +1 -1
  108. package/dist/memory/observations.d.ts.map +1 -1
  109. package/dist/memory/observations.js +21 -5
  110. package/dist/memory/observations.js.map +1 -1
  111. package/dist/memory/relation-delivery.d.ts +107 -0
  112. package/dist/memory/relation-delivery.d.ts.map +1 -0
  113. package/dist/memory/relation-delivery.js +163 -0
  114. package/dist/memory/relation-delivery.js.map +1 -0
  115. package/dist/memory/retrieval.d.ts +14 -0
  116. package/dist/memory/retrieval.d.ts.map +1 -1
  117. package/dist/memory/retrieval.js +19 -11
  118. package/dist/memory/retrieval.js.map +1 -1
  119. package/dist/memory/structured-memory.d.ts +5 -0
  120. package/dist/memory/structured-memory.d.ts.map +1 -1
  121. package/dist/memory/structured-memory.js +28 -6
  122. package/dist/memory/structured-memory.js.map +1 -1
  123. package/dist/repository/binding-repair.d.ts +38 -0
  124. package/dist/repository/binding-repair.d.ts.map +1 -0
  125. package/dist/repository/binding-repair.js +129 -0
  126. package/dist/repository/binding-repair.js.map +1 -0
  127. package/dist/server/agent-checkpoint-use-case.d.ts.map +1 -1
  128. package/dist/server/agent-checkpoint-use-case.js +1 -0
  129. package/dist/server/agent-checkpoint-use-case.js.map +1 -1
  130. package/dist/server/routes/agent-capability-gate.d.ts.map +1 -1
  131. package/dist/server/routes/agent-capability-gate.js +1 -0
  132. package/dist/server/routes/agent-capability-gate.js.map +1 -1
  133. package/dist/web/server.d.ts.map +1 -1
  134. package/dist/web/server.js +5 -1
  135. package/dist/web/server.js.map +1 -1
  136. package/docs/README.ja.md +2 -0
  137. package/docs/README.md +2 -0
  138. package/docs/cli-contract.md +24 -5
  139. package/docs/context-delivery.md +69 -0
  140. package/docs/getting-started.ja.md +8 -5
  141. package/docs/getting-started.md +11 -8
  142. package/docs/history-evidence.md +139 -0
  143. package/docs/interaction-memory.md +1 -1
  144. package/docs/setup-notes.ja.md +122 -0
  145. package/docs/setup-notes.ko.md +107 -0
  146. package/docs/setup-notes.md +133 -0
  147. package/docs/setup-notes.zh-CN.md +107 -0
  148. package/migrations/014_code_version_evidence.sql +26 -0
  149. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"federated-retrieval.js","sourceRoot":"","sources":["../../src/memory/federated-retrieval.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"federated-retrieval.js","sourceRoot":"","sources":["../../src/memory/federated-retrieval.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ interface GlobalConversationQuery {
14
14
  /** Internal read service. Each caller must enforce its own client policy first. */
15
15
  export declare function queryGlobalConversationMemory(database: SqliteDatabase, input: GlobalConversationQuery, runtime?: HybridSearchRuntime, withholdOrdinary?: boolean, projectWorkspace?: string): {
16
16
  items: {
17
+ workspace: string;
17
18
  entryId: string;
18
19
  revision: number;
19
20
  kind: string;
@@ -30,6 +31,8 @@ export declare function queryGlobalConversationMemory(database: SqliteDatabase,
30
31
  }[];
31
32
  characterCount: number;
32
33
  truncated: boolean;
34
+ } & {
35
+ relationDelivery: import("./relation-delivery.js").RelationDelivery;
33
36
  };
34
37
  export {};
35
38
  //# sourceMappingURL=global-conversation-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-conversation-query.d.ts","sourceRoot":"","sources":["../../src/memory/global-conversation-query.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAC1D;AAED,mFAAmF;AACnF,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,uBAAuB,EAC9B,OAAO,GAAE,mBAAwB,EACjC,gBAAgB,UAAQ,EACxB,gBAAgB,CAAC,EAAE,MAAM;;iBA0BO,MAAM;kBAAY,MAAM;cAAQ,MAAM;gBAAU,MAAM;oBAAc,MAAM;eAC/F,MAAM;iBAAW,MAAM;kBAAY,MAAM,EAAE;kBAAY;YAAE,UAAU,EAAE,IAAI,CAAC;YAAC,SAAS,EAAE,IAAI,CAAC;YAAC,YAAY,EAAE,KAAK,CAAA;SAAE;;;;EA6B7H"}
1
+ {"version":3,"file":"global-conversation-query.d.ts","sourceRoot":"","sources":["../../src/memory/global-conversation-query.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAC1D;AAED,mFAAmF;AACnF,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,uBAAuB,EAC9B,OAAO,GAAE,mBAAwB,EACjC,gBAAgB,UAAQ,EACxB,gBAAgB,CAAC,EAAE,MAAM;;mBA0BS,MAAM;iBAAW,MAAM;kBAAY,MAAM;cAAQ,MAAM;gBAAU,MAAM;oBAAc,MAAM;eAClH,MAAM;iBAAW,MAAM;kBAAY,MAAM,EAAE;kBAAY;YAAE,UAAU,EAAE,IAAI,CAAC;YAAC,SAAS,EAAE,IAAI,CAAC;YAAC,YAAY,EAAE,KAAK,CAAA;SAAE;;;;;;EA+B7H"}
@@ -1,3 +1,4 @@
1
+ import { attachRelationDelivery } from './relation-delivery.js';
1
2
  import { rankedEntryHits } from './retrieval.js';
2
3
  import { readEntry } from './entries.js';
3
4
  import { withDeferredReadTransaction } from '../db/transaction.js';
@@ -38,7 +39,7 @@ export function queryGlobalConversationMemory(database, input, runtime = {}, wit
38
39
  const content = entry.summary ?? entry.body;
39
40
  if (withholdOrdinary && !isCuratorManagedGlobalMemory(entry))
40
41
  continue;
41
- const item = { entryId: entry.id, revision: entry.revision, kind: entry.kind, status: entry.status,
42
+ const item = { workspace: entry.workspace, entryId: entry.id, revision: entry.revision, kind: entry.kind, status: entry.status,
42
43
  trustLevel: entry.trustLevel, title: entry.title, content: '', subjects: memorySubjects(entry),
43
44
  metadata: { storedData: true, untrusted: true, instructions: false } };
44
45
  const overhead = Array.from(JSON.stringify(item)).length + (items.length ? 1 : 0);
@@ -65,7 +66,9 @@ export function queryGlobalConversationMemory(database, input, runtime = {}, wit
65
66
  characters += Array.from(JSON.stringify(item)).length + (items.length ? 1 : 0);
66
67
  items.push(item);
67
68
  }
68
- return { items, characterCount: items.length ? characters : 0, truncated };
69
+ return attachRelationDelivery(database, { items, characterCount: items.length ? characters : 0, truncated }, { itemLimit: input.limit,
70
+ selectionOmissions: [...(result.truncated ? ['item_limit'] : []), ...(truncated ? ['body_budget'] : []),
71
+ ...(withholdOrdinary ? ['final_filter'] : [])] });
69
72
  });
70
73
  }
71
74
  //# sourceMappingURL=global-conversation-query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-conversation-query.js","sourceRoot":"","sources":["../../src/memory/global-conversation-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"global-conversation-query.js","sourceRoot":"","sources":["../../src/memory/global-conversation-query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { SqliteDatabase } from '../db/adapter.js';
2
+ import { KiokukoError } from '../errors.js';
3
+ import { type EntryHistoryItem, type HistoryOmission } from './entry-history.js';
4
+ import { type CodeVersionView } from './code-versions.js';
5
+ export declare const DEFAULT_HISTORY_OUTPUT_CHARACTERS = 32000;
6
+ export declare class HistoryOutputBudgetError extends KiokukoError {
7
+ constructor(minimumCharacters: number);
8
+ }
9
+ export interface OutputDelivery {
10
+ characterBudget: number;
11
+ unit: 'unicode_code_points';
12
+ scope: 'serialized_response';
13
+ status: 'complete' | 'omitted_budget';
14
+ }
15
+ export interface HistoryDelivery {
16
+ scope: 'provided_items';
17
+ status: 'complete' | 'partial' | 'not_evaluated';
18
+ ancestors: EntryHistoryItem[];
19
+ codeVersions: CodeVersionView[];
20
+ omissions: HistoryOmission[];
21
+ storedData: true;
22
+ untrusted: true;
23
+ instructions: false;
24
+ executionPermission: false;
25
+ }
26
+ interface RecallItemIdentity {
27
+ id: string;
28
+ workspace: string;
29
+ title: string;
30
+ snippet: string;
31
+ revision?: number;
32
+ }
33
+ interface RecallPacket {
34
+ historySelectionOmissions?: HistoryOmission[];
35
+ items: RecallItemIdentity[];
36
+ count: number;
37
+ characterCount: number;
38
+ truncated: boolean;
39
+ relationDelivery?: unknown;
40
+ historyDelivery?: HistoryDelivery;
41
+ outputDelivery?: OutputDelivery;
42
+ }
43
+ export interface HistoryRecallOptions {
44
+ workspace: string;
45
+ cwd?: string;
46
+ includeHistory?: boolean;
47
+ maxOutputChars?: number;
48
+ measure?: (value: object) => number;
49
+ }
50
+ export declare function readHistoryDelivery(db: SqliteDatabase, workspace: string, entryIds: readonly string[], cwd?: string, expectedRevisions?: ReadonlyMap<string, number>): HistoryDelivery;
51
+ /** Bound the FINAL representation, including optional consumer envelopes, rather than counting body snippets alone. */
52
+ export declare function finalizeHistoryRecall<T extends RecallPacket>(db: SqliteDatabase, value: T, options: HistoryRecallOptions): T & {
53
+ historyDelivery?: HistoryDelivery;
54
+ outputDelivery?: OutputDelivery;
55
+ };
56
+ export {};
57
+ //# sourceMappingURL=history-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-delivery.d.ts","sourceRoot":"","sources":["../../src/memory/history-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAqB,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG5E,eAAO,MAAM,iCAAiC,QAAQ,CAAC;AACvD,qBAAa,wBAAyB,SAAQ,YAAY;gBAC1C,iBAAiB,EAAE,MAAM;CACxC;AACD,MAAM,WAAW,cAAc;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,UAAU,GAAG,gBAAgB,CAAC;CACzC;AACD,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,eAAe,CAAC;IACjD,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,YAAY,EAAE,KAAK,CAAC;IACpB,mBAAmB,EAAE,KAAK,CAAC;CAC9B;AACD,UAAU,kBAAkB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,UAAU,YAAY;IAClB,yBAAyB,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9C,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;CACnC;AACD,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,eAAe,CAmBtL;AACD,uHAAuH;AACvH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,GAAG,CAAC,GAAG;IAC5H,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;CACnC,CAqDA"}
@@ -0,0 +1,85 @@
1
+ import { withDeferredReadTransaction } from '../db/transaction.js';
2
+ import { KiokukoError } from '../errors.js';
3
+ import { currentMemoryApplicability, assertMemoryApplicabilityUnchanged, matchesMemoryApplicability } from './applicability-context.js';
4
+ import { readEntryAncestry } from './entry-history.js';
5
+ import { readCodeVersions } from './code-versions.js';
6
+ import { readEntry } from './entries.js';
7
+ import { restrictRelationDelivery } from './relation-delivery.js';
8
+ export const DEFAULT_HISTORY_OUTPUT_CHARACTERS = 32000;
9
+ export class HistoryOutputBudgetError extends KiokukoError {
10
+ constructor(minimumCharacters) { super('VALIDATION_ERROR', 'Final recall budget cannot fit its explicit envelope and omission status', { reason: 'output_budget_too_small', minimumCharacters }); }
11
+ }
12
+ const count = (value) => Array.from(JSON.stringify(value)).length;
13
+ export function readHistoryDelivery(db, workspace, entryIds, cwd, expectedRevisions) {
14
+ const context = currentMemoryApplicability(db, workspace, cwd);
15
+ if (entryIds.length > 1000)
16
+ throw new KiokukoError('VALIDATION_ERROR', 'Too many history seeds');
17
+ const read = () => {
18
+ const validIds = entryIds.filter(entryId => {
19
+ const entry = readEntry(db, { workspace, entryId });
20
+ if (entry.status === 'superseded' || expectedRevisions?.has(entryId) && entry.revision !== expectedRevisions.get(entryId))
21
+ throw new KiokukoError('CONFLICT', 'Active history seed changed during retrieval');
22
+ return matchesMemoryApplicability(entry, context);
23
+ });
24
+ const history = readEntryAncestry(db, workspace, validIds, context);
25
+ const versions = readCodeVersions(db, context, [...new Set([...validIds, ...history.items.map(x => x.entryId)])]);
26
+ assertMemoryApplicabilityUnchanged(db, context, cwd);
27
+ const omissions = [...history.omissions, ...versions.omissions];
28
+ return { scope: 'provided_items', status: entryIds.length === 0 ? 'not_evaluated' : omissions.some(o => o.reason !== 'not_evaluated') ? 'partial' : 'complete',
29
+ ancestors: history.items, codeVersions: versions.items, omissions, storedData: true, untrusted: true, instructions: false, executionPermission: false };
30
+ };
31
+ return withDeferredReadTransaction(db, read);
32
+ }
33
+ /** Bound the FINAL representation, including optional consumer envelopes, rather than counting body snippets alone. */
34
+ export function finalizeHistoryRecall(db, value, options) {
35
+ if (!options.includeHistory && options.maxOutputChars === undefined)
36
+ return value;
37
+ const budget = options.maxOutputChars ?? DEFAULT_HISTORY_OUTPUT_CHARACTERS;
38
+ if (!Number.isSafeInteger(budget) || budget < 1 || budget > 1000000)
39
+ throw new KiokukoError('VALIDATION_ERROR', 'Final recall budget must be an integer between 1 and 1000000');
40
+ const measure = options.measure ?? count;
41
+ let result = { ...value, items: [...value.items], outputDelivery: { characterBudget: budget, unit: 'unicode_code_points', scope: 'serialized_response', status: 'complete' }, ...(options.includeHistory ? { historyDelivery: readHistoryDelivery(db, options.workspace, value.items.filter(i => i.workspace === options.workspace).map(i => i.id), options.cwd, new Map(value.items.flatMap(i => i.revision === undefined ? [] : [[i.id, i.revision]]))) } : {}) };
42
+ if (result.historyDelivery && value.historySelectionOmissions?.length)
43
+ result.historyDelivery = { ...result.historyDelivery, status: 'partial', omissions: [...result.historyDelivery.omissions, ...value.historySelectionOmissions] };
44
+ const original = value.items.map(item => ({ entryId: item.id, workspace: item.workspace, ...(item.revision === undefined ? {} : { revision: item.revision }) }));
45
+ const mark = () => {
46
+ result.truncated = true;
47
+ result.outputDelivery = { characterBudget: budget, unit: 'unicode_code_points', scope: 'serialized_response', status: 'omitted_budget' };
48
+ if (result.historyDelivery) {
49
+ result.historyDelivery = { ...result.historyDelivery, status: 'partial', omissions: [...result.historyDelivery.omissions.filter(o => o.reason !== 'output_budget'), { reason: 'output_budget', disposition: 'omitted' }] };
50
+ }
51
+ };
52
+ while (measure(result) > budget && result.historyDelivery && (result.historyDelivery.codeVersions.length || result.historyDelivery.ancestors.length)) {
53
+ mark();
54
+ const history = result.historyDelivery;
55
+ result.historyDelivery = history.codeVersions.length ? { ...history, codeVersions: history.codeVersions.slice(0, -1) } : { ...history, ancestors: history.ancestors.slice(0, -1) };
56
+ }
57
+ if (measure(result) > budget && result.items.length) {
58
+ mark();
59
+ const base = result;
60
+ const prefix = (length) => {
61
+ const items = value.items.slice(0, length), packet = { ...base, items, count: items.length,
62
+ characterCount: items.reduce((sum, item) => sum + Array.from(item.title).length + 1 + Array.from(item.snippet).length, 0) };
63
+ if (value.relationDelivery !== undefined)
64
+ packet.relationDelivery = restrictRelationDelivery(value.relationDelivery, original, items.map(item => ({ entryId: item.id, workspace: item.workspace, ...(item.revision === undefined ? {} : { revision: item.revision }) })), { selectionOmissions: ['final_filter'] });
65
+ if (packet.historyDelivery)
66
+ packet.historyDelivery = { ...packet.historyDelivery, ancestors: [], codeVersions: [] };
67
+ return packet;
68
+ };
69
+ let low = 0, high = result.items.length, best = prefix(0);
70
+ while (low <= high) {
71
+ const middle = Math.floor((low + high) / 2), candidate = prefix(middle);
72
+ if (measure(candidate) <= budget) {
73
+ best = candidate;
74
+ low = middle + 1;
75
+ }
76
+ else
77
+ high = middle - 1;
78
+ }
79
+ result = best;
80
+ }
81
+ if (measure(result) > budget)
82
+ throw new HistoryOutputBudgetError(measure(result));
83
+ return result;
84
+ }
85
+ //# sourceMappingURL=history-delivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-delivery.js","sourceRoot":"","sources":["../../src/memory/history-delivery.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { type MemoryApplicabilityContext } from './applicability-context.js';
2
+ import { type HistoryOmission } from './entry-history.js';
1
3
  import type { SqliteDatabase } from '../db/adapter.js';
2
4
  import type { PreparedSemanticQuery, VectorSearchBackend } from '../embedding/types.js';
3
5
  import { type EntryKind, type EntryStatus } from '../serialization/validate.js';
@@ -11,6 +13,8 @@ export interface RelatedSearchObservation {
11
13
  readonly deliveredCandidateCount: 0;
12
14
  }
13
15
  export interface HybridSearchRuntime {
16
+ readonly onHistoryOmission?: (value: HistoryOmission) => void;
17
+ readonly applicabilityContext?: MemoryApplicabilityContext;
14
18
  readonly semantic?: {
15
19
  readonly query: PreparedSemanticQuery;
16
20
  readonly backend: VectorSearchBackend;
@@ -23,6 +27,7 @@ export interface HybridSearchInput {
23
27
  /** Internal baseline pass protects the original candidate pool. */
24
28
  indexOriginalsOnly?: boolean;
25
29
  workspace: string;
30
+ cwd?: string;
26
31
  query: string;
27
32
  limit: number;
28
33
  kind?: EntryKind;
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid-retrieval.d.ts","sourceRoot":"","sources":["../../src/memory/hybrid-retrieval.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAGxF,OAAO,EAAwD,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACtI,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3D,OAAO,EAA0D,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGhH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;AAC9G,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,uBAAuB,EAAE,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;QACtC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;KACvC,CAAC;IACF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,wBAAwB,KAAK,IAAI,CAAC;CACjF;AAED,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mEAAmE;IACnE,kBAAkB,CAAC,EAAC,OAAO,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AA6BD,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,UAAQ,GAAG,OAAO,CAgCjH;AAED,uFAAuF;AACvF,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CA0ClG;AA4VD,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,iBAAiB,EACxB,OAAO,GAAE,mBAAwB,GAChC,kBAAkB,EAAE,CAoHtB"}
1
+ {"version":3,"file":"hybrid-retrieval.d.ts","sourceRoot":"","sources":["../../src/memory/hybrid-retrieval.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { currentMemoryApplicability, matchesMemoryApplicability, assertMemoryApplicabilityUnchanged } from './applicability-context.js';
2
+ import { resolveCurrentSuccessor, MAX_HISTORY_NODES } from './entry-history.js';
1
3
  import { indexMode, isIndexArtifact, indexArtifact } from './index-state.js';
2
4
  import { KiokukoError } from '../errors.js';
3
5
  import { parseRetrievalQuery, normalizeSearchSignal } from './retrieval-query.js';
@@ -76,6 +78,11 @@ export function retrievableWorkspaceEntryCount(database, workspace) {
76
78
  JOIN entry_revisions AS r
77
79
  ON r.entry_id = e.id AND r.revision = e.current_revision
78
80
  WHERE e.workspace = ? AND e.status <> 'superseded'
81
+ AND CASE WHEN json_valid(r.scope_json)
82
+ AND json_extract(r.scope_json,'$.schemaVersion')=3
83
+ AND json_type(r.scope_json,'$.applicability.ownerIds')='array'
84
+ AND json_array_length(r.scope_json,'$.applicability.ownerIds')>0
85
+ THEN EXISTS(SELECT 1 FROM json_each(r.scope_json,'$.applicability.ownerIds') WHERE value=?) ELSE 1 END
79
86
  )
80
87
  SELECT COUNT(*) AS count
81
88
  FROM current_entries AS e
@@ -100,7 +107,7 @@ export function retrievableWorkspaceEntryCount(database, workspace) {
100
107
  AND m.active = 1
101
108
  )
102
109
  )
103
- `).get(workspace)?.count;
110
+ `).get(workspace, process.getuid ? `local:${process.getuid()}` : null)?.count;
104
111
  if (typeof count !== 'number' || !Number.isSafeInteger(count) || count < 0) {
105
112
  throw new KiokukoError('INTEGRITY_ERROR', 'Stored entry count is invalid');
106
113
  }
@@ -470,6 +477,8 @@ export function hybridSearch(database, input, runtime = {}) {
470
477
  relatedSeedLimit,
471
478
  relatedCandidateLimit,
472
479
  };
480
+ const context = runtime.applicabilityContext ?? currentMemoryApplicability(database, input.workspace, input.cwd);
481
+ const successorExpansion = relatedMode === 'active' && !input.includeSuperseded;
473
482
  const parsed = parseRetrievalQuery(input.query);
474
483
  if (parsed.normalized.length === 0)
475
484
  return [];
@@ -478,15 +487,22 @@ export function hybridSearch(database, input, runtime = {}) {
478
487
  const lexicalAllowed = !/(?:--|\/\*|\*\/|["']\s*(?:OR|AND)\b|\b(?:OR|AND)\s+\d+\s*[=<>])/iu.test(parsed.normalized)
479
488
  || parsed.exactSignals.length > 0;
480
489
  const merged = new Map();
481
- for (const [lane, rows] of laneRows(database, normalizedInput, parsed, runtime, lexicalAllowed)) {
490
+ for (const [lane, rows] of laneRows(database, successorExpansion ? { ...normalizedInput, includeSuperseded: true } : normalizedInput, parsed, runtime, lexicalAllowed)) {
482
491
  const seen = new Set();
483
492
  let rank = 0;
484
493
  for (const row of rows) {
485
- if (seen.has(row.id))
494
+ const original = readRetrievalEntry(database, input.workspace, row.id);
495
+ if (!original || !matchesMemoryApplicability(original, context))
486
496
  continue;
487
- seen.add(row.id);
497
+ const resolved = successorExpansion && original.status === 'superseded' ? resolveCurrentSuccessor(database, original, context, MAX_HISTORY_NODES, runtime.onHistoryOmission) : original;
498
+ if (!resolved || !matchesMemoryApplicability(resolved, context))
499
+ continue;
500
+ const candidateId = resolved.id;
501
+ if (seen.has(candidateId))
502
+ continue;
503
+ seen.add(candidateId);
488
504
  rank += 1;
489
- const existing = merged.get(row.id) ?? { entryId: row.id, fusedScore: 0, laneRanks: {}, matchedSignals: [], reasons: [] };
505
+ const existing = merged.get(candidateId) ?? { entryId: candidateId, fusedScore: 0, laneRanks: {}, matchedSignals: [], reasons: [] };
490
506
  existing.fusedScore += LANE_WEIGHTS[lane] / (RRF_K + rank);
491
507
  existing.laneRanks[lane] = Math.min(existing.laneRanks[lane] ?? rank, rank);
492
508
  if (lane === 'exact-signal')
@@ -504,8 +520,10 @@ export function hybridSearch(database, input, runtime = {}) {
504
520
  existing.reasons.push('tag_match');
505
521
  if (lane === 'semantic')
506
522
  existing.reasons.push('semantic_match');
523
+ if (candidateId !== row.id)
524
+ existing.reasons.push('current_successor');
507
525
  existing.matchedSignals.push(...parsed.exactSignals.map((signal) => signal.value));
508
- merged.set(row.id, existing);
526
+ merged.set(candidateId, existing);
509
527
  if (merged.size >= MAX_MERGED_CANDIDATES)
510
528
  break;
511
529
  }
@@ -518,11 +536,11 @@ export function hybridSearch(database, input, runtime = {}) {
518
536
  const entry = readRetrievalEntry(database, input.workspace, candidate.entryId);
519
537
  if (!entry)
520
538
  return false;
521
- return isRetrievableEntry(database, entry, input.indexEvaluation) && (temporal?.mode !== 'restrict'
539
+ return matchesMemoryApplicability(entry, context) && isRetrievableEntry(database, entry, input.indexEvaluation) && (temporal?.mode !== 'restrict'
522
540
  || matchesTemporalConstraint(database, entry, temporal));
523
541
  })
524
542
  .map((candidate) => candidate.entryId);
525
- const related = relatedLane(database, input.workspace, seeds, relatedCandidateLimit);
543
+ const related = relatedLane(database, input.workspace, seeds, relatedCandidateLimit).filter(row => { const entry = readRetrievalEntry(database, input.workspace, row.id); return entry !== undefined && matchesMemoryApplicability(entry, context); });
526
544
  if (relatedMode === 'observe') {
527
545
  runtime.onRelatedDiagnostics?.({ seedCount: seeds.length, candidateCount: related.length, deliveredCandidateCount: 0 });
528
546
  }
@@ -553,7 +571,7 @@ export function hybridSearch(database, input, runtime = {}) {
553
571
  return false;
554
572
  if (input.indexOriginalsOnly && isIndexArtifact(entry))
555
573
  return false;
556
- if (!isRetrievableEntry(database, entry, input.indexEvaluation))
574
+ if (!matchesMemoryApplicability(entry, context) || !isRetrievableEntry(database, entry, input.indexEvaluation))
557
575
  return false;
558
576
  if (temporal !== undefined) {
559
577
  const matches = matchesTemporalConstraint(database, entry, temporal);
@@ -586,6 +604,7 @@ export function hybridSearch(database, input, runtime = {}) {
586
604
  const generated = eligibleCandidates.filter(hit => generatedIds.has(hit.entryId)).slice(0, Math.max(1, Math.floor(input.limit / 2)));
587
605
  return [...originals, ...generated].sort((left, right) => Number(right.reasons.includes('repeated_lesson')) - Number(left.reasons.includes('repeated_lesson')) || right.fusedScore - left.fusedScore || compareCanonicalStrings(left.entryId, right.entryId));
588
606
  }
607
+ assertMemoryApplicabilityUnchanged(database, context, context.repositoryRoot);
589
608
  return eligibleCandidates;
590
609
  }
591
610
  //# sourceMappingURL=hybrid-retrieval.js.map