@decibelsystems/tools 2.2.0-beta.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/CHANGELOG.md +160 -0
  2. package/dist/agentPresence.d.ts +80 -0
  3. package/dist/agentPresence.d.ts.map +1 -1
  4. package/dist/agentPresence.js +177 -0
  5. package/dist/agentPresence.js.map +1 -1
  6. package/dist/agentic/index.d.ts +18 -8
  7. package/dist/agentic/index.d.ts.map +1 -1
  8. package/dist/agentic/index.js +18 -144
  9. package/dist/agentic/index.js.map +1 -1
  10. package/dist/agentic/types.d.ts +106 -0
  11. package/dist/agentic/types.d.ts.map +1 -1
  12. package/dist/agentic/types.js +77 -1
  13. package/dist/agentic/types.js.map +1 -1
  14. package/dist/architectAdrs.d.ts +14 -2
  15. package/dist/architectAdrs.d.ts.map +1 -1
  16. package/dist/architectAdrs.js +9 -3
  17. package/dist/architectAdrs.js.map +1 -1
  18. package/dist/client/transports.d.ts.map +1 -1
  19. package/dist/client/transports.js +13 -3
  20. package/dist/client/transports.js.map +1 -1
  21. package/dist/daemon.d.ts +19 -0
  22. package/dist/daemon.d.ts.map +1 -1
  23. package/dist/daemon.js +181 -38
  24. package/dist/daemon.js.map +1 -1
  25. package/dist/daemonConfig.d.ts +24 -0
  26. package/dist/daemonConfig.d.ts.map +1 -1
  27. package/dist/daemonConfig.js +46 -12
  28. package/dist/daemonConfig.js.map +1 -1
  29. package/dist/decibelPaths.d.ts.map +1 -1
  30. package/dist/decibelPaths.js +39 -6
  31. package/dist/decibelPaths.js.map +1 -1
  32. package/dist/domain/issue.d.ts +77 -0
  33. package/dist/domain/issue.d.ts.map +1 -0
  34. package/dist/domain/issue.js +134 -0
  35. package/dist/domain/issue.js.map +1 -0
  36. package/dist/domain/issueCodec.d.ts +39 -0
  37. package/dist/domain/issueCodec.d.ts.map +1 -0
  38. package/dist/domain/issueCodec.js +298 -0
  39. package/dist/domain/issueCodec.js.map +1 -0
  40. package/dist/domain/issueRepository.d.ts +91 -0
  41. package/dist/domain/issueRepository.d.ts.map +1 -0
  42. package/dist/domain/issueRepository.js +257 -0
  43. package/dist/domain/issueRepository.js.map +1 -0
  44. package/dist/facades/definitions.d.ts +0 -1
  45. package/dist/facades/definitions.d.ts.map +1 -1
  46. package/dist/facades/definitions.js +94 -113
  47. package/dist/facades/definitions.js.map +1 -1
  48. package/dist/facades/index.d.ts +2 -1
  49. package/dist/facades/index.d.ts.map +1 -1
  50. package/dist/facades/index.js +1 -1
  51. package/dist/facades/index.js.map +1 -1
  52. package/dist/facades/types.d.ts +17 -0
  53. package/dist/facades/types.d.ts.map +1 -1
  54. package/dist/httpArgs.d.ts +11 -0
  55. package/dist/httpArgs.d.ts.map +1 -0
  56. package/dist/httpArgs.js +39 -0
  57. package/dist/httpArgs.js.map +1 -0
  58. package/dist/httpServer.d.ts +1 -12
  59. package/dist/httpServer.d.ts.map +1 -1
  60. package/dist/httpServer.js +97 -96
  61. package/dist/httpServer.js.map +1 -1
  62. package/dist/kernel.d.ts +46 -1
  63. package/dist/kernel.d.ts.map +1 -1
  64. package/dist/kernel.js +311 -26
  65. package/dist/kernel.js.map +1 -1
  66. package/dist/lib/agent-services/assumptions.d.ts.map +1 -1
  67. package/dist/lib/agent-services/assumptions.js +8 -2
  68. package/dist/lib/agent-services/assumptions.js.map +1 -1
  69. package/dist/lib/atomicWrite.d.ts +26 -0
  70. package/dist/lib/atomicWrite.d.ts.map +1 -0
  71. package/dist/lib/atomicWrite.js +73 -0
  72. package/dist/lib/atomicWrite.js.map +1 -0
  73. package/dist/lib/envelope.d.ts +31 -0
  74. package/dist/lib/envelope.d.ts.map +1 -0
  75. package/dist/lib/envelope.js +80 -0
  76. package/dist/lib/envelope.js.map +1 -0
  77. package/dist/lib/fileLock.d.ts +38 -0
  78. package/dist/lib/fileLock.d.ts.map +1 -0
  79. package/dist/lib/fileLock.js +124 -0
  80. package/dist/lib/fileLock.js.map +1 -0
  81. package/dist/lib/recordIdAllocator.d.ts +86 -0
  82. package/dist/lib/recordIdAllocator.d.ts.map +1 -0
  83. package/dist/lib/recordIdAllocator.js +161 -0
  84. package/dist/lib/recordIdAllocator.js.map +1 -0
  85. package/dist/projectRegistry.d.ts.map +1 -1
  86. package/dist/projectRegistry.js +11 -0
  87. package/dist/projectRegistry.js.map +1 -1
  88. package/dist/runtime/circuitBreaker.d.ts +95 -0
  89. package/dist/runtime/circuitBreaker.d.ts.map +1 -0
  90. package/dist/runtime/circuitBreaker.js +178 -0
  91. package/dist/runtime/circuitBreaker.js.map +1 -0
  92. package/dist/runtime/ensureRuntime.d.ts +103 -0
  93. package/dist/runtime/ensureRuntime.d.ts.map +1 -0
  94. package/dist/runtime/ensureRuntime.js +281 -0
  95. package/dist/runtime/ensureRuntime.js.map +1 -0
  96. package/dist/runtime/extensions.d.ts +57 -0
  97. package/dist/runtime/extensions.d.ts.map +1 -0
  98. package/dist/runtime/extensions.js +216 -0
  99. package/dist/runtime/extensions.js.map +1 -0
  100. package/dist/runtime/localHttp.d.ts +24 -0
  101. package/dist/runtime/localHttp.d.ts.map +1 -0
  102. package/dist/runtime/localHttp.js +84 -0
  103. package/dist/runtime/localHttp.js.map +1 -0
  104. package/dist/runtime/projectResolution.d.ts +29 -0
  105. package/dist/runtime/projectResolution.d.ts.map +1 -0
  106. package/dist/runtime/projectResolution.js +67 -0
  107. package/dist/runtime/projectResolution.js.map +1 -0
  108. package/dist/runtime/protocol.d.ts +62 -0
  109. package/dist/runtime/protocol.d.ts.map +1 -0
  110. package/dist/runtime/protocol.js +74 -0
  111. package/dist/runtime/protocol.js.map +1 -0
  112. package/dist/sentinelIssues.d.ts +26 -2
  113. package/dist/sentinelIssues.d.ts.map +1 -1
  114. package/dist/sentinelIssues.js +125 -64
  115. package/dist/sentinelIssues.js.map +1 -1
  116. package/dist/server.js +59 -12
  117. package/dist/server.js.map +1 -1
  118. package/dist/tools/agentic/index.d.ts.map +1 -1
  119. package/dist/tools/agentic/index.js +28 -2
  120. package/dist/tools/agentic/index.js.map +1 -1
  121. package/dist/tools/architect/index.d.ts.map +1 -1
  122. package/dist/tools/architect/index.js +7 -2
  123. package/dist/tools/architect/index.js.map +1 -1
  124. package/dist/tools/context.d.ts +10 -5
  125. package/dist/tools/context.d.ts.map +1 -1
  126. package/dist/tools/context.js +45 -18
  127. package/dist/tools/context.js.map +1 -1
  128. package/dist/tools/coordinator/coordinator.d.ts.map +1 -1
  129. package/dist/tools/coordinator/coordinator.js +48 -19
  130. package/dist/tools/coordinator/coordinator.js.map +1 -1
  131. package/dist/tools/crit.d.ts +2 -1
  132. package/dist/tools/crit.d.ts.map +1 -1
  133. package/dist/tools/crit.js +19 -4
  134. package/dist/tools/crit.js.map +1 -1
  135. package/dist/tools/designer/index.d.ts.map +1 -1
  136. package/dist/tools/designer/index.js +4 -3
  137. package/dist/tools/designer/index.js.map +1 -1
  138. package/dist/tools/designer/lateral-tools.d.ts.map +1 -1
  139. package/dist/tools/designer/lateral-tools.js +4 -2
  140. package/dist/tools/designer/lateral-tools.js.map +1 -1
  141. package/dist/tools/designer.d.ts +2 -1
  142. package/dist/tools/designer.d.ts.map +1 -1
  143. package/dist/tools/designer.js +24 -12
  144. package/dist/tools/designer.js.map +1 -1
  145. package/dist/tools/dojo.d.ts +3 -2
  146. package/dist/tools/dojo.d.ts.map +1 -1
  147. package/dist/tools/dojo.js +64 -22
  148. package/dist/tools/dojo.js.map +1 -1
  149. package/dist/tools/friction.d.ts.map +1 -1
  150. package/dist/tools/friction.js +16 -6
  151. package/dist/tools/friction.js.map +1 -1
  152. package/dist/tools/guardian.d.ts.map +1 -1
  153. package/dist/tools/guardian.js +6 -2
  154. package/dist/tools/guardian.js.map +1 -1
  155. package/dist/tools/hygiene/oracle-hygiene.d.ts.map +1 -1
  156. package/dist/tools/hygiene/oracle-hygiene.js +8 -2
  157. package/dist/tools/hygiene/oracle-hygiene.js.map +1 -1
  158. package/dist/tools/index.d.ts.map +1 -1
  159. package/dist/tools/index.js +27 -18
  160. package/dist/tools/index.js.map +1 -1
  161. package/dist/tools/learnings.d.ts +2 -1
  162. package/dist/tools/learnings.d.ts.map +1 -1
  163. package/dist/tools/learnings.js +31 -15
  164. package/dist/tools/learnings.js.map +1 -1
  165. package/dist/tools/oracle.d.ts.map +1 -1
  166. package/dist/tools/oracle.js +19 -6
  167. package/dist/tools/oracle.js.map +1 -1
  168. package/dist/tools/policy.d.ts +2 -1
  169. package/dist/tools/policy.d.ts.map +1 -1
  170. package/dist/tools/policy.js +28 -9
  171. package/dist/tools/policy.js.map +1 -1
  172. package/dist/tools/postoffice/index.d.ts +10 -0
  173. package/dist/tools/postoffice/index.d.ts.map +1 -0
  174. package/dist/tools/postoffice/index.js +218 -0
  175. package/dist/tools/postoffice/index.js.map +1 -0
  176. package/dist/tools/postoffice.d.ts +78 -0
  177. package/dist/tools/postoffice.d.ts.map +1 -0
  178. package/dist/tools/postoffice.js +199 -0
  179. package/dist/tools/postoffice.js.map +1 -0
  180. package/dist/tools/provenance.d.ts +7 -0
  181. package/dist/tools/provenance.d.ts.map +1 -1
  182. package/dist/tools/provenance.js +42 -16
  183. package/dist/tools/provenance.js.map +1 -1
  184. package/dist/tools/sentinel/index.d.ts +1 -0
  185. package/dist/tools/sentinel/index.d.ts.map +1 -1
  186. package/dist/tools/sentinel/index.js +88 -4
  187. package/dist/tools/sentinel/index.js.map +1 -1
  188. package/dist/tools/sentinel.d.ts +102 -1
  189. package/dist/tools/sentinel.d.ts.map +1 -1
  190. package/dist/tools/sentinel.js +544 -328
  191. package/dist/tools/sentinel.js.map +1 -1
  192. package/dist/tools/shared/index.d.ts +2 -1
  193. package/dist/tools/shared/index.d.ts.map +1 -1
  194. package/dist/tools/shared/index.js +2 -1
  195. package/dist/tools/shared/index.js.map +1 -1
  196. package/dist/tools/shared/response.d.ts +24 -0
  197. package/dist/tools/shared/response.d.ts.map +1 -1
  198. package/dist/tools/shared/response.js +61 -7
  199. package/dist/tools/shared/response.js.map +1 -1
  200. package/dist/tools/shared/storeRead.d.ts +153 -0
  201. package/dist/tools/shared/storeRead.d.ts.map +1 -0
  202. package/dist/tools/shared/storeRead.js +242 -0
  203. package/dist/tools/shared/storeRead.js.map +1 -0
  204. package/dist/tools/testSpec.d.ts +3 -2
  205. package/dist/tools/testSpec.d.ts.map +1 -1
  206. package/dist/tools/testSpec.js +51 -14
  207. package/dist/tools/testSpec.js.map +1 -1
  208. package/dist/tools/vector.d.ts +33 -1
  209. package/dist/tools/vector.d.ts.map +1 -1
  210. package/dist/tools/vector.js +31 -5
  211. package/dist/tools/vector.js.map +1 -1
  212. package/dist/tools/zoom/index.d.ts +15 -0
  213. package/dist/tools/zoom/index.d.ts.map +1 -0
  214. package/dist/tools/zoom/index.js +174 -0
  215. package/dist/tools/zoom/index.js.map +1 -0
  216. package/dist/tools/zoom.d.ts +234 -0
  217. package/dist/tools/zoom.d.ts.map +1 -0
  218. package/dist/tools/zoom.js +627 -0
  219. package/dist/tools/zoom.js.map +1 -0
  220. package/dist/transports/bridge.d.ts +1 -1
  221. package/dist/transports/bridge.d.ts.map +1 -1
  222. package/dist/transports/bridge.js +2 -0
  223. package/dist/transports/bridge.js.map +1 -1
  224. package/dist/transports/http.d.ts +1 -1
  225. package/dist/transports/http.d.ts.map +1 -1
  226. package/dist/transports/http.js +3 -1
  227. package/dist/transports/http.js.map +1 -1
  228. package/dist/transports/index.d.ts +1 -0
  229. package/dist/transports/index.d.ts.map +1 -1
  230. package/dist/transports/index.js +1 -0
  231. package/dist/transports/index.js.map +1 -1
  232. package/dist/transports/mcp.d.ts +1 -1
  233. package/dist/transports/mcp.d.ts.map +1 -1
  234. package/dist/transports/mcp.js +7 -3
  235. package/dist/transports/mcp.js.map +1 -1
  236. package/dist/transports/stdio.d.ts +1 -1
  237. package/dist/transports/stdio.d.ts.map +1 -1
  238. package/dist/transports/stdio.js +2 -0
  239. package/dist/transports/stdio.js.map +1 -1
  240. package/dist/transports/thinStdio.d.ts +22 -0
  241. package/dist/transports/thinStdio.d.ts.map +1 -0
  242. package/dist/transports/thinStdio.js +218 -0
  243. package/dist/transports/thinStdio.js.map +1 -0
  244. package/dist/transports/types.d.ts +8 -1
  245. package/dist/transports/types.d.ts.map +1 -1
  246. package/dist/types/agent-services.d.ts +7 -0
  247. package/dist/types/agent-services.d.ts.map +1 -1
  248. package/package.json +9 -4
  249. package/templates/com.decibel.daemon.plist +6 -1
  250. package/dist/tools/deck.d.ts +0 -11
  251. package/dist/tools/deck.d.ts.map +0 -1
  252. package/dist/tools/deck.js +0 -1656
  253. package/dist/tools/deck.js.map +0 -1
  254. package/dist/tools/mother.d.ts +0 -11
  255. package/dist/tools/mother.d.ts.map +0 -1
  256. package/dist/tools/mother.js +0 -503
  257. package/dist/tools/mother.js.map +0 -1
  258. package/dist/tools/registry.d.ts +0 -3
  259. package/dist/tools/registry.d.ts.map +0 -1
  260. package/dist/tools/registry.js +0 -189
  261. package/dist/tools/registry.js.map +0 -1
  262. package/dist/tools/senken.d.ts +0 -11
  263. package/dist/tools/senken.d.ts.map +0 -1
  264. package/dist/tools/senken.js +0 -482
  265. package/dist/tools/senken.js.map +0 -1
  266. package/dist/tools/terminal.d.ts +0 -17
  267. package/dist/tools/terminal.d.ts.map +0 -1
  268. package/dist/tools/terminal.js +0 -968
  269. package/dist/tools/terminal.js.map +0 -1
  270. package/dist/tools/toolsIndex.d.ts +0 -5
  271. package/dist/tools/toolsIndex.d.ts.map +0 -1
  272. package/dist/tools/toolsIndex.js +0 -37
  273. package/dist/tools/toolsIndex.js.map +0 -1
@@ -3,6 +3,8 @@ import path from 'path';
3
3
  import { parse as parseYaml, parseAllDocuments, stringify as stringifyYaml } from 'yaml';
4
4
  import { log } from './config.js';
5
5
  import { getWritePath, readFilesFromBothPaths } from './decibelPaths.js';
6
+ import { FsIssueRepository } from './domain/issueRepository.js';
7
+ import { writeFileAtomic } from './lib/atomicWrite.js';
6
8
  // ============================================================================
7
9
  // Constants
8
10
  // ============================================================================
@@ -105,10 +107,15 @@ export async function listIssuesForProject(projectId) {
105
107
  log(`sentinelIssues: Skipping ${filePath} - missing id or title`);
106
108
  continue;
107
109
  }
108
- // Skip duplicates (primary takes precedence)
109
- if (seenIds.has(id)) {
110
- log(`sentinelIssues: Skipping duplicate ${id} from ${source} path`);
111
- continue;
110
+ // Two DIFFERENT issues can claim one id (ISS-0131). Dropping the second
111
+ // made it unreachable to read_issue/update_issue while the tool still
112
+ // reported success on the first — so keep both and mark them instead.
113
+ // (Cross-path duplicates of the SAME file are already deduped by
114
+ // filename in readFilesFromBothPaths, so this only ever fires on a real
115
+ // id collision.)
116
+ const isDuplicate = seenIds.has(id);
117
+ if (isDuplicate) {
118
+ log(`sentinelIssues: Duplicate id ${id} from ${source} path — both retained, marked ambiguous`);
112
119
  }
113
120
  seenIds.add(id);
114
121
  const issue = {
@@ -139,6 +146,20 @@ export async function listIssuesForProject(projectId) {
139
146
  log(`sentinelIssues: Failed to parse ${filePath}: ${message}`);
140
147
  }
141
148
  }
149
+ // Mark EVERY member of a colliding id, not just the ones seen second — a
150
+ // caller holding the first file is in exactly as much danger as one holding
151
+ // the second, and neither can be safely written by id alone.
152
+ const byId = new Map();
153
+ for (const issue of issues) {
154
+ const key = issue.id.toUpperCase();
155
+ byId.set(key, [...(byId.get(key) ?? []), issue]);
156
+ }
157
+ for (const group of byId.values()) {
158
+ if (group.length > 1) {
159
+ for (const issue of group)
160
+ issue.duplicate_id = true;
161
+ }
162
+ }
142
163
  // Sort by ID (newest first)
143
164
  issues.sort((a, b) => extractIssueNumber(b.id) - extractIssueNumber(a.id));
144
165
  return issues;
@@ -146,66 +167,77 @@ export async function listIssuesForProject(projectId) {
146
167
  /**
147
168
  * Create a new issue for a project
148
169
  */
170
+ /**
171
+ * Create an issue.
172
+ *
173
+ * EPIC-0038 Phase 5: this used to be the second writer. It emitted `.yml` while
174
+ * the facade path (src/tools/sentinel.ts -> FsIssueRepository) emitted `.md`,
175
+ * into the same directory, from the same ISS-NNNN space. Converging the files
176
+ * while both writers ran would have left this one re-emitting `.yml` behind the
177
+ * migration — which is why the epic sequences behaviour before representation.
178
+ *
179
+ * So it now delegates. The name, the input contract and the return shape are
180
+ * all preserved; only the bytes on disk change. `SentinelIssue` is a subset of
181
+ * the canonical `Issue`, so the mapping back is total rather than lossy:
182
+ * `details` carries what this API calls `description`, and everything else is
183
+ * the same field under the same name.
184
+ *
185
+ * One field needs a decision rather than a mapping. This API has no `severity`
186
+ * and the canonical model wants one, so callers may now pass it and it defaults
187
+ * to 'med' — the neutral middle of ['low','med','high','critical'] — rather
188
+ * than inventing a severity from `priority`, which answers a different question
189
+ * (how bad it is, versus when it gets worked on).
190
+ */
149
191
  export async function createIssue(input) {
150
- const { projectId, title, description, epicId, priority, tags } = input;
151
- // Always write to .decibel/ (primary path)
192
+ const { projectId, title, description, epicId, priority, tags, severity } = input;
152
193
  const issuesDir = await getWritePath(projectId, ISSUES_SUBPATH);
153
194
  await ensureDir(issuesDir);
154
- // Find next issue number
155
- const existingIssues = await listIssuesForProject(projectId);
156
- const maxNum = existingIssues.reduce((max, issue) => Math.max(max, extractIssueNumber(issue.id)), 0);
157
- const newNum = maxNum + 1;
158
- const newId = formatIssueId(newNum);
159
- // Build filename
160
- const slug = slugify(title);
161
- const filename = `${newId}-${slug}.yml`;
162
- const filePath = path.join(issuesDir, filename);
163
- // Build issue object
164
- const now = new Date().toISOString();
165
- const issue = {
166
- id: newId,
195
+ const repo = new FsIssueRepository(issuesDir);
196
+ const stored = await repo.create({
167
197
  title,
168
- project: projectId,
169
- status: 'open',
198
+ details: description ?? '',
199
+ severity: severity ?? 'med',
170
200
  priority: priority || 'medium',
171
201
  tags: tags || [],
172
- created_at: now,
173
- updated_at: now,
174
- };
175
- if (epicId) {
176
- issue.epicId = epicId;
177
- }
178
- if (description) {
179
- issue.description = description;
180
- }
181
- // Build YAML content
182
- // Use a specific field order for cleaner output
183
- const yamlObj = {
202
+ epicId,
203
+ project: projectId,
204
+ });
205
+ const issue = stored.issue;
206
+ log(`sentinelIssues: Created issue at ${stored.path}`);
207
+ // Rebuilt in this API's shape, not returned raw, so existing callers keep the
208
+ // response they were written against.
209
+ const out = {
184
210
  id: issue.id,
185
211
  title: issue.title,
186
- project: issue.project,
212
+ project: issue.project ?? projectId,
187
213
  status: issue.status,
188
214
  priority: issue.priority,
215
+ tags: issue.tags,
216
+ created_at: issue.created_at,
217
+ // The canonical record omits updated_at until something updates it, but
218
+ // this API has always returned both on create. Echoing created_at keeps
219
+ // that contract without writing a redundant field to disk.
220
+ updated_at: issue.updated_at ?? issue.created_at,
221
+ filePath: stored.path,
189
222
  };
190
- if (epicId) {
191
- yamlObj.epic_id = epicId;
192
- }
193
- yamlObj.tags = issue.tags;
194
- yamlObj.created_at = issue.created_at;
195
- yamlObj.updated_at = issue.updated_at;
196
- if (description) {
197
- yamlObj.description = description;
198
- }
199
- const yamlContent = stringifyYaml(yamlObj, {
200
- lineWidth: 0, // Don't wrap lines
201
- });
202
- // Write file
203
- await fs.writeFile(filePath, yamlContent, 'utf-8');
204
- log(`sentinelIssues: Created issue at ${filePath}`);
205
- return {
206
- ...issue,
207
- filePath,
208
- };
223
+ if (issue.epicId)
224
+ out.epicId = issue.epicId;
225
+ if (issue.details)
226
+ out.description = issue.details;
227
+ return out;
228
+ }
229
+ /**
230
+ * Build the refusal for an id that names more than one record. Callers get the
231
+ * candidate filenames because each one is itself a valid, unambiguous id —
232
+ * without them the error would be a dead end rather than a next step.
233
+ */
234
+ function ambiguousIssueId(issueId, projectId, candidates) {
235
+ const names = candidates.map((c) => typeof c.filename === 'string' ? c.filename : String(c.title ?? '?'));
236
+ const err = new Error(`AMBIGUOUS_ISSUE_ID: "${issueId}" matches ${names.length} records in project "${projectId}", ` +
237
+ `so the target is undefined and nothing was changed. ` +
238
+ `Re-run with one of these filenames as issue_id: ${names.join(', ')}`);
239
+ err.name = 'AmbiguousIssueIdError';
240
+ return err;
209
241
  }
210
242
  /**
211
243
  * Get a single issue by ID (e.g., "ISS-0005") with full content
@@ -216,8 +248,18 @@ export async function getIssueById(projectId, issueId) {
216
248
  const norm = (s) => s.toUpperCase().replace(/\.(MD|YA?ML)$/, '');
217
249
  const issues = await listIssuesForProject(projectId);
218
250
  const normalizedId = norm(issueId);
219
- return (issues.find((i) => norm(i.id) === normalizedId ||
220
- (typeof i.filename === 'string' && norm(i.filename) === normalizedId)) ?? null);
251
+ // Filename is the more specific form and can only match one record, so it
252
+ // wins outright — that keeps "retry with the filename" a working escape
253
+ // hatch out of an ambiguous id.
254
+ const byFilename = issues.filter((i) => typeof i.filename === 'string' && norm(i.filename) === normalizedId);
255
+ if (byFilename.length === 1)
256
+ return byFilename[0];
257
+ const byId = issues.filter((i) => norm(i.id) === normalizedId);
258
+ if (byId.length === 0)
259
+ return null;
260
+ if (byId.length > 1)
261
+ throw ambiguousIssueId(issueId, projectId, byId);
262
+ return byId[0];
221
263
  }
222
264
  /**
223
265
  * Update an existing issue — status, priority, tags, and/or append a note.
@@ -228,17 +270,28 @@ export async function updateIssue(input) {
228
270
  // Find the issue file
229
271
  const files = await readFilesFromBothPaths(projectId, ISSUES_SUBPATH);
230
272
  const normalizedId = issueId.toUpperCase();
231
- let matchedFile;
232
- for (const f of files) {
273
+ // Exact filename beats a prefix, so naming the file disambiguates a
274
+ // duplicate id. Checked first and returned outright.
275
+ const exact = files.filter((f) => path.basename(f.filePath).toUpperCase() === normalizedId);
276
+ // A bare `startsWith` had no boundary: "ISS-011" swallowed ISS-0110,
277
+ // ISS-0112 and ISS-0119, and `break` then wrote to whichever readdir
278
+ // happened to yield first. Require the id to end at a separator or the
279
+ // extension, and collect every hit rather than stopping at the first.
280
+ const prefixed = files.filter((f) => {
233
281
  const basename = path.basename(f.filePath).toUpperCase();
234
- if (basename.startsWith(normalizedId)) {
235
- matchedFile = f;
236
- break;
237
- }
238
- }
239
- if (!matchedFile) {
282
+ if (!basename.startsWith(normalizedId))
283
+ return false;
284
+ const rest = basename.slice(normalizedId.length);
285
+ return rest === '' || rest.startsWith('-') || /^\.(MD|YA?ML)$/.test(rest);
286
+ });
287
+ const matches = exact.length > 0 ? exact : prefixed;
288
+ if (matches.length === 0) {
240
289
  throw new Error(`Issue ${issueId} not found in project ${projectId}`);
241
290
  }
291
+ if (matches.length > 1) {
292
+ throw ambiguousIssueId(issueId, projectId, matches.map((f) => ({ filename: path.basename(f.filePath) })));
293
+ }
294
+ const matchedFile = matches[0];
242
295
  // Read and parse. Two on-disk formats exist:
243
296
  // 1. Markdown with `---` frontmatter delimiters + body (tools/sentinel.ts createIssue)
244
297
  // 2. Pure YAML (this module's createIssue)
@@ -254,6 +307,14 @@ export async function updateIssue(input) {
254
307
  if (status && status !== parsed.status) {
255
308
  changes.push(`status: ${parsed.status} → ${status}`);
256
309
  parsed.status = status;
310
+ // Markdown records mirror the status into the body as `**Status:** x` for
311
+ // human readers. close_issue rewrites that line; this path did not, so a
312
+ // record moved to in_progress or closed here still read `open` to anyone
313
+ // opening the file. Frontmatter stayed correct, which is why the tools
314
+ // never noticed — the drift was only ever visible to people.
315
+ if (body !== undefined) {
316
+ body = body.replace(/^\*\*Status:\*\* .*$/m, `**Status:** ${status}`);
317
+ }
257
318
  }
258
319
  if (priority && priority !== parsed.priority) {
259
320
  changes.push(`priority: ${parsed.priority ?? 'unset'} → ${priority}`);
@@ -291,7 +352,7 @@ export async function updateIssue(input) {
291
352
  const writeDir = await getWritePath(projectId, ISSUES_SUBPATH);
292
353
  await ensureDir(writeDir);
293
354
  const writePath = path.join(writeDir, path.basename(matchedFile.filePath));
294
- await fs.writeFile(writePath, yamlContent, 'utf-8');
355
+ await writeFileAtomic(writePath, yamlContent);
295
356
  log(`sentinelIssues: Updated issue ${issueId} at ${writePath} — ${changes.join(', ')}`);
296
357
  // Build return object
297
358
  const issue = {
@@ -1 +1 @@
1
- {"version":3,"file":"sentinelIssues.js","sourceRoot":"","sources":["../src/sentinelIssues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sentinelIssues.js","sourceRoot":"","sources":["../src/sentinelIssues.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -14,19 +14,27 @@
14
14
  // node dist/server.js --daemon status
15
15
  // node dist/server.js setup → multi-client install wizard
16
16
  // ============================================================================
17
+ // ---------------------------------------------------------------------------
18
+ // Static imports are deliberately confined to modules that pull in nothing
19
+ // heavy: node builtins, argv parsing, config files, daemon lifecycle.
20
+ //
21
+ // Everything that reaches the tool graph — the kernel, the HTTP server, the
22
+ // Supabase clients, the transports that embed them — is imported dynamically
23
+ // inside the branch that needs it. This is not stylistic. An ESM static import
24
+ // is evaluated at module load, before main() picks a mode, so a plain
25
+ // `import { createKernel } from './kernel.js'` loaded all 220 tool modules for
26
+ // every client including the ones that only proxy. Skipping the createKernel()
27
+ // CALL freed the registry and nothing else; the memory was in the import graph,
28
+ // which is why --thin measured WORSE than full stdio (113 MB vs 97 MB) when it
29
+ // first landed. Adding a static import of any tool-reaching module here
30
+ // silently undoes that. See scripts/measure-memory.mjs.
31
+ // ---------------------------------------------------------------------------
17
32
  import fs from 'fs';
18
33
  import path from 'path';
19
34
  import { getConfig, log } from './config.js';
20
- import { createKernel } from './kernel.js';
21
- import { StdioAdapter, HttpAdapter, BridgeAdapter } from './transports/index.js';
22
- import { parseHttpArgs } from './httpServer.js';
35
+ import { parseHttpArgs } from './httpArgs.js';
23
36
  import { checkRunning, writePid, removePid, installShutdownHandlers, handleDaemonSubcommand, getLogPath, rotateLog, checkCrashLoop, scheduleHealthReset, resetCrashes, AgentRegistry, } from './daemon.js';
24
37
  import { loadConfig } from './daemonConfig.js';
25
- import { getLicenseValidator } from './license.js';
26
- import { coordGarbageCollect } from './tools/coordinator/index.js';
27
- import { listProjects } from './projectRegistry.js';
28
- import { startPresenceWriter } from './agentPresence.js';
29
- import { startCommandDispatcher } from './agentCommands.js';
30
38
  const config = getConfig();
31
39
  log(`Starting Decibel MCP Server`);
32
40
  log(`Environment: ${config.env}`);
@@ -34,8 +42,9 @@ log(`Organization: ${config.org}`);
34
42
  log(`Root Directory: ${config.rootDir}`);
35
43
  if (process.env.DECIBEL_PRO === '1')
36
44
  log('Pro features: ENABLED');
37
- if (process.env.DECIBEL_APPS === '1')
38
- log('Apps: ENABLED');
45
+ // Apps tier is no longer an env flag — private facades come from the extension
46
+ // allowlist in ~/.decibel/config.yaml and the kernel logs what it loaded and
47
+ // what it refused. See runtime/extensions.ts.
39
48
  async function main() {
40
49
  const args = process.argv;
41
50
  // Setup wizard — must run before any transport starts (EPIC-0035 Phase 1)
@@ -90,14 +99,30 @@ async function main() {
90
99
  log(`Daemon: log file at ${getLogPath()}`);
91
100
  // Pre-validate license key from config (fire and forget)
92
101
  if (daemonConfig.license?.key) {
102
+ const { getLicenseValidator } = await import('./license.js');
93
103
  getLicenseValidator().prevalidate(daemonConfig.license.key);
94
104
  }
95
105
  }
96
- // Create kernel
97
- const kernel = await createKernel();
106
+ // THIN MODE: this process owns no runtime and proxies to the shared daemon.
107
+ //
108
+ // The kernel must not be built here. `--bridge` already proxies tool CALLS,
109
+ // but building the kernel first means a bridge client still loads all 195
110
+ // tool modules, its own registry and its own caches — the memory is spent
111
+ // before the transport choice is made. Six clients at ~110 MB each, five of
112
+ // them paying for a runtime they immediately forward past. That single
113
+ // unconditional line is the whole of the 663 MB measured on 2026-08-30.
114
+ const thinMode = args.includes('--thin');
115
+ // Dynamic on purpose — see the import-block note above. The `await import`
116
+ // is what keeps kernel.js and its 220 tool modules out of a thin client's
117
+ // heap, not the null assignment.
118
+ const kernel = thinMode ? null : await (await import('./kernel.js')).createKernel();
98
119
  const adapters = [];
99
120
  // In daemon mode, log all dispatches to dispatch.jsonl (async buffered writes + rotation)
100
121
  if (daemonMode) {
122
+ // Structural, not defensive: --thin and --daemon are contradictory. The
123
+ // daemon IS the runtime everything else proxies to.
124
+ if (!kernel)
125
+ throw new Error('Daemon mode requires a local kernel — --thin and --daemon cannot be combined');
101
126
  const logsDir = path.join(process.env.HOME || '~', '.decibel', 'logs');
102
127
  fs.mkdirSync(logsDir, { recursive: true });
103
128
  const dispatchLogPath = path.join(logsDir, 'dispatch.jsonl');
@@ -170,6 +195,8 @@ async function main() {
170
195
  // Sweep stale agents from registry
171
196
  agentRegistry.sweepStale();
172
197
  // GC coordinator state across all registered projects
198
+ const { listProjects } = await import('./projectRegistry.js');
199
+ const { coordGarbageCollect } = await import('./tools/coordinator/index.js');
173
200
  const projects = listProjects();
174
201
  if (projects.length > 0) {
175
202
  const projectIds = projects.map(p => p.id);
@@ -187,17 +214,21 @@ async function main() {
187
214
  let stopPresence = () => { };
188
215
  let stopCommands = () => { };
189
216
  if (daemonMode) {
217
+ const { startPresenceWriter } = await import('./agentPresence.js');
218
+ const { startCommandDispatcher } = await import('./agentCommands.js');
190
219
  stopPresence = startPresenceWriter();
191
220
  stopCommands = startCommandDispatcher();
192
221
  }
193
222
  // Start transport(s)
194
223
  if (daemonMode) {
195
224
  // Daemon always starts HTTP
225
+ const { HttpAdapter } = await import('./transports/http.js');
196
226
  const http = new HttpAdapter();
197
227
  await http.start(kernel, transportConfig);
198
228
  adapters.push(http);
199
229
  // Optionally also start stdio (for dual-mode)
200
230
  if (args.includes('--stdio')) {
231
+ const { StdioAdapter } = await import('./transports/stdio.js');
201
232
  const stdio = new StdioAdapter();
202
233
  await stdio.start(kernel, transportConfig);
203
234
  adapters.push(stdio);
@@ -213,10 +244,24 @@ async function main() {
213
244
  });
214
245
  }
215
246
  else if (httpMode) {
247
+ const { HttpAdapter } = await import('./transports/http.js');
216
248
  const http = new HttpAdapter();
217
249
  await http.start(kernel, transportConfig);
218
250
  adapters.push(http);
219
251
  }
252
+ else if (thinMode) {
253
+ // A thin client never executes a tool locally, so a missing runtime is a
254
+ // startup failure rather than something to paper over. ensureRuntime will
255
+ // start one if none is serving; if it cannot, the error says why and what
256
+ // to run.
257
+ const thinIdx = args.indexOf('--thin');
258
+ const nextThinArg = args[thinIdx + 1];
259
+ const explicitUrl = nextThinArg && nextThinArg.startsWith('http') ? nextThinArg : undefined;
260
+ const { ThinStdioAdapter } = await import('./transports/thinStdio.js');
261
+ const thin = new ThinStdioAdapter(explicitUrl);
262
+ await thin.start(null, transportConfig);
263
+ adapters.push(thin);
264
+ }
220
265
  else if (args.includes('--bridge')) {
221
266
  // Bridge mode: stdio with daemon proxy
222
267
  const bridgeIdx = args.indexOf('--bridge');
@@ -224,11 +269,13 @@ async function main() {
224
269
  // If next arg looks like a URL, use it; otherwise auto-detect
225
270
  const explicitUrl = nextArg && nextArg.startsWith('http') ? nextArg : null;
226
271
  const daemonUrl = explicitUrl || `http://127.0.0.1:${transportConfig.port || 4888}`;
272
+ const { BridgeAdapter } = await import('./transports/bridge.js');
227
273
  const bridge = new BridgeAdapter(daemonUrl);
228
274
  await bridge.start(kernel, transportConfig);
229
275
  adapters.push(bridge);
230
276
  }
231
277
  else {
278
+ const { StdioAdapter } = await import('./transports/stdio.js');
232
279
  const stdio = new StdioAdapter();
233
280
  await stdio.start(kernel, transportConfig);
234
281
  adapters.push(stdio);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/agentic/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA+BvC,eAAO,MAAM,sBAAsB,EAAE,QAiCpC,CAAC;AAMF,eAAO,MAAM,iBAAiB,EAAE,QA+C/B,CAAC;AAMF,eAAO,MAAM,eAAe,EAAE,QA8C7B,CAAC;AAMF,eAAO,MAAM,qBAAqB,EAAE,QAwCnC,CAAC;AAMF,eAAO,MAAM,oBAAoB,EAAE,QAsClC,CAAC;AAMF,eAAO,MAAM,sBAAsB,EAAE,QAiCpC,CAAC;AAWF,eAAO,MAAM,kBAAkB,EAAE,QA6DhC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,QA+BlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,QAoDlC,CAAC;AAMF,eAAO,MAAM,YAAY,EAAE,QAAQ,EAUlC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/agentic/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgCvC,eAAO,MAAM,sBAAsB,EAAE,QAiCpC,CAAC;AAMF,eAAO,MAAM,iBAAiB,EAAE,QA6D/B,CAAC;AAMF,eAAO,MAAM,eAAe,EAAE,QA2D7B,CAAC;AAMF,eAAO,MAAM,qBAAqB,EAAE,QA+CnC,CAAC;AAMF,eAAO,MAAM,oBAAoB,EAAE,QAsClC,CAAC;AAMF,eAAO,MAAM,sBAAsB,EAAE,QAiCpC,CAAC;AAWF,eAAO,MAAM,kBAAkB,EAAE,QA6DhC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,QA+BlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,QAoDlC,CAAC;AAMF,eAAO,MAAM,YAAY,EAAE,QAAQ,EAUlC,CAAC"}
@@ -4,7 +4,7 @@
4
4
  // Tools for agentic pack compilation, rendering, linting, and testing.
5
5
  // ============================================================================
6
6
  import { toolSuccess, toolError, requireFields, withRunTracking } from '../shared/index.js';
7
- import { compilePack, renderPayload, lintOutput, runGolden, } from '../../agentic/index.js';
7
+ import { compilePack, renderPayload, lintOutput, runGolden, validateCanonicalPayload, } from '../../agentic/index.js';
8
8
  import { agentQueueSync, agentQueueStatus, } from './agentQueue.js';
9
9
  import { enqueueJob, listJobs, cancelJob, } from '../../agenticJobs.js';
10
10
  import { resolveProjectPaths } from '../../projectRegistry.js';
@@ -87,6 +87,16 @@ export const agenticRenderTool = {
87
87
  try {
88
88
  const input = args;
89
89
  requireFields(input, 'payload', 'renderer_id');
90
+ // Shape, not just presence. requireFields only proved `payload` was
91
+ // there; it let role "NotARealRole", load "PURPLE" and confidence 47
92
+ // through to the renderer, which happily produced output and returned a
93
+ // success envelope. The renderer is a view over the canonical payload, so
94
+ // an invalid payload is not something to render — it is something to
95
+ // refuse. See validateCanonicalPayload in agentic/types.ts.
96
+ const payloadErrors = validateCanonicalPayload(input.payload);
97
+ if (payloadErrors.length > 0) {
98
+ return toolError(`Invalid canonical payload:\n ${payloadErrors.join('\n ')}`);
99
+ }
90
100
  const result = await renderPayload(input);
91
101
  if (result.status === 'error') {
92
102
  return toolError(JSON.stringify(result, null, 2));
@@ -138,6 +148,15 @@ export const agenticLintTool = {
138
148
  try {
139
149
  const input = args;
140
150
  requireFields(input, 'rendered', 'renderer_id');
151
+ // payload is optional here — it is only used for consistency checks — so
152
+ // absence is fine and malformedness is not. Validating an absent payload
153
+ // would break the documented contract of this tool.
154
+ if (input.payload !== undefined) {
155
+ const payloadErrors = validateCanonicalPayload(input.payload);
156
+ if (payloadErrors.length > 0) {
157
+ return toolError(`Invalid canonical payload:\n ${payloadErrors.join('\n ')}`);
158
+ }
159
+ }
141
160
  const result = await lintOutput(input);
142
161
  if (result.status === 'error') {
143
162
  return toolError(JSON.stringify(result, null, 2));
@@ -187,7 +206,14 @@ export const agenticGoldenEvalTool = {
187
206
  if (result.status === 'error') {
188
207
  return toolError(JSON.stringify(result, null, 2));
189
208
  }
190
- return toolSuccess(result);
209
+ // `status` is runGolden's own discriminant and is provably 'executed' by
210
+ // this line, so forwarding it puts a constant on the wire that collides
211
+ // with the envelope's marker: /call cannot tell it from the envelope's
212
+ // own field, and the thin client deletes it. The same call then answers
213
+ // differently on stdio and over HTTP, which S4 caught. `isError` and the
214
+ // envelope's `ok` already carry what it was saying.
215
+ const { status: _executed, ...payload } = result;
216
+ return toolSuccess(payload);
191
217
  }
192
218
  catch (err) {
193
219
  return toolError(err instanceof Error ? err.message : String(err));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/agentic/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/agentic/index.ts"],"names":[],"mappings":"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"}