wingfoil 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +334 -0
  3. package/dist/cli/error.d.ts +11 -0
  4. package/dist/cli/error.d.ts.map +1 -0
  5. package/dist/cli/error.js +27 -0
  6. package/dist/cli/error.js.map +1 -0
  7. package/dist/cli/exit.d.ts +19 -0
  8. package/dist/cli/exit.d.ts.map +1 -0
  9. package/dist/cli/exit.js +14 -0
  10. package/dist/cli/exit.js.map +1 -0
  11. package/dist/cli/index.d.ts +28 -0
  12. package/dist/cli/index.d.ts.map +1 -0
  13. package/dist/cli/index.js +36 -0
  14. package/dist/cli/index.js.map +1 -0
  15. package/dist/cli/init-command.d.ts +34 -0
  16. package/dist/cli/init-command.d.ts.map +1 -0
  17. package/dist/cli/init-command.js +100 -0
  18. package/dist/cli/init-command.js.map +1 -0
  19. package/dist/cli/mcp-command.d.ts +24 -0
  20. package/dist/cli/mcp-command.d.ts.map +1 -0
  21. package/dist/cli/mcp-command.js +42 -0
  22. package/dist/cli/mcp-command.js.map +1 -0
  23. package/dist/cli/output.d.ts +13 -0
  24. package/dist/cli/output.d.ts.map +1 -0
  25. package/dist/cli/output.js +28 -0
  26. package/dist/cli/output.js.map +1 -0
  27. package/dist/cli/program.d.ts +12 -0
  28. package/dist/cli/program.d.ts.map +1 -0
  29. package/dist/cli/program.js +279 -0
  30. package/dist/cli/program.js.map +1 -0
  31. package/dist/cli/registrar.d.ts +69 -0
  32. package/dist/cli/registrar.d.ts.map +1 -0
  33. package/dist/cli/registrar.js +82 -0
  34. package/dist/cli/registrar.js.map +1 -0
  35. package/dist/cli.d.ts +3 -0
  36. package/dist/cli.d.ts.map +1 -0
  37. package/dist/cli.js +45 -0
  38. package/dist/cli.js.map +1 -0
  39. package/dist/core/approval-authority.d.ts +83 -0
  40. package/dist/core/approval-authority.d.ts.map +1 -0
  41. package/dist/core/approval-authority.js +112 -0
  42. package/dist/core/approval-authority.js.map +1 -0
  43. package/dist/core/builtin-asset.d.ts +71 -0
  44. package/dist/core/builtin-asset.d.ts.map +1 -0
  45. package/dist/core/builtin-asset.js +137 -0
  46. package/dist/core/builtin-asset.js.map +1 -0
  47. package/dist/core/builtin-integrity.d.ts +32 -0
  48. package/dist/core/builtin-integrity.d.ts.map +1 -0
  49. package/dist/core/builtin-integrity.js +148 -0
  50. package/dist/core/builtin-integrity.js.map +1 -0
  51. package/dist/core/confinement.d.ts +57 -0
  52. package/dist/core/confinement.d.ts.map +1 -0
  53. package/dist/core/confinement.js +108 -0
  54. package/dist/core/confinement.js.map +1 -0
  55. package/dist/core/context.d.ts +187 -0
  56. package/dist/core/context.d.ts.map +1 -0
  57. package/dist/core/context.js +192 -0
  58. package/dist/core/context.js.map +1 -0
  59. package/dist/core/directive-assign.d.ts +131 -0
  60. package/dist/core/directive-assign.d.ts.map +1 -0
  61. package/dist/core/directive-assign.js +352 -0
  62. package/dist/core/directive-assign.js.map +1 -0
  63. package/dist/core/directives-list.d.ts +80 -0
  64. package/dist/core/directives-list.d.ts.map +1 -0
  65. package/dist/core/directives-list.js +148 -0
  66. package/dist/core/directives-list.js.map +1 -0
  67. package/dist/core/exit-code.d.ts +85 -0
  68. package/dist/core/exit-code.d.ts.map +1 -0
  69. package/dist/core/exit-code.js +163 -0
  70. package/dist/core/exit-code.js.map +1 -0
  71. package/dist/core/git-identity.d.ts +32 -0
  72. package/dist/core/git-identity.d.ts.map +1 -0
  73. package/dist/core/git-identity.js +72 -0
  74. package/dist/core/git-identity.js.map +1 -0
  75. package/dist/core/index.d.ts +388 -0
  76. package/dist/core/index.d.ts.map +1 -0
  77. package/dist/core/index.js +1331 -0
  78. package/dist/core/index.js.map +1 -0
  79. package/dist/core/init.d.ts +78 -0
  80. package/dist/core/init.d.ts.map +1 -0
  81. package/dist/core/init.js +167 -0
  82. package/dist/core/init.js.map +1 -0
  83. package/dist/core/loaders.d.ts +174 -0
  84. package/dist/core/loaders.d.ts.map +1 -0
  85. package/dist/core/loaders.js +364 -0
  86. package/dist/core/loaders.js.map +1 -0
  87. package/dist/core/memory-add-type.d.ts +43 -0
  88. package/dist/core/memory-add-type.d.ts.map +1 -0
  89. package/dist/core/memory-add-type.js +151 -0
  90. package/dist/core/memory-add-type.js.map +1 -0
  91. package/dist/core/memory-transition.d.ts +111 -0
  92. package/dist/core/memory-transition.d.ts.map +1 -0
  93. package/dist/core/memory-transition.js +269 -0
  94. package/dist/core/memory-transition.js.map +1 -0
  95. package/dist/core/registry.d.ts +189 -0
  96. package/dist/core/registry.d.ts.map +1 -0
  97. package/dist/core/registry.js +66 -0
  98. package/dist/core/registry.js.map +1 -0
  99. package/dist/core/relevance.d.ts +86 -0
  100. package/dist/core/relevance.d.ts.map +1 -0
  101. package/dist/core/relevance.js +258 -0
  102. package/dist/core/relevance.js.map +1 -0
  103. package/dist/core/require-reason.d.ts +27 -0
  104. package/dist/core/require-reason.d.ts.map +1 -0
  105. package/dist/core/require-reason.js +95 -0
  106. package/dist/core/require-reason.js.map +1 -0
  107. package/dist/core/types.d.ts +45 -0
  108. package/dist/core/types.d.ts.map +1 -0
  109. package/dist/core/types.js +22 -0
  110. package/dist/core/types.js.map +1 -0
  111. package/dist/core/usage-error.d.ts +20 -0
  112. package/dist/core/usage-error.d.ts.map +1 -0
  113. package/dist/core/usage-error.js +29 -0
  114. package/dist/core/usage-error.js.map +1 -0
  115. package/dist/core/write-guard.d.ts +99 -0
  116. package/dist/core/write-guard.d.ts.map +1 -0
  117. package/dist/core/write-guard.js +247 -0
  118. package/dist/core/write-guard.js.map +1 -0
  119. package/dist/directives/create.d.ts +47 -0
  120. package/dist/directives/create.d.ts.map +1 -0
  121. package/dist/directives/create.js +82 -0
  122. package/dist/directives/create.js.map +1 -0
  123. package/dist/directives/index.d.ts +20 -0
  124. package/dist/directives/index.d.ts.map +1 -0
  125. package/dist/directives/index.js +32 -0
  126. package/dist/directives/index.js.map +1 -0
  127. package/dist/directives/roles-edit.d.ts +53 -0
  128. package/dist/directives/roles-edit.d.ts.map +1 -0
  129. package/dist/directives/roles-edit.js +286 -0
  130. package/dist/directives/roles-edit.js.map +1 -0
  131. package/dist/directives/schema.d.ts +65 -0
  132. package/dist/directives/schema.d.ts.map +1 -0
  133. package/dist/directives/schema.js +68 -0
  134. package/dist/directives/schema.js.map +1 -0
  135. package/dist/dna/edit.d.ts +61 -0
  136. package/dist/dna/edit.d.ts.map +1 -0
  137. package/dist/dna/edit.js +429 -0
  138. package/dist/dna/edit.js.map +1 -0
  139. package/dist/dna/index.d.ts +24 -0
  140. package/dist/dna/index.d.ts.map +1 -0
  141. package/dist/dna/index.js +59 -0
  142. package/dist/dna/index.js.map +1 -0
  143. package/dist/dna/mutate.d.ts +74 -0
  144. package/dist/dna/mutate.d.ts.map +1 -0
  145. package/dist/dna/mutate.js +318 -0
  146. package/dist/dna/mutate.js.map +1 -0
  147. package/dist/dna/path.d.ts +175 -0
  148. package/dist/dna/path.d.ts.map +1 -0
  149. package/dist/dna/path.js +289 -0
  150. package/dist/dna/path.js.map +1 -0
  151. package/dist/dna/roles.d.ts +57 -0
  152. package/dist/dna/roles.d.ts.map +1 -0
  153. package/dist/dna/roles.js +50 -0
  154. package/dist/dna/roles.js.map +1 -0
  155. package/dist/dna/schema.d.ts +172 -0
  156. package/dist/dna/schema.d.ts.map +1 -0
  157. package/dist/dna/schema.js +182 -0
  158. package/dist/dna/schema.js.map +1 -0
  159. package/dist/dna/set.d.ts +145 -0
  160. package/dist/dna/set.d.ts.map +1 -0
  161. package/dist/dna/set.js +428 -0
  162. package/dist/dna/set.js.map +1 -0
  163. package/dist/mcp/dna-resource.d.ts +16 -0
  164. package/dist/mcp/dna-resource.d.ts.map +1 -0
  165. package/dist/mcp/dna-resource.js +56 -0
  166. package/dist/mcp/dna-resource.js.map +1 -0
  167. package/dist/mcp/index.d.ts +49 -0
  168. package/dist/mcp/index.d.ts.map +1 -0
  169. package/dist/mcp/index.js +60 -0
  170. package/dist/mcp/index.js.map +1 -0
  171. package/dist/mcp/memory-resource.d.ts +17 -0
  172. package/dist/mcp/memory-resource.d.ts.map +1 -0
  173. package/dist/mcp/memory-resource.js +133 -0
  174. package/dist/mcp/memory-resource.js.map +1 -0
  175. package/dist/mcp/prompt.d.ts +48 -0
  176. package/dist/mcp/prompt.d.ts.map +1 -0
  177. package/dist/mcp/prompt.js +176 -0
  178. package/dist/mcp/prompt.js.map +1 -0
  179. package/dist/mcp/read-only.d.ts +42 -0
  180. package/dist/mcp/read-only.d.ts.map +1 -0
  181. package/dist/mcp/read-only.js +93 -0
  182. package/dist/mcp/read-only.js.map +1 -0
  183. package/dist/mcp/registrar.d.ts +54 -0
  184. package/dist/mcp/registrar.d.ts.map +1 -0
  185. package/dist/mcp/registrar.js +72 -0
  186. package/dist/mcp/registrar.js.map +1 -0
  187. package/dist/mcp/server.d.ts +58 -0
  188. package/dist/mcp/server.d.ts.map +1 -0
  189. package/dist/mcp/server.js +64 -0
  190. package/dist/mcp/server.js.map +1 -0
  191. package/dist/mcp/workflow-resource.d.ts +17 -0
  192. package/dist/mcp/workflow-resource.d.ts.map +1 -0
  193. package/dist/mcp/workflow-resource.js +63 -0
  194. package/dist/mcp/workflow-resource.js.map +1 -0
  195. package/dist/memory/add.d.ts +50 -0
  196. package/dist/memory/add.d.ts.map +1 -0
  197. package/dist/memory/add.js +131 -0
  198. package/dist/memory/add.js.map +1 -0
  199. package/dist/memory/audit.d.ts +177 -0
  200. package/dist/memory/audit.d.ts.map +1 -0
  201. package/dist/memory/audit.js +287 -0
  202. package/dist/memory/audit.js.map +1 -0
  203. package/dist/memory/commit-message.d.ts +146 -0
  204. package/dist/memory/commit-message.d.ts.map +1 -0
  205. package/dist/memory/commit-message.js +203 -0
  206. package/dist/memory/commit-message.js.map +1 -0
  207. package/dist/memory/entry.d.ts +56 -0
  208. package/dist/memory/entry.d.ts.map +1 -0
  209. package/dist/memory/entry.js +28 -0
  210. package/dist/memory/entry.js.map +1 -0
  211. package/dist/memory/frontmatter-edit.d.ts +68 -0
  212. package/dist/memory/frontmatter-edit.d.ts.map +1 -0
  213. package/dist/memory/frontmatter-edit.js +333 -0
  214. package/dist/memory/frontmatter-edit.js.map +1 -0
  215. package/dist/memory/git-log.d.ts +32 -0
  216. package/dist/memory/git-log.d.ts.map +1 -0
  217. package/dist/memory/git-log.js +100 -0
  218. package/dist/memory/git-log.js.map +1 -0
  219. package/dist/memory/history.d.ts +142 -0
  220. package/dist/memory/history.d.ts.map +1 -0
  221. package/dist/memory/history.js +250 -0
  222. package/dist/memory/history.js.map +1 -0
  223. package/dist/memory/index.d.ts +58 -0
  224. package/dist/memory/index.d.ts.map +1 -0
  225. package/dist/memory/index.js +107 -0
  226. package/dist/memory/index.js.map +1 -0
  227. package/dist/memory/query.d.ts +150 -0
  228. package/dist/memory/query.d.ts.map +1 -0
  229. package/dist/memory/query.js +307 -0
  230. package/dist/memory/query.js.map +1 -0
  231. package/dist/memory/reject.d.ts +11 -0
  232. package/dist/memory/reject.d.ts.map +1 -0
  233. package/dist/memory/reject.js +32 -0
  234. package/dist/memory/reject.js.map +1 -0
  235. package/dist/memory/schema.d.ts +104 -0
  236. package/dist/memory/schema.d.ts.map +1 -0
  237. package/dist/memory/schema.js +161 -0
  238. package/dist/memory/schema.js.map +1 -0
  239. package/dist/memory/state-machine.d.ts +166 -0
  240. package/dist/memory/state-machine.d.ts.map +1 -0
  241. package/dist/memory/state-machine.js +431 -0
  242. package/dist/memory/state-machine.js.map +1 -0
  243. package/dist/memory/submit.d.ts +11 -0
  244. package/dist/memory/submit.d.ts.map +1 -0
  245. package/dist/memory/submit.js +44 -0
  246. package/dist/memory/submit.js.map +1 -0
  247. package/dist/storage/builtin-directives.d.ts +54 -0
  248. package/dist/storage/builtin-directives.d.ts.map +1 -0
  249. package/dist/storage/builtin-directives.js +152 -0
  250. package/dist/storage/builtin-directives.js.map +1 -0
  251. package/dist/storage/commit.d.ts +92 -0
  252. package/dist/storage/commit.d.ts.map +1 -0
  253. package/dist/storage/commit.js +201 -0
  254. package/dist/storage/commit.js.map +1 -0
  255. package/dist/storage/confinement.d.ts +93 -0
  256. package/dist/storage/confinement.d.ts.map +1 -0
  257. package/dist/storage/confinement.js +164 -0
  258. package/dist/storage/confinement.js.map +1 -0
  259. package/dist/storage/document.d.ts +27 -0
  260. package/dist/storage/document.d.ts.map +1 -0
  261. package/dist/storage/document.js +52 -0
  262. package/dist/storage/document.js.map +1 -0
  263. package/dist/storage/errors.d.ts +36 -0
  264. package/dist/storage/errors.d.ts.map +1 -0
  265. package/dist/storage/errors.js +46 -0
  266. package/dist/storage/errors.js.map +1 -0
  267. package/dist/storage/frontmatter.d.ts +27 -0
  268. package/dist/storage/frontmatter.d.ts.map +1 -0
  269. package/dist/storage/frontmatter.js +37 -0
  270. package/dist/storage/frontmatter.js.map +1 -0
  271. package/dist/storage/git-root.d.ts +17 -0
  272. package/dist/storage/git-root.d.ts.map +1 -0
  273. package/dist/storage/git-root.js +49 -0
  274. package/dist/storage/git-root.js.map +1 -0
  275. package/dist/storage/index.d.ts +29 -0
  276. package/dist/storage/index.d.ts.map +1 -0
  277. package/dist/storage/index.js +66 -0
  278. package/dist/storage/index.js.map +1 -0
  279. package/dist/storage/init-state.d.ts +9 -0
  280. package/dist/storage/init-state.d.ts.map +1 -0
  281. package/dist/storage/init-state.js +24 -0
  282. package/dist/storage/init-state.js.map +1 -0
  283. package/dist/storage/layout.d.ts +51 -0
  284. package/dist/storage/layout.d.ts.map +1 -0
  285. package/dist/storage/layout.js +88 -0
  286. package/dist/storage/layout.js.map +1 -0
  287. package/dist/storage/memory-path.d.ts +72 -0
  288. package/dist/storage/memory-path.d.ts.map +1 -0
  289. package/dist/storage/memory-path.js +127 -0
  290. package/dist/storage/memory-path.js.map +1 -0
  291. package/dist/storage/snapshot.d.ts +16 -0
  292. package/dist/storage/snapshot.d.ts.map +1 -0
  293. package/dist/storage/snapshot.js +72 -0
  294. package/dist/storage/snapshot.js.map +1 -0
  295. package/dist/storage/templates.d.ts +88 -0
  296. package/dist/storage/templates.d.ts.map +1 -0
  297. package/dist/storage/templates.js +422 -0
  298. package/dist/storage/templates.js.map +1 -0
  299. package/dist/validation/error-mapper.d.ts +16 -0
  300. package/dist/validation/error-mapper.d.ts.map +1 -0
  301. package/dist/validation/error-mapper.js +18 -0
  302. package/dist/validation/error-mapper.js.map +1 -0
  303. package/dist/validation/errors.d.ts +69 -0
  304. package/dist/validation/errors.d.ts.map +1 -0
  305. package/dist/validation/errors.js +69 -0
  306. package/dist/validation/errors.js.map +1 -0
  307. package/dist/validation/id.d.ts +16 -0
  308. package/dist/validation/id.d.ts.map +1 -0
  309. package/dist/validation/id.js +177 -0
  310. package/dist/validation/id.js.map +1 -0
  311. package/dist/validation/index.d.ts +18 -0
  312. package/dist/validation/index.d.ts.map +1 -0
  313. package/dist/validation/index.js +37 -0
  314. package/dist/validation/index.js.map +1 -0
  315. package/dist/validation/secret-scan.d.ts +129 -0
  316. package/dist/validation/secret-scan.d.ts.map +1 -0
  317. package/dist/validation/secret-scan.js +367 -0
  318. package/dist/validation/secret-scan.js.map +1 -0
  319. package/dist/validation/two-pass.d.ts +24 -0
  320. package/dist/validation/two-pass.d.ts.map +1 -0
  321. package/dist/validation/two-pass.js +24 -0
  322. package/dist/validation/two-pass.js.map +1 -0
  323. package/dist/validation/warning.d.ts +31 -0
  324. package/dist/validation/warning.d.ts.map +1 -0
  325. package/dist/validation/warning.js +81 -0
  326. package/dist/validation/warning.js.map +1 -0
  327. package/dist/validation/yaml.d.ts +9 -0
  328. package/dist/validation/yaml.d.ts.map +1 -0
  329. package/dist/validation/yaml.js +30 -0
  330. package/dist/validation/yaml.js.map +1 -0
  331. package/dist/workflow/index.d.ts +10 -0
  332. package/dist/workflow/index.d.ts.map +1 -0
  333. package/dist/workflow/index.js +16 -0
  334. package/dist/workflow/index.js.map +1 -0
  335. package/dist/workflow/schema.d.ts +89 -0
  336. package/dist/workflow/schema.d.ts.map +1 -0
  337. package/dist/workflow/schema.js +73 -0
  338. package/dist/workflow/schema.js.map +1 -0
  339. package/package.json +78 -0
@@ -0,0 +1,388 @@
1
+ import type { CoreModule } from './registry';
2
+ /** This module's `dna.yaml` name (`core`) — the stable identifier surfaces and tests key it by. */
3
+ export declare const MODULE_NAME: "core";
4
+ export { DIRECTIVES_DIR_PATH, DNA_YAML_PATH, MEMORY_YAML_PATH, ROLES_YAML_PATH, loadDirectives, loadDirectivesAtHead, loadDnaYaml, loadDnaYamlAtHead, loadMemoryYaml, loadMemoryYamlAtHead, loadRolesYaml, loadRolesYamlAtHead, loadWorkflowsYaml, } from './loaders';
5
+ export type { DirectiveFile, WorkflowsLoadResult } from './loaders';
6
+ export { assembleExecutionContext, resolveRoleDirectives, selectDirectivesById } from './context';
7
+ export { buildDirectiveListing, loadDirectiveListing, GLOBAL_ASSIGNMENT, UNASSIGNED_ASSIGNMENT, } from './directives-list';
8
+ export type { DirectiveListEntry, DirectiveListing } from './directives-list';
9
+ export type { DirectiveSelection, ExecutionContext, ExecutionContextElement, ExecutionContextInputs, RoleDirectiveResolution, } from './context';
10
+ export * from './types';
11
+ export * from './registry';
12
+ export * from './exit-code';
13
+ export * from './git-identity';
14
+ export * from './approval-authority';
15
+ export * from './require-reason';
16
+ export * from './builtin-asset';
17
+ export * from './confinement';
18
+ export * from './usage-error';
19
+ export { initWingfoilStorage, initWingfoilProject, WINGFOIL_ALREADY_INITIALIZED } from './init';
20
+ export type { InitStorageValue, InitProjectValue } from './init';
21
+ export { DEFAULT_CONTEXT_LIMITS, filterRelevantMemoryDocuments, NO_RELEVANT_MEMORY_NOTE, } from './relevance';
22
+ export type { ContextLimits, RelevanceElementRef, RelevantMemoryDocument, RelevantMemoryResult, } from './relevance';
23
+ export { commitMemoryTransition, prepareMemoryTransition, verifyCommittedScope } from './memory-transition';
24
+ export type { PreparedMemoryTransition } from './memory-transition';
25
+ export { resolveAddType } from './memory-add-type';
26
+ export type { ResolvedAddType } from './memory-add-type';
27
+ export { CONFIG_WRITE_CONTRACT, committedScopeError, requireAbsentTarget, requireUnmodifiedTarget, requireUnmodifiedTargets, undeclaredCommittedPaths, verifyCommittedPaths, } from './write-guard';
28
+ export type { WriteTargetContract } from './write-guard';
29
+ export { verifyBuiltinTemplates } from './builtin-integrity';
30
+ export type { BuiltinIntegrityFailure, BuiltinTemplateKind, BuiltinTemplateSource } from './builtin-integrity';
31
+ /** Params shared by every operation registered today — all of them are a bare pillar-config read. */
32
+ export interface RootParams {
33
+ readonly root: string;
34
+ }
35
+ /**
36
+ * `wingfoil paths [category]` params (task-028-implement-paths-category) — the same generic seam
37
+ * `dnaShowFn` reads: `positional` is the bare CLI positional (`ParamsContext.positional`,
38
+ * `core/registry.ts` — task-026's single source of truth), interpreted here as the resource-path
39
+ * **category**; `list` is the parsed `--list` flag (`ParamsContext.flags.list`, spread into params by
40
+ * `buildParams`). `category`/`--list` are optional: an omitted category returns the whole `paths`
41
+ * node (what the MCP surface's mechanical zero-argument `wingfoil://paths` Resource gets — it has no
42
+ * per-request parameter, the same limitation `src/mcp/dna-resource.ts` documents for `dnaShow`).
43
+ * `--list` is accepted (spec-008/X_cli-cmds.md's "drill-down") but currently a no-op on the returned
44
+ * value: a DNA `paths` category is already a flat `string[]` with nothing coarser to collapse to, and
45
+ * spec-005-cli-command-contract §4's own worked example (`paths sources --format json` ->
46
+ * `{"category":"sources","paths":[...]}`) shows the full list without `--list` either — so there is
47
+ * no approved "collapsed" shape to switch away from. */
48
+ export interface PathsParams {
49
+ readonly root: string;
50
+ readonly positional?: string;
51
+ readonly list?: boolean;
52
+ }
53
+ /** `wingfoil paths <category>` success shape — spec-005-cli-command-contract §4's worked example,
54
+ * verbatim (`{"category":"sources","paths":["src/cli","src/core"]}`). */
55
+ export interface PathsShowResult {
56
+ readonly category: string;
57
+ readonly paths: readonly string[];
58
+ }
59
+ /**
60
+ * `dna set <path> --value <v>` params (P2.1, task-025-implement-dna-set) — the first mutating
61
+ * operation. `positionals` is the full CLI positional list (`ParamsContext.positionals`,
62
+ * `core/registry.ts`): `positionals[0]` is the dotted path and is the ONLY positional the verb reads.
63
+ *
64
+ * The value moved out of `positionals[1]` into `--value` in `task-093`, per
65
+ * `dl-082-cli-parameter-shape`: a positional carries the identity of the target, an option carries a
66
+ * named attribute of the action. The path is the target; the value was an attribute in positional
67
+ * clothing. See {@link DnaMutationParams} — the four verbs now share one parameter shape.
68
+ */
69
+ export interface DnaSetParams {
70
+ readonly root: string;
71
+ readonly positionals?: readonly string[];
72
+ readonly options?: Readonly<Record<string, string>>;
73
+ }
74
+ /**
75
+ * `dna add|remove|update` params (task-093). The **path** is `positionals[0]` — it identifies the
76
+ * target, and `dl-082-cli-parameter-shape` is the rule that puts a target in a positional. Everything
77
+ * else rides the value-bearing option seam `memory add --type … --title …` established
78
+ * (`ParamsContext.options`, `core/registry.ts`): `--value` is the payload, and every remaining option
79
+ * is a field of the entry the path names. Identical in shape to {@link DnaSetParams}, which is the
80
+ * point — all four DNA verbs state their parameters the same way, and the same way the other nine
81
+ * `memory`/`paths` commands already did (`dl-082` E2).
82
+ */
83
+ export interface DnaMutationParams {
84
+ readonly root: string;
85
+ readonly positionals?: readonly string[];
86
+ readonly options?: Readonly<Record<string, string>>;
87
+ }
88
+ /**
89
+ * The `--entry-<field>` namespace, re-exported from the DNA pillar (`src/dna/path.ts`), which owns it
90
+ * because it owns the derivation: the option set is read off `spec-002`'s entry schemas, and the
91
+ * refusal messages `src/dna/mutate.ts` writes have to spell those options the same way this module
92
+ * registers them. Re-exported rather than moved-and-forgotten so `src/core`'s public surface is
93
+ * unchanged (`spec-006` §1: the pillar is a leaf, and `src/core` is what both adapters import).
94
+ */
95
+ export { DNA_ENTRY_OPTION_PREFIX, dnaEntryOptionName, dnaEntryFieldOfOption } from '../dna/path';
96
+ /**
97
+ * `wingfoil memory add` params (P1.3, task-020-implement-memory-add) — the FIRST Memory-document
98
+ * mutation. `options` is the value-bearing-option seam this task establishes
99
+ * (`ParamsContext.options`, `core/registry.ts`), read as `--type`/`--title`/`--tags`. The MCP surface
100
+ * never populates it (task-030 wires the Tool input schema); a call with no options simply has all
101
+ * three absent, which the required checks below reject as usage errors.
102
+ */
103
+ export interface MemoryAddParams {
104
+ readonly root: string;
105
+ readonly options?: Readonly<Record<string, string>>;
106
+ }
107
+ /**
108
+ * `wingfoil memory search [keyword]` params (P1.5, task-021-implement-memory-search) — reuses
109
+ * task-026's generic bare `ParamsContext.positional` seam for the free-text keyword (mirroring
110
+ * `dna show`'s `section`/`paths`'s `category`) and task-020's value-bearing `ParamsContext.options`
111
+ * seam for the `--tag`/`--status`/`--type` metadata filters (mirroring `memoryAdd`'s `--type`/
112
+ * `--title`/`--tags`). The MCP surface's mechanical zero-argument `wingfoil://memory/search` Resource
113
+ * (spec-006 §3) never populates either field (see `ParamsContext.positional`/`.options`'s own doc
114
+ * comments) — reading it degenerates to the "browse everything, no filter" call {@link memorySearchFn}
115
+ * already treats an omitted keyword as; see this task's Execution Notes for why that is the correct
116
+ * reading of spec-006's already-approved `memorySearch` row, not a workaround.
117
+ */
118
+ export interface MemorySearchParams {
119
+ readonly root: string;
120
+ readonly positional?: string;
121
+ readonly options?: Readonly<Record<string, string>>;
122
+ }
123
+ /**
124
+ * One `wingfoil memory search` result entry — the fields a CLI/MCP consumer needs to identify and
125
+ * open the matched document, without re-reading the file (P1.5; spec-010-memory-frontmatter-schema's
126
+ * base fields). Deliberately drops `searchMemoryDocuments`'s internal `metadataMatch`/`bodyMatch`
127
+ * ranking flags: those exist to DRIVE this task's ordering (REQ-SYS-07), not to be part of its public
128
+ * result shape.
129
+ */
130
+ export interface MemorySearchResultItem {
131
+ readonly path: string;
132
+ readonly id?: string;
133
+ readonly title?: string;
134
+ readonly type?: string;
135
+ readonly status?: string;
136
+ readonly tags: readonly string[];
137
+ }
138
+ /**
139
+ * `memory search` success shape: always the resolved `query` + the ranked `matches`, plus a `message`
140
+ * ONLY when `matches` is empty (P1.5 BDD "Error - query with no matches": zero results is still
141
+ * `coreOk` — exit 0, never a `CoreResult.error` — carrying the exact message "no documents matched the
142
+ * query"). A non-empty result carries no `message` field at all (not an empty string), so a
143
+ * `json`/`yaml` consumer can branch on its mere presence.
144
+ */
145
+ export interface MemorySearchResult {
146
+ readonly query: string;
147
+ readonly matches: readonly MemorySearchResultItem[];
148
+ readonly message?: string;
149
+ }
150
+ /**
151
+ * `wingfoil memory history <id>` params (P1.10, task-049-memory-history). The document id rides the
152
+ * generic bare `ParamsContext.positional` seam (task-026) — spec-008-cli-grammar §7: a command whose
153
+ * noun already scopes the type takes the **bare `<id>`**, never a `<type>:<id>` element-ref, because
154
+ * ids are globally unique per `memory.yaml`'s `id_pattern`. Optional in the type only because the
155
+ * seam itself is: {@link memoryHistoryFn} rejects an absent id as a usage error (exit 2).
156
+ */
157
+ export interface MemoryHistoryParams {
158
+ readonly root: string;
159
+ readonly positional?: string;
160
+ }
161
+ /**
162
+ * One entry of a document's audit trail as `wingfoil memory history` renders it — exactly the four
163
+ * things `P1.10-memory-history.feature` requires of every entry ("author, ISO-8601 timestamp, state
164
+ * change, and reason"), plus the `sha`/`subject`/`operation` that identify the commit it came from.
165
+ *
166
+ * Every field is derived, never stored: `author`/`timestamp` come from git's own `%an`/`%ae`/`%aI`
167
+ * (ADR-007 / P1.2 — the commit supplies the date, never file content), `from`/`to` from the
168
+ * document's own frontmatter `status:` at each commit, and `approver`/`reason` from the commit body's
169
+ * CLAUDE.md §5.1 trailers. `author` and `approver` are rendered in that same trailer notation
170
+ * (`Name <email>`, `Name <email> (role)`) because P1.10 exists to read exactly that convention back.
171
+ *
172
+ * Two independently-nullable fields, and neither is ever filled in by inference:
173
+ *
174
+ * - `approver` is `null` unless the commit carries a well-formed `Approver:` line — so it is null on
175
+ * `add`/`submit` (subject-only by convention) and on `deprecate` (not an approval gate).
176
+ * - `reason` is `null` unless the commit carries a `Reason:` line, read independently of `Approver:`
177
+ * (`parseCommitReason`) so a `deprecate` reason is not lost with the missing approver.
178
+ *
179
+ * `from` is `null` only on the element's creation entry (no prior state to name) — which is what
180
+ * "1 entry describing the creation" in the feature's edge scenario looks like. `to` is `null` only
181
+ * when the commit genuinely has no document to read — before the element's creation, or after a
182
+ * deletion. It used to be `null` at every commit older than a rename too, which was
183
+ * `bug-080-read-status-at-reads-the-current-path-at-pre-rename-commits` and is fixed: the walk now
184
+ * carries each commit's own path and `reconstructMemoryTransitions` reads at it.
185
+ */
186
+ export interface MemoryHistoryEntryView {
187
+ readonly sha: string;
188
+ /** `Name <email>` — git's own author identity for this commit (`%an`/`%ae`). */
189
+ readonly author: string;
190
+ /** ISO-8601 author date (`%aI`), sourced from git, never from the document. */
191
+ readonly timestamp: string;
192
+ /** The CLAUDE.md §5.1 verb this commit's subject declares, or `null` if the subject is not in that shape. */
193
+ readonly operation: string | null;
194
+ /** The state before this commit; `null` on the creation entry. */
195
+ readonly from: string | null;
196
+ /** The state this commit put the document in, read from its frontmatter at that commit. */
197
+ readonly to: string | null;
198
+ /** `Name <email> (role)` from the commit's `Approver:` line, or `null` when it carries none. */
199
+ readonly approver: string | null;
200
+ /** The commit's `Reason:` line, or `null` when it carries none. */
201
+ readonly reason: string | null;
202
+ readonly subject: string;
203
+ }
204
+ /** `memory history` success shape: the resolved document (`id` + root-relative `path`) and its full
205
+ * audit trail, oldest first ("the output lists N entries in chronological order"). */
206
+ export interface MemoryHistoryResult {
207
+ readonly id: string;
208
+ readonly path: string;
209
+ readonly entries: readonly MemoryHistoryEntryView[];
210
+ }
211
+ /**
212
+ * `wingfoil memory submit <id>` params (P1.6, task-045-memory-submit). The document id rides the bare
213
+ * `ParamsContext.positional` seam, per spec-008-cli-grammar §7 (a command whose noun scopes the type
214
+ * takes the bare `<id>`). Optional only because the seam is; an absent id is a usage error.
215
+ */
216
+ export interface MemorySubmitParams {
217
+ readonly root: string;
218
+ readonly positional?: string;
219
+ }
220
+ /** `memory submit` success shape: the document and the transition it went through. */
221
+ export interface MemorySubmitResult {
222
+ readonly id: string;
223
+ /** Root-relative path of the submitted document. */
224
+ readonly path: string;
225
+ readonly from: string;
226
+ readonly to: string;
227
+ }
228
+ /**
229
+ * `wingfoil memory approve <id> --reason <text>` params (P1.7, task-046-memory-approve). The document
230
+ * id rides the bare `ParamsContext.positional` seam (spec-008-cli-grammar §7) and `--reason` the
231
+ * value-bearing `options` seam (`./registry.ts`), the same one `memory add` reads `--type`/`--title`
232
+ * from. Both are optional only because the seams are; {@link memoryApproveFn} refuses either absent.
233
+ */
234
+ export interface MemoryApproveParams {
235
+ readonly root: string;
236
+ readonly positional?: string;
237
+ readonly options?: Readonly<Record<string, string>>;
238
+ }
239
+ /** `memory approve` success shape: the document and the transition it went through. */
240
+ export interface MemoryApproveResult {
241
+ readonly id: string;
242
+ /** Root-relative path of the approved document. */
243
+ readonly path: string;
244
+ readonly from: string;
245
+ readonly to: string;
246
+ }
247
+ /**
248
+ * `wingfoil memory reject <id> --reason <text>` params (P1.8, task-047-memory-reject). The id rides
249
+ * the bare `ParamsContext.positional` seam (spec-008-cli-grammar §7 names
250
+ * `memory reject <id> --reason ...` explicitly); the reason rides task-020's value-bearing
251
+ * `ParamsContext.options` seam, exactly as `memory add`'s `--type`/`--title` do. Both are optional
252
+ * here only because the seams are — {@link memoryRejectFn} refuses either absence as a usage error
253
+ * (exit `2`).
254
+ */
255
+ export interface MemoryRejectParams {
256
+ readonly root: string;
257
+ readonly positional?: string;
258
+ readonly options?: Readonly<Record<string, string>>;
259
+ }
260
+ /** `memory reject` success shape: the document, the transition it went through, and the reason recorded. */
261
+ export interface MemoryRejectResult {
262
+ readonly id: string;
263
+ /** Root-relative path of the rejected document. */
264
+ readonly path: string;
265
+ readonly from: string;
266
+ readonly to: string;
267
+ /** The `--reason` text, exactly as given — the same string written to frontmatter and to the commit body. */
268
+ readonly reason: string;
269
+ }
270
+ /**
271
+ * `wingfoil memory deprecate <id> [--reason <text>]` params (P1.9, task-048-memory-deprecate). The id
272
+ * rides the bare `ParamsContext.positional` seam (`spec-008-cli-grammar` §7 names
273
+ * `memory deprecate <id>` explicitly); the reason rides task-020's value-bearing
274
+ * `ParamsContext.options` seam. Unlike `memory reject`'s, this `--reason` is genuinely OPTIONAL —
275
+ * `spec-008` §2 ("optional elsewhere (e.g. `memory deprecate`)") and
276
+ * `dl-027-req-sec-04-deprecate-reason-scope` option (a), which narrowed REQ-SEC-04 to the approval
277
+ * gates — so {@link memoryDeprecateFn} reads it directly and never calls `requireReason`.
278
+ */
279
+ export interface MemoryDeprecateParams {
280
+ readonly root: string;
281
+ readonly positional?: string;
282
+ readonly options?: Readonly<Record<string, string>>;
283
+ }
284
+ /** `memory deprecate` success shape: the document, the edge it took, and the reason if one was given. */
285
+ export interface MemoryDeprecateResult {
286
+ readonly id: string;
287
+ /** Root-relative path of the deprecated document — still present in the repository (P1.9 sc.1). */
288
+ readonly path: string;
289
+ readonly from: string;
290
+ readonly to: string;
291
+ /** The `--reason` text exactly as given, or `undefined` when the optional flag was omitted. */
292
+ readonly reason?: string;
293
+ }
294
+ /**
295
+ * `wingfoil directive create --name <name>` params (P3.1, task-050-directive-create). The name rides
296
+ * task-020's value-bearing `ParamsContext.options` seam (`core/registry.ts`), read as `--name` —
297
+ * NOT the bare positional seam: `X_cli-cmds.md` and the P3.1 BDD both spell the invocation
298
+ * `wingfoil directive create --name <NAME>`. `options` is optional only because the seam itself is;
299
+ * {@link directiveCreateFn} rejects an absent `--name` as a usage error (exit 2).
300
+ */
301
+ export interface DirectiveCreateParams {
302
+ readonly root: string;
303
+ readonly options?: Readonly<Record<string, string>>;
304
+ }
305
+ /**
306
+ * `wingfoil directives list [--role <role>]` params (P3.4, task-053-directives-list). Reuses
307
+ * task-020's value-bearing `ParamsContext.options` seam for the optional `--role` filter, exactly as
308
+ * `memorySearch`'s `--tag`/`--status`/`--type` do. The MCP surface's mechanical zero-argument
309
+ * `wingfoil://directives/list` Resource never populates it (see `ParamsContext.options`), which
310
+ * degenerates to the unfiltered listing — the right default for a Resource that has no per-request
311
+ * parameter.
312
+ */
313
+ export interface DirectivesListParams {
314
+ readonly root: string;
315
+ readonly options?: Readonly<Record<string, string>>;
316
+ }
317
+ /**
318
+ * `wingfoil directive assign --directive <id>[,<id>...] --role <role>` params (P3.2,
319
+ * task-051-directive-assign; the comma-separated list is P3.7,
320
+ * task-056-role-based-directive-assignment). Both values ride the value-bearing
321
+ * `ParamsContext.options` seam, as `directive create`'s `--name` does — the list travels *inside* the
322
+ * `--directive` value rather than as a repeated flag, because that seam carries one `string` per
323
+ * option name; {@link directiveAssignFn} rejects an absent or id-less one as a usage error (exit 2).
324
+ */
325
+ export interface DirectiveAssignParams {
326
+ readonly root: string;
327
+ readonly options?: Readonly<Record<string, string>>;
328
+ }
329
+ /**
330
+ * `directive assign` success shape: the binding requested and the role's resulting assignment list.
331
+ *
332
+ * `directives` is always a **list** — the ids `--directive` named, trimmed, de-duplicated, in
333
+ * argument order — even for a single-id request. It was `directive: string` while only P3.2 existed
334
+ * (task-051); P3.7 (task-056) widened it rather than varying the payload's shape with the number of
335
+ * ids, which would be hostile to `--format json` consumers and to REQ-SYS-07's "output is a pure
336
+ * function of the input". `[AUTHORING]`: no spec pins this payload — spec-006 §3's row names the
337
+ * operation, not its result type.
338
+ */
339
+ export interface DirectiveAssignResult {
340
+ readonly directives: readonly string[];
341
+ readonly role: string;
342
+ readonly assignments: readonly string[];
343
+ }
344
+ /**
345
+ * `wingfoil directive remove <name>` params (P3.3, task-052-directive-remove). Unlike `directive
346
+ * create`/`directive assign`, the name rides the generic bare `positional` seam (task-026's
347
+ * `ParamsContext.positional`), not `--name`: `X_cli-cmds.md` and the P3.3 BDD both spell the
348
+ * invocation `wingfoil directive remove <NAME>`, and spec-008-cli-grammar §7's bare-`<id>` rule
349
+ * applies — the noun already scopes what the argument is.
350
+ */
351
+ export interface DirectiveRemoveParams {
352
+ readonly root: string;
353
+ readonly positional?: string;
354
+ }
355
+ /** `directive remove` success shape: the name removed and the root-relative path that was deleted. */
356
+ export interface DirectiveRemoveResult {
357
+ readonly name: string;
358
+ readonly path: string;
359
+ }
360
+ /**
361
+ * The production `CoreModule` registry (spec-006 §2, §4). `src/cli`'s command registrar and
362
+ * `src/mcp`'s Tool/Resource registrar both import this exact array — see spec-006 §4.1: "no
363
+ * duplicated or hand-copied operation list in either surface module".
364
+ *
365
+ * SCOPE (task-006-dual-interface-shared-core, see the task's Execution Notes for the full
366
+ * rationale): only the core functions that already legitimately exist are wired in here today —
367
+ * task-004's three read-only per-pillar loaders that have a natural spec-006 §3 counterpart
368
+ * (`dnaShow`, `directivesList`, `workflowList` — all `mutates: false`), plus
369
+ * task-028-implement-paths-category's `paths` (P2.5, `wingfoil paths [category]`) — the first FLAT,
370
+ * no-verb command (`deriveVerb('paths', 'paths') === ''`, spec-008-cli-grammar §1) and the first to
371
+ * declare a `--list` flag (`CoreOperation.flags`, `./registry.ts`); its `category` rides the same
372
+ * generic bare-positional seam `dna show`'s `section` does (task-026's `ParamsContext.positional`),
373
+ * so no per-operation positional metadata is needed here. `loadMemoryYaml`
374
+ * is deliberately NOT registered as a `memory` module operation: it loads the Memory *pillar's own
375
+ * config* (`memory.yaml`'s types/state-machines), a different concept from spec-006 §3's `memory`
376
+ * module (which operates on Memory *documents* — `memoryAdd`, `memorySearch`, ...); registering it
377
+ * under a `memoryXxx` name would misrepresent it as the latter. As of
378
+ * task-025-implement-dna-set the registry has its FIRST mutating operation — `dna.dnaSet`
379
+ * (`mutates: true`, P2.1); `memory.memoryAdd` (P1.3, task-020), `directive.directiveCreate`
380
+ * (P3.1, task-050), `directive.directiveAssign` (P3.2, task-051) and `memory.memorySubmit` (P1.6,
381
+ * task-045) have since joined it, and the remaining spec-006 §3 mutating functions
382
+ * (`memoryApprove`, `directiveRemove`, `workflowStart`, ...) are still later tasks' scope. The
383
+ * REQ-SYS-05 parity test in `test/core/parity.test.ts` runs against this exact array, so it is now a
384
+ * live regression guard: each of those mutating ops must appear as both a CLI command and an MCP
385
+ * Tool, or the diff fails.
386
+ */
387
+ export declare const CORE_MODULES: readonly CoreModule[];
388
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}