@duckcodeailabs/dql-agent 1.11.10 → 1.12.1

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 (76) hide show
  1. package/dist/agent-run-engine.d.ts.map +1 -1
  2. package/dist/agent-run-engine.js +7 -3
  3. package/dist/agent-run-engine.js.map +1 -1
  4. package/dist/answer-loop.d.ts +25 -1
  5. package/dist/answer-loop.d.ts.map +1 -1
  6. package/dist/answer-loop.js +141 -17
  7. package/dist/answer-loop.js.map +1 -1
  8. package/dist/conversation/rolling-summary.d.ts +23 -0
  9. package/dist/conversation/rolling-summary.d.ts.map +1 -1
  10. package/dist/conversation/rolling-summary.js +64 -0
  11. package/dist/conversation/rolling-summary.js.map +1 -1
  12. package/dist/conversation/session-store.d.ts +18 -2
  13. package/dist/conversation/session-store.d.ts.map +1 -1
  14. package/dist/conversation/session-store.js +65 -8
  15. package/dist/conversation/session-store.js.map +1 -1
  16. package/dist/conversation/snapshot.d.ts +37 -4
  17. package/dist/conversation/snapshot.d.ts.map +1 -1
  18. package/dist/conversation/snapshot.js +115 -6
  19. package/dist/conversation/snapshot.js.map +1 -1
  20. package/dist/hints/correction-eval.d.ts.map +1 -1
  21. package/dist/hints/correction-eval.js +4 -6
  22. package/dist/hints/correction-eval.js.map +1 -1
  23. package/dist/hints/dependencies.d.ts +63 -0
  24. package/dist/hints/dependencies.d.ts.map +1 -0
  25. package/dist/hints/dependencies.js +196 -0
  26. package/dist/hints/dependencies.js.map +1 -0
  27. package/dist/hints/git-store.d.ts +55 -2
  28. package/dist/hints/git-store.d.ts.map +1 -1
  29. package/dist/hints/git-store.js +246 -11
  30. package/dist/hints/git-store.js.map +1 -1
  31. package/dist/hints/graph.d.ts +17 -0
  32. package/dist/hints/graph.d.ts.map +1 -0
  33. package/dist/hints/graph.js +222 -0
  34. package/dist/hints/graph.js.map +1 -0
  35. package/dist/hints/lifecycle.d.ts +107 -0
  36. package/dist/hints/lifecycle.d.ts.map +1 -0
  37. package/dist/hints/lifecycle.js +415 -0
  38. package/dist/hints/lifecycle.js.map +1 -0
  39. package/dist/hints/retrieval.d.ts +13 -1
  40. package/dist/hints/retrieval.d.ts.map +1 -1
  41. package/dist/hints/retrieval.js +74 -11
  42. package/dist/hints/retrieval.js.map +1 -1
  43. package/dist/hints/store.d.ts +9 -2
  44. package/dist/hints/store.d.ts.map +1 -1
  45. package/dist/hints/store.js +155 -15
  46. package/dist/hints/store.js.map +1 -1
  47. package/dist/hints/types.d.ts +63 -3
  48. package/dist/hints/types.d.ts.map +1 -1
  49. package/dist/hints/types.js +1 -1
  50. package/dist/hints/types.js.map +1 -1
  51. package/dist/index.d.ts +17 -11
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +9 -6
  54. package/dist/index.js.map +1 -1
  55. package/dist/intent-controller.d.ts.map +1 -1
  56. package/dist/intent-controller.js +24 -3
  57. package/dist/intent-controller.js.map +1 -1
  58. package/dist/metadata/catalog.d.ts +32 -0
  59. package/dist/metadata/catalog.d.ts.map +1 -1
  60. package/dist/metadata/catalog.js +86 -4
  61. package/dist/metadata/catalog.js.map +1 -1
  62. package/dist/metadata/sql-context-validation.d.ts.map +1 -1
  63. package/dist/metadata/sql-context-validation.js +16 -0
  64. package/dist/metadata/sql-context-validation.js.map +1 -1
  65. package/dist/metadata/sql-grounding.d.ts +7 -0
  66. package/dist/metadata/sql-grounding.d.ts.map +1 -1
  67. package/dist/metadata/sql-grounding.js +26 -1
  68. package/dist/metadata/sql-grounding.js.map +1 -1
  69. package/dist/router.d.ts.map +1 -1
  70. package/dist/router.js +32 -9
  71. package/dist/router.js.map +1 -1
  72. package/dist/skills/loader.js +1 -1
  73. package/dist/skills/loader.js.map +1 -1
  74. package/dist/tools/registry.js +5 -5
  75. package/dist/tools/registry.js.map +1 -1
  76. package/package.json +4 -4
@@ -6,8 +6,31 @@
6
6
  * deterministic form is always the fallback and never blocks.
7
7
  */
8
8
  import type { ConversationTurn } from './session-store.js';
9
+ export type ConversationSummaryEntryState = 'confirmed' | 'provisional' | 'unresolved' | 'blocked' | 'context';
10
+ export interface ConversationSummaryEntryV1 {
11
+ sourceTurnId: string;
12
+ state: ConversationSummaryEntryState;
13
+ question: string;
14
+ answerSummary?: string;
15
+ evidenceRefs?: string[];
16
+ }
17
+ /**
18
+ * Trust-aware compaction stored beside the legacy text summary. It is entirely
19
+ * deterministic: no model is allowed to turn a failed or review-required turn
20
+ * into confirmed session context.
21
+ */
22
+ export interface ConversationSummaryV1 {
23
+ version: 1;
24
+ entries: ConversationSummaryEntryV1[];
25
+ }
9
26
  export declare function updateRollingSummary(input: {
10
27
  previousSummary?: string;
11
28
  compactedTurns: ConversationTurn[];
12
29
  }): string | undefined;
30
+ export declare function updateStructuredConversationSummary(input: {
31
+ previousSummary?: ConversationSummaryV1;
32
+ compactedTurns: ConversationTurn[];
33
+ }): ConversationSummaryV1 | undefined;
34
+ /** Bounded prompt projection; source ids and trust states remain visible. */
35
+ export declare function renderStructuredConversationSummary(summary: ConversationSummaryV1 | undefined): string | undefined;
13
36
  //# sourceMappingURL=rolling-summary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rolling-summary.d.ts","sourceRoot":"","sources":["../../src/conversation/rolling-summary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAK3D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,gBAAgB,EAAE,CAAC;CACpC,GAAG,MAAM,GAAG,SAAS,CAerB"}
1
+ {"version":3,"file":"rolling-summary.d.ts","sourceRoot":"","sources":["../../src/conversation/rolling-summary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAO3D,MAAM,MAAM,6BAA6B,GACrC,WAAW,GACX,aAAa,GACb,YAAY,GACZ,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,6BAA6B,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,0BAA0B,EAAE,CAAC;CACvC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,gBAAgB,EAAE,CAAC;CACpC,GAAG,MAAM,GAAG,SAAS,CAerB;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE;IACzD,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,cAAc,EAAE,gBAAgB,EAAE,CAAC;CACpC,GAAG,qBAAqB,GAAG,SAAS,CAWpC;AAED,6EAA6E;AAC7E,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,qBAAqB,GAAG,SAAS,GACzC,MAAM,GAAG,SAAS,CAUpB"}
@@ -7,6 +7,8 @@
7
7
  */
8
8
  const MAX_SUMMARY_CHARS = 600;
9
9
  const MAX_LINE_CHARS = 200;
10
+ const MAX_STRUCTURED_ENTRIES = 12;
11
+ const MAX_STRUCTURED_TEXT = 320;
10
12
  export function updateRollingSummary(input) {
11
13
  const newLines = input.compactedTurns.map(summarizeTurn).filter(Boolean);
12
14
  const lines = [
@@ -24,6 +26,32 @@ export function updateRollingSummary(input) {
24
26
  }
25
27
  return kept.length > 0 ? kept.join('\n') : undefined;
26
28
  }
29
+ export function updateStructuredConversationSummary(input) {
30
+ const existing = input.previousSummary?.version === 1
31
+ ? input.previousSummary.entries
32
+ : [];
33
+ const byTurnId = new Map();
34
+ for (const entry of existing)
35
+ byTurnId.set(entry.sourceTurnId, entry);
36
+ for (const turn of input.compactedTurns) {
37
+ byTurnId.set(turn.id, structuredEntry(turn));
38
+ }
39
+ const entries = Array.from(byTurnId.values()).slice(-MAX_STRUCTURED_ENTRIES);
40
+ return entries.length > 0 ? { version: 1, entries } : undefined;
41
+ }
42
+ /** Bounded prompt projection; source ids and trust states remain visible. */
43
+ export function renderStructuredConversationSummary(summary) {
44
+ if (!summary?.entries.length)
45
+ return undefined;
46
+ return summary.entries.map((entry) => {
47
+ const parts = [
48
+ `[${entry.state}; turn=${entry.sourceTurnId}] Q: ${entry.question}`,
49
+ entry.answerSummary ? `A: ${entry.answerSummary}` : '',
50
+ entry.evidenceRefs?.length ? `evidence: ${entry.evidenceRefs.join(', ')}` : '',
51
+ ].filter(Boolean);
52
+ return parts.join(' | ');
53
+ }).join('\n');
54
+ }
27
55
  function summarizeTurn(turn) {
28
56
  const columns = turn.result?.columns?.slice(0, 5).join(', ');
29
57
  const values = turn.result?.dimensionValues
@@ -40,4 +68,40 @@ function summarizeTurn(turn) {
40
68
  ].filter(Boolean).join(' | ');
41
69
  return line.length > MAX_LINE_CHARS ? `${line.slice(0, MAX_LINE_CHARS - 1)}…` : line;
42
70
  }
71
+ function structuredEntry(turn) {
72
+ const evidenceRefs = Array.from(new Set([
73
+ turn.sourceCertifiedBlock,
74
+ turn.dqlArtifact?.name,
75
+ turn.contextPackId,
76
+ ].filter((value) => Boolean(value?.trim())))).slice(0, 4);
77
+ return {
78
+ sourceTurnId: turn.id,
79
+ state: summaryState(turn),
80
+ question: compact(turn.question),
81
+ answerSummary: turn.answerSummary ? compact(turn.answerSummary) : undefined,
82
+ evidenceRefs: evidenceRefs.length > 0 ? evidenceRefs : undefined,
83
+ };
84
+ }
85
+ function summaryState(turn) {
86
+ if (turn.runStatus === 'blocked' || turn.trustLabel === 'blocked' || turn.route === 'blocked') {
87
+ return 'blocked';
88
+ }
89
+ if (turn.runStatus === 'needs_clarification' || turn.route === 'clarify') {
90
+ return 'unresolved';
91
+ }
92
+ if (turn.runStatus === 'needs_review' || turn.trustLabel === 'review_required') {
93
+ return 'provisional';
94
+ }
95
+ if (turn.runStatus === 'completed'
96
+ && (turn.trustLabel === 'certified' || turn.trustLabel === 'governed' || turn.trustLabel === 'grounded')) {
97
+ return 'confirmed';
98
+ }
99
+ return 'context';
100
+ }
101
+ function compact(value) {
102
+ const normalized = value.trim().replace(/\s+/g, ' ');
103
+ return normalized.length > MAX_STRUCTURED_TEXT
104
+ ? `${normalized.slice(0, MAX_STRUCTURED_TEXT - 1)}…`
105
+ : normalized;
106
+ }
43
107
  //# sourceMappingURL=rolling-summary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rolling-summary.js","sourceRoot":"","sources":["../../src/conversation/rolling-summary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B,MAAM,UAAU,oBAAoB,CAAC,KAGpC;IACC,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG;QACZ,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,QAAQ;KACZ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,4DAA4D;IAC5D,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACnC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,iBAAiB;YAAE,MAAM;QACvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnB,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,IAAsB;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,eAAe;QACzC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;aACxC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;aAC9D,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,IAAI,GAAG;QACX,MAAM,IAAI,CAAC,QAAQ,EAAE;QACrB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;QACpD,OAAO,CAAC,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;QACjC,MAAM,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;KAChC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACvF,CAAC"}
1
+ {"version":3,"file":"rolling-summary.js","sourceRoot":"","sources":["../../src/conversation/rolling-summary.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Server-side conversation session store: threads + ordered turns, persisted in
3
- * `.dql/cache/agent-conversations.sqlite` so multi-turn context survives page
4
- * refreshes and process restarts.
3
+ * `.dql/local/agent-conversations.sqlite` so multi-turn context survives page
4
+ * refreshes, process restarts, cache rebuilds, and DQL upgrades.
5
5
  *
6
6
  * This is the SESSION layer — auto-captured, compactable, per-thread. It is
7
7
  * strictly separate from the governed durable memory (`MemoryStore`): raw chat
@@ -12,6 +12,7 @@
12
12
  import type { AgentDqlArtifactReference } from '../answer-loop.js';
13
13
  import type { CascadeAnswerResult } from '../cascade/cascade.js';
14
14
  import type { KnowledgeLens } from '../domain-context.js';
15
+ import type { ConversationSummaryV1 } from './rolling-summary.js';
15
16
  export interface ConversationThread {
16
17
  id: string;
17
18
  surface: string;
@@ -20,6 +21,8 @@ export interface ConversationThread {
20
21
  /** Opaque working-state JSON — owned/typed by conversation/working-state.ts. */
21
22
  workingState: Record<string, unknown>;
22
23
  rollingSummary?: string;
24
+ /** Trust-aware structured compaction. `rollingSummary` remains the v1 text compatibility view. */
25
+ structuredSummary?: ConversationSummaryV1;
23
26
  /** Highest turn seq already folded into rollingSummary (compaction cursor). */
24
27
  summaryTurnSeq: number;
25
28
  archived: boolean;
@@ -41,6 +44,8 @@ export interface ConversationTurnInput {
41
44
  answerText?: string;
42
45
  route?: string;
43
46
  trustLabel?: string;
47
+ runStatus?: string;
48
+ stopReason?: string;
44
49
  certification?: string;
45
50
  sourceCertifiedBlock?: string;
46
51
  contextPackId?: string;
@@ -65,6 +70,16 @@ export interface ConversationTurnSearchOptions {
65
70
  limit?: number;
66
71
  }
67
72
  export declare function defaultConversationPath(projectRoot: string): string;
73
+ export declare function legacyConversationPath(projectRoot: string): string;
74
+ /**
75
+ * Move the original conversation database out of rebuildable cache storage.
76
+ * SQLite backup reads committed WAL pages too, so history is retained even
77
+ * when the legacy store last closed with a non-empty WAL file.
78
+ *
79
+ * Keep the legacy database as a recovery copy until `.dql/cache` is next
80
+ * cleared. Only the durable `.dql/local` copy is opened after migration.
81
+ */
82
+ export declare function prepareConversationPath(projectRoot: string): Promise<string>;
68
83
  export declare class ConversationStore {
69
84
  private db;
70
85
  constructor(dbPath: string);
@@ -104,6 +119,7 @@ export declare class ConversationStore {
104
119
  updateThreadState(threadId: string, input: {
105
120
  workingState?: Record<string, unknown>;
106
121
  rollingSummary?: string;
122
+ structuredSummary?: ConversationSummaryV1;
107
123
  summaryTurnSeq?: number;
108
124
  }): void;
109
125
  /** FTS keyword search over turns; hybrid embedding re-ranking layers on top (P5). */
@@ -1 +1 @@
1
- {"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/conversation/session-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/conversation/session-store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Server-side conversation session store: threads + ordered turns, persisted in
3
- * `.dql/cache/agent-conversations.sqlite` so multi-turn context survives page
4
- * refreshes and process restarts.
3
+ * `.dql/local/agent-conversations.sqlite` so multi-turn context survives page
4
+ * refreshes, process restarts, cache rebuilds, and DQL upgrades.
5
5
  *
6
6
  * This is the SESSION layer — auto-captured, compactable, per-thread. It is
7
7
  * strictly separate from the governed durable memory (`MemoryStore`): raw chat
@@ -9,7 +9,7 @@
9
9
  * an explicit promotion action. Modeled on `memory/sqlite-memory.ts`
10
10
  * (better-sqlite3, WAL, FTS5 porter).
11
11
  */
12
- import { mkdirSync } from 'node:fs';
12
+ import { existsSync, mkdirSync, renameSync, rmSync } from 'node:fs';
13
13
  import { dirname, join } from 'node:path';
14
14
  import { createRequire } from 'node:module';
15
15
  import { sanitizeFtsQuery } from '../memory/fts-query.js';
@@ -33,8 +33,48 @@ const MAX_SUMMARY = 1200;
33
33
  const MAX_DQL_SOURCE = 3000;
34
34
  const MAX_COMPILED_SQL = 12_000;
35
35
  export function defaultConversationPath(projectRoot) {
36
+ return join(projectRoot, '.dql', 'local', 'agent-conversations.sqlite');
37
+ }
38
+ export function legacyConversationPath(projectRoot) {
36
39
  return join(projectRoot, '.dql', 'cache', 'agent-conversations.sqlite');
37
40
  }
41
+ /**
42
+ * Move the original conversation database out of rebuildable cache storage.
43
+ * SQLite backup reads committed WAL pages too, so history is retained even
44
+ * when the legacy store last closed with a non-empty WAL file.
45
+ *
46
+ * Keep the legacy database as a recovery copy until `.dql/cache` is next
47
+ * cleared. Only the durable `.dql/local` copy is opened after migration.
48
+ */
49
+ export async function prepareConversationPath(projectRoot) {
50
+ const target = defaultConversationPath(projectRoot);
51
+ const legacy = legacyConversationPath(projectRoot);
52
+ if (existsSync(target) || !existsSync(legacy))
53
+ return target;
54
+ mkdirSync(dirname(target), { recursive: true });
55
+ const temporaryTarget = `${target}.migrating-${process.pid}-${Date.now()}`;
56
+ const Database = loadDatabase();
57
+ const legacyDb = new Database(legacy, { readonly: true });
58
+ try {
59
+ await legacyDb.backup(temporaryTarget);
60
+ if (existsSync(target)) {
61
+ rmSync(temporaryTarget, { force: true });
62
+ }
63
+ else {
64
+ renameSync(temporaryTarget, target);
65
+ }
66
+ }
67
+ catch {
68
+ rmSync(temporaryTarget, { force: true });
69
+ // History availability must not block Notebook startup. Keep using the
70
+ // intact legacy store for this process and retry migration next restart.
71
+ return legacy;
72
+ }
73
+ finally {
74
+ legacyDb.close();
75
+ }
76
+ return target;
77
+ }
38
78
  export class ConversationStore {
39
79
  db;
40
80
  constructor(dbPath) {
@@ -53,6 +93,7 @@ export class ConversationStore {
53
93
  notebook_path TEXT,
54
94
  working_state_json TEXT NOT NULL DEFAULT '{}',
55
95
  rolling_summary TEXT,
96
+ summary_json TEXT NOT NULL DEFAULT '{}',
56
97
  summary_turn_seq INTEGER NOT NULL DEFAULT 0,
57
98
  archived INTEGER NOT NULL DEFAULT 0,
58
99
  created_at TEXT NOT NULL,
@@ -72,6 +113,8 @@ export class ConversationStore {
72
113
  answer_text TEXT,
73
114
  route TEXT,
74
115
  trust_label TEXT,
116
+ run_status TEXT,
117
+ stop_reason TEXT,
75
118
  certification TEXT,
76
119
  source_certified_block TEXT,
77
120
  context_pack_id TEXT,
@@ -101,6 +144,9 @@ export class ConversationStore {
101
144
  this.ensureColumn('conversation_turns', 'cascade_json', "TEXT NOT NULL DEFAULT '{}'");
102
145
  this.ensureColumn('conversation_turns', 'knowledge_lens_json', "TEXT NOT NULL DEFAULT '{}'");
103
146
  this.ensureColumn('conversation_turns', 'agent_run_id', 'TEXT');
147
+ this.ensureColumn('conversation_turns', 'run_status', 'TEXT');
148
+ this.ensureColumn('conversation_turns', 'stop_reason', 'TEXT');
149
+ this.ensureColumn('conversation_threads', 'summary_json', "TEXT NOT NULL DEFAULT '{}'");
104
150
  }
105
151
  ensureColumn(table, column, ddl) {
106
152
  const columns = this.db.prepare(`PRAGMA table_info(${table})`).all();
@@ -118,6 +164,7 @@ export class ConversationStore {
118
164
  notebookPath: input.notebookPath?.trim() || undefined,
119
165
  workingState: {},
120
166
  rollingSummary: undefined,
167
+ structuredSummary: undefined,
121
168
  summaryTurnSeq: 0,
122
169
  archived: false,
123
170
  createdAt: now,
@@ -125,9 +172,9 @@ export class ConversationStore {
125
172
  };
126
173
  this.db.prepare(`
127
174
  INSERT INTO conversation_threads (
128
- id, surface, title, notebook_path, working_state_json, rolling_summary,
175
+ id, surface, title, notebook_path, working_state_json, rolling_summary, summary_json,
129
176
  summary_turn_seq, archived, created_at, updated_at
130
- ) VALUES (?, ?, ?, ?, '{}', NULL, 0, 0, ?, ?)
177
+ ) VALUES (?, ?, ?, ?, '{}', NULL, '{}', 0, 0, ?, ?)
131
178
  `).run(thread.id, thread.surface, thread.title ?? null, thread.notebookPath ?? null, now, now);
132
179
  return thread;
133
180
  }
@@ -173,11 +220,11 @@ export class ConversationStore {
173
220
  this.db.prepare(`
174
221
  INSERT INTO conversation_turns (
175
222
  id, thread_id, agent_run_id, seq, question, answer_summary, answer_text, route,
176
- trust_label, certification, source_certified_block, context_pack_id,
223
+ trust_label, run_status, stop_reason, certification, source_certified_block, context_pack_id,
177
224
  knowledge_lens_json, sql, dql_artifact_json, cascade_json, result_json,
178
225
  contract_json, created_at
179
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
180
- `).run(turn.id, threadId, turn.agentRunId ?? null, turn.seq, turn.question, turn.answerSummary ?? null, turn.answerText ?? null, turn.route ?? null, turn.trustLabel ?? null, turn.certification ?? null, turn.sourceCertifiedBlock ?? null, turn.contextPackId ?? null, JSON.stringify(turn.knowledgeLens ?? {}), turn.sql ?? null, JSON.stringify(turn.dqlArtifact ?? {}), JSON.stringify(turn.cascade ?? {}), JSON.stringify(turn.result ?? {}), JSON.stringify(turn.contract ?? {}), now);
226
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
227
+ `).run(turn.id, threadId, turn.agentRunId ?? null, turn.seq, turn.question, turn.answerSummary ?? null, turn.answerText ?? null, turn.route ?? null, turn.trustLabel ?? null, turn.runStatus ?? null, turn.stopReason ?? null, turn.certification ?? null, turn.sourceCertifiedBlock ?? null, turn.contextPackId ?? null, JSON.stringify(turn.knowledgeLens ?? {}), turn.sql ?? null, JSON.stringify(turn.dqlArtifact ?? {}), JSON.stringify(turn.cascade ?? {}), JSON.stringify(turn.result ?? {}), JSON.stringify(turn.contract ?? {}), now);
181
228
  const tags = [
182
229
  turn.sourceCertifiedBlock ?? '',
183
230
  turn.route ?? '',
@@ -254,6 +301,10 @@ export class ConversationStore {
254
301
  sets.push('rolling_summary = ?');
255
302
  params.push(input.rollingSummary || null);
256
303
  }
304
+ if (input.structuredSummary !== undefined) {
305
+ sets.push('summary_json = ?');
306
+ params.push(JSON.stringify(input.structuredSummary));
307
+ }
257
308
  if (input.summaryTurnSeq !== undefined) {
258
309
  sets.push('summary_turn_seq = ?');
259
310
  params.push(input.summaryTurnSeq);
@@ -398,6 +449,7 @@ function rowToThread(row) {
398
449
  notebookPath: row.notebook_path ?? undefined,
399
450
  workingState: safeJSON(row.working_state_json, {}),
400
451
  rollingSummary: row.rolling_summary ?? undefined,
452
+ structuredSummary: nonEmptySummary(safeJSON(row.summary_json, {})),
401
453
  summaryTurnSeq: row.summary_turn_seq,
402
454
  archived: Boolean(row.archived),
403
455
  createdAt: row.created_at,
@@ -420,6 +472,8 @@ function rowToTurn(row) {
420
472
  answerText: row.answer_text ?? undefined,
421
473
  route: row.route ?? undefined,
422
474
  trustLabel: row.trust_label ?? undefined,
475
+ runStatus: row.run_status ?? undefined,
476
+ stopReason: row.stop_reason ?? undefined,
423
477
  certification: row.certification ?? undefined,
424
478
  sourceCertifiedBlock: row.source_certified_block ?? undefined,
425
479
  contextPackId: row.context_pack_id ?? undefined,
@@ -432,6 +486,9 @@ function rowToTurn(row) {
432
486
  createdAt: row.created_at,
433
487
  };
434
488
  }
489
+ function nonEmptySummary(summary) {
490
+ return summary?.version === 1 && Array.isArray(summary.entries) ? summary : undefined;
491
+ }
435
492
  function safeJSON(raw, fallback) {
436
493
  if (!raw)
437
494
  return fallback;
@@ -1 +1 @@
1
- {"version":3,"file":"session-store.js","sourceRoot":"","sources":["../../src/conversation/session-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-store.js","sourceRoot":"","sources":["../../src/conversation/session-store.ts"],"names":[],"mappings":"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"}
@@ -8,11 +8,15 @@ import type { AgentDqlArtifactReference } from '../answer-loop.js';
8
8
  import type { CascadeAnswerResult } from '../cascade/cascade.js';
9
9
  import type { KnowledgeLens } from '../domain-context.js';
10
10
  import { type ConversationWorkingState, type TopicRelation } from './working-state.js';
11
+ import { type ConversationSummaryV1 } from './rolling-summary.js';
11
12
  export interface ConversationSnapshotTurn {
12
13
  id: string;
13
14
  question: string;
14
15
  answerSummary?: string;
15
16
  route?: string;
17
+ trustLabel?: string;
18
+ runStatus?: string;
19
+ stopReason?: string;
16
20
  sourceCertifiedBlock?: string;
17
21
  contextPackId?: string;
18
22
  knowledgeLens?: KnowledgeLens;
@@ -23,15 +27,32 @@ export interface ConversationSnapshotTurn {
23
27
  dqlArtifact?: AgentDqlArtifactReference;
24
28
  cascade?: CascadeAnswerResult;
25
29
  }
26
- export interface ConversationSnapshot {
30
+ export interface ConversationEnvelopeV1 {
31
+ /** Present on every newly built envelope; optional only for persisted v0 compatibility. */
32
+ version?: 1;
27
33
  threadId: string;
34
+ /** Present on every newly built envelope; optional only for persisted v0 compatibility. */
35
+ surface?: string;
28
36
  rollingSummary?: string;
37
+ /** Trust-aware, source-attributed summary of turns outside the recent window. */
38
+ structuredSummary?: ConversationSummaryV1;
29
39
  workingState?: ConversationWorkingState;
30
40
  recentTurns: ConversationSnapshotTurn[];
31
41
  /** Semantic-recall hits over older turns (P5). */
32
42
  recalledTurns?: ConversationSnapshotTurn[];
33
43
  /** How the NEW question relates to the ongoing topic (when a question is supplied). */
34
44
  topicRelation?: TopicRelation;
45
+ /** Latest clarification that is still the current turn. */
46
+ pendingClarification?: {
47
+ sourceTurnId: string;
48
+ question: string;
49
+ };
50
+ }
51
+ /** Compatibility name retained for existing API/provider consumers. */
52
+ export type ConversationSnapshot = ConversationEnvelopeV1;
53
+ export interface ConversationHistoryMessage {
54
+ role: 'user' | 'assistant';
55
+ text: string;
35
56
  }
36
57
  /**
37
58
  * Build the snapshot for a new question. When the question starts a genuinely
@@ -50,12 +71,24 @@ export declare function buildConversationSnapshot(store: ConversationStore, thre
50
71
  export declare function advanceThreadState(store: ConversationStore, threadId: string, turn: ConversationTurn): void;
51
72
  /**
52
73
  * Semantic recall over the thread's OLDER turns ("what did we discuss about X?").
53
- * FTS candidates re-ranked with the deterministic hash-embedding blend
54
- * (alpha 0.4 FTS still dominates). Turns already in the recent verbatim
55
- * window are excluded; returns at most `limit` hits. Never throws.
74
+ * FTS candidates are re-ranked with the configured project embedding provider
75
+ * (and the deterministic local fallback when no provider is configured).
76
+ * Turns already in the recent verbatim window are excluded; returns at most
77
+ * `limit` hits. Never throws.
56
78
  */
57
79
  export declare function recallRelevantTurns(store: ConversationStore, threadId: string, question: string, options?: {
58
80
  limit?: number;
59
81
  excludeTurnIds?: string[];
60
82
  }): Promise<ConversationSnapshotTurn[]>;
83
+ /** Read the canonical server envelope while accepting the original key during upgrades. */
84
+ export declare function conversationEnvelopeFromContext(context: Record<string, unknown> | undefined): ConversationEnvelopeV1 | undefined;
85
+ /**
86
+ * One bounded history projection for routing, meaning resolution, planning and
87
+ * execution fallbacks. Review/blocked state is explicit so prose cannot silently
88
+ * become trusted analytical context.
89
+ */
90
+ export declare function conversationHistoryFromContext(context: Record<string, unknown> | undefined, limit?: number): ConversationHistoryMessage[];
91
+ /** Compact non-prose context shared by every orchestration stage. */
92
+ export declare function renderConversationEnvelopeForPrompt(context: Record<string, unknown> | undefined): string | undefined;
93
+ export declare function conversationTurnContextState(turn: ConversationSnapshotTurn): string;
61
94
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/conversation/snapshot.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAO5B,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,WAAW,EAAE,wBAAwB,EAAE,CAAC;IACxC,kDAAkD;IAClD,aAAa,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC3C,uFAAuF;IACvF,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACnD,oBAAoB,GAAG,IAAI,CAmB7B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAuB3G;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GAC1D,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAoBrC"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/conversation/snapshot.ts"],"names":[],"mappings":"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"}