@inharness-ai/claude4spec 1.0.19 → 1.0.21

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 (138) hide show
  1. package/.claude/skills/c4s-brief-implementer/SKILL.md +6 -13
  2. package/CHANGELOG.md +25 -1
  3. package/dist/bin/c4s/commands/find-references.js +2 -1
  4. package/dist/bin/c4s/commands/find-references.js.map +1 -1
  5. package/dist/client/assets/{arc-Y_Y7YYxJ.js → arc-Coa9fbDO.js} +1 -1
  6. package/dist/client/assets/{architectureDiagram-3BPJPVTR-BvfJSQGS.js → architectureDiagram-3BPJPVTR-VJZcRMEN.js} +1 -1
  7. package/dist/client/assets/{blockDiagram-GPEHLZMM-0ER_5Ga5.js → blockDiagram-GPEHLZMM-C7dU2lW1.js} +1 -1
  8. package/dist/client/assets/{c4Diagram-AAUBKEIU-CulSeIur.js → c4Diagram-AAUBKEIU-CG_BBm_5.js} +1 -1
  9. package/dist/client/assets/channel-D5gzBvo7.js +1 -0
  10. package/dist/client/assets/{chunk-2J33WTMH-BR0UTxIH.js → chunk-2J33WTMH-BnS95YpK.js} +1 -1
  11. package/dist/client/assets/{chunk-4BX2VUAB-C3CE1iTm.js → chunk-4BX2VUAB-COr8w3X3.js} +1 -1
  12. package/dist/client/assets/{chunk-55IACEB6-WYG0SMCq.js → chunk-55IACEB6-CxrIbZhB.js} +1 -1
  13. package/dist/client/assets/{chunk-727SXJPM-CFxvH3KU.js → chunk-727SXJPM-DRchPPRe.js} +1 -1
  14. package/dist/client/assets/{chunk-AQP2D5EJ-CW3tCRq5.js → chunk-AQP2D5EJ-_SfN7mED.js} +1 -1
  15. package/dist/client/assets/{chunk-FMBD7UC4-DhWed3oG.js → chunk-FMBD7UC4-p2tIiP1D.js} +1 -1
  16. package/dist/client/assets/{chunk-ND2GUHAM-wKw1Twd3.js → chunk-ND2GUHAM-B1mbl2hP.js} +1 -1
  17. package/dist/client/assets/{chunk-QZHKN3VN-N2YJn9Rv.js → chunk-QZHKN3VN-DBUpeqvS.js} +1 -1
  18. package/dist/client/assets/classDiagram-4FO5ZUOK-CT-amIxa.js +1 -0
  19. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CT-amIxa.js +1 -0
  20. package/dist/client/assets/{cose-bilkent-S5V4N54A-BwTia-tr.js → cose-bilkent-S5V4N54A-BBsY5aKD.js} +1 -1
  21. package/dist/client/assets/{dagre-BM42HDAG-qaDS43Ui.js → dagre-BM42HDAG-b-vu4RC9.js} +1 -1
  22. package/dist/client/assets/{diagram-2AECGRRQ-D_kuEzAN.js → diagram-2AECGRRQ-j-DW9qSf.js} +1 -1
  23. package/dist/client/assets/{diagram-5GNKFQAL-BYj6JmFh.js → diagram-5GNKFQAL-DHX_WYWQ.js} +1 -1
  24. package/dist/client/assets/{diagram-KO2AKTUF-C5GerpKU.js → diagram-KO2AKTUF-DxdQok_M.js} +1 -1
  25. package/dist/client/assets/{diagram-LMA3HP47-BCCWR_VJ.js → diagram-LMA3HP47-BbTIX5c1.js} +1 -1
  26. package/dist/client/assets/{diagram-OG6HWLK6-zQ3cOHd6.js → diagram-OG6HWLK6-BQ9ODAlH.js} +1 -1
  27. package/dist/client/assets/{erDiagram-TEJ5UH35-CXGKcFZT.js → erDiagram-TEJ5UH35-6lwAL1y9.js} +1 -1
  28. package/dist/client/assets/{flowDiagram-I6XJVG4X-CtZxh2DT.js → flowDiagram-I6XJVG4X-ioSHb5-t.js} +1 -1
  29. package/dist/client/assets/{ganttDiagram-6RSMTGT7-BUdwVJfD.js → ganttDiagram-6RSMTGT7-CXFQp9Nj.js} +1 -1
  30. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-DAJUpS0c.js → gitGraphDiagram-PVQCEYII-C1pVD_NQ.js} +1 -1
  31. package/dist/client/assets/index-DyAnw7YN.js +798 -0
  32. package/dist/client/assets/{index-g9hdRfKL.js → index-JaAxQJXh.js} +1 -1
  33. package/dist/client/assets/{index-CSz40CWW.js → index-hz5T_W2e.js} +1 -1
  34. package/dist/client/assets/index-oh_mP_1v.css +1 -0
  35. package/dist/client/assets/{infoDiagram-5YYISTIA-Dkqaeq-d.js → infoDiagram-5YYISTIA-C2Guev-g.js} +1 -1
  36. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-BDZbcL20.js → ishikawaDiagram-YF4QCWOH-D3v8VBb2.js} +1 -1
  37. package/dist/client/assets/{journeyDiagram-JHISSGLW-DQ8LraKA.js → journeyDiagram-JHISSGLW-DX1AW_Ap.js} +1 -1
  38. package/dist/client/assets/{kanban-definition-UN3LZRKU-CQOW2Mao.js → kanban-definition-UN3LZRKU-CzXThvq2.js} +1 -1
  39. package/dist/client/assets/{linear-B-ZW0b9t.js → linear-CVw4gl5i.js} +1 -1
  40. package/dist/client/assets/{mermaid.core-BdFxxBuE.js → mermaid.core-C29eoXRj.js} +4 -4
  41. package/dist/client/assets/{mindmap-definition-RKZ34NQL-CcsZCub_.js → mindmap-definition-RKZ34NQL-DEEGVQVA.js} +1 -1
  42. package/dist/client/assets/{pieDiagram-4H26LBE5-DpFgB1Qa.js → pieDiagram-4H26LBE5-Dme-VM6m.js} +1 -1
  43. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CItGhZSD.js → quadrantDiagram-W4KKPZXB-CURFNo24.js} +1 -1
  44. package/dist/client/assets/{requirementDiagram-4Y6WPE33-CMfRtv6V.js → requirementDiagram-4Y6WPE33-DxMZWXME.js} +1 -1
  45. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-LUqs9QQq.js → sankeyDiagram-5OEKKPKP-BW64D4_P.js} +1 -1
  46. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-BZt_Nz-I.js → sequenceDiagram-3UESZ5HK-BATRPm8Q.js} +1 -1
  47. package/dist/client/assets/{stateDiagram-AJRCARHV-DDCaA4Lh.js → stateDiagram-AJRCARHV-pgHVMnO3.js} +1 -1
  48. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-szm_LIuD.js +1 -0
  49. package/dist/client/assets/{timeline-definition-PNZ67QCA-Chrt6eh8.js → timeline-definition-PNZ67QCA-qBxJZPWd.js} +1 -1
  50. package/dist/client/assets/{vennDiagram-CIIHVFJN-7L-WzZJY.js → vennDiagram-CIIHVFJN-BZJK9hqJ.js} +1 -1
  51. package/dist/client/assets/{wardley-L42UT6IY-CTNWz-UZ.js → wardley-L42UT6IY-BobtgEXg.js} +1 -1
  52. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-BIhHmbRz.js → wardleyDiagram-YWT4CUSO-DuWfX_-P.js} +1 -1
  53. package/dist/client/assets/{xychartDiagram-2RQKCTM6-eqxCYjS7.js → xychartDiagram-2RQKCTM6-DCw1iURo.js} +1 -1
  54. package/dist/client/index.html +2 -2
  55. package/dist/server/config.js +11 -5
  56. package/dist/server/config.js.map +1 -1
  57. package/dist/server/core/plugin-host/entities-router.d.ts +2 -1
  58. package/dist/server/core/plugin-host/entities-router.js +16 -1
  59. package/dist/server/core/plugin-host/entities-router.js.map +1 -1
  60. package/dist/server/db/migrations/041_chat_thread_transagent.sql +22 -0
  61. package/dist/server/fs/watcher.js +4 -2
  62. package/dist/server/fs/watcher.js.map +1 -1
  63. package/dist/server/index.js +16 -0
  64. package/dist/server/index.js.map +1 -1
  65. package/dist/server/mcp/release-tools/index.d.ts +11 -0
  66. package/dist/server/mcp/release-tools/index.js +68 -5
  67. package/dist/server/mcp/release-tools/index.js.map +1 -1
  68. package/dist/server/mcp/release-tools/projection.d.ts +11 -2
  69. package/dist/server/mcp/release-tools/projection.js +36 -7
  70. package/dist/server/mcp/release-tools/projection.js.map +1 -1
  71. package/dist/server/mcp/release-tools/types.d.ts +39 -2
  72. package/dist/server/mcp/transagent-tools.d.ts +26 -0
  73. package/dist/server/mcp/transagent-tools.js +75 -0
  74. package/dist/server/mcp/transagent-tools.js.map +1 -0
  75. package/dist/server/routes/agent-turn.d.ts +9 -0
  76. package/dist/server/routes/agent-turn.js +62 -2
  77. package/dist/server/routes/agent-turn.js.map +1 -1
  78. package/dist/server/routes/briefs.js +12 -4
  79. package/dist/server/routes/briefs.js.map +1 -1
  80. package/dist/server/routes/chat.js +18 -0
  81. package/dist/server/routes/chat.js.map +1 -1
  82. package/dist/server/routes/plans.js +13 -0
  83. package/dist/server/routes/plans.js.map +1 -1
  84. package/dist/server/routes/threads.js +9 -2
  85. package/dist/server/routes/threads.js.map +1 -1
  86. package/dist/server/services/brief.d.ts +30 -8
  87. package/dist/server/services/brief.js +58 -28
  88. package/dist/server/services/brief.js.map +1 -1
  89. package/dist/server/services/chat-context.d.ts +7 -0
  90. package/dist/server/services/chat-context.js +103 -0
  91. package/dist/server/services/chat-context.js.map +1 -1
  92. package/dist/server/services/chat.d.ts +12 -1
  93. package/dist/server/services/chat.js +56 -21
  94. package/dist/server/services/chat.js.map +1 -1
  95. package/dist/server/services/entity-indexer.js +21 -14
  96. package/dist/server/services/entity-indexer.js.map +1 -1
  97. package/dist/server/services/pages.js +5 -4
  98. package/dist/server/services/pages.js.map +1 -1
  99. package/dist/server/services/plan.d.ts +7 -1
  100. package/dist/server/services/plan.js +17 -4
  101. package/dist/server/services/plan.js.map +1 -1
  102. package/dist/server/services/remote-http-client.d.ts +0 -8
  103. package/dist/server/services/remote-http-client.js +0 -16
  104. package/dist/server/services/remote-http-client.js.map +1 -1
  105. package/dist/server/services/transagent-dispatcher.d.ts +60 -0
  106. package/dist/server/services/transagent-dispatcher.js +147 -0
  107. package/dist/server/services/transagent-dispatcher.js.map +1 -0
  108. package/dist/server/skills/brief-author/SKILL.md +26 -17
  109. package/dist/server/workspace/project-context.js +7 -8
  110. package/dist/server/workspace/project-context.js.map +1 -1
  111. package/dist/shared/code-ranges.d.ts +13 -0
  112. package/dist/shared/code-ranges.js +20 -0
  113. package/dist/shared/code-ranges.js.map +1 -1
  114. package/dist/shared/entities.d.ts +46 -3
  115. package/dist/shared/entities.js +1 -0
  116. package/dist/shared/entities.js.map +1 -1
  117. package/dist/shared/jsx-passthrough.d.ts +44 -0
  118. package/dist/shared/jsx-passthrough.js +140 -0
  119. package/dist/shared/jsx-passthrough.js.map +1 -0
  120. package/dist/shared/page-files.d.ts +13 -0
  121. package/dist/shared/page-files.js +22 -0
  122. package/dist/shared/page-files.js.map +1 -0
  123. package/dist/shared/raw-jsx-escape.d.ts +15 -0
  124. package/dist/shared/raw-jsx-escape.js +32 -0
  125. package/dist/shared/raw-jsx-escape.js.map +1 -0
  126. package/dist/shared/xml-tag-kinds.d.ts +9 -0
  127. package/dist/shared/xml-tag-kinds.js +16 -0
  128. package/dist/shared/xml-tag-kinds.js.map +1 -0
  129. package/dist/shared/xml-tags.d.ts +2 -2
  130. package/dist/shared/xml-tags.js +8 -10
  131. package/dist/shared/xml-tags.js.map +1 -1
  132. package/package.json +2 -2
  133. package/dist/client/assets/channel-COuoa9K9.js +0 -1
  134. package/dist/client/assets/classDiagram-4FO5ZUOK-BESpN0be.js +0 -1
  135. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-BESpN0be.js +0 -1
  136. package/dist/client/assets/index-BKuHIaMg.css +0 -1
  137. package/dist/client/assets/index-nd9N-ch1.js +0 -792
  138. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DfEoRDHz.js +0 -1
@@ -37,6 +37,10 @@ export class BriefService {
37
37
  if (frontmatter.type !== 'brief') {
38
38
  throw new DomainError('BRIEF_INVALID_FRONTMATTER', `file '${path}' is not a brief (frontmatter.type=${JSON.stringify(frontmatter.type)})`);
39
39
  }
40
+ // 0.1.69: legacy briefs predate `source` — default to 'release-diff' at parse
41
+ // time so the field is always present downstream (DTO, immutability diffing).
42
+ if (frontmatter.source !== 'analysis')
43
+ frontmatter.source = 'release-diff';
40
44
  return {
41
45
  path,
42
46
  frontmatter,
@@ -57,11 +61,15 @@ export class BriefService {
57
61
  out.push({
58
62
  path: rec.path,
59
63
  title: typeof fm.title === 'string' ? fm.title : null,
64
+ // 0.1.69: legacy briefs predate `source` — default to 'release-diff'.
65
+ source: fm.source === 'analysis' ? 'analysis' : 'release-diff',
60
66
  fromRelease: typeof fm.from_release === 'string' ? fm.from_release : null,
61
- toRelease: String(fm.to_release ?? ''),
67
+ // 0.1.69: analysis briefs carry `to_release: null` → toRelease stays null.
68
+ toRelease: typeof fm.to_release === 'string' ? fm.to_release : null,
62
69
  implemented,
63
70
  generatedAt: String(fm.generated_at ?? ''),
64
71
  lastModifiedAt: lastVersion?.createdAt ?? null,
72
+ threadCount: this.deps.chatService.threadCountForBrief(rec.path),
65
73
  });
66
74
  }
67
75
  return out;
@@ -75,37 +83,60 @@ export class BriefService {
75
83
  }));
76
84
  }
77
85
  // ─── Mutations ──────────────────────────────────────────────────────────
86
+ /**
87
+ * 0.1.69: file-only brief creation (writes file + page_version + index, NO
88
+ * thread). Callers pair this with {@link createThreadForBrief}. `content`
89
+ * carries a pre-synthesized body for analysis briefs; else a generated stub.
90
+ *
91
+ * Validation matrix (from, to):
92
+ * - (null, set) → initial brief
93
+ * - (set, set) → release-diff brief
94
+ * - (set, null) → analysis brief (state relative to HEAD)
95
+ * - (null, null) → 400 VALIDATION
96
+ * When `to=null` (analysis) the BRIEF_SAME_RELEASE guard and the
97
+ * `getRelease(toName)` existence check are skipped.
98
+ */
78
99
  async createBrief(opts) {
100
+ const source = opts.source ?? 'release-diff';
79
101
  const fromName = opts.fromReleaseName === null ? null : opts.fromReleaseName.trim();
80
- const toName = opts.toReleaseName.trim();
81
- if (!toName) {
82
- throw new DomainError('VALIDATION', 'toReleaseName is required');
102
+ const toName = opts.toReleaseName === null ? null : opts.toReleaseName.trim();
103
+ if (fromName === null && toName === null) {
104
+ throw new DomainError('VALIDATION', 'at least one of fromReleaseName / toReleaseName is required');
83
105
  }
84
106
  if (fromName !== null && fromName.length === 0) {
85
107
  throw new DomainError('VALIDATION', 'fromReleaseName must be non-empty (or null for initial brief)');
86
108
  }
87
- if (fromName !== null && fromName === toName) {
88
- throw new DomainError('BRIEF_SAME_RELEASE', 'from_release must differ from to_release');
109
+ if (toName !== null && toName.length === 0) {
110
+ throw new DomainError('VALIDATION', 'toReleaseName must be non-empty (or null for analysis brief)');
89
111
  }
90
- // Validate releases exist (throws NOT_FOUND if missing). `fromName === null`
91
- // initial brief, brak `fromRelease` do walidacji.
112
+ // 0.1.69: analysis briefs (to=null) compare against HEAD skip same-release
113
+ // guard and the target-release existence check.
114
+ if (toName !== null) {
115
+ if (fromName !== null && fromName === toName) {
116
+ throw new DomainError('BRIEF_SAME_RELEASE', 'from_release must differ from to_release');
117
+ }
118
+ this.deps.releaseService.getRelease(toName);
119
+ }
120
+ // Validate the source release exists (throws NOT_FOUND if missing). `fromName
121
+ // === null` ⇒ initial brief, no fromRelease to validate.
92
122
  if (fromName !== null)
93
123
  this.deps.releaseService.getRelease(fromName);
94
- this.deps.releaseService.getRelease(toName);
95
124
  const briefPath = await this.allocatePath(fromName, toName, opts.suffix);
96
- // opts.additionalPrompt is intentionally not persisted — klient dokleja go
97
- // do pierwszej user-message w initial-thread po redirect.
98
125
  const frontmatter = {
99
126
  type: 'brief',
127
+ source,
100
128
  from_release: fromName,
101
129
  to_release: toName,
102
130
  generated_at: new Date().toISOString(),
103
131
  generator_version: GENERATOR_VERSION,
104
132
  implemented: false,
105
133
  };
106
- const body = fromName === null
107
- ? `# Initial brief: ${toName}\n`
108
- : `# Brief: ${fromName} → ${toName}\n`;
134
+ const body = opts.content ??
135
+ (toName === null
136
+ ? `# Analysis brief: ${fromName} → (next)\n`
137
+ : fromName === null
138
+ ? `# Initial brief: ${toName}\n`
139
+ : `# Brief: ${fromName} → ${toName}\n`);
109
140
  const fullContent = matter.stringify(body, frontmatter);
110
141
  const abs = this.absPath(briefPath);
111
142
  await fs.mkdir(path.dirname(abs), { recursive: true });
@@ -115,14 +146,7 @@ export class BriefService {
115
146
  // Re-sync indexer immediately (faster than waiting for watcher debounce —
116
147
  // the new brief should appear in `/briefs` list right after POST returns).
117
148
  await this.deps.frontmatterIndexer.indexPage('briefs', briefPath);
118
- const threadTitle = fromName === null
119
- ? `Initial brief: ${toName}`
120
- : `Brief: ${fromName} → ${toName}`;
121
- const initialThread = this.deps.chatService.createThread(threadTitle, {
122
- contextType: 'brief',
123
- briefPath,
124
- });
125
- return { briefPath, initialThreadId: initialThread.id };
149
+ return { briefPath };
126
150
  }
127
151
  async updateContent(opts) {
128
152
  const current = await this.getBrief(opts.path);
@@ -176,10 +200,12 @@ export class BriefService {
176
200
  await this.deps.frontmatterIndexer.indexPage('briefs', opts.path);
177
201
  return this.getBrief(opts.path);
178
202
  }
179
- createThreadForBrief(briefPath, name) {
180
- const thread = this.deps.chatService.createThread(name ?? `Brief edit: ${briefPath}`, {
203
+ createThreadForBrief(opts) {
204
+ const thread = this.deps.chatService.createThread(opts.name ?? `Brief edit: ${opts.path}`, {
181
205
  contextType: 'brief',
182
- briefPath,
206
+ briefPath: opts.path,
207
+ parentThreadId: opts.parentThreadId ?? null,
208
+ spawnedByToolUseId: opts.spawnedByToolUseId ?? null,
183
209
  });
184
210
  return { threadId: thread.id };
185
211
  }
@@ -188,9 +214,13 @@ export class BriefService {
188
214
  return path.join(this.deps.briefsPages.root, relPath);
189
215
  }
190
216
  async allocatePath(fromName, toName, suffix) {
191
- const base = fromName === null
192
- ? `initial-${slugify(toName)}${suffix ? `-${slugify(suffix)}` : ''}`
193
- : `${slugify(fromName)}-to-${slugify(toName)}${suffix ? `-${slugify(suffix)}` : ''}`;
217
+ const suf = suffix ? `-${slugify(suffix)}` : '';
218
+ // 0.1.69: analysis brief (to=null) `{from-slug}-to-next[-{suffix}].md`.
219
+ const base = toName === null
220
+ ? `${slugify(fromName ?? 'head')}-to-next${suf}`
221
+ : fromName === null
222
+ ? `initial-${slugify(toName)}${suf}`
223
+ : `${slugify(fromName)}-to-${slugify(toName)}${suf}`;
194
224
  let candidate = `${base}.md`;
195
225
  let n = 2;
196
226
  while (await this.deps.briefsPages.exists(candidate)) {
@@ -1 +1 @@
1
- {"version":3,"file":"brief.js","sourceRoot":"","sources":["../../../src/server/services/brief.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AAQjC,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAS5E,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AA4C7C,MAAM,OAAO,YAAY;IACH;IAApB,YAAoB,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;IAAG,CAAC;IAE9C,4EAA4E;IAE5E,KAAK,CAAC,QAAQ,CAAC,IAAY;QACzB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,WAAW,CAAC,WAAW,EAAE,UAAU,IAAI,aAAa,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAqB,CAAC;QAC5D,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,WAAW,CACnB,2BAA2B,EAC3B,SAAS,IAAI,sCAAsC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CACvF,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI;YACJ,WAAW;YACX,IAAI,EAAE,MAAM,CAAC,OAAO;YACpB,OAAO;YACP,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,OAAsB,EAAE;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnG,MAAM,GAAG,GAAoB,EAAE,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,GAAG,CAAC,WAA+B,CAAC;YAC/C,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,KAAK,IAAI,CAAC;YAC5C,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW;gBAAE,SAAS;YACjF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,EAAE,CAAC,KAAgB,CAAC,CAAC,CAAC,IAAI;gBACjE,WAAW,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;gBACzE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC;gBACtC,WAAW;gBACX,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC;gBAC1C,cAAc,EAAE,WAAW,EAAE,SAAS,IAAI,IAAI;aAC/C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,mBAAmB,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjE,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,YAAY,EAAE,CAAC,CAAC,YAAY;SAC7B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,WAAW,CAAC,IAAqB;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACpF,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,WAAW,CAAC,YAAY,EAAE,2BAA2B,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,WAAW,CAAC,YAAY,EAAE,+DAA+D,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC7C,MAAM,IAAI,WAAW,CAAC,oBAAoB,EAAE,0CAA0C,CAAC,CAAC;QAC1F,CAAC;QACD,6EAA6E;QAC7E,oDAAoD;QACpD,IAAI,QAAQ,KAAK,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACzE,2EAA2E;QAC3E,0DAA0D;QAC1D,MAAM,WAAW,GAAqB;YACpC,IAAI,EAAE,OAAO;YACb,YAAY,EAAE,QAAQ;YACtB,UAAU,EAAE,MAAM;YAClB,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACtC,iBAAiB,EAAE,iBAAiB;YACpC,WAAW,EAAE,KAAK;SACnB,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI;YAC5B,CAAC,CAAC,oBAAoB,MAAM,IAAI;YAChC,CAAC,CAAC,YAAY,QAAQ,MAAM,MAAM,IAAI,CAAC;QACzC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,WAAsC,CAAC,CAAC;QAEnF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CACxC,SAAS,EACT,QAAQ,EACR,MAAM,EACN,SAAS,EACT,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAC1B,OAAO,CACR,CAAC;QACF,0EAA0E;QAC1E,2EAA2E;QAC3E,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAElE,MAAM,WAAW,GAAG,QAAQ,KAAK,IAAI;YACnC,CAAC,CAAC,kBAAkB,MAAM,EAAE;YAC5B,CAAC,CAAC,UAAU,QAAQ,MAAM,MAAM,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE;YACpE,WAAW,EAAE,OAAO;YACpB,SAAS;SACV,CAAC,CAAC;QACH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAA4B;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;YAChF,MAAM,IAAI,aAAa,CAAC,gBAAgB,EAAE,+BAA+B,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3F,CAAC;QACD,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAqB,CAAC;QAC7D,MAAM,QAAQ,GAAa,gCAAgC,CAAC,MAAM,CAChE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAChF,CAAC;QACF,2EAA2E;QAC3E,4EAA4E;QAC5E,iDAAiD;QACjD,IACE,IAAI,CAAC,SAAS,KAAK,OAAO;YAC1B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,EAC1F,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,WAAW,CACnB,6BAA6B,EAC7B,6CAA6C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnE,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CACxC,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,IAAI,CAAC,SAAS,EACd,SAAS,EACT,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAC1B,OAAO,EACP,IAAI,CAAC,aAAa,CACnB,CAAC;QACF,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,6EAA6E;QAC7E,+EAA+E;QAC/E,0EAA0E;QAC1E,8EAA8E;QAC9E,+EAA+E;QAC/E,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;YACrB,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;SAC3D,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAgC;QACtD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAqB,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YACvG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;YAC1C,SAAS,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAA+B,CAAC,CAAC;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CACxC,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,IAAI,CAAC,SAAS,EACd,SAAS,EACT,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAC1B,OAAO,EACP,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACnD,CAAC;QACF,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,oBAAoB,CAAC,SAAiB,EAAE,IAAoB;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,IAAI,eAAe,SAAS,EAAE,EAAE;YACpF,WAAW,EAAE,OAAO;YACpB,SAAS;SACV,CAAC,CAAC;QACH,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;IACjC,CAAC;IAED,2EAA2E;IAEnE,OAAO,CAAC,OAAe;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,QAAuB,EAAE,MAAc,EAAE,MAAe;QACjF,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI;YAC5B,CAAC,CAAC,WAAW,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACpE,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvF,IAAI,SAAS,GAAG,GAAG,IAAI,KAAK,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,SAAS,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC;YAC9B,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,GAAG,IAAI;gBAAE,MAAM,IAAI,WAAW,CAAC,YAAY,EAAE,mCAAmC,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,IAAI,CAAS;IACb,WAAW,CAAS;IAC7B,YAAY,IAAY,EAAE,OAAe,EAAE,WAAmB;QAC5D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,KAAK;SACT,WAAW,EAAE;SACb,SAAS,CAAC,MAAM,CAAC;SACjB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5E,CAAC"}
1
+ {"version":3,"file":"brief.js","sourceRoot":"","sources":["../../../src/server/services/brief.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { Annotation, Brief, ChatContextType, PatchResponse, Plan } from '../../shared/entities.js';
2
2
  import type { ProjectPluginHost } from '../core/plugin-host/types.js';
3
+ import type { SubagentDefinition } from '@inharness-ai/agent-adapters';
3
4
  /**
4
5
  * 0.1.58: a workspace peer the agent may consult via `c4s-tools.ask`. `path` is
5
6
  * the peer's `cwd` from the workspace registry — passed 1:1 as the `project`
@@ -53,4 +54,10 @@ export interface SystemPromptInput {
53
54
  /** M23: snapshot of the patch attached to this thread (only when contextType='patch'). */
54
55
  patch?: PatchResponse | null;
55
56
  }
57
+ /**
58
+ * 0.1.67: fourth dimension of the `context_type` registry — which built-in read-only subagent is
59
+ * injected into `adapter.execute({ subagents })`. `chat`/`patch` get `spec-explore` (current
60
+ * entity graph); `brief` gets `diff-explore` (release-scoped, no entity graph).
61
+ */
62
+ export declare function subagentsFor(contextType: ChatContextType, pluginHost: ProjectPluginHost): SubagentDefinition[];
56
63
  export declare function buildSystemPrompt(input: SystemPromptInput): string;
@@ -254,6 +254,109 @@ function buildTooling(pluginHost, planToolsAvailable, c4sToolsAvailable) {
254
254
  lines.push(`</tooling>`);
255
255
  return lines.join('\n');
256
256
  }
257
+ /* ─────────────────────────── 0.1.67 m05ctxreg: wbudowane subagenty ───────────────────────────
258
+ * Czwarty wymiar rejestru `context_type`: który read-only subagent jest wstrzykiwany do
259
+ * `adapter.execute({ subagents })`. Subagent przejmuje „bulk" eksploracji w swoim kontekście i
260
+ * oddaje rodzicowi zwięzłe findings (ścieżki / anchory / slugi), zamiast całego zrzutu.
261
+ *
262
+ * Uwaga implementacyjna (drift vs brief): adapter NIE ma pola `mcp` per-subagent — dostęp do MCP
263
+ * nadaje się przez nazwy `mcp__<server>__<tool>` w `tools` (subagent dziedziczy serwery MCP
264
+ * zamontowane dla rodzica, a `tools` jest allow-listą). Read-only i brak zagnieżdżania
265
+ * (Agent/Task) są wymuszone konstrukcją `tools` — zero narzędzi mutujących. */
266
+ /** English per "English UI/API messages": agent-facing instruction, same register as system prompt. */
267
+ const SPEC_EXPLORE_PROMPT = `You are a read-only explorer of the CURRENT specification (pages + entities + sections).
268
+
269
+ Your job: explore on the parent's behalf and report CONCISE findings — file paths, section anchors, and entity slugs — never the full bulk you read. You exist to keep the parent's context small.
270
+
271
+ Tools: Read/Grep/Glob over the project, plus read-only entity-graph MCP (get_*/list_*, find_references, check_consistency, list_sections).
272
+
273
+ Hard rules:
274
+ - NEVER mutate anything (no create/update/delete; you have no such tools).
275
+ - Report pointers (paths / anchors / slugs), not dumps. The parent decides; you locate.`;
276
+ const DIFF_EXPLORE_PROMPT = `You are a read-only explorer of ONE SLICE of a HISTORICAL release diff, working for a brief-author parent.
277
+
278
+ The parent hands you a slice — a \`from\`/\`to\` pair plus \`entityTypes\` and/or a \`limit\`/\`offset\` window. Your job: call \`release_diff\` for exactly that slice, absorb its heavy \`before\`/\`after\`/\`content\`, and return a CONCISE DISTILLATE: the concrete facts the parent must inline (each changed entity/section by name, its key signatures / field shapes / SQL / view URLs / file paths, and a one-line framing of the change — including deletions). The bulk stays with you; only the distillate goes back, keeping the parent's context small.
279
+
280
+ How to read your slice (windowing is PRIMARY):
281
+ - Normal path: call \`release_diff({ fromIdOrName, toIdOrName, ...slice })\` and read the returned \`MCPReleaseDiff\` directly — the parent already windowed the slice to fit.
282
+ - Fallback ONLY when a single slice is still too large and the SDK dumps the tool result to disk: \`Read\` that dump file. Do not otherwise touch the filesystem.
283
+
284
+ Tools: \`release-tools\` MCP (\`release_diff\`; \`release_show\` / \`release_list\` available but rarely needed) and Read/Grep/Glob — the latter ONLY for a release-diff dump file the SDK wrote to disk.
285
+
286
+ Hard rules:
287
+ - Read ONLY \`release_diff\` output / release artifacts. NEVER read \`pages/*.md\` (current spec state) and NEVER touch the entity graph (get_*/find_references) — those return HEAD and would break the brief's historical self-containment.
288
+ - Return the distillate (facts to inline), not raw dumps and not bare pointers. NEVER mutate anything.`;
289
+ /** Enumerate read-only entity-graph MCP tools as `mcp__<server>__<tool>`. Parses each entity's
290
+ * `mcpToolsLine` exactly like {@link buildTooling} and keeps only get_ / list_ prefixed tools
291
+ * (drops mutating create_ / update_ / delete_ / link_ tools). Realizes the brief's get_/list_
292
+ * wildcards. */
293
+ function entityReadMcpTools(pluginHost) {
294
+ const tools = [];
295
+ for (const m of pluginHost.listEntities()) {
296
+ if (!m.systemPrompt.mcpToolsLine)
297
+ continue;
298
+ const colonIdx = m.systemPrompt.mcpToolsLine.indexOf(':');
299
+ if (colonIdx === -1)
300
+ continue;
301
+ const serverName = m.systemPrompt.mcpToolsLine.slice(0, colonIdx).trim();
302
+ const toolList = m.systemPrompt.mcpToolsLine.slice(colonIdx + 1).trim();
303
+ for (const raw of toolList.split(',')) {
304
+ const tool = raw.trim();
305
+ if (/^(get|list)_/.test(tool))
306
+ tools.push(`mcp__${serverName}__${tool}`);
307
+ }
308
+ }
309
+ return tools;
310
+ }
311
+ /** `spec-explore`: read-only exploration of the current spec (entity graph). Built per-turn
312
+ * because the entity-graph toolset depends on which entity plugins are mounted. */
313
+ function buildSpecExploreSubagent(pluginHost) {
314
+ return {
315
+ name: 'spec-explore',
316
+ description: 'Read-only explorer of the CURRENT spec (pages, entities, sections). Delegate to it to LOCATE things — paths, section anchors, entity slugs — without pulling bulk into your own context. Returns concise pointers, not full dumps.',
317
+ prompt: SPEC_EXPLORE_PROMPT,
318
+ tools: [
319
+ 'Read',
320
+ 'Grep',
321
+ 'Glob',
322
+ ...entityReadMcpTools(pluginHost),
323
+ // reference-tools is cross-cutting (not an entity), so its read tools are listed explicitly
324
+ // — mirrors the hardcode in buildTooling().
325
+ 'mcp__reference-tools__find_references',
326
+ 'mcp__reference-tools__check_consistency',
327
+ 'mcp__reference-tools__list_sections',
328
+ ],
329
+ model: 'haiku',
330
+ };
331
+ }
332
+ /** `diff-explore`: read-only exploration of a historical `release_diff`. Deliberately WITHOUT the
333
+ * entity graph (it returns HEAD) — only release-scoped `release-tools` + Read for the on-disk dump. */
334
+ function buildDiffExploreSubagent() {
335
+ return {
336
+ name: 'diff-explore',
337
+ description: 'Read-only explorer of ONE SLICE of a historical release diff for a brief. Spawn it in parallel (one per disjoint slice) and hand it a `from`/`to` + `entityTypes` and/or `limit`/`offset` window; it calls heavy `release_diff` for that slice, absorbs the bulk, and returns a concise distillate (facts to inline) — keeping the whole diff out of your own context.',
338
+ prompt: DIFF_EXPLORE_PROMPT,
339
+ tools: [
340
+ 'Read',
341
+ 'Grep',
342
+ 'Glob',
343
+ 'mcp__release-tools__release_show',
344
+ 'mcp__release-tools__release_diff',
345
+ 'mcp__release-tools__release_list',
346
+ ],
347
+ model: 'haiku',
348
+ };
349
+ }
350
+ /**
351
+ * 0.1.67: fourth dimension of the `context_type` registry — which built-in read-only subagent is
352
+ * injected into `adapter.execute({ subagents })`. `chat`/`patch` get `spec-explore` (current
353
+ * entity graph); `brief` gets `diff-explore` (release-scoped, no entity graph).
354
+ */
355
+ export function subagentsFor(contextType, pluginHost) {
356
+ if (contextType === 'brief')
357
+ return [buildDiffExploreSubagent()];
358
+ return [buildSpecExploreSubagent(pluginHost)];
359
+ }
257
360
  /**
258
361
  * 0.1.58: discovery block listing workspace peers the agent may consult via
259
362
  * `c4s-tools.ask`. The current project is excluded upstream. `path` is ready to
@@ -1 +1 @@
1
- {"version":3,"file":"chat-context.js","sourceRoot":"","sources":["../../../src/server/services/chat-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-context.js","sourceRoot":"","sources":["../../../src/server/services/chat-context.ts"],"names":[],"mappings":"AA8DA,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,KAAK,CAAC,CAAqD;IAClE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;SAC5D,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAClD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC;AAC5D,CAAC;AAED,SAAS,eAAe,CAAC,UAA6B;IACpD,4EAA4E;IAC5E,yEAAyE;IACzE,+CAA+C;IAC/C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ;YAAE,SAAS;QACvC,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,cAAc,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,KAAK,IAAI,WAAW,CAAC,CAAC;IAC3D,CAAC;IACD,yFAAyF;IACzF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,yBAAyB,CAAC,UAA6B;IAC9D,6EAA6E;IAC7E,+DAA+D;IAC/D,MAAM,KAAK,GAAG,UAAU;SACrB,YAAY,EAAE;SACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,UAA6B,EAAE,WAAmB;IACvE,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAC7D,OAAO;yDACgD,WAAW;;;EAGlE,UAAU;;;;;;;;0BAQc,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6FAmHqD,0BAA0B,0BAA0B,0BAA0B;;;;;;wBAMnJ,CAAC;AACzB,CAAC;AAED,MAAM,gBAAgB,GAAG;;;;;;;;oBAQL,CAAC;AAErB;;;;;GAKG;AACH,MAAM,eAAe,GAAG;;;;;;;mBAOL,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG;;;;;;;;;qBASL,CAAC;AAEtB,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;yBAgBO,CAAC;AAE1B,SAAS,YAAY,CAAC,UAA6B,EAAE,kBAA2B,EAAE,iBAA0B;IAC1G,MAAM,KAAK,GAAa;QACtB,WAAW;QACX,kHAAkH;KACnH,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY;YAAE,SAAS;QAC3C,0DAA0D;QAC1D,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1D,IAAI,QAAQ,KAAK,CAAC,CAAC;YAAE,SAAS;QAC9B,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACzE,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxE,KAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,KAAK,QAAQ,QAAQ,CAAC,CAAC;IAC9D,CAAC;IACD,KAAK,CAAC,IAAI,CACR,iJAAiJ,CAClJ,CAAC;IACF,IAAI,kBAAkB,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;IAC3G,CAAC;IACD,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAClD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;+EAQ+E;AAE/E,uGAAuG;AACvG,MAAM,mBAAmB,GAAG;;;;;;;;wFAQ4D,CAAC;AAEzF,MAAM,mBAAmB,GAAG;;;;;;;;;;;;uGAY2E,CAAC;AAExG;;;iBAGiB;AACjB,SAAS,kBAAkB,CAAC,UAA6B;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY;YAAE,SAAS;QAC3C,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1D,IAAI,QAAQ,KAAK,CAAC,CAAC;YAAE,SAAS;QAC9B,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACzE,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;oFACoF;AACpF,SAAS,wBAAwB,CAAC,UAA6B;IAC7D,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,oOAAoO;QACtO,MAAM,EAAE,mBAAmB;QAC3B,KAAK,EAAE;YACL,MAAM;YACN,MAAM;YACN,MAAM;YACN,GAAG,kBAAkB,CAAC,UAAU,CAAC;YACjC,4FAA4F;YAC5F,4CAA4C;YAC5C,uCAAuC;YACvC,yCAAyC;YACzC,qCAAqC;SACtC;QACD,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAED;wGACwG;AACxG,SAAS,wBAAwB;IAC/B,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,wWAAwW;QAC1W,MAAM,EAAE,mBAAmB;QAC3B,KAAK,EAAE;YACL,MAAM;YACN,MAAM;YACN,MAAM;YACN,kCAAkC;YAClC,kCAAkC;YAClC,kCAAkC;SACnC;QACD,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,WAA4B,EAC5B,UAA6B;IAE7B,IAAI,WAAW,KAAK,OAAO;QAAE,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,aAAqB,EAAE,KAAoB;IACzE,MAAM,KAAK,GAAG,CAAC,uBAAuB,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;IAC9E,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1G,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAmC;IAC5D,OAAO;QACL,kBAAkB,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG;QAC9D,UAAU,EAAE,CAAC,KAAK,YAAY,EAAE,CAAC,IAAI,kNAAkN;QACvP,EAAE;QACF,oBAAoB;QACpB,gEAAgE,EAAE,CAAC,IAAI,KAAK;QAC5E,uBAAuB,EAAE,CAAC,IAAI,mFAAmF;QACjH,0JAA0J;QAC1J,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO;QACL,iBAAiB;QACjB,2EAA2E,IAAI,iEAAiE;QAChJ,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B,CAAC,IAAY;IAC/C,OAAO;QACL,2BAA2B;QAC3B,uCAAuC,IAAI,6CAA6C;QACxF,4BAA4B;KAC7B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,KAO/B;IACC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CACR;QACE,8BAA8B;QAC9B,gDAAgD,KAAK,CAAC,WAAW,IAAI;QACrE,QAAQ,KAAK,CAAC,GAAG,EAAE;QACnB,iIAAiI;QACjI,yEAAyE;QACzE,6FAA6F;QAC7F,+BAA+B;KAChC,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IAEF,KAAK,CAAC,IAAI,CACR;QACE,4BAA4B;QAC5B,+EAA+E;QAC/E,EAAE;QACF,6HAA6H;QAC7H,+IAA+I;QAC/I,sHAAsH;QACtH,EAAE;QACF,mNAAmN;QACnN,EAAE;QACF,2GAA2G;QAC3G,EAAE;QACF,0OAA0O;QAC1O,sUAAsU;QACtU,0JAA0J;QAC1J,8IAA8I;QAC9I,oKAAoK;QACpK,EAAE;QACF,yOAAyO;QACzO,EAAE;QACF,4LAA4L;QAC5L,gIAAgI;QAChI,EAAE;QACF,uJAAuJ;QACvJ,8DAA8D;QAC9D,EAAE;QACF,gWAAgW;QAChW,EAAE;QACF,mKAAmK;QACnK,6BAA6B;KAC9B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IAEF,KAAK,CAAC,IAAI,CACR;QACE,WAAW;QACX,yDAAyD;QACzD,gFAAgF;QAChF,YAAY;KACb,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9B,kFAAkF;IAClF,0EAA0E;IAC1E,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IAE/E,mEAAmE;IACnE,kEAAkE;IAClE,oEAAoE;IACpE,0EAA0E;IAC1E,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClG,KAAK,CAAC,IAAI,CACR;YACE,iCAAiC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,GAAG;YAC5E,yFAAyF,KAAK,CAAC,YAAY,CAAC,IAAI,yNAAyN;YACzU,iCAAiC;SAClC,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;QACnC,KAAK,CAAC,IAAI,CACR;YACE,kBAAkB,KAAK,CAAC;gBACtB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;gBACtB,YAAY,EAAE,EAAE,CAAC,YAAY,IAAI,WAAW;gBAC5C,UAAU,EAAE,EAAE,CAAC,UAAU;gBACzB,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;gBAC9C,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;aACvB,CAAC,GAAG;YACL,KAAK,CAAC,KAAK,CAAC,OAAO;YACnB,kBAAkB;SACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAEtC,SAAS,gBAAgB,CAAC,IAAY,EAAE,IAAmB;IACzD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;IAChC,IAAI,UAAU,IAAI,0BAA0B,EAAE,CAAC;QAC7C,OAAO,iBAAiB,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,MAAM,IAAI,mBAAmB,CAAC;IAChG,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,UAAU,GAAG,0BAA0B,CAAC;IAC1D,OAAO,iBAAiB,KAAK,CAAC;QAC5B,IAAI;QACJ,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,KAAK,0BAA0B,EAAE;KACjD,CAAC;EACF,OAAO;OACF,SAAS,aAAa,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,oBAAoB,IAAI;gBAC/D,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAyB;IACjD,MAAM,KAAK,GAAa,CAAC,eAAe,CAAC,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC/G,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,KAAoB;IAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC;IAC7B,OAAO;QACL,kBAAkB,KAAK,CAAC;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC;YACvC,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,UAAU;YAC/B,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC1D,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,GAAG;QACL,2EAA2E;QAC3E,yEAAyE;QACzE,6EAA6E;QAC7E,6EAA6E;QAC7E,EAAE;QACF,KAAK,CAAC,OAAO;QACb,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAwB;IACxD,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,GAAG,EACH,QAAQ,EACR,eAAe,EACf,eAAe,EACf,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,WAAW,GAAG,EAAE,EAChB,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,IAAI,EAClB,kBAAkB,GAAG,KAAK,EAC1B,iBAAiB,GAAG,KAAK,EACzB,iBAAiB,GAAG,EAAE,EACtB,aAAa,EACb,YAAY,GAAG,IAAI,EACnB,YAAY,EACZ,sBAAsB,EACtB,WAAW,GAAG,MAAM,EACpB,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,IAAI,GACb,GAAG,KAAK,CAAC;IAEV,0EAA0E;IAC1E,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,sBAAsB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC,CAAC;IAChH,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IAE7C,0EAA0E;IAC1E,kDAAkD;IAClD,+DAA+D;IAC/D,MAAM,YAAY,GAAoC;QACpD,IAAI,EAAE,WAAW;QACjB,GAAG;QACH,QAAQ;QACR,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,YAAY;KACvB,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ;YAAE,SAAS,CAAC,2BAA2B;QACnE,MAAM,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC;QAC7C,YAAY,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEtD,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAEtE,IAAI,kBAAkB,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9B,CAAC;IAED,yEAAyE;IACzE,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,aAAa,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,mFAAmF;IACnF,oFAAoF;IACpF,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,sBAAsB,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,+BAA+B;IAC/B,IAAI,WAAW,KAAK,OAAO,IAAI,KAAK,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CACR,iBAAiB,KAAK,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,MAAM,WAAW,CAAC,OAAO,mBAAmB,CAC5G,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC"}
@@ -17,6 +17,9 @@ export declare class ChatService {
17
17
  contextType?: ChatContextType;
18
18
  briefPath?: string | null;
19
19
  patchPath?: string | null;
20
+ /** 0.1.69 Transagents: set to mark this thread as a hidden child banka. */
21
+ parentThreadId?: string | null;
22
+ spawnedByToolUseId?: string | null;
20
23
  }): ChatThread;
21
24
  /** M21: list threads attached to a brief (path-keyed lookup). */
22
25
  listThreadsForBrief(briefPath: string): ChatThreadMeta[];
@@ -24,7 +27,15 @@ export declare class ChatService {
24
27
  listThreadsForPatch(patchPath: string): ChatThreadMeta[];
25
28
  /** M23: count threads for a patch (cheap version for list UI). */
26
29
  threadCountForPatch(patchPath: string): number;
27
- listThreads(): ChatThreadMeta[];
30
+ /** 0.1.69 B4: count top-level (non-banka) threads for a brief (list UI). */
31
+ threadCountForBrief(briefPath: string): number;
32
+ /**
33
+ * 0.1.69 Transagents (F5 reconstruction): resolve a child banka from the
34
+ * parent's stored `tool_use(runTransagent)` row via (parent_thread_id,
35
+ * spawned_by_tool_use_id). Returns the most recent match, or null.
36
+ */
37
+ findChildThread(parentThreadId: string, spawnedByToolUseId: string): ChatThread | null;
38
+ listThreads(limit?: number, offset?: number): ChatThreadMeta[];
28
39
  getThread(id: string, limit?: number, offset?: number): {
29
40
  thread: ChatThread;
30
41
  messages: ChatMessage[];
@@ -2,6 +2,19 @@ import { nanoid } from 'nanoid';
2
2
  import { DomainError } from './tags.js';
3
3
  /** Hard cap on pending queued messages per thread (→ 400 QUEUE_FULL). */
4
4
  export const QUEUE_LIMIT = 20;
5
+ /**
6
+ * Column list for thread *list* projections (ChatThreadMeta). Deliberately omits
7
+ * the potentially-large `initial_system_prompt` blob (up to ~85 KB/row, ~10 MB
8
+ * across this DB) — a list only needs the boolean `has_system_prompt`; the full
9
+ * prompt is fetched on demand elsewhere. Mirrors exactly the fields
10
+ * `hydrateThread()` reads, so the `as ChatThreadRow` cast stays sound.
11
+ */
12
+ const THREAD_META_COLUMNS = `t.id, t.title, t.last_session_id,
13
+ t.initial_architecture_config_json, t.current_todo_items, t.plan_mode,
14
+ t.last_usage_json, t.last_context_size, t.plan_id, t.last_seen_plan_version,
15
+ t.context_type, t.brief_path, t.patch_path, t.parent_thread_id,
16
+ t.spawned_by_tool_use_id, t.created_at, t.updated_at,
17
+ (t.initial_system_prompt IS NOT NULL) AS has_system_prompt`;
5
18
  export class ChatService {
6
19
  db;
7
20
  constructor(db) {
@@ -12,6 +25,8 @@ export class ChatService {
12
25
  const contextType = opts.contextType ?? 'chat';
13
26
  const briefPath = opts.briefPath ?? null;
14
27
  const patchPath = opts.patchPath ?? null;
28
+ const parentThreadId = opts.parentThreadId ?? null;
29
+ const spawnedByToolUseId = opts.spawnedByToolUseId ?? null;
15
30
  // Invariant L2: context_type='brief' ⇒ brief_path IS NOT NULL.
16
31
  if (contextType === 'brief' && !briefPath) {
17
32
  throw new DomainError('VALIDATION', "context_type='brief' requires brief_path");
@@ -21,21 +36,19 @@ export class ChatService {
21
36
  throw new DomainError('VALIDATION', "context_type='patch' requires patch_path");
22
37
  }
23
38
  this.db
24
- .prepare(`INSERT INTO chat_thread (id, title, context_type, brief_path, patch_path)
25
- VALUES (?, ?, ?, ?, ?)`)
26
- .run(id, title, contextType, briefPath, patchPath);
39
+ .prepare(`INSERT INTO chat_thread (id, title, context_type, brief_path, patch_path, parent_thread_id, spawned_by_tool_use_id)
40
+ VALUES (?, ?, ?, ?, ?, ?, ?)`)
41
+ .run(id, title, contextType, briefPath, patchPath, parentThreadId, spawnedByToolUseId);
27
42
  return this.getThreadRow(id);
28
43
  }
29
44
  /** M21: list threads attached to a brief (path-keyed lookup). */
30
45
  listThreadsForBrief(briefPath) {
31
46
  const rows = this.db
32
- .prepare(`SELECT t.*,
33
- COUNT(m.id) AS message_count,
34
- (t.initial_system_prompt IS NOT NULL) AS has_system_prompt
47
+ .prepare(`SELECT ${THREAD_META_COLUMNS},
48
+ (SELECT COUNT(*) FROM chat_message m WHERE m.thread_id = t.id) AS message_count
35
49
  FROM chat_thread t
36
- LEFT JOIN chat_message m ON m.thread_id = t.id
37
50
  WHERE t.brief_path = ? AND t.context_type = 'brief'
38
- GROUP BY t.id
51
+ AND t.parent_thread_id IS NULL
39
52
  ORDER BY t.updated_at DESC`)
40
53
  .all(briefPath);
41
54
  return rows.map((r) => ({
@@ -46,13 +59,11 @@ export class ChatService {
46
59
  /** M23: list threads attached to a patch (path-keyed lookup). */
47
60
  listThreadsForPatch(patchPath) {
48
61
  const rows = this.db
49
- .prepare(`SELECT t.*,
50
- COUNT(m.id) AS message_count,
51
- (t.initial_system_prompt IS NOT NULL) AS has_system_prompt
62
+ .prepare(`SELECT ${THREAD_META_COLUMNS},
63
+ (SELECT COUNT(*) FROM chat_message m WHERE m.thread_id = t.id) AS message_count
52
64
  FROM chat_thread t
53
- LEFT JOIN chat_message m ON m.thread_id = t.id
54
65
  WHERE t.patch_path = ? AND t.context_type = 'patch'
55
- GROUP BY t.id
66
+ AND t.parent_thread_id IS NULL
56
67
  ORDER BY t.updated_at DESC`)
57
68
  .all(patchPath);
58
69
  return rows.map((r) => ({
@@ -63,20 +74,42 @@ export class ChatService {
63
74
  /** M23: count threads for a patch (cheap version for list UI). */
64
75
  threadCountForPatch(patchPath) {
65
76
  const row = this.db
66
- .prepare(`SELECT COUNT(*) AS n FROM chat_thread WHERE patch_path = ? AND context_type = 'patch'`)
77
+ .prepare(`SELECT COUNT(*) AS n FROM chat_thread WHERE patch_path = ? AND context_type = 'patch' AND parent_thread_id IS NULL`)
67
78
  .get(patchPath);
68
79
  return row.n;
69
80
  }
70
- listThreads() {
71
- const rows = this.db
81
+ /** 0.1.69 B4: count top-level (non-banka) threads for a brief (list UI). */
82
+ threadCountForBrief(briefPath) {
83
+ const row = this.db
84
+ .prepare(`SELECT COUNT(*) AS n FROM chat_thread WHERE brief_path = ? AND context_type = 'brief' AND parent_thread_id IS NULL`)
85
+ .get(briefPath);
86
+ return row.n;
87
+ }
88
+ /**
89
+ * 0.1.69 Transagents (F5 reconstruction): resolve a child banka from the
90
+ * parent's stored `tool_use(runTransagent)` row via (parent_thread_id,
91
+ * spawned_by_tool_use_id). Returns the most recent match, or null.
92
+ */
93
+ findChildThread(parentThreadId, spawnedByToolUseId) {
94
+ const row = this.db
72
95
  .prepare(`SELECT t.*,
73
- COUNT(m.id) AS message_count,
74
96
  (t.initial_system_prompt IS NOT NULL) AS has_system_prompt
75
97
  FROM chat_thread t
76
- LEFT JOIN chat_message m ON m.thread_id = t.id
77
- GROUP BY t.id
78
- ORDER BY t.updated_at DESC`)
79
- .all();
98
+ WHERE t.parent_thread_id = ? AND t.spawned_by_tool_use_id = ?
99
+ ORDER BY t.created_at DESC
100
+ LIMIT 1`)
101
+ .get(parentThreadId, spawnedByToolUseId);
102
+ return row ? this.hydrateThread(row) : null;
103
+ }
104
+ listThreads(limit = 20, offset = 0) {
105
+ const rows = this.db
106
+ .prepare(`SELECT ${THREAD_META_COLUMNS},
107
+ (SELECT COUNT(*) FROM chat_message m WHERE m.thread_id = t.id) AS message_count
108
+ FROM chat_thread t
109
+ WHERE t.parent_thread_id IS NULL
110
+ ORDER BY t.updated_at DESC
111
+ LIMIT ? OFFSET ?`)
112
+ .all(limit, offset);
80
113
  return rows.map((r) => ({
81
114
  ...this.hydrateThread(r),
82
115
  messageCount: r.message_count,
@@ -363,6 +396,8 @@ export class ChatService {
363
396
  contextType: hydrateContextType(row.context_type),
364
397
  briefPath: row.brief_path,
365
398
  patchPath: row.patch_path,
399
+ parentThreadId: row.parent_thread_id ?? null,
400
+ spawnedByToolUseId: row.spawned_by_tool_use_id ?? null,
366
401
  createdAt: row.created_at,
367
402
  updatedAt: row.updated_at,
368
403
  };
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/services/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/services/chat.ts"],"names":[],"mappings":"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"}