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
@@ -4,11 +4,10 @@ export declare const RelationSchema: z.ZodObject<{
4
4
  id: z.ZodString;
5
5
  subject: z.ZodString;
6
6
  predicate: z.ZodEnum<{
7
- answers: "answers";
8
- supports: "supports";
9
- owner_skill: "owner_skill";
10
7
  superseded_by: "superseded_by";
8
+ answers: "answers";
11
9
  answered_by: "answered_by";
10
+ supports: "supports";
12
11
  supported_by: "supported_by";
13
12
  based_on: "based_on";
14
13
  basis_for: "basis_for";
@@ -21,6 +20,7 @@ export declare const RelationSchema: z.ZodObject<{
21
20
  resolved_by: "resolved_by";
22
21
  related_to: "related_to";
23
22
  produced_by: "produced_by";
23
+ owner_skill: "owner_skill";
24
24
  skill_of: "skill_of";
25
25
  complain: "complain";
26
26
  complained_by: "complained_by";
@@ -37,6 +37,8 @@ export declare const RelationSchema: z.ZodObject<{
37
37
  medium: "medium";
38
38
  high: "high";
39
39
  }>;
40
+ removed: z.ZodOptional<z.ZodBoolean>;
41
+ removed_at: z.ZodOptional<z.ZodString>;
40
42
  }, z.core.$strip>;
41
43
  export type Relation = z.infer<typeof RelationSchema>;
42
44
  export type RelationPredicate = (typeof RELATION_PREDICATES)[number];
@@ -1 +1 @@
1
- {"version":3,"file":"relation-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB,0RAqBtB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"relation-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB,0RAqBtB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAYzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -29,5 +29,9 @@ export const RelationSchema = z.object({
29
29
  created_at: z.string().datetime(),
30
30
  source: z.enum(['manual', 'agent', 'system']),
31
31
  confidence: z.enum(['low', 'medium', 'high']),
32
+ // Компенсирующая запись relation remove (спека 2.13 §6.4): append-only,
33
+ // рёбра с removed: true не читаются; откат = убрать запись.
34
+ removed: z.boolean().optional(),
35
+ removed_at: z.string().datetime().optional(),
32
36
  });
33
37
  //# sourceMappingURL=relation-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relation-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,aAAa;IACb,UAAU;IACV,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,aAAa;IACb,YAAY;IACZ,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,eAAe;CACP,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;CAC9C,CAAC,CAAC"}
1
+ {"version":3,"file":"relation-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,aAAa;IACb,UAAU;IACV,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,aAAa;IACb,YAAY;IACZ,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,eAAe;CACP,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,wEAAwE;IACxE,4DAA4D;IAC5D,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
@@ -50,7 +50,7 @@ export declare const SessionCheckpointSchema: z.ZodObject<{
50
50
  long_term: "long_term";
51
51
  short_term: "short_term";
52
52
  }>>;
53
- type: z.ZodLiteral<"document" | "decision" | "lesson" | "observation" | "complaint" | "session-summary" | "open-question" | "context" | "work-thread" | "info-request" | "article" | "blocker" | "session-checkpoint" | "rule" | "document-ref" | "document-native" | "task-brief" | "report" | "council-question" | "council-opinion" | "synthesis" | "escalation" | "decision-request" | "call-injection" | "playbook" | "tool">;
53
+ type: z.ZodLiteral<"rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note">;
54
54
  status: z.ZodEnum<{
55
55
  active: "active";
56
56
  open: "open";
@@ -68,6 +68,8 @@ export declare const SessionCheckpointSchema: z.ZodObject<{
68
68
  accepted: "accepted";
69
69
  candidate: "candidate";
70
70
  deprecated: "deprecated";
71
+ blocked: "blocked";
72
+ waiting_answer: "waiting_answer";
71
73
  }>;
72
74
  thread: z.ZodString;
73
75
  captured_state: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"session-checkpoint-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/session-checkpoint-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
1
+ {"version":3,"file":"session-checkpoint-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/session-checkpoint-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { buildTypeSchema } from '../type-schema-builder.js';
2
2
  import { getDeclaration } from '../memory-types.js';
3
3
  import { z } from 'zod';
4
- const decl = getDeclaration('session-checkpoint');
5
- export const SessionCheckpointSchema = buildTypeSchema(decl, {
4
+ // wave13-a: session-checkpoint поглощён note+facet history (карта §5.4 2.13);
5
+ // схема валидирует форму note, спец-поля живут в passthrough
6
+ export const SessionCheckpointSchema = buildTypeSchema(getDeclaration('note'), {
6
7
  thread: z.string().min(1),
7
8
  captured_state: z.object({
8
9
  thread_current_state: z.string().default(''),
@@ -1 +1 @@
1
- {"version":3,"file":"session-checkpoint-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/session-checkpoint-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,IAAI,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC,IAAI,EAAE;IAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"session-checkpoint-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/session-checkpoint-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8EAA8E;AAC9E,6DAA6D;AAC7D,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;IAC7E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC,CAAC"}
@@ -42,19 +42,19 @@ export const SOLVE_SCENARIOS = [
42
42
  'superseded',
43
43
  'obsolete',
44
44
  ],
45
- includeTypes: ['rule', 'decision', 'session-checkpoint'],
45
+ includeTypes: ['rule', 'decision', 'note'], // wave13-a: window-compat (session-checkpoint → note, §5.4)
46
46
  },
47
47
  {
48
48
  id: 'missing-rule',
49
49
  title: 'Repeated correction without active rule',
50
50
  symptoms: ['repeats', 'repeated', 'correction', 'convention', 'missing', 'rule', 'instruction', 'durable'],
51
- includeTypes: ['rule', 'decision', 'article'],
51
+ includeTypes: ['rule', 'decision', 'note'], // wave13-a: window-compat (article → note, §5.4)
52
52
  },
53
53
  {
54
54
  id: 'generic',
55
55
  title: 'Generic memory review',
56
56
  symptoms: [],
57
- includeTypes: ['rule', 'decision', 'article', 'document-ref', 'session-checkpoint'],
57
+ includeTypes: ['rule', 'decision', 'note'], // wave13-a: window-compat (article/document-ref/session-checkpoint → note, §5.4)
58
58
  },
59
59
  ];
60
60
  export function tokenize(text) {
@@ -1 +1 @@
1
- {"version":3,"file":"scenarios.js","sourceRoot":"","sources":["../../../src/domain/solve/scenarios.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC;IACrD,KAAK;IACL,KAAK;IACL,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,KAAK;IACL,OAAO;IACP,MAAM;IACN,OAAO;IACP,KAAK;IACL,GAAG;IACH,GAAG;IACH,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AASH,MAAM,CAAC,MAAM,eAAe,GAA6B;IACvD;QACE,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,oCAAoC;QAC3C,QAAQ,EAAE;YACR,YAAY;YACZ,WAAW;YACX,UAAU;YACV,OAAO;YACP,KAAK;YACL,SAAS;YACT,aAAa;YACb,YAAY;YACZ,UAAU;SACX;QACD,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,oBAAoB,CAAC;KACzD;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,yCAAyC;QAChD,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC;QAC1G,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC;KAC9C;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,uBAAuB;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,oBAAoB,CAAC;KACpF;CACF,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,KAAK,CAAC,cAAc,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"scenarios.js","sourceRoot":"","sources":["../../../src/domain/solve/scenarios.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC;IACrD,KAAK;IACL,KAAK;IACL,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,KAAK;IACL,OAAO;IACP,MAAM;IACN,OAAO;IACP,KAAK;IACL,GAAG;IACH,GAAG;IACH,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AASH,MAAM,CAAC,MAAM,eAAe,GAA6B;IACvD;QACE,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,oCAAoC;QAC3C,QAAQ,EAAE;YACR,YAAY;YACZ,WAAW;YACX,UAAU;YACV,OAAO;YACP,KAAK;YACL,SAAS;YACT,aAAa;YACb,YAAY;YACZ,UAAU;SACX;QACD,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,4DAA4D;KACzG;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,yCAAyC;QAChD,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC;QAC1G,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,iDAAiD;KAC9F;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,uBAAuB;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,iFAAiF;KAC9H;CACF,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,KAAK,CAAC,cAAc,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC"}
@@ -32,6 +32,18 @@ export interface WolfConfig {
32
32
  workhorseUses?: number;
33
33
  };
34
34
  };
35
+ /** 2.13 §5.3: закрытые словари фасетов; character — словарь типа note (7–10 значений). */
36
+ facets?: {
37
+ character: string[];
38
+ };
39
+ /** P214 (C7): штамп версии Wolf, писавшей конфиг (wolf_version); без дампа —
40
+ * несовпадение с бинарьём = warning «wolf migrate taxonomy». */
41
+ wolfVersion?: string;
42
+ /** P214 (C8): delivery round-trip (само чтение настроек — loadDeliverySettings). */
43
+ delivery?: {
44
+ contextBudgetTokens?: number;
45
+ contextWarningPct?: number;
46
+ };
35
47
  }
36
48
  export declare class ProjectTypeConflictError extends Error {
37
49
  }
@@ -40,6 +52,8 @@ export declare function mergeTaxonomy(config: WolfConfig | null): {
40
52
  };
41
53
  /** Эффективные переходы для типа: глобальная матрица, обрезанная lifecycle'ом типа. */
42
54
  export declare function transitionsFor(decl: MemoryTypeDeclaration): Record<string, string[]>;
43
- /** Генерирует core-блок конфига из каноничного CORE_TAXONOMY. */
55
+ /** Каноничный core-блок из CORE_TAXONOMY. P214: рендер конфига его БОЛЬШЕ не
56
+ * пишет (вместо дампа — wolf_version-штамп); используется только drift-чеком
57
+ * `validate` для легаси-конфигов, где блок ещё лежит в файле. */
44
58
  export declare function generateCoreConfigBlock(): Record<string, unknown>;
45
59
  //# sourceMappingURL=taxonomy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../../src/domain/taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAE,qBAAqB,EAAgB,MAAM,mBAAmB,CAAC;AAEnG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,+EAA+E;IAC/E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,qBAAqB,EAAE,CAAC;IACtC,uFAAuF;IACvF,YAAY,EAAE,OAAO,CAAC;IACtB,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACvD;oFACgF;IAChF,QAAQ,CAAC,EAAE;QACT,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClC,uBAAuB,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACvF,CAAC;IACF,2EAA2E;IAC3E,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,mFAAmF;IACnF,SAAS,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CAC3E;AAED,qBAAa,wBAAyB,SAAQ,KAAK;CAAG;AAEtD,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG;IACxD,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;CAC/C,CAqBA;AAED,uFAAuF;AACvF,wBAAgB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAMpF;AAED,iEAAiE;AACjE,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAajE"}
1
+ {"version":3,"file":"taxonomy.d.ts","sourceRoot":"","sources":["../../src/domain/taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAE,qBAAqB,EAAgB,MAAM,mBAAmB,CAAC;AAEnG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,+EAA+E;IAC/E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,qBAAqB,EAAE,CAAC;IACtC,uFAAuF;IACvF,YAAY,EAAE,OAAO,CAAC;IACtB,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACvD;oFACgF;IAChF,QAAQ,CAAC,EAAE;QACT,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClC,uBAAuB,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACvF,CAAC;IACF,2EAA2E;IAC3E,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,mFAAmF;IACnF,SAAS,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAC1E,0FAA0F;IAC1F,MAAM,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACjC;oEACgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,QAAQ,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE;AAED,qBAAa,wBAAyB,SAAQ,KAAK;CAAG;AAEtD,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG;IACxD,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;CAC/C,CAgCA;AAED,uFAAuF;AACvF,wBAAgB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAMpF;AAED;;iEAEiE;AACjE,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAajE"}
@@ -18,6 +18,17 @@ export function mergeTaxonomy(config) {
18
18
  }
19
19
  types.set(p.name, p);
20
20
  }
21
+ // 2.13 §5.3: кастомный словарь facets.character подменяет enum фасета note
22
+ // (по образцу projectTypes — вердикт линзы «исполнимость» спеки)
23
+ if (config.facets?.character) {
24
+ const noteDecl = types.get('note');
25
+ if (noteDecl) {
26
+ types.set('note', {
27
+ ...noteDecl,
28
+ fields: { ...noteDecl.fields, facet: { kind: 'enum', values: config.facets.character } },
29
+ });
30
+ }
31
+ }
21
32
  }
22
33
  return { types };
23
34
  }
@@ -29,7 +40,9 @@ export function transitionsFor(decl) {
29
40
  }
30
41
  return out;
31
42
  }
32
- /** Генерирует core-блок конфига из каноничного CORE_TAXONOMY. */
43
+ /** Каноничный core-блок из CORE_TAXONOMY. P214: рендер конфига его БОЛЬШЕ не
44
+ * пишет (вместо дампа — wolf_version-штамп); используется только drift-чеком
45
+ * `validate` для легаси-конфигов, где блок ещё лежит в файле. */
33
46
  export function generateCoreConfigBlock() {
34
47
  const block = {};
35
48
  for (const d of CORE_TAXONOMY) {
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../../src/domain/taxonomy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAmD,MAAM,mBAAmB,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAyBtD,MAAM,OAAO,wBAAyB,SAAQ,KAAK;CAAG;AAEtD,MAAM,UAAU,aAAa,CAAC,MAAyB;IAGrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqC,CAAC;IAC3D,KAAK,MAAM,CAAC,IAAI,aAAa;QAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpD,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACpC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,wBAAwB,CAChC,iBAAiB,CAAC,CAAC,IAAI,8DAA8D,CACtF,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;gBAC5B,IAAI,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,EAAE,CAAC;oBAChC,MAAM,IAAI,wBAAwB,CAChC,iBAAiB,CAAC,CAAC,IAAI,0BAA0B,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7G,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,cAAc,CAAC,IAA2B;IACxD,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAkB,CAAC,CAAC,CAAC;IAC5G,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,uBAAuB;IACrC,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,MAAM,KAAK,GAA4B;YACrC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;YAC3B,aAAa,EAAE,CAAC,CAAC,YAAY;YAC7B,aAAa,EAAE,CAAC,CAAC,YAAY;SAC9B,CAAC;QACF,IAAI,CAAC,CAAC,MAAM;YAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACtC,IAAI,CAAC,CAAC,UAAU;YAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1C,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../../src/domain/taxonomy.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Экономика переиспользования инструментов (C3, roadmap v3).
3
3
  * Чистые функции анализа run-log: без side-effects и импортов.
4
- * weighted = input + 0.1×cache.read + 5×output (считается в opencode-run-metrics).
4
+ * weighted = input + 0.1×cache.read + 5×output (формата писателя `wolf run`, удалён в волне 2.13).
5
5
  */
6
6
  export interface RunLogEntry {
7
7
  ts?: string;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Экономика переиспользования инструментов (C3, roadmap v3).
3
3
  * Чистые функции анализа run-log: без side-effects и импортов.
4
- * weighted = input + 0.1×cache.read + 5×output (считается в opencode-run-metrics).
4
+ * weighted = input + 0.1×cache.read + 5×output (формата писателя `wolf run`, удалён в волне 2.13).
5
5
  */
6
6
  /** Парсит jsonl run-log; пустые и битые строки молча пропускаются. */
7
7
  export function parseRunLog(text) {
@@ -35,6 +35,8 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
35
35
  accepted: "accepted";
36
36
  candidate: "candidate";
37
37
  deprecated: "deprecated";
38
+ blocked: "blocked";
39
+ waiting_answer: "waiting_answer";
38
40
  }>;
39
41
  review_state: z.ZodEnum<{
40
42
  rejected: "rejected";
@@ -85,7 +87,7 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
85
87
  short_term: "short_term";
86
88
  }>>;
87
89
  } & ({
88
- type: z.ZodLiteral<"document" | "decision" | "lesson" | "observation" | "complaint" | "session-summary" | "open-question" | "context" | "work-thread" | "info-request" | "article" | "blocker" | "session-checkpoint" | "rule" | "document-ref" | "document-native" | "task-brief" | "report" | "council-question" | "council-opinion" | "synthesis" | "escalation" | "decision-request" | "call-injection" | "playbook" | "tool">;
90
+ type: z.ZodLiteral<"rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note">;
89
91
  status: z.ZodEnum<{
90
92
  active: "active";
91
93
  open: "open";
@@ -103,6 +105,8 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
103
105
  accepted: "accepted";
104
106
  candidate: "candidate";
105
107
  deprecated: "deprecated";
108
+ blocked: "blocked";
109
+ waiting_answer: "waiting_answer";
106
110
  }>;
107
111
  } & F extends infer T_1 ? { -readonly [P in keyof T_1]: T_1[P]; } : never) : ({
108
112
  id: z.ZodString;
@@ -125,6 +129,8 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
125
129
  accepted: "accepted";
126
130
  candidate: "candidate";
127
131
  deprecated: "deprecated";
132
+ blocked: "blocked";
133
+ waiting_answer: "waiting_answer";
128
134
  }>;
129
135
  review_state: z.ZodEnum<{
130
136
  rejected: "rejected";
@@ -175,7 +181,7 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
175
181
  short_term: "short_term";
176
182
  }>>;
177
183
  } extends infer T_2 extends z.core.util.SomeObject ? { [K in keyof T_2 as K extends "type" | "status" | keyof F ? never : K]: T_2[K]; } : never) & (({
178
- type: z.ZodLiteral<"document" | "decision" | "lesson" | "observation" | "complaint" | "session-summary" | "open-question" | "context" | "work-thread" | "info-request" | "article" | "blocker" | "session-checkpoint" | "rule" | "document-ref" | "document-native" | "task-brief" | "report" | "council-question" | "council-opinion" | "synthesis" | "escalation" | "decision-request" | "call-injection" | "playbook" | "tool">;
184
+ type: z.ZodLiteral<"rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note">;
179
185
  status: z.ZodEnum<{
180
186
  active: "active";
181
187
  open: "open";
@@ -193,8 +199,15 @@ export declare function buildTypeSchema<F extends z.ZodRawShape = Record<string,
193
199
  accepted: "accepted";
194
200
  candidate: "candidate";
195
201
  deprecated: "deprecated";
202
+ blocked: "blocked";
203
+ waiting_answer: "waiting_answer";
196
204
  }>;
197
205
  } & F extends infer T_4 ? { -readonly [P in keyof T_4]: T_4[P]; } : never) extends infer T_3 extends z.core.util.SomeObject ? { [K_1 in keyof T_3]: T_3[K_1]; } : never)) extends infer T ? { [k in keyof T]: T[k]; } : never, z.core.$loose>;
206
+ /**
207
+ * 2.13 §5.3: подменяет enum фасета note на переданный словарь (кастомный
208
+ * facets.character из config.yaml) — для add-пути, валидирующего выбор значения.
209
+ */
210
+ export declare function applyFacetEnum(decl: MemoryTypeDeclaration, values: readonly string[]): MemoryTypeDeclaration;
198
211
  /**
199
212
  * Per-type поля всех деклараций таксономии как zod-shape — единый источник
200
213
  * входной схемы MCP `add`: поле, добавленное в декларацию, автоматически
@@ -1 +1 @@
1
- {"version":3,"file":"type-schema-builder.d.ts","sourceRoot":"","sources":["../../src/domain/type-schema-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAiB,KAAK,SAAS,EAAqB,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEjH;yDACyD;AACzD,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC,UAAU,CAiCxD;AAED;;;;;;;;;;GAUG;AAGH,wBAAgB,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC7E,IAAI,EAAE,qBAAqB,EAC3B,MAAM,GAAE,CAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8OAuBpB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,GAAE,SAAS,qBAAqB,EAAkB,GACtD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAwB9B"}
1
+ {"version":3,"file":"type-schema-builder.d.ts","sourceRoot":"","sources":["../../src/domain/type-schema-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAiB,KAAK,SAAS,EAAqB,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEjH;yDACyD;AACzD,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC,UAAU,CAiCxD;AAED;;;;;;;;;;GAUG;AAGH,wBAAgB,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC7E,IAAI,EAAE,qBAAqB,EAC3B,MAAM,GAAE,CAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8OAuBpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,qBAAqB,CAE5G;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,GAAE,SAAS,qBAAqB,EAAkB,GACtD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAwB9B"}
@@ -68,6 +68,13 @@ export function buildTypeSchema(decl, fields = {}) {
68
68
  }
69
69
  });
70
70
  }
71
+ /**
72
+ * 2.13 §5.3: подменяет enum фасета note на переданный словарь (кастомный
73
+ * facets.character из config.yaml) — для add-пути, валидирующего выбор значения.
74
+ */
75
+ export function applyFacetEnum(decl, values) {
76
+ return { ...decl, fields: { ...decl.fields, facet: { kind: 'enum', values } } };
77
+ }
71
78
  /**
72
79
  * Per-type поля всех деклараций таксономии как zod-shape — единый источник
73
80
  * входной схемы MCP `add`: поле, добавленное в декларацию, автоматически
@@ -1 +1 @@
1
- {"version":3,"file":"type-schema-builder.js","sourceRoot":"","sources":["../../src/domain/type-schema-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-schema-builder.js","sourceRoot":"","sources":["../../src/domain/type-schema-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAqB,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAiE,MAAM,mBAAmB,CAAC;AAEjH;yDACyD;AACzD,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,MAAM,CAAC,GAAG,IAOT,CAAC;IACF,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,CAAC,QAAQ;YAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;QAC7C,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,sEAAsE;QACtE,OAAO,CAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,OAAO,CAAE,CAAC,CAAC,OAA8B,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,QAAQ;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAE,CAAC,CAAC,OAAoB,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAA+B,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;GAUG;AACH,iFAAiF;AACjF,uEAAuE;AACvE,MAAM,UAAU,eAAe,CAC7B,IAA2B,EAC3B,SAAY,EAAO;IAEnB,MAAM,UAAU,GAAiC,EAAE,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3D,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC;QACtC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAyD,CAAC;QAC9E,GAAG,MAAM;KACV,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAiB,CAAC;IAC1D,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QAC1C,iFAAiF;QACjF,MAAM,GAAG,GAAG,MAAsB,CAAC;QACnC,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;YAChD,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gBACxB,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,uBAAuB;aAC7C,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAA2B,EAAE,MAAyB;IACnF,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAClF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAA0C,aAAa;IAEvD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsE,CAAC;IAC5F,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YAC7D,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;gBACpD,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;gBAAE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM;oBAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAiC,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;QAClD,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QACtD,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAA0B,CAAC,CAAC,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -3,6 +3,8 @@ export interface ListFilters {
3
3
  type?: string;
4
4
  status?: string;
5
5
  stale?: boolean;
6
+ /** P212 (2.13 §5.3б): постфильтр по frontmatter-facet (значение не валидируется) */
7
+ facet?: string;
6
8
  }
7
9
  export interface MemoryStore {
8
10
  save(object: MemoryObject): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"memory-store.port.d.ts","sourceRoot":"","sources":["../../src/ports/memory-store.port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC9C,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACzE"}
1
+ {"version":3,"file":"memory-store.port.d.ts","sourceRoot":"","sources":["../../src/ports/memory-store.port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oFAAoF;IACpF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC9C,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACzE"}
@@ -5,6 +5,8 @@ export interface SearchResult {
5
5
  }
6
6
  export interface SearchOptions {
7
7
  type?: string;
8
+ /** P212 (2.13 §5.3б): фильтр по фасету note; NULL у типов без фасета */
9
+ facet?: string;
8
10
  includeSuperseded?: boolean;
9
11
  tags?: string[];
10
12
  status?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"search-index.port.d.ts","sourceRoot":"","sources":["../../src/ports/search-index.port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACzE"}
1
+ {"version":3,"file":"search-index.port.d.ts","sourceRoot":"","sources":["../../src/ports/search-index.port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACzE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mister-wolf",
3
- "version": "2.11.0",
3
+ "version": "2.13.0",
4
4
  "description": "Local-first project memory for AI coding agents: decisions, lessons, tools and processes that outlive the session",
5
5
  "keywords": [
6
6
  "ai-agents",
@@ -40,7 +40,7 @@
40
40
  "bench:tokens": "node --disable-warning=ExperimentalWarning scripts/bench-tokens.mjs",
41
41
  "check": "node scripts/check-english-surface.mjs && npm run format:check && npm run lint && npm run build && npm run test:run",
42
42
  "docs:dev": "vitepress dev docs/site",
43
- "docs:build": "vitepress build docs/site",
43
+ "docs:build": "node scripts/generate-cli-reference.mjs && node scripts/sync-changelog.mjs && vitepress build docs/site",
44
44
  "docs:preview": "vitepress preview docs/site"
45
45
  },
46
46
  "dependencies": {
@@ -4,9 +4,11 @@
4
4
  * Слой доставки №1 playbook-контекста (канон §7.1): детерминированная
5
5
  * доставка вместо вероятностного wolf search агентом. Маркер
6
6
  * `agent-id: <id>` В ТЕЛЕ рамки агента (frontmatter в system-промпт не
7
- * попадает — известная грабля) → wolf search --type playbook → get +
8
- * гвард owner_skill === agentId | `skill:${agentId}` (legacy) → максимальная
9
- * version → инжект в system-промпт на каждое сообщение.
7
+ * попадает — известная грабля) → wolf search `<agentId> playbook` (после
8
+ * таксономии 2.13 канон — note+facet howto, type-фильтр не применим) → get +
9
+ * гвард owner_skill === agentId | `skill:${agentId}` (legacy) → первый
10
+ * прошедший гвард кандидат (ранний стоп, A2-б) → инжект в system-промпт
11
+ * на каждое сообщение.
10
12
  *
11
13
  * Fallback (T012, волна 1.1): канон приоритетен; при miss для ЛЮБОГО
12
14
  * agent-id инъецируется встроенный универсальный FALLBACK_PLAYBOOK —
@@ -16,8 +18,8 @@
16
18
  *
17
19
  * Ноль зависимостей (Node stdlib; ai-sdk НЕ используется). Fail-safe: всё в
18
20
  * try/catch — плагин не имеет права уронить сессию (лог: .wolf/router.log —
19
- * agent-id, name, variant, injected). Через этот файл при рендере проходят
20
- * подстановка {{tool.*}} и штамп `// wolf:rendered` (ставит рендерер).
21
+ * agent-id, name, variant, injected, ms, bytes). Через этот файл при рендере
22
+ * проходят подстановка {{tool.*}} и штамп `// wolf:rendered` (ставит рендерер).
21
23
  */
22
24
 
23
25
  import path from 'path';
@@ -52,19 +54,22 @@ const FALLBACK_PLAYBOOK = `# Универсальный playbook (fallback)
52
54
  причина; обошёл через <что сработало>\`), не молча и не ретраи в стол.`;
53
55
  // [ \t] вместо \s: \s съедает переводы строк и вытаскивает id с чужой строки.
54
56
  const AGENT_ID_RE = /^agent-id:[ \t]*([\w-]+)[ \t]*$/m;
55
- const CACHE_TTL_MS = 2500;
57
+ // Спека A2: playbook — canonical-память, Стюард мутирует редко → TTL 5 минут.
58
+ // Негативный кэш (null) живёт тем же TTL — повторный miss не спавнит CLI.
59
+ const CACHE_TTL_MS = 300_000;
60
+
61
+ // agent-id последней рамки, пропущенной через system.transform (для skill-метрики B3)
62
+ let lastAgentId: string | null = null;
56
63
 
57
64
  const run = promisify(execFile);
58
65
  // execFile: args array, no shell. Целевой проект — глобальный `wolf`;
59
66
  // догфуд в репо Wolf — локальный dist. Ошибка обоих → исключение наверх (fail-safe).
60
- // Волна 0 (0.2): свежий WOLF_SESSION на каждый spawn — унаследованный из long-lived
61
- // opencode-процесса env дал бы одну фальшивую сессию на все доставки.
67
+ // WOLF_SESSION (4.C): ключ ставится фабрикой ОДИН раз на процесс opencode —
68
+ // спавны и bash-вызовы волка наследуют его из process.env (execFile без
69
+ // env-поля наследует сам). Известный потолок: несколько чатов одного процесса
70
+ // opencode шарят ключ — консервативная недо-дедупликация, не ошибка.
62
71
  const runWolf = (args: string[]): Promise<{ stdout: string }> => {
63
- const opts = {
64
- cwd: PROJECT_ROOT,
65
- timeout: 5000,
66
- env: { ...process.env, WOLF_SESSION: 'opc-' + randomUUID() },
67
- };
72
+ const opts = { cwd: PROJECT_ROOT, timeout: 5000 };
68
73
  return run('wolf', args, opts).catch(() => run('node', [LOCAL_CLI, ...args], opts));
69
74
  };
70
75
 
@@ -77,7 +82,8 @@ function logRoute(line: string): void {
77
82
  }
78
83
  }
79
84
 
80
- // ponytail: per-agent кэш 2.5с — свежесть между сообщениями, без CLI-спавна на каждый чих.
85
+ // ponytail: per-agent кэш на TTL 5 мин — canonical-память мутируется редко,
86
+ // CLI-спавн не на каждое сообщение.
81
87
  const cache = new Map<string, { value: { id: string; body: string } | null; at: number }>();
82
88
 
83
89
  async function resolvePlaybook(agentId: string): Promise<{ id: string; body: string } | null> {
@@ -85,22 +91,23 @@ async function resolvePlaybook(agentId: string): Promise<{ id: string; body: str
85
91
  if (hit && Date.now() - hit.at < CACHE_TTL_MS) return hit.value;
86
92
  let found: { id: string; body: string } | null = null;
87
93
  try {
88
- const { stdout } = await runWolf(['search', agentId, '--type', 'playbook', '--hide-superseded']);
89
- const ids = [...stdout.matchAll(/^([\w-]+) \[playbook\]/gm)].map((m) => m[1]);
90
- let best: { id?: string; body?: string } | null = null;
91
- let bestVersion = -1;
94
+ // 2.13: плейбуки живут как note+facet howto (type 'playbook' — legacy),
95
+ // поэтому без --type; слово «playbook» (title/tags канона) сужает выборку.
96
+ // Формат строки search: `<id> [<type>] [<facet>] <title>`; тип в строке не
97
+ // фильтруем — каноничность решает гвард owner_skill ниже.
98
+ const { stdout } = await runWolf(['search', agentId, 'playbook', '--hide-superseded']);
99
+ const ids = [...stdout.matchAll(/^([\w-]+) \[\w+\]/gm)].map((m) => m[1]);
100
+ // Ранний стоп (спека A2-б): релевантность поиска уже отсортировала,
101
+ // --hide-superseded отсекает старые версии — первый кандидат, прошедший
102
+ // гвард владельца, и есть результат (один get при miss вместо K подряд).
92
103
  for (const id of ids) {
93
104
  const { stdout: json } = await runWolf(['get', id]);
94
105
  const obj = JSON.parse(json);
95
106
  const owner = obj.owner_skill ?? obj.extra?.owner_skill;
96
107
  if (owner !== agentId && owner !== `skill:${agentId}`) continue; // гвард владельца
97
- const version = Number(String(obj.version ?? '').match(/\d+/)?.[0] ?? 0);
98
- if (version > bestVersion) {
99
- bestVersion = version;
100
- best = obj;
101
- }
108
+ if (obj.body) found = { id: String(obj.id ?? id), body: obj.body };
109
+ break;
102
110
  }
103
- found = best?.body ? { id: String(best.id ?? ''), body: best.body } : null;
104
111
  } catch {
105
112
  /* fail-safe: без playbook — рамка работает через wolf search */
106
113
  }
@@ -108,25 +115,61 @@ async function resolvePlaybook(agentId: string): Promise<{ id: string; body: str
108
115
  return found;
109
116
  }
110
117
 
111
- export const WolfPlaybookPlugin = async () => ({
112
- 'experimental.chat.system.transform': async (_input, output) => {
113
- try {
114
- const joined = output.system.join('\n');
115
- const m = joined.match(AGENT_ID_RE);
116
- if (!m) return; // рамка без маркера — не наша забота
117
- if (joined.includes(INJECT_HEADER)) return; // идемпотентность: не вставляем дважды
118
- const agentId = m[1];
119
- const resolved = await resolvePlaybook(agentId);
120
- if (resolved) {
121
- output.system.push(`\n\n${INJECT_HEADER}\n\n${resolved.body}`);
122
- logRoute(`agent-id=${agentId} playbook=hit name=${resolved.id} variant=canonical injected=yes`);
123
- } else {
124
- // T012: miss канона → универсальный fallback; инъекция для любого agent-id
125
- output.system.push(`\n\n${INJECT_HEADER}\n\n${FALLBACK_PLAYBOOK}`);
126
- logRoute(`agent-id=${agentId} playbook=hit name=fallback variant=fallback injected=yes`);
118
+ export const WolfPlaybookPlugin = async () => {
119
+ // 4.C: один WOLF_SESSION на процесс opencode — спавны волка и bash-вызовы
120
+ // наследуют ключ. Известный потолок: несколько чатов одного процесса
121
+ // opencode шарят ключ — консервативная недо-дедупликация.
122
+ if (!process.env.WOLF_SESSION) process.env.WOLF_SESSION = 'opc-' + randomUUID();
123
+ return {
124
+ 'experimental.chat.system.transform': async (_input, output) => {
125
+ try {
126
+ const joined = output.system.join('\n');
127
+ const m = joined.match(AGENT_ID_RE);
128
+ if (!m) return; // рамка без маркера — не наша забота
129
+ if (joined.includes(INJECT_HEADER)) return; // идемпотентность: не вставляем дважды
130
+ const agentId = m[1];
131
+ lastAgentId = agentId; // агент известен хуку skill-метрики (B3)
132
+ const startedAt = Date.now();
133
+ const resolved = await resolvePlaybook(agentId);
134
+ const ms = Date.now() - startedAt;
135
+ if (resolved) {
136
+ output.system.push(`\n\n${INJECT_HEADER}\n\n${resolved.body}`);
137
+ logRoute(
138
+ `agent-id=${agentId} playbook=hit name=${resolved.id} variant=canonical injected=yes` +
139
+ ` ms=${ms} bytes=${Buffer.byteLength(resolved.body)}`
140
+ );
141
+ } else {
142
+ // T012: miss канона → универсальный fallback; инъекция для любого agent-id
143
+ output.system.push(`\n\n${INJECT_HEADER}\n\n${FALLBACK_PLAYBOOK}`);
144
+ logRoute(
145
+ `agent-id=${agentId} playbook=hit name=fallback variant=fallback injected=yes` +
146
+ ` ms=${ms} bytes=${Buffer.byteLength(FALLBACK_PLAYBOOK)}`
147
+ );
148
+ }
149
+ } catch {
150
+ /* fail-safe: не роняем сессию */
127
151
  }
128
- } catch {
129
- /* fail-safe: не роняем сессию */
130
- }
131
- },
132
- });
152
+ },
153
+ // B3: метрика вызовов скиллов. Форма входа по докам opencode: input.tool —
154
+ // имя тула, output.args — объект аргументов (name | skill — фолбэк).
155
+ // Отдельный JSONL-файл — инвариант: enum событий SignalEventSchema закрытый,
156
+ // в общий router.log эти события класть нельзя. WOLF_SKILL_LOG — тест-шов
157
+ // (читается на каждый вызов: env ставится тестами уже после импорта модуля).
158
+ 'tool.execute.before': async (input: unknown, output: unknown) => {
159
+ try {
160
+ if ((input as { tool?: string } | null)?.tool !== 'skill') return;
161
+ const args = (output as { args?: { name?: string; skill?: string } } | null)?.args;
162
+ const skill = args?.name ?? args?.skill;
163
+ if (!skill) return;
164
+ const file =
165
+ process.env.WOLF_SKILL_LOG ?? path.join(PROJECT_ROOT, '.wolf', 'metrics', 'skill-invocations.jsonl');
166
+ fs.mkdirSync(path.dirname(file), { recursive: true });
167
+ const entry: { ts: string; skill: string; agent?: string } = { ts: new Date().toISOString(), skill };
168
+ if (lastAgentId) entry.agent = lastAgentId;
169
+ fs.appendFileSync(file, `${JSON.stringify(entry)}\n`);
170
+ } catch {
171
+ /* fail-safe: падение метрики не роняет сессию */
172
+ }
173
+ },
174
+ };
175
+ };
@@ -78,13 +78,16 @@ function computeInjection(messages, agentId) {
78
78
  const run = promisify(execFile);
79
79
  // execFile: args array, no shell — текст пользователя не попадёт в команду.
80
80
  // Целевой проект — глобальный `wolf`; догфуд в репо Wolf — локальный dist.
81
- // Волна 0 (0.2): свежий WOLF_SESSION на каждый spawn — унаследованный из long-lived
82
- // opencode-процесса env дал бы одну фальшивую сессию на все доставки.
81
+ // P204 (волна 2.13): WOLF_SESSION наследуется между спавнами — ключ ставится
82
+ // только при отсутствии (то же правило, что wolf-router.ts: один ключ на
83
+ // процесс opencode). Сессионная дедупликация доставок работает между
84
+ // спавнами одной логической сессии.
83
85
  const runWolf = (args) => {
86
+ if (!process.env.WOLF_SESSION) process.env.WOLF_SESSION = 'opc-' + randomUUID();
87
+ // env-поля нет: execFile наследует process.env целиком (с ключом сессии)
84
88
  const opts = {
85
89
  cwd: PROJECT_ROOT,
86
90
  timeout: TIMEOUT_MS,
87
- env: { ...process.env, WOLF_SESSION: 'opc-' + randomUUID() },
88
91
  };
89
92
  return run('wolf', args, opts)
90
93
  .then((r) => r.stdout)