mister-wolf 2.11.0 → 2.13.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 (419) hide show
  1. package/dist/adapters/cli/cli-entry.d.ts +25 -0
  2. package/dist/adapters/cli/cli-entry.d.ts.map +1 -1
  3. package/dist/adapters/cli/cli-entry.js +393 -94
  4. package/dist/adapters/cli/cli-entry.js.map +1 -1
  5. package/dist/adapters/cli/commands/analytics.d.ts +30 -5
  6. package/dist/adapters/cli/commands/analytics.d.ts.map +1 -1
  7. package/dist/adapters/cli/commands/analytics.js +314 -2
  8. package/dist/adapters/cli/commands/analytics.js.map +1 -1
  9. package/dist/adapters/cli/commands/memory-add.d.ts +21 -1
  10. package/dist/adapters/cli/commands/memory-add.d.ts.map +1 -1
  11. package/dist/adapters/cli/commands/memory-add.js +42 -29
  12. package/dist/adapters/cli/commands/memory-add.js.map +1 -1
  13. package/dist/adapters/cli/commands/memory-archive.d.ts +3 -0
  14. package/dist/adapters/cli/commands/memory-archive.d.ts.map +1 -0
  15. package/dist/adapters/cli/commands/memory-archive.js +19 -0
  16. package/dist/adapters/cli/commands/memory-archive.js.map +1 -0
  17. package/dist/adapters/cli/commands/memory-brief.d.ts.map +1 -1
  18. package/dist/adapters/cli/commands/memory-brief.js +13 -3
  19. package/dist/adapters/cli/commands/memory-brief.js.map +1 -1
  20. package/dist/adapters/cli/commands/memory-call.d.ts.map +1 -1
  21. package/dist/adapters/cli/commands/memory-call.js +57 -3
  22. package/dist/adapters/cli/commands/memory-call.js.map +1 -1
  23. package/dist/adapters/cli/commands/memory-edit.d.ts +3 -0
  24. package/dist/adapters/cli/commands/memory-edit.d.ts.map +1 -0
  25. package/dist/adapters/cli/commands/memory-edit.js +67 -0
  26. package/dist/adapters/cli/commands/memory-edit.js.map +1 -0
  27. package/dist/adapters/cli/commands/memory-init.d.ts.map +1 -1
  28. package/dist/adapters/cli/commands/memory-init.js +46 -7
  29. package/dist/adapters/cli/commands/memory-init.js.map +1 -1
  30. package/dist/adapters/cli/commands/memory-list.d.ts +12 -0
  31. package/dist/adapters/cli/commands/memory-list.d.ts.map +1 -1
  32. package/dist/adapters/cli/commands/memory-list.js +34 -21
  33. package/dist/adapters/cli/commands/memory-list.js.map +1 -1
  34. package/dist/adapters/cli/commands/memory-migrate.d.ts.map +1 -1
  35. package/dist/adapters/cli/commands/memory-migrate.js +91 -0
  36. package/dist/adapters/cli/commands/memory-migrate.js.map +1 -1
  37. package/dist/adapters/cli/commands/memory-recap.d.ts.map +1 -1
  38. package/dist/adapters/cli/commands/memory-recap.js +16 -1
  39. package/dist/adapters/cli/commands/memory-recap.js.map +1 -1
  40. package/dist/adapters/cli/commands/memory-relation.d.ts +1 -1
  41. package/dist/adapters/cli/commands/memory-relation.d.ts.map +1 -1
  42. package/dist/adapters/cli/commands/memory-relation.js +57 -2
  43. package/dist/adapters/cli/commands/memory-relation.js.map +1 -1
  44. package/dist/adapters/cli/commands/memory-search.d.ts.map +1 -1
  45. package/dist/adapters/cli/commands/memory-search.js +21 -2
  46. package/dist/adapters/cli/commands/memory-search.js.map +1 -1
  47. package/dist/adapters/cli/commands/memory-session.d.ts.map +1 -1
  48. package/dist/adapters/cli/commands/memory-session.js +2 -12
  49. package/dist/adapters/cli/commands/memory-session.js.map +1 -1
  50. package/dist/adapters/cli/commands/memory-sync.d.ts.map +1 -1
  51. package/dist/adapters/cli/commands/memory-sync.js +2 -9
  52. package/dist/adapters/cli/commands/memory-sync.js.map +1 -1
  53. package/dist/adapters/cli/commands/memory-taxonomy.d.ts.map +1 -1
  54. package/dist/adapters/cli/commands/memory-taxonomy.js +4 -4
  55. package/dist/adapters/cli/commands/memory-taxonomy.js.map +1 -1
  56. package/dist/adapters/cli/commands/memory-tool.d.ts.map +1 -1
  57. package/dist/adapters/cli/commands/memory-tool.js +13 -5
  58. package/dist/adapters/cli/commands/memory-tool.js.map +1 -1
  59. package/dist/adapters/cli/commands/memory-validate.d.ts.map +1 -1
  60. package/dist/adapters/cli/commands/memory-validate.js +18 -4
  61. package/dist/adapters/cli/commands/memory-validate.js.map +1 -1
  62. package/dist/adapters/cli/removed-commands.d.ts +11 -0
  63. package/dist/adapters/cli/removed-commands.d.ts.map +1 -0
  64. package/dist/adapters/cli/removed-commands.js +36 -0
  65. package/dist/adapters/cli/removed-commands.js.map +1 -0
  66. package/dist/adapters/cli/type-command-generator.d.ts +5 -0
  67. package/dist/adapters/cli/type-command-generator.d.ts.map +1 -0
  68. package/dist/adapters/cli/type-command-generator.js +128 -0
  69. package/dist/adapters/cli/type-command-generator.js.map +1 -0
  70. package/dist/adapters/fs/config-file.d.ts +14 -1
  71. package/dist/adapters/fs/config-file.d.ts.map +1 -1
  72. package/dist/adapters/fs/config-file.js +168 -56
  73. package/dist/adapters/fs/config-file.js.map +1 -1
  74. package/dist/adapters/fs/doc-id-migration.d.ts +2 -0
  75. package/dist/adapters/fs/doc-id-migration.d.ts.map +1 -1
  76. package/dist/adapters/fs/doc-id-migration.js +8 -2
  77. package/dist/adapters/fs/doc-id-migration.js.map +1 -1
  78. package/dist/adapters/fs/effectiveness-snapshots.d.ts +1 -1
  79. package/dist/adapters/fs/effectiveness-snapshots.d.ts.map +1 -1
  80. package/dist/adapters/fs/jsonl-relation-log.d.ts.map +1 -1
  81. package/dist/adapters/fs/jsonl-relation-log.js +10 -2
  82. package/dist/adapters/fs/jsonl-relation-log.js.map +1 -1
  83. package/dist/adapters/fs/layout-migration.d.ts.map +1 -1
  84. package/dist/adapters/fs/layout-migration.js +21 -2
  85. package/dist/adapters/fs/layout-migration.js.map +1 -1
  86. package/dist/adapters/fs/markdown-memory-store.d.ts +9 -0
  87. package/dist/adapters/fs/markdown-memory-store.d.ts.map +1 -1
  88. package/dist/adapters/fs/markdown-memory-store.js +103 -21
  89. package/dist/adapters/fs/markdown-memory-store.js.map +1 -1
  90. package/dist/adapters/fs/project-paths.d.ts +1 -1
  91. package/dist/adapters/fs/project-paths.d.ts.map +1 -1
  92. package/dist/adapters/fs/project-paths.js +1 -1
  93. package/dist/adapters/fs/project-paths.js.map +1 -1
  94. package/dist/adapters/fs/projects-registry.d.ts +0 -2
  95. package/dist/adapters/fs/projects-registry.d.ts.map +1 -1
  96. package/dist/adapters/fs/projects-registry.js +0 -16
  97. package/dist/adapters/fs/projects-registry.js.map +1 -1
  98. package/dist/adapters/fs/scan-snapshot-cache.d.ts +23 -0
  99. package/dist/adapters/fs/scan-snapshot-cache.d.ts.map +1 -0
  100. package/dist/adapters/fs/scan-snapshot-cache.js +36 -0
  101. package/dist/adapters/fs/scan-snapshot-cache.js.map +1 -0
  102. package/dist/adapters/fs/session-delivery-registry.d.ts +31 -0
  103. package/dist/adapters/fs/session-delivery-registry.d.ts.map +1 -0
  104. package/dist/adapters/fs/session-delivery-registry.js +104 -0
  105. package/dist/adapters/fs/session-delivery-registry.js.map +1 -0
  106. package/dist/adapters/fs/session-metrics-log.d.ts +35 -109
  107. package/dist/adapters/fs/session-metrics-log.d.ts.map +1 -1
  108. package/dist/adapters/fs/session-metrics-log.js +227 -141
  109. package/dist/adapters/fs/session-metrics-log.js.map +1 -1
  110. package/dist/adapters/fs/taxonomy-migration.d.ts +38 -0
  111. package/dist/adapters/fs/taxonomy-migration.d.ts.map +1 -0
  112. package/dist/adapters/fs/taxonomy-migration.js +280 -0
  113. package/dist/adapters/fs/taxonomy-migration.js.map +1 -0
  114. package/dist/adapters/mcp/mcp-schemas.d.ts +0 -122
  115. package/dist/adapters/mcp/mcp-schemas.d.ts.map +1 -1
  116. package/dist/adapters/mcp/mcp-schemas.js +0 -102
  117. package/dist/adapters/mcp/mcp-schemas.js.map +1 -1
  118. package/dist/adapters/mcp/mcp-server.d.ts.map +1 -1
  119. package/dist/adapters/mcp/mcp-server.js +30 -1
  120. package/dist/adapters/mcp/mcp-server.js.map +1 -1
  121. package/dist/adapters/mcp/mcp-tools.d.ts +10 -0
  122. package/dist/adapters/mcp/mcp-tools.d.ts.map +1 -1
  123. package/dist/adapters/mcp/mcp-tools.js +51 -188
  124. package/dist/adapters/mcp/mcp-tools.js.map +1 -1
  125. package/dist/adapters/sqlite/sqlite-schema.d.ts +1 -1
  126. package/dist/adapters/sqlite/sqlite-schema.d.ts.map +1 -1
  127. package/dist/adapters/sqlite/sqlite-schema.js +4 -2
  128. package/dist/adapters/sqlite/sqlite-schema.js.map +1 -1
  129. package/dist/adapters/sqlite/sqlite-search-index.d.ts +13 -1
  130. package/dist/adapters/sqlite/sqlite-search-index.d.ts.map +1 -1
  131. package/dist/adapters/sqlite/sqlite-search-index.js +88 -34
  132. package/dist/adapters/sqlite/sqlite-search-index.js.map +1 -1
  133. package/dist/app/use-cases/add-memory-object.d.ts +4 -0
  134. package/dist/app/use-cases/add-memory-object.d.ts.map +1 -1
  135. package/dist/app/use-cases/add-memory-object.js +34 -4
  136. package/dist/app/use-cases/add-memory-object.js.map +1 -1
  137. package/dist/app/use-cases/bootstrap-project.d.ts.map +1 -1
  138. package/dist/app/use-cases/bootstrap-project.js +13 -9
  139. package/dist/app/use-cases/bootstrap-project.js.map +1 -1
  140. package/dist/app/use-cases/build-analytics.d.ts +160 -2
  141. package/dist/app/use-cases/build-analytics.d.ts.map +1 -1
  142. package/dist/app/use-cases/build-analytics.js +399 -6
  143. package/dist/app/use-cases/build-analytics.js.map +1 -1
  144. package/dist/app/use-cases/create-memory-repair-request.d.ts.map +1 -1
  145. package/dist/app/use-cases/create-memory-repair-request.js +5 -3
  146. package/dist/app/use-cases/create-memory-repair-request.js.map +1 -1
  147. package/dist/app/use-cases/diff-thread.d.ts.map +1 -1
  148. package/dist/app/use-cases/diff-thread.js +9 -6
  149. package/dist/app/use-cases/diff-thread.js.map +1 -1
  150. package/dist/app/use-cases/generate-agent-brief.d.ts.map +1 -1
  151. package/dist/app/use-cases/generate-agent-brief.js +18 -8
  152. package/dist/app/use-cases/generate-agent-brief.js.map +1 -1
  153. package/dist/app/use-cases/generate-recap.d.ts +14 -0
  154. package/dist/app/use-cases/generate-recap.d.ts.map +1 -1
  155. package/dist/app/use-cases/generate-recap.js +60 -7
  156. package/dist/app/use-cases/generate-recap.js.map +1 -1
  157. package/dist/app/use-cases/get-call-injections.d.ts +8 -0
  158. package/dist/app/use-cases/get-call-injections.d.ts.map +1 -1
  159. package/dist/app/use-cases/get-call-injections.js +43 -12
  160. package/dist/app/use-cases/get-call-injections.js.map +1 -1
  161. package/dist/app/use-cases/init-project.d.ts +2 -6
  162. package/dist/app/use-cases/init-project.d.ts.map +1 -1
  163. package/dist/app/use-cases/init-project.js +11 -13
  164. package/dist/app/use-cases/init-project.js.map +1 -1
  165. package/dist/app/use-cases/list-memory-objects.d.ts +2 -0
  166. package/dist/app/use-cases/list-memory-objects.d.ts.map +1 -1
  167. package/dist/app/use-cases/list-memory-objects.js.map +1 -1
  168. package/dist/app/use-cases/scaffold-agent.d.ts.map +1 -1
  169. package/dist/app/use-cases/scaffold-agent.js +58 -17
  170. package/dist/app/use-cases/scaffold-agent.js.map +1 -1
  171. package/dist/app/use-cases/scan-project.d.ts +26 -1
  172. package/dist/app/use-cases/scan-project.d.ts.map +1 -1
  173. package/dist/app/use-cases/scan-project.js +86 -51
  174. package/dist/app/use-cases/scan-project.js.map +1 -1
  175. package/dist/app/use-cases/seed-base-playbooks.d.ts +82 -3
  176. package/dist/app/use-cases/seed-base-playbooks.d.ts.map +1 -1
  177. package/dist/app/use-cases/seed-base-playbooks.js +13 -1
  178. package/dist/app/use-cases/seed-base-playbooks.js.map +1 -1
  179. package/dist/app/use-cases/should-summarize.d.ts.map +1 -1
  180. package/dist/app/use-cases/should-summarize.js +3 -1
  181. package/dist/app/use-cases/should-summarize.js.map +1 -1
  182. package/dist/app/use-cases/snapshot-delta.d.ts +1 -1
  183. package/dist/app/use-cases/snapshot-delta.d.ts.map +1 -1
  184. package/dist/app/use-cases/snapshot-delta.js.map +1 -1
  185. package/dist/app/use-cases/summarize-session.d.ts.map +1 -1
  186. package/dist/app/use-cases/summarize-session.js +11 -2
  187. package/dist/app/use-cases/summarize-session.js.map +1 -1
  188. package/dist/app/use-cases/thinking.d.ts +2 -2
  189. package/dist/app/use-cases/thinking.d.ts.map +1 -1
  190. package/dist/app/use-cases/thinking.js +20 -12
  191. package/dist/app/use-cases/thinking.js.map +1 -1
  192. package/dist/app/use-cases/tool-stats.js +1 -1
  193. package/dist/app/use-cases/tool-stats.js.map +1 -1
  194. package/dist/domain/facet-colors.d.ts +12 -0
  195. package/dist/domain/facet-colors.d.ts.map +1 -0
  196. package/dist/domain/facet-colors.js +33 -0
  197. package/dist/domain/facet-colors.js.map +1 -0
  198. package/dist/domain/governance.d.ts.map +1 -1
  199. package/dist/domain/governance.js +9 -2
  200. package/dist/domain/governance.js.map +1 -1
  201. package/dist/domain/memory-types.d.ts +67 -318
  202. package/dist/domain/memory-types.d.ts.map +1 -1
  203. package/dist/domain/memory-types.js +87 -223
  204. package/dist/domain/memory-types.js.map +1 -1
  205. package/dist/domain/policies/read-only-zones.d.ts.map +1 -1
  206. package/dist/domain/policies/read-only-zones.js +7 -11
  207. package/dist/domain/policies/read-only-zones.js.map +1 -1
  208. package/dist/domain/router-log.d.ts +8 -2
  209. package/dist/domain/router-log.d.ts.map +1 -1
  210. package/dist/domain/router-log.js +14 -2
  211. package/dist/domain/router-log.js.map +1 -1
  212. package/dist/domain/schemas/memory-event-schema.d.ts +1 -0
  213. package/dist/domain/schemas/memory-event-schema.d.ts.map +1 -1
  214. package/dist/domain/schemas/memory-event-schema.js +1 -0
  215. package/dist/domain/schemas/memory-event-schema.js.map +1 -1
  216. package/dist/domain/schemas/memory-object-schema.d.ts +2 -0
  217. package/dist/domain/schemas/memory-object-schema.d.ts.map +1 -1
  218. package/dist/domain/schemas/memory-object-schema.js +3 -0
  219. package/dist/domain/schemas/memory-object-schema.js.map +1 -1
  220. package/dist/domain/schemas/relation-schema.d.ts +5 -3
  221. package/dist/domain/schemas/relation-schema.d.ts.map +1 -1
  222. package/dist/domain/schemas/relation-schema.js +4 -0
  223. package/dist/domain/schemas/relation-schema.js.map +1 -1
  224. package/dist/domain/schemas/session-checkpoint-schema.d.ts +3 -1
  225. package/dist/domain/schemas/session-checkpoint-schema.d.ts.map +1 -1
  226. package/dist/domain/schemas/session-checkpoint-schema.js +3 -2
  227. package/dist/domain/schemas/session-checkpoint-schema.js.map +1 -1
  228. package/dist/domain/solve/scenarios.js +3 -3
  229. package/dist/domain/solve/scenarios.js.map +1 -1
  230. package/dist/domain/taxonomy.d.ts +15 -1
  231. package/dist/domain/taxonomy.d.ts.map +1 -1
  232. package/dist/domain/taxonomy.js +14 -1
  233. package/dist/domain/taxonomy.js.map +1 -1
  234. package/dist/domain/tool-economy.d.ts +1 -1
  235. package/dist/domain/tool-economy.js +1 -1
  236. package/dist/domain/type-schema-builder.d.ts +15 -2
  237. package/dist/domain/type-schema-builder.d.ts.map +1 -1
  238. package/dist/domain/type-schema-builder.js +7 -0
  239. package/dist/domain/type-schema-builder.js.map +1 -1
  240. package/dist/ports/memory-store.port.d.ts +2 -0
  241. package/dist/ports/memory-store.port.d.ts.map +1 -1
  242. package/dist/ports/search-index.port.d.ts +2 -0
  243. package/dist/ports/search-index.port.d.ts.map +1 -1
  244. package/package.json +2 -2
  245. package/templates/opencode/plugins/wolf-router.ts +88 -45
  246. package/templates/opencode/plugins/wolf-session-start.js +6 -3
  247. package/dist/adapters/cli/commands/coord.d.ts +0 -3
  248. package/dist/adapters/cli/commands/coord.d.ts.map +0 -1
  249. package/dist/adapters/cli/commands/coord.js +0 -36
  250. package/dist/adapters/cli/commands/coord.js.map +0 -1
  251. package/dist/adapters/cli/commands/dashboard.d.ts +0 -20
  252. package/dist/adapters/cli/commands/dashboard.d.ts.map +0 -1
  253. package/dist/adapters/cli/commands/dashboard.js +0 -231
  254. package/dist/adapters/cli/commands/dashboard.js.map +0 -1
  255. package/dist/adapters/cli/commands/memory-article.d.ts +0 -3
  256. package/dist/adapters/cli/commands/memory-article.d.ts.map +0 -1
  257. package/dist/adapters/cli/commands/memory-article.js +0 -47
  258. package/dist/adapters/cli/commands/memory-article.js.map +0 -1
  259. package/dist/adapters/cli/commands/memory-blocker.d.ts +0 -3
  260. package/dist/adapters/cli/commands/memory-blocker.d.ts.map +0 -1
  261. package/dist/adapters/cli/commands/memory-blocker.js +0 -52
  262. package/dist/adapters/cli/commands/memory-blocker.js.map +0 -1
  263. package/dist/adapters/cli/commands/memory-council.d.ts +0 -3
  264. package/dist/adapters/cli/commands/memory-council.d.ts.map +0 -1
  265. package/dist/adapters/cli/commands/memory-council.js +0 -42
  266. package/dist/adapters/cli/commands/memory-council.js.map +0 -1
  267. package/dist/adapters/cli/commands/memory-decision.d.ts +0 -3
  268. package/dist/adapters/cli/commands/memory-decision.d.ts.map +0 -1
  269. package/dist/adapters/cli/commands/memory-decision.js +0 -41
  270. package/dist/adapters/cli/commands/memory-decision.js.map +0 -1
  271. package/dist/adapters/cli/commands/memory-effectiveness.d.ts +0 -3
  272. package/dist/adapters/cli/commands/memory-effectiveness.d.ts.map +0 -1
  273. package/dist/adapters/cli/commands/memory-effectiveness.js +0 -127
  274. package/dist/adapters/cli/commands/memory-effectiveness.js.map +0 -1
  275. package/dist/adapters/cli/commands/memory-info-request.d.ts +0 -3
  276. package/dist/adapters/cli/commands/memory-info-request.d.ts.map +0 -1
  277. package/dist/adapters/cli/commands/memory-info-request.js +0 -47
  278. package/dist/adapters/cli/commands/memory-info-request.js.map +0 -1
  279. package/dist/adapters/cli/commands/memory-insights.d.ts +0 -3
  280. package/dist/adapters/cli/commands/memory-insights.d.ts.map +0 -1
  281. package/dist/adapters/cli/commands/memory-insights.js +0 -42
  282. package/dist/adapters/cli/commands/memory-insights.js.map +0 -1
  283. package/dist/adapters/cli/commands/memory-learn.d.ts +0 -3
  284. package/dist/adapters/cli/commands/memory-learn.d.ts.map +0 -1
  285. package/dist/adapters/cli/commands/memory-learn.js +0 -327
  286. package/dist/adapters/cli/commands/memory-learn.js.map +0 -1
  287. package/dist/adapters/cli/commands/memory-rule.d.ts +0 -3
  288. package/dist/adapters/cli/commands/memory-rule.d.ts.map +0 -1
  289. package/dist/adapters/cli/commands/memory-rule.js +0 -40
  290. package/dist/adapters/cli/commands/memory-rule.js.map +0 -1
  291. package/dist/adapters/cli/commands/memory-run.d.ts +0 -3
  292. package/dist/adapters/cli/commands/memory-run.d.ts.map +0 -1
  293. package/dist/adapters/cli/commands/memory-run.js +0 -154
  294. package/dist/adapters/cli/commands/memory-run.js.map +0 -1
  295. package/dist/adapters/cli/commands/memory-stage.d.ts +0 -3
  296. package/dist/adapters/cli/commands/memory-stage.d.ts.map +0 -1
  297. package/dist/adapters/cli/commands/memory-stage.js +0 -35
  298. package/dist/adapters/cli/commands/memory-stage.js.map +0 -1
  299. package/dist/adapters/cli/commands/memory-thread.d.ts +0 -3
  300. package/dist/adapters/cli/commands/memory-thread.d.ts.map +0 -1
  301. package/dist/adapters/cli/commands/memory-thread.js +0 -48
  302. package/dist/adapters/cli/commands/memory-thread.js.map +0 -1
  303. package/dist/adapters/cli/opencode-run-metrics.d.ts +0 -25
  304. package/dist/adapters/cli/opencode-run-metrics.d.ts.map +0 -1
  305. package/dist/adapters/cli/opencode-run-metrics.js +0 -64
  306. package/dist/adapters/cli/opencode-run-metrics.js.map +0 -1
  307. package/dist/app/use-cases/activate-draft.d.ts +0 -31
  308. package/dist/app/use-cases/activate-draft.d.ts.map +0 -1
  309. package/dist/app/use-cases/activate-draft.js +0 -74
  310. package/dist/app/use-cases/activate-draft.js.map +0 -1
  311. package/dist/app/use-cases/build-dashboard.d.ts +0 -43
  312. package/dist/app/use-cases/build-dashboard.d.ts.map +0 -1
  313. package/dist/app/use-cases/build-dashboard.js +0 -32
  314. package/dist/app/use-cases/build-dashboard.js.map +0 -1
  315. package/dist/app/use-cases/create-article.d.ts +0 -31
  316. package/dist/app/use-cases/create-article.d.ts.map +0 -1
  317. package/dist/app/use-cases/create-article.js +0 -62
  318. package/dist/app/use-cases/create-article.js.map +0 -1
  319. package/dist/app/use-cases/create-blocker.d.ts +0 -28
  320. package/dist/app/use-cases/create-blocker.d.ts.map +0 -1
  321. package/dist/app/use-cases/create-blocker.js +0 -51
  322. package/dist/app/use-cases/create-blocker.js.map +0 -1
  323. package/dist/app/use-cases/create-decision.d.ts +0 -28
  324. package/dist/app/use-cases/create-decision.d.ts.map +0 -1
  325. package/dist/app/use-cases/create-decision.js +0 -58
  326. package/dist/app/use-cases/create-decision.js.map +0 -1
  327. package/dist/app/use-cases/create-info-request.d.ts +0 -31
  328. package/dist/app/use-cases/create-info-request.d.ts.map +0 -1
  329. package/dist/app/use-cases/create-info-request.js +0 -58
  330. package/dist/app/use-cases/create-info-request.js.map +0 -1
  331. package/dist/app/use-cases/create-rule.d.ts +0 -27
  332. package/dist/app/use-cases/create-rule.d.ts.map +0 -1
  333. package/dist/app/use-cases/create-rule.js +0 -48
  334. package/dist/app/use-cases/create-rule.js.map +0 -1
  335. package/dist/app/use-cases/create-session-checkpoint.d.ts +0 -23
  336. package/dist/app/use-cases/create-session-checkpoint.d.ts.map +0 -1
  337. package/dist/app/use-cases/create-session-checkpoint.js +0 -61
  338. package/dist/app/use-cases/create-session-checkpoint.js.map +0 -1
  339. package/dist/app/use-cases/create-synthesis.d.ts +0 -25
  340. package/dist/app/use-cases/create-synthesis.d.ts.map +0 -1
  341. package/dist/app/use-cases/create-synthesis.js +0 -36
  342. package/dist/app/use-cases/create-synthesis.js.map +0 -1
  343. package/dist/app/use-cases/create-work-thread.d.ts +0 -26
  344. package/dist/app/use-cases/create-work-thread.d.ts.map +0 -1
  345. package/dist/app/use-cases/create-work-thread.js +0 -47
  346. package/dist/app/use-cases/create-work-thread.js.map +0 -1
  347. package/dist/app/use-cases/effectiveness.d.ts +0 -116
  348. package/dist/app/use-cases/effectiveness.d.ts.map +0 -1
  349. package/dist/app/use-cases/effectiveness.js +0 -198
  350. package/dist/app/use-cases/effectiveness.js.map +0 -1
  351. package/dist/app/use-cases/get-thread-brief.d.ts +0 -19
  352. package/dist/app/use-cases/get-thread-brief.d.ts.map +0 -1
  353. package/dist/app/use-cases/get-thread-brief.js +0 -72
  354. package/dist/app/use-cases/get-thread-brief.js.map +0 -1
  355. package/dist/app/use-cases/learn-decay.d.ts +0 -91
  356. package/dist/app/use-cases/learn-decay.d.ts.map +0 -1
  357. package/dist/app/use-cases/learn-decay.js +0 -274
  358. package/dist/app/use-cases/learn-decay.js.map +0 -1
  359. package/dist/app/use-cases/model-routing.d.ts +0 -30
  360. package/dist/app/use-cases/model-routing.d.ts.map +0 -1
  361. package/dist/app/use-cases/model-routing.js +0 -39
  362. package/dist/app/use-cases/model-routing.js.map +0 -1
  363. package/dist/app/use-cases/pattern-detection.d.ts +0 -44
  364. package/dist/app/use-cases/pattern-detection.d.ts.map +0 -1
  365. package/dist/app/use-cases/pattern-detection.js +0 -71
  366. package/dist/app/use-cases/pattern-detection.js.map +0 -1
  367. package/dist/app/use-cases/propose-draft.d.ts +0 -79
  368. package/dist/app/use-cases/propose-draft.d.ts.map +0 -1
  369. package/dist/app/use-cases/propose-draft.js +0 -140
  370. package/dist/app/use-cases/propose-draft.js.map +0 -1
  371. package/dist/app/use-cases/resolve-blocker.d.ts +0 -17
  372. package/dist/app/use-cases/resolve-blocker.d.ts.map +0 -1
  373. package/dist/app/use-cases/resolve-blocker.js +0 -31
  374. package/dist/app/use-cases/resolve-blocker.js.map +0 -1
  375. package/dist/app/use-cases/run-source.d.ts +0 -15
  376. package/dist/app/use-cases/run-source.d.ts.map +0 -1
  377. package/dist/app/use-cases/run-source.js +0 -26
  378. package/dist/app/use-cases/run-source.js.map +0 -1
  379. package/dist/app/use-cases/tally-council-votes.d.ts +0 -24
  380. package/dist/app/use-cases/tally-council-votes.d.ts.map +0 -1
  381. package/dist/app/use-cases/tally-council-votes.js +0 -30
  382. package/dist/app/use-cases/tally-council-votes.js.map +0 -1
  383. package/dist/app/use-cases/template-evolve.d.ts +0 -87
  384. package/dist/app/use-cases/template-evolve.d.ts.map +0 -1
  385. package/dist/app/use-cases/template-evolve.js +0 -164
  386. package/dist/app/use-cases/template-evolve.js.map +0 -1
  387. package/dist/app/use-cases/validate-draft.d.ts +0 -36
  388. package/dist/app/use-cases/validate-draft.d.ts.map +0 -1
  389. package/dist/app/use-cases/validate-draft.js +0 -75
  390. package/dist/app/use-cases/validate-draft.js.map +0 -1
  391. package/dist/domain/gates/stop-gate.d.ts +0 -43
  392. package/dist/domain/gates/stop-gate.d.ts.map +0 -1
  393. package/dist/domain/gates/stop-gate.js +0 -125
  394. package/dist/domain/gates/stop-gate.js.map +0 -1
  395. package/dist/domain/schemas/article-schema.d.ts +0 -79
  396. package/dist/domain/schemas/article-schema.d.ts.map +0 -1
  397. package/dist/domain/schemas/article-schema.js +0 -12
  398. package/dist/domain/schemas/article-schema.js.map +0 -1
  399. package/dist/domain/schemas/blocker-schema.d.ts +0 -77
  400. package/dist/domain/schemas/blocker-schema.d.ts.map +0 -1
  401. package/dist/domain/schemas/blocker-schema.js +0 -10
  402. package/dist/domain/schemas/blocker-schema.js.map +0 -1
  403. package/dist/domain/schemas/decision-schema.d.ts +0 -75
  404. package/dist/domain/schemas/decision-schema.d.ts.map +0 -1
  405. package/dist/domain/schemas/decision-schema.js +0 -8
  406. package/dist/domain/schemas/decision-schema.js.map +0 -1
  407. package/dist/domain/schemas/info-request-schema.d.ts +0 -80
  408. package/dist/domain/schemas/info-request-schema.d.ts.map +0 -1
  409. package/dist/domain/schemas/info-request-schema.js +0 -13
  410. package/dist/domain/schemas/info-request-schema.js.map +0 -1
  411. package/dist/domain/schemas/rule-schema.d.ts +0 -80
  412. package/dist/domain/schemas/rule-schema.d.ts.map +0 -1
  413. package/dist/domain/schemas/rule-schema.js +0 -10
  414. package/dist/domain/schemas/rule-schema.js.map +0 -1
  415. package/dist/domain/schemas/thread-schema.d.ts +0 -77
  416. package/dist/domain/schemas/thread-schema.d.ts.map +0 -1
  417. package/dist/domain/schemas/thread-schema.js +0 -10
  418. package/dist/domain/schemas/thread-schema.js.map +0 -1
  419. package/templates/base/playbooks/wolf-review-lenses.md +0 -50
@@ -2,34 +2,47 @@ import { Command } from 'commander';
2
2
  import { listMemoryObjects, resolveListType } from '../../../app/use-cases/list-memory-objects.js';
3
3
  import { createCliContainer } from '../../../bootstrap/container.js';
4
4
  import { DEPRECATED_TYPE_ALIASES } from '../../../domain/memory-types.js';
5
+ import { colorsEnabled, highlightFacet } from '../../../domain/facet-colors.js';
5
6
  import { UserFacingError } from '../../../domain/errors.js';
6
7
  import { withCliCall } from './with-cli-call.js';
8
+ /**
9
+ * Единое действие list-пути (2.13 §6.3): `wolf list` и генерённые `wolf <type> list`
10
+ * (предустановленный --type) делегируют сюда.
11
+ */
12
+ export async function runListAction(options) {
13
+ const { store, declarations } = createCliContainer(process.cwd());
14
+ let type = options.type;
15
+ if (type) {
16
+ // Резолв --type (спека 2.1.0 §2.2 F10 + карта §5.4 2.13): алиас → warning,
17
+ // неизвестный → error. DEPRECATED_TYPE_ALIASES теперь Record<string, TypeAliasSpec>.
18
+ const resolved = resolveListType(type, declarations.map((d) => d.name), Object.fromEntries(Object.entries(DEPRECATED_TYPE_ALIASES).map(([k, spec]) => [k, spec.target])));
19
+ if (resolved.error)
20
+ throw new UserFacingError(resolved.error);
21
+ if (resolved.warning)
22
+ console.error(`Warning: ${resolved.warning}`);
23
+ type = resolved.type;
24
+ }
25
+ const objects = await listMemoryObjects(store, {
26
+ type,
27
+ status: options.status,
28
+ stale: options.stale,
29
+ facet: options.facet,
30
+ });
31
+ // P212 (2.13 §5.3в): решение о цвете — один раз на вывод (pipe/NO_COLOR → плоско)
32
+ const colored = colorsEnabled(process.stdout, process.env);
33
+ for (const obj of objects) {
34
+ const facet = typeof obj.facet === 'string' ? obj.facet : undefined;
35
+ const facetPart = facet ? ` [${highlightFacet(facet, colored)}]` : '';
36
+ console.log(`${obj.id} [${obj.type}]${facetPart} [${obj.status}] ${obj.title}`);
37
+ }
38
+ }
7
39
  export function memoryListCommand() {
8
40
  return new Command('list')
9
41
  .description('List memory objects')
10
42
  .option('--type <type>', 'Filter by type')
11
43
  .option('--status <status>', 'Filter by status')
12
44
  .option('--stale', 'List stale objects (not updated in 30 days)', false)
13
- .action(withCliCall('list', async (options) => {
14
- const { store, declarations } = createCliContainer(process.cwd());
15
- let type = options.type;
16
- if (type) {
17
- // Резолв --type (спека 2.1.0 §2.2 F10): алиас → warning, неизвестный → error
18
- const resolved = resolveListType(type, declarations.map((d) => d.name), DEPRECATED_TYPE_ALIASES);
19
- if (resolved.error)
20
- throw new UserFacingError(resolved.error);
21
- if (resolved.warning)
22
- console.error(`Warning: ${resolved.warning}`);
23
- type = resolved.type;
24
- }
25
- const objects = await listMemoryObjects(store, {
26
- type,
27
- status: options.status,
28
- stale: options.stale,
29
- });
30
- for (const obj of objects) {
31
- console.log(`${obj.id} [${obj.type}] [${obj.status}] ${obj.title}`);
32
- }
33
- }));
45
+ .option('--facet <facet>', 'Filter notes by character facet (howto|pitfall|context|metric|history|legacy|constraint)')
46
+ .action(withCliCall('list', (options) => runListAction(options)));
34
47
  }
35
48
  //# sourceMappingURL=memory-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-list.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,qBAAqB,CAAC;SAClC,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;SAC/C,MAAM,CAAC,SAAS,EAAE,6CAA6C,EAAE,KAAK,CAAC;SACvE,MAAM,CACL,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACpC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClE,IAAI,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC;QAC5C,IAAI,IAAI,EAAE,CAAC;YACT,6EAA6E;YAC7E,MAAM,QAAQ,GAAG,eAAe,CAC9B,IAAI,EACJ,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAC/B,uBAAuB,CACxB,CAAC;YACF,IAAI,QAAQ,CAAC,KAAK;gBAAE,MAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9D,IAAI,QAAQ,CAAC,OAAO;gBAAE,OAAO,CAAC,KAAK,CAAC,YAAY,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACpE,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,KAAK,EAAE;YAC7C,IAAI;YACJ,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QACH,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC,CAAC,CACH,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"memory-list.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-list.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-migrate.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-migrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,oBAAoB,IAAI,OAAO,CA4C9C"}
1
+ {"version":3,"file":"memory-migrate.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-migrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,wBAAgB,oBAAoB,IAAI,OAAO,CAiF9C"}
@@ -1,9 +1,11 @@
1
1
  import { Command } from 'commander';
2
2
  import { relative } from 'path';
3
+ import { spawnSync } from 'child_process';
3
4
  import { safeCwd } from '../cli-entry.js';
4
5
  import { planLayoutMigration, applyLayoutMigration } from '../../fs/layout-migration.js';
5
6
  import { planDocIdMigration, applyDocIdMigration } from '../../fs/doc-id-migration.js';
6
7
  import { migrateRunLog } from '../../fs/run-log-migration.js';
8
+ import { planTaxonomyMigration, applyTaxonomyMigration, } from '../../fs/taxonomy-migration.js';
7
9
  export function memoryMigrateCommand() {
8
10
  const migrate = new Command('migrate')
9
11
  .description('One-time migration: objects/<type>/ -> threads/<tid>/<subdir>/ + shared/')
@@ -44,6 +46,39 @@ export function memoryMigrateCommand() {
44
46
  process.exitCode = 1;
45
47
  }
46
48
  }));
49
+ // taxonomy (спека 2.13 §8.2): 26 старых типов → 7 + фасеты; dry-run по умолчанию.
50
+ // --apply читается и у родителя (прецедент doc-ids: commander скармливает
51
+ // конфликтующий по имени флаг родителю).
52
+ migrate.addCommand(new Command('taxonomy')
53
+ .description('One-time migration to the 7-type taxonomy (spec 2.13 §8.2); --apply to perform')
54
+ .option('--apply', 'perform the migration (default: dry-run)', false)
55
+ .option('--force', 'apply even if .wolf/memory is not in a clean git state', false)
56
+ .action(async (opts, cmd) => {
57
+ const apply = Boolean(opts.apply) || Boolean(cmd.parent?.opts().apply);
58
+ const baseDir = safeCwd();
59
+ // §8.2.4: перед --apply — чистый git-статус .wolf/memory (не-git/грязный → --force)
60
+ if (apply && !opts.force) {
61
+ const git = spawnSync('git', ['status', '--porcelain', '--', '.wolf/memory'], {
62
+ cwd: baseDir,
63
+ encoding: 'utf-8',
64
+ });
65
+ const clean = git.status === 0 && git.stdout.trim() === '';
66
+ if (!clean) {
67
+ console.error('Refusing to apply: .wolf/memory must be in a clean git state (spec 2.13 §8.2.4).\n' +
68
+ ' Commit .wolf/memory first; rollback = git checkout .wolf/memory + wolf rebuild-index.\n' +
69
+ ' Or rerun with --force.');
70
+ process.exitCode = 1;
71
+ return;
72
+ }
73
+ }
74
+ const report = apply
75
+ ? await applyTaxonomyMigration(baseDir)
76
+ : await planTaxonomyMigration(baseDir);
77
+ printTaxonomyReport(report, apply ? 'apply' : 'dry-run');
78
+ // §8.2: exit 2 при конфликтах (даже с --apply: конфликтные файлы не тронуты,
79
+ // остальной план выполняется)
80
+ process.exitCode = report.conflicts.length > 0 ? 2 : 0;
81
+ }));
47
82
  return migrate;
48
83
  }
49
84
  function printMigrationReport(report, mode) {
@@ -105,4 +140,60 @@ function printRunLogReport(report, baseDir) {
105
140
  console.log(`to: ${relative(baseDir, report.to)}`);
106
141
  console.log(`lines: ${report.lineCount}`);
107
142
  }
143
+ function printTaxonomyReport(report, mode) {
144
+ const rel = (p) => p.replace(/^\.wolf\/memory\//, '');
145
+ console.log(`# wolf migrate taxonomy (mode: ${mode})`);
146
+ console.log();
147
+ console.log('| id | old type | new (facet/status) | from | to |');
148
+ console.log('|----|----------|--------------------|------|----|');
149
+ for (const e of report.entries) {
150
+ let detail = e.newType;
151
+ if (e.facet !== undefined)
152
+ detail += ` / facet: ${e.facet}`;
153
+ if (e.threadStatusChange !== undefined)
154
+ detail += ` / thread -> ${e.threadStatusChange}`;
155
+ console.log(`| ${e.id} | ${e.oldType} | ${detail} | ${rel(e.from)} | ${rel(e.to)} |`);
156
+ }
157
+ console.log();
158
+ const summary = Object.entries(report.summaryByType)
159
+ .map(([t, n]) => `${t}: ${n}`)
160
+ .join(', ');
161
+ console.log(`summary by type: ${summary || '(nothing to migrate)'}`);
162
+ if (report.threadStatusChanges.length > 0) {
163
+ console.log();
164
+ console.log('thread status changes:');
165
+ for (const t of report.threadStatusChanges) {
166
+ console.log(` ${t.threadId}: ${t.from} -> ${t.to} (cause: ${t.causeType} ${t.causeId})`);
167
+ }
168
+ }
169
+ if (report.callInjections.length > 0) {
170
+ console.log();
171
+ console.log('active call-injections (WARNING):');
172
+ for (const c of report.callInjections)
173
+ console.log(` ${c.id}: ${rel(c.from)} -> ${rel(c.to)}`);
174
+ console.log(' after migration these stop being delivered by the call pool (spec 2.13 §5.4);');
175
+ console.log(' move trigger_keywords to a lesson/rule or archive them');
176
+ }
177
+ if (report.conflicts.length > 0) {
178
+ console.log();
179
+ console.log('conflicts (untouched):');
180
+ for (const c of report.conflicts)
181
+ console.log(` ${c.id}: ${c.reason}`);
182
+ }
183
+ if (report.unparsable.length > 0) {
184
+ console.log();
185
+ console.log('unparsable (untouched):');
186
+ for (const p of report.unparsable)
187
+ console.log(` ${rel(p.path)}: ${p.error}`);
188
+ }
189
+ console.log();
190
+ const migrated = mode === 'apply' ? report.entries.length : 0;
191
+ console.log(`migrated: ${migrated}${mode === 'dry-run' ? ' (dry-run)' : ''}` +
192
+ ` | thread status changes: ${report.threadStatusChanges.length}` +
193
+ ` | conflicts: ${report.conflicts.length}` +
194
+ ` | unparsable: ${report.unparsable.length}`);
195
+ console.log('rollback: git checkout .wolf/memory && wolf rebuild-index');
196
+ if (mode === 'apply')
197
+ console.log('next: run wolf rebuild-index');
198
+ }
108
199
  //# sourceMappingURL=memory-migrate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-migrate.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-migrate.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-migrate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-recap.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,kBAAkB,IAAI,OAAO,CAO5C"}
1
+ {"version":3,"file":"memory-recap.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,kBAAkB,IAAI,OAAO,CAkB5C"}
@@ -1,12 +1,27 @@
1
1
  import { Command } from 'commander';
2
+ import { readFileSync } from 'fs';
3
+ import { join } from 'path';
2
4
  import { generateRecap, renderRecap } from '../../../app/use-cases/generate-recap.js';
3
5
  import { createCliContainer } from '../../../bootstrap/container.js';
6
+ import { parseRouterLog } from '../../../domain/router-log.js';
4
7
  export function memoryRecapCommand() {
5
8
  return new Command('recap')
6
9
  .description('Summarize active project memory: rules, threads, blockers, questions, decisions')
7
10
  .action(async () => {
8
11
  const { store } = createCliContainer(process.cwd());
9
- console.log(renderRecap(await generateRecap({ store })));
12
+ // P110: router.log плагина wolf-router (нет файла → delivery = null, секция опускается)
13
+ let routerLogText = null;
14
+ try {
15
+ routerLogText = readFileSync(join(process.cwd(), '.wolf', 'router.log'), 'utf-8');
16
+ }
17
+ catch {
18
+ routerLogText = null; // ENOENT — плагин ещё не писал
19
+ }
20
+ const report = await generateRecap({
21
+ store,
22
+ ...(routerLogText !== null ? { routerLogRows: parseRouterLog(routerLogText).rows } : {}),
23
+ });
24
+ console.log(renderRecap(report));
10
25
  });
11
26
  }
12
27
  //# sourceMappingURL=memory-recap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-recap.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;SACxB,WAAW,CAAC,iFAAiF,CAAC;SAC9F,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"memory-recap.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;SACxB,WAAW,CAAC,iFAAiF,CAAC;SAC9F,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,wFAAwF;QACxF,IAAI,aAAa,GAAkB,IAAI,CAAC;QACxC,IAAI,CAAC;YACH,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,aAAa,GAAG,IAAI,CAAC,CAAC,+BAA+B;QACvD,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YACjC,KAAK;YACL,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzF,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { Command } from 'commander';
2
- export declare function memoryRelationCommand(): Command;
2
+ export declare function memoryRelationCommand(baseDir?: string): Command;
3
3
  //# sourceMappingURL=memory-relation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-relation.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,qBAAqB,IAAI,OAAO,CAwB/C"}
1
+ {"version":3,"file":"memory-relation.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,MAAkB,GAAG,OAAO,CAwE1E"}
@@ -1,7 +1,13 @@
1
1
  import { Command } from 'commander';
2
+ import { safeCwd } from '../cli-entry.js';
2
3
  import { recordRelation } from '../../../app/use-cases/record-relation.js';
3
4
  import { createCliContainer } from '../../../bootstrap/container.js';
4
- export function memoryRelationCommand() {
5
+ import { UserFacingError } from '../../../domain/errors.js';
6
+ // relation list/remove — спека 2.13 §6.4. remove не удаляет строки:
7
+ // дописывает компенсирующую запись removed: true (append-only, прецедент
8
+ // событий); list() рёбра с removed не читает. Откат = убрать запись.
9
+ // baseDir инъектится для тестов (прецедент: memory-update.ts).
10
+ export function memoryRelationCommand(baseDir = safeCwd()) {
5
11
  const cmd = new Command('relation').description('Manage relations between memory objects');
6
12
  cmd
7
13
  .command('add')
@@ -11,10 +17,59 @@ export function memoryRelationCommand() {
11
17
  .argument('<object>', 'Object memory object id')
12
18
  .option('--source <source>', 'Relation source', 'agent')
13
19
  .action(async (subject, predicate, object, options) => {
14
- const { relations, idGen, lock } = createCliContainer(process.cwd());
20
+ const { relations, idGen, lock } = createCliContainer(baseDir);
15
21
  await recordRelation({ relations, idGen, lock }, new Date(), subject, predicate, object, options.source);
16
22
  console.log(`Recorded relation: ${subject} -${predicate}- ${object}`);
17
23
  });
24
+ cmd
25
+ .command('list')
26
+ .description('List relations (--of <id>: both directions of a memory object)')
27
+ .option('--of <id>', 'Filter by memory object id (subject or object side)')
28
+ .option('--json', 'Output JSON')
29
+ .action(async (options) => {
30
+ const { relations } = createCliContainer(baseDir);
31
+ let rows = await relations.list();
32
+ if (options.of)
33
+ rows = rows.filter((r) => r.subject === options.of || r.object === options.of);
34
+ if (options.json) {
35
+ console.log(JSON.stringify(rows, null, 2));
36
+ return;
37
+ }
38
+ if (rows.length === 0) {
39
+ console.log('No relations.');
40
+ return;
41
+ }
42
+ for (const r of rows)
43
+ console.log(`${r.id} ${r.subject} -${r.predicate}-> ${r.object}`);
44
+ });
45
+ cmd
46
+ .command('remove')
47
+ .description('Remove a relation by id (appends a compensating record)')
48
+ .argument('<id>', 'Relation id (see: relation list)')
49
+ .action(async (id) => {
50
+ const { relations, clock, lock } = createCliContainer(baseDir);
51
+ const target = (await relations.list()).find((r) => r.id === id);
52
+ if (!target)
53
+ throw new UserFacingError(`Relation not found: ${id}`);
54
+ const now = clock.now();
55
+ const run = async () => {
56
+ await relations.append({
57
+ // надгробие несёт id гасимого ребра (откат = убрать эту запись);
58
+ // replay идёт по тройке, повторный add живит ребро новой записью
59
+ id: target.id,
60
+ subject: target.subject,
61
+ predicate: target.predicate,
62
+ object: target.object,
63
+ created_at: target.created_at,
64
+ source: target.source,
65
+ confidence: target.confidence,
66
+ removed: true,
67
+ removed_at: now.toISOString(),
68
+ });
69
+ console.log(`Removed relation ${id}: ${target.subject} -${target.predicate}-> ${target.object}`);
70
+ };
71
+ return lock ? lock.withLock(run) : run();
72
+ });
18
73
  return cmd;
19
74
  }
20
75
  //# sourceMappingURL=memory-relation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-relation.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,UAAU,qBAAqB;IACnC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,yCAAyC,CAAC,CAAC;IAE3F,GAAG;SACA,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,8CAA8C,CAAC;SAC3D,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAAC;SACjD,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;SAC7C,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;SAC/C,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,OAAO,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,SAAiB,EAAE,MAAc,EAAE,OAA2B,EAAE,EAAE;QAChG,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACrE,MAAM,cAAc,CAClB,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAC1B,IAAI,IAAI,EAAE,EACV,OAAO,EACP,SAA8B,EAC9B,MAAM,EACN,OAAO,CAAC,MAAuC,CAChD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,KAAK,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"memory-relation.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-relation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-search.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,mBAAmB,IAAI,OAAO,CAgE7C"}
1
+ {"version":3,"file":"memory-search.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,wBAAgB,mBAAmB,IAAI,OAAO,CA8E7C"}
@@ -4,12 +4,21 @@ import { createCliContainer } from '../../../bootstrap/container.js';
4
4
  import { FTS_COLUMNS } from '../../sqlite/sqlite-search-index.js';
5
5
  import { appendMemoryStageSignal } from '../../fs/session-metrics-log.js';
6
6
  import { resolveCreatedBy, resolveSessionId } from '../../../domain/actor.js';
7
+ import { DEFAULT_CHARACTER_FACETS } from '../../../domain/memory-types.js';
8
+ import { colorsEnabled, highlightFacet } from '../../../domain/facet-colors.js';
9
+ import { UserFacingError } from '../../../domain/errors.js';
7
10
  import { withCliCall } from './with-cli-call.js';
11
+ /** Эффективный словарь фасетов: enum note-декларации (config facets.character | дефолт). */
12
+ function facetDictionary(declarations) {
13
+ const field = declarations.find((d) => d.name === 'note')?.fields?.facet;
14
+ return field?.kind === 'enum' ? field.values : DEFAULT_CHARACTER_FACETS;
15
+ }
8
16
  export function memorySearchCommand() {
9
17
  return new Command('search')
10
18
  .description('Search memory objects')
11
19
  .argument('<query>', 'Search query')
12
20
  .option('--type <type>', 'Filter by type')
21
+ .option('--facet <facet>', 'Filter notes by character facet (howto|pitfall|context|metric|history|legacy|constraint)')
13
22
  .option('--status <status>', 'Filter by status')
14
23
  .option('--tag <tag>', 'Filter by tag (repeatable)', collect, [])
15
24
  .option('--confidence <confidence>', 'Filter by confidence (low|medium|high)')
@@ -22,10 +31,16 @@ export function memorySearchCommand() {
22
31
  .option('--hide-superseded', 'Hide superseded objects (shown and marked [superseded] by default)', false)
23
32
  .option('--include-superseded', 'Deprecated no-op: superseded objects are shown by default', false)
24
33
  .action(withCliCall('search', async (query, options) => {
25
- const { index } = createCliContainer(process.cwd());
34
+ const { index, declarations } = createCliContainer(process.cwd());
35
+ // P212 (2.13 §5.3б): валидация --facet по образцу add — словарь из конфига
36
+ const facetDict = facetDictionary(declarations);
37
+ if (options.facet !== undefined && !facetDict.includes(options.facet)) {
38
+ throw new UserFacingError(`Invalid facet "${options.facet}" (valid values: ${facetDict.join(', ')})`);
39
+ }
26
40
  const results = await searchMemory({ index }, {
27
41
  query,
28
42
  type: options.type,
43
+ facet: options.facet,
29
44
  status: options.status,
30
45
  tags: options.tag.length > 0 ? options.tag : undefined,
31
46
  confidence: options.confidence,
@@ -51,9 +66,13 @@ export function memorySearchCommand() {
51
66
  // телеметрия не должна ломать основной поток
52
67
  }
53
68
  }
69
+ // P212 (2.13 §5.3в): решение о цвете — один раз на вывод (pipe/NO_COLOR → плоско)
70
+ const colored = colorsEnabled(process.stdout, process.env);
54
71
  for (const result of results) {
55
72
  const mark = result.object.status === 'superseded' ? ' [superseded]' : '';
56
- console.log(`${result.object.id} [${result.object.type}] ${result.object.title}${mark}`);
73
+ const facet = typeof result.object.facet === 'string' ? result.object.facet : undefined;
74
+ const facetPart = facet ? ` [${highlightFacet(facet, colored)}]` : '';
75
+ console.log(`${result.object.id} [${result.object.type}]${facetPart} ${result.object.title}${mark}`);
57
76
  }
58
77
  // Анти-тихий-ноль (вариант D): пустота не отдаётся молча.
59
78
  if (results.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"memory-search.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-search.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-session.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,oBAAoB,IAAI,OAAO,CAoB9C;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAwBjD"}
1
+ {"version":3,"file":"memory-session.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,oBAAoB,IAAI,OAAO,CAO9C;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAwBjD"}
@@ -1,21 +1,11 @@
1
1
  import { Command } from 'commander';
2
- import { createSessionCheckpoint } from '../../../app/use-cases/create-session-checkpoint.js';
3
2
  import { diffThread } from '../../../app/use-cases/diff-thread.js';
4
3
  import { createCliContainer } from '../../../bootstrap/container.js';
5
4
  import { memorySessionWrapUpCommand } from './memory-session-wrap-up.js';
6
5
  export function memorySessionCommand() {
7
6
  const session = new Command('session').description('Manage sessions and checkpoints');
8
- session
9
- .command('checkpoint')
10
- .description('Create a checkpoint for a work thread')
11
- .requiredOption('--thread <thread-id>', 'Thread id')
12
- .option('--created-by <actor>', 'Creator actor', 'user:cli')
13
- .action(async (options) => {
14
- const { store, log, clock, idGen, index } = createCliContainer(process.cwd());
15
- const result = await createSessionCheckpoint({ store, log, clock, idGen, index }, { threadId: options.thread, createdBy: options.createdBy });
16
- console.log(`Created session checkpoint: ${result.object.id}`);
17
- });
18
- session.addCommand(memorySessionWrapUpCommand());
7
+ // P224 (§6.6): wrap-up — plumbing, скрыт из help (сама команда работает)
8
+ session.addCommand(memorySessionWrapUpCommand(), { hidden: true });
19
9
  return session;
20
10
  }
21
11
  export function memoryThreadDiffCommand() {
@@ -1 +1 @@
1
- {"version":3,"file":"memory-session.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-session.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAEzE,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,iCAAiC,CAAC,CAAC;IAEtF,yEAAyE;IACzE,OAAO,CAAC,UAAU,CAAC,0BAA0B,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,wCAAwC,CAAC;SACrD,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC;SACpC,cAAc,CAAC,yBAAyB,EAAE,eAAe,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,OAAO,EAAE,EAAE;QAC1C,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,YAAY,CAAC,MAAM,SAAS,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5F,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC/B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC1B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-sync.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,iBAAiB,IAAI,OAAO,CA2B3C"}
1
+ {"version":3,"file":"memory-sync.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,iBAAiB,IAAI,OAAO,CAoB3C"}
@@ -3,8 +3,6 @@ import { Command } from 'commander';
3
3
  import { OpencodeBaseSetRenderer } from '../../../adapters/render/opencode/opencode-renderer.js';
4
4
  import { templatesRoot, harnessTemplatesRoot } from '../../../adapters/render/templates-root.js';
5
5
  import { syncBaseSet } from '../../../app/use-cases/sync-base-set.js';
6
- import { findModelRouting, parseModelRouting } from '../../../app/use-cases/model-routing.js';
7
- import { MarkdownMemoryStore } from '../../../adapters/fs/markdown-memory-store.js';
8
6
  import { isNpxRun } from '../../../domain/npx.js';
9
7
  import { UserFacingError } from '../../../domain/errors.js';
10
8
  export function memorySyncCommand() {
@@ -18,14 +16,9 @@ export function memorySyncCommand() {
18
16
  const renderer = new OpencodeBaseSetRenderer(templatesRoot(), {
19
17
  harnessTemplatesRoot: harnessTemplatesRoot('opencode'),
20
18
  });
21
- // §4.5: sync подставляет модели из routing-объекта; легаси без него — omit
22
- const routingObj = await findModelRouting(new MarkdownMemoryStore(baseDir));
23
- const routing = routingObj ? parseModelRouting(routingObj) : null;
24
- const { outcomes, orphaned } = await syncBaseSet(renderer, baseDir, routing ?? 'omit');
19
+ const { outcomes, orphaned } = await syncBaseSet(renderer, baseDir, 'omit');
25
20
  console.log('# wolf sync');
26
- console.log(routing
27
- ? `- models: primary=${routing.primary} worker=${routing.worker} (routing object ${routingObj?.id})`
28
- : '- models: omit — routing object not found (legacy), model: lines omitted (§4.5)');
21
+ console.log('- models: omit — model: lines omitted (no routing source since wave 2.13)');
29
22
  for (const o of outcomes)
30
23
  console.log(`- ${o.file}: ${o.action}${o.reason ? ` — ${o.reason}` : ''}`);
31
24
  for (const f of orphaned)
@@ -1 +1 @@
1
- {"version":3,"file":"memory-sync.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-sync.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,QAAQ,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,eAAe,CACvB,0FAA0F,CAC3F,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,uBAAuB,CAAC,aAAa,EAAE,EAAE;YAC5D,oBAAoB,EAAE,oBAAoB,CAAC,UAAU,CAAC;SACvD,CAAC,CAAC;QACH,2EAA2E;QAC3E,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CACT,OAAO;YACL,CAAC,CAAC,qBAAqB,OAAO,CAAC,OAAO,WAAW,OAAO,CAAC,MAAM,oBAAoB,UAAU,EAAE,EAAE,GAAG;YACpG,CAAC,CAAC,iFAAiF,CACtF,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrG,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"memory-sync.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-sync.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,QAAQ,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,eAAe,CACvB,0FAA0F,CAC3F,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,uBAAuB,CAAC,aAAa,EAAE,EAAE;YAC5D,oBAAoB,EAAE,oBAAoB,CAAC,UAAU,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;QACzF,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrG,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-taxonomy.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,wBAAgB,qBAAqB,IAAI,OAAO,CA4B/C"}
1
+ {"version":3,"file":"memory-taxonomy.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,qBAAqB,IAAI,OAAO,CA+B/C"}
@@ -1,22 +1,22 @@
1
1
  import { Command } from 'commander';
2
2
  import * as fs from 'fs/promises';
3
3
  import { dirname } from 'path';
4
- import { MEMORY_TYPES } from '../../../domain/memory-types.js';
5
4
  import { mergeTaxonomy } from '../../../domain/taxonomy.js';
6
5
  import { renderConfigYaml, loadWolfConfig } from '../../fs/config-file.js';
7
6
  import { configPath } from '../../fs/project-paths.js';
8
- const MEMORY_TYPES_COUNT = MEMORY_TYPES.length;
7
+ import { getWolfVersion } from '../../version.js';
9
8
  export function memoryTaxonomyCommand() {
10
9
  const cmd = new Command('taxonomy').description('Manage memory taxonomy');
11
10
  cmd
12
11
  .command('sync')
13
- .description('Regenerate memory_types.core in .wolf/config.yaml from code canon')
12
+ // P214: дамп memory_types.core больше не пишется — wolf_version-штамп
13
+ .description('Refresh .wolf/config.yaml: project types preserved, wolf_version stamp')
14
14
  .action(async () => {
15
15
  const baseDir = process.cwd();
16
16
  const existing = await loadWolfConfig(baseDir);
17
17
  await fs.mkdir(dirname(configPath(baseDir)), { recursive: true });
18
18
  await fs.writeFile(configPath(baseDir), renderConfigYaml(existing), 'utf-8');
19
- console.log(`Synced ${configPath(baseDir)} (core types: ${MEMORY_TYPES_COUNT})`);
19
+ console.log(`Synced ${configPath(baseDir)} (wolf_version: ${getWolfVersion()}, project types: ${existing?.projectTypes.length ?? 0})`);
20
20
  });
21
21
  cmd
22
22
  .command('show')
@@ -1 +1 @@
1
- {"version":3,"file":"memory-taxonomy.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC;AAE/C,MAAM,UAAU,qBAAqB;IACnC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAE1E,GAAG;SACA,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,mEAAmE,CAAC;SAChF,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,UAAU,UAAU,CAAC,OAAO,CAAC,iBAAiB,kBAAkB,GAAG,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACrC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACT,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,YAAY,IAAI,GAAG,IAAI,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE,CAC7I,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"memory-taxonomy.js","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,UAAU,qBAAqB;IACnC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAE1E,GAAG;SACA,OAAO,CAAC,MAAM,CAAC;QAChB,sEAAsE;SACrE,WAAW,CAAC,wEAAwE,CAAC;SACrF,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CACT,UAAU,UAAU,CAAC,OAAO,CAAC,mBAAmB,cAAc,EAAE,oBAAoB,QAAQ,EAAE,YAAY,CAAC,MAAM,IAAI,CAAC,GAAG,CAC1H,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACrC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACT,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,YAAY,IAAI,GAAG,IAAI,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE,CAC7I,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-tool.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAwB5C,wBAAgB,iBAAiB,IAAI,OAAO,CAsK3C"}
1
+ {"version":3,"file":"memory-tool.d.ts","sourceRoot":"","sources":["../../../../src/adapters/cli/commands/memory-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AA+E5C,wBAAgB,iBAAiB,IAAI,OAAO,CA0H3C"}