brainfile 0.21.2 → 0.22.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 (233) hide show
  1. package/README.md +1 -1
  2. package/dist/__tests__/helpers/mcp-wire.d.ts +2 -0
  3. package/dist/__tests__/helpers/mcp-wire.d.ts.map +1 -1
  4. package/dist/__tests__/helpers/mcp-wire.js +4 -2
  5. package/dist/__tests__/helpers/mcp-wire.js.map +1 -1
  6. package/dist/chunk-CWUTU5VV.mjs +5585 -0
  7. package/dist/chunk-L4WSDMK3.mjs +1973 -0
  8. package/dist/{chunk-7KU2R7QC.mjs → chunk-XFDTTLSW.mjs} +3230 -4322
  9. package/dist/cli.js +7 -1
  10. package/dist/cli.mjs +8078 -5357
  11. package/dist/commands/add.d.ts +4 -0
  12. package/dist/commands/add.d.ts.map +1 -1
  13. package/dist/commands/add.js +68 -72
  14. package/dist/commands/add.js.map +1 -1
  15. package/dist/commands/boards.d.ts +18 -0
  16. package/dist/commands/boards.d.ts.map +1 -0
  17. package/dist/commands/boards.js +166 -0
  18. package/dist/commands/boards.js.map +1 -0
  19. package/dist/commands/brief.d.ts +17 -11
  20. package/dist/commands/brief.d.ts.map +1 -1
  21. package/dist/commands/brief.js +38 -35
  22. package/dist/commands/brief.js.map +1 -1
  23. package/dist/commands/check.d.ts +47 -0
  24. package/dist/commands/check.d.ts.map +1 -0
  25. package/dist/commands/check.js +134 -0
  26. package/dist/commands/check.js.map +1 -0
  27. package/dist/commands/columns.d.ts +48 -0
  28. package/dist/commands/columns.d.ts.map +1 -0
  29. package/dist/commands/columns.js +132 -0
  30. package/dist/commands/columns.js.map +1 -0
  31. package/dist/commands/complete.js +9 -4
  32. package/dist/commands/complete.js.map +1 -1
  33. package/dist/commands/decide.d.ts +72 -0
  34. package/dist/commands/decide.d.ts.map +1 -0
  35. package/dist/commands/decide.js +264 -0
  36. package/dist/commands/decide.js.map +1 -0
  37. package/dist/commands/hooks.d.ts +5 -1
  38. package/dist/commands/hooks.d.ts.map +1 -1
  39. package/dist/commands/hooks.js +10 -11
  40. package/dist/commands/hooks.js.map +1 -1
  41. package/dist/commands/init.d.ts.map +1 -1
  42. package/dist/commands/init.js +8 -0
  43. package/dist/commands/init.js.map +1 -1
  44. package/dist/commands/lint.d.ts +27 -0
  45. package/dist/commands/lint.d.ts.map +1 -1
  46. package/dist/commands/lint.js +127 -20
  47. package/dist/commands/lint.js.map +1 -1
  48. package/dist/commands/list.d.ts +6 -0
  49. package/dist/commands/list.d.ts.map +1 -1
  50. package/dist/commands/list.js +216 -7
  51. package/dist/commands/list.js.map +1 -1
  52. package/dist/commands/log.d.ts +51 -0
  53. package/dist/commands/log.d.ts.map +1 -1
  54. package/dist/commands/log.js +113 -84
  55. package/dist/commands/log.js.map +1 -1
  56. package/dist/commands/mcp.d.ts +5 -2
  57. package/dist/commands/mcp.d.ts.map +1 -1
  58. package/dist/commands/mcp.js +44 -9
  59. package/dist/commands/mcp.js.map +1 -1
  60. package/dist/commands/memory-index.d.ts +34 -0
  61. package/dist/commands/memory-index.d.ts.map +1 -0
  62. package/dist/commands/memory-index.js +135 -0
  63. package/dist/commands/memory-index.js.map +1 -0
  64. package/dist/commands/merge-driver.d.ts +1 -15
  65. package/dist/commands/merge-driver.d.ts.map +1 -1
  66. package/dist/commands/merge-driver.js +8 -134
  67. package/dist/commands/merge-driver.js.map +1 -1
  68. package/dist/commands/migrate-tracked.d.ts +1 -1
  69. package/dist/commands/migrate-tracked.d.ts.map +1 -1
  70. package/dist/commands/migrate-tracked.js +21 -10
  71. package/dist/commands/migrate-tracked.js.map +1 -1
  72. package/dist/commands/patch.d.ts +23 -4
  73. package/dist/commands/patch.d.ts.map +1 -1
  74. package/dist/commands/patch.js +149 -91
  75. package/dist/commands/patch.js.map +1 -1
  76. package/dist/commands/plan.d.ts.map +1 -1
  77. package/dist/commands/plan.js +11 -5
  78. package/dist/commands/plan.js.map +1 -1
  79. package/dist/commands/schema.d.ts +12 -0
  80. package/dist/commands/schema.d.ts.map +1 -1
  81. package/dist/commands/schema.js +28 -10
  82. package/dist/commands/schema.js.map +1 -1
  83. package/dist/commands/search.d.ts +46 -12
  84. package/dist/commands/search.d.ts.map +1 -1
  85. package/dist/commands/search.js +89 -44
  86. package/dist/commands/search.js.map +1 -1
  87. package/dist/commands/show.d.ts.map +1 -1
  88. package/dist/commands/show.js +175 -10
  89. package/dist/commands/show.js.map +1 -1
  90. package/dist/commands/template.d.ts +2 -0
  91. package/dist/commands/template.d.ts.map +1 -1
  92. package/dist/commands/template.js +2 -1
  93. package/dist/commands/template.js.map +1 -1
  94. package/dist/commands/types.d.ts +31 -1
  95. package/dist/commands/types.d.ts.map +1 -1
  96. package/dist/commands/types.js +122 -22
  97. package/dist/commands/types.js.map +1 -1
  98. package/dist/commands/where.d.ts +20 -1
  99. package/dist/commands/where.d.ts.map +1 -1
  100. package/dist/commands/where.js +56 -6
  101. package/dist/commands/where.js.map +1 -1
  102. package/dist/hook.mjs +15 -0
  103. package/dist/hooks/session-start.d.ts +39 -0
  104. package/dist/hooks/session-start.d.ts.map +1 -0
  105. package/dist/hooks/session-start.js +181 -0
  106. package/dist/hooks/session-start.js.map +1 -0
  107. package/dist/lib/contractRunner.d.ts.map +1 -1
  108. package/dist/lib/contractRunner.js +8 -0
  109. package/dist/lib/contractRunner.js.map +1 -1
  110. package/dist/mcp/helpers.d.ts +29 -1
  111. package/dist/mcp/helpers.d.ts.map +1 -1
  112. package/dist/mcp/helpers.js +57 -2
  113. package/dist/mcp/helpers.js.map +1 -1
  114. package/dist/mcp/instructions.d.ts +5 -0
  115. package/dist/mcp/instructions.d.ts.map +1 -0
  116. package/dist/mcp/instructions.js +57 -0
  117. package/dist/mcp/instructions.js.map +1 -0
  118. package/dist/mcp/resources.d.ts +9 -0
  119. package/dist/mcp/resources.d.ts.map +1 -0
  120. package/dist/mcp/resources.js +29 -0
  121. package/dist/mcp/resources.js.map +1 -0
  122. package/dist/mcp/schemas.d.ts +600 -9
  123. package/dist/mcp/schemas.d.ts.map +1 -1
  124. package/dist/mcp/schemas.js +374 -12
  125. package/dist/mcp/schemas.js.map +1 -1
  126. package/dist/mcp/tools/adr_promote_tool.d.ts +7 -0
  127. package/dist/mcp/tools/adr_promote_tool.d.ts.map +1 -0
  128. package/dist/mcp/tools/adr_promote_tool.js +37 -0
  129. package/dist/mcp/tools/adr_promote_tool.js.map +1 -0
  130. package/dist/mcp/tools/board_tool.d.ts +7 -0
  131. package/dist/mcp/tools/board_tool.d.ts.map +1 -0
  132. package/dist/mcp/tools/board_tool.js +61 -0
  133. package/dist/mcp/tools/board_tool.js.map +1 -0
  134. package/dist/mcp/tools/brief_tool.d.ts.map +1 -1
  135. package/dist/mcp/tools/brief_tool.js +13 -5
  136. package/dist/mcp/tools/brief_tool.js.map +1 -1
  137. package/dist/mcp/tools/check_tool.d.ts +6 -0
  138. package/dist/mcp/tools/check_tool.d.ts.map +1 -0
  139. package/dist/mcp/tools/check_tool.js +54 -0
  140. package/dist/mcp/tools/check_tool.js.map +1 -0
  141. package/dist/mcp/tools/columns_tool.d.ts +7 -0
  142. package/dist/mcp/tools/columns_tool.d.ts.map +1 -0
  143. package/dist/mcp/tools/columns_tool.js +94 -0
  144. package/dist/mcp/tools/columns_tool.js.map +1 -0
  145. package/dist/mcp/tools/decide_tool.d.ts +91 -0
  146. package/dist/mcp/tools/decide_tool.d.ts.map +1 -0
  147. package/dist/mcp/tools/decide_tool.js +141 -0
  148. package/dist/mcp/tools/decide_tool.js.map +1 -0
  149. package/dist/mcp/tools/get_task_tool.d.ts.map +1 -1
  150. package/dist/mcp/tools/get_task_tool.js +62 -4
  151. package/dist/mcp/tools/get_task_tool.js.map +1 -1
  152. package/dist/mcp/tools/lint_tool.d.ts +7 -0
  153. package/dist/mcp/tools/lint_tool.d.ts.map +1 -0
  154. package/dist/mcp/tools/lint_tool.js +48 -0
  155. package/dist/mcp/tools/lint_tool.js.map +1 -0
  156. package/dist/mcp/tools/list_tasks_tool.d.ts.map +1 -1
  157. package/dist/mcp/tools/list_tasks_tool.js +132 -15
  158. package/dist/mcp/tools/list_tasks_tool.js.map +1 -1
  159. package/dist/mcp/tools/log_tool.d.ts +4 -0
  160. package/dist/mcp/tools/log_tool.d.ts.map +1 -0
  161. package/dist/mcp/tools/log_tool.js +52 -0
  162. package/dist/mcp/tools/log_tool.js.map +1 -0
  163. package/dist/mcp/tools/note_tool.d.ts +7 -0
  164. package/dist/mcp/tools/note_tool.d.ts.map +1 -0
  165. package/dist/mcp/tools/note_tool.js +39 -0
  166. package/dist/mcp/tools/note_tool.js.map +1 -0
  167. package/dist/mcp/tools/retire_tool.d.ts +4 -0
  168. package/dist/mcp/tools/retire_tool.d.ts.map +1 -0
  169. package/dist/mcp/tools/retire_tool.js +81 -0
  170. package/dist/mcp/tools/retire_tool.js.map +1 -0
  171. package/dist/mcp/tools/search_tool.d.ts.map +1 -1
  172. package/dist/mcp/tools/search_tool.js +36 -19
  173. package/dist/mcp/tools/search_tool.js.map +1 -1
  174. package/dist/mcp/tools/supersede_tool.d.ts +4 -0
  175. package/dist/mcp/tools/supersede_tool.d.ts.map +1 -0
  176. package/dist/mcp/tools/supersede_tool.js +72 -0
  177. package/dist/mcp/tools/supersede_tool.js.map +1 -0
  178. package/dist/mcp/tools/sync_tool.d.ts +9 -0
  179. package/dist/mcp/tools/sync_tool.d.ts.map +1 -0
  180. package/dist/mcp/tools/sync_tool.js +87 -0
  181. package/dist/mcp/tools/sync_tool.js.map +1 -0
  182. package/dist/mcp/tools/task_add_tool.d.ts.map +1 -1
  183. package/dist/mcp/tools/task_add_tool.js +39 -17
  184. package/dist/mcp/tools/task_add_tool.js.map +1 -1
  185. package/dist/mcp/tools/task_complete_tool.d.ts.map +1 -1
  186. package/dist/mcp/tools/task_complete_tool.js +3 -2
  187. package/dist/mcp/tools/task_complete_tool.js.map +1 -1
  188. package/dist/mcp/tools/task_patch_tool.d.ts.map +1 -1
  189. package/dist/mcp/tools/task_patch_tool.js +30 -5
  190. package/dist/mcp/tools/task_patch_tool.js.map +1 -1
  191. package/dist/mcp/tools/template_tool.d.ts +4 -0
  192. package/dist/mcp/tools/template_tool.d.ts.map +1 -0
  193. package/dist/mcp/tools/template_tool.js +70 -0
  194. package/dist/mcp/tools/template_tool.js.map +1 -0
  195. package/dist/mcp/tools/types_tool.d.ts +4 -0
  196. package/dist/mcp/tools/types_tool.d.ts.map +1 -0
  197. package/dist/mcp/tools/types_tool.js +61 -0
  198. package/dist/mcp/tools/types_tool.js.map +1 -0
  199. package/dist/mcp/tools/where_tool.d.ts +4 -0
  200. package/dist/mcp/tools/where_tool.d.ts.map +1 -0
  201. package/dist/mcp/tools/where_tool.js +73 -0
  202. package/dist/mcp/tools/where_tool.js.map +1 -0
  203. package/dist/schemas/board.json +29 -8
  204. package/dist/{tui-3Z7ZJV7M.mjs → tui-D6RMFL6X.mjs} +994 -315
  205. package/dist/utils/board-autosync.d.ts +1 -10
  206. package/dist/utils/board-autosync.d.ts.map +1 -1
  207. package/dist/utils/board-autosync.js +11 -29
  208. package/dist/utils/board-autosync.js.map +1 -1
  209. package/dist/utils/board-commit-hooks.d.ts +8 -0
  210. package/dist/utils/board-commit-hooks.d.ts.map +1 -1
  211. package/dist/utils/board-commit-hooks.js +45 -1
  212. package/dist/utils/board-commit-hooks.js.map +1 -1
  213. package/dist/utils/board-repo.d.ts +1 -119
  214. package/dist/utils/board-repo.d.ts.map +1 -1
  215. package/dist/utils/board-repo.js +43 -571
  216. package/dist/utils/board-repo.js.map +1 -1
  217. package/dist/utils/board-sync.d.ts +3 -123
  218. package/dist/utils/board-sync.d.ts.map +1 -1
  219. package/dist/utils/board-sync.js +34 -551
  220. package/dist/utils/board-sync.js.map +1 -1
  221. package/dist/utils/graph.d.ts +20 -0
  222. package/dist/utils/graph.d.ts.map +1 -0
  223. package/dist/utils/graph.js +61 -0
  224. package/dist/utils/graph.js.map +1 -0
  225. package/dist/utils/related.d.ts +21 -0
  226. package/dist/utils/related.d.ts.map +1 -0
  227. package/dist/utils/related.js +36 -0
  228. package/dist/utils/related.js.map +1 -0
  229. package/package.json +2 -2
  230. package/dist/tui/theme.d.ts +0 -98
  231. package/dist/tui/theme.d.ts.map +0 -1
  232. package/dist/tui/theme.js +0 -141
  233. package/dist/tui/theme.js.map +0 -1
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ /**
3
+ * `brainfile index`: the local index, for operators (spec-11).
4
+ *
5
+ * brainfile index Bring it up to date and say what changed
6
+ * brainfile index --rebuild Drop it and index from scratch
7
+ * brainfile index --status What is in it, without refreshing
8
+ *
9
+ * The index lives at `.brainfile/state/index.db`: local to this machine,
10
+ * gitignored, rebuildable, never the source of truth. Every search, brief
11
+ * and check refreshes it first, so this command is never required.
12
+ *
13
+ * @packageDocumentation
14
+ */
15
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ var desc = Object.getOwnPropertyDescriptor(m, k);
18
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
19
+ desc = { enumerable: true, get: function() { return m[k]; } };
20
+ }
21
+ Object.defineProperty(o, k2, desc);
22
+ }) : (function(o, m, k, k2) {
23
+ if (k2 === undefined) k2 = k;
24
+ o[k2] = m[k];
25
+ }));
26
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
27
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
28
+ }) : function(o, v) {
29
+ o["default"] = v;
30
+ });
31
+ var __importStar = (this && this.__importStar) || (function () {
32
+ var ownKeys = function(o) {
33
+ ownKeys = Object.getOwnPropertyNames || function (o) {
34
+ var ar = [];
35
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
36
+ return ar;
37
+ };
38
+ return ownKeys(o);
39
+ };
40
+ return function (mod) {
41
+ if (mod && mod.__esModule) return mod;
42
+ var result = {};
43
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
44
+ __setModuleDefault(result, mod);
45
+ return result;
46
+ };
47
+ })();
48
+ var __importDefault = (this && this.__importDefault) || function (mod) {
49
+ return (mod && mod.__esModule) ? mod : { "default": mod };
50
+ };
51
+ Object.defineProperty(exports, "__esModule", { value: true });
52
+ exports.indexCommand = indexCommand;
53
+ const fs = __importStar(require("fs"));
54
+ const chalk_1 = __importDefault(require("chalk"));
55
+ const memory_1 = require("@brainfile/core/memory");
56
+ const logger_1 = require("../utils/logger");
57
+ const cli_error_1 = require("../utils/cli-error");
58
+ const brainfile_path_1 = require("../utils/brainfile-path");
59
+ const v2_only_1 = require("../utils/v2-only");
60
+ function unavailableReason() {
61
+ if ((0, memory_1.indexDisabledByEnv)())
62
+ return 'BRAINFILE_INDEX is off';
63
+ return `node:sqlite with FTS5 is not available in Node ${process.versions.node} (it needs Node 22.13 or later)`;
64
+ }
65
+ function indexCommand(options, logger = logger_1.defaultLogger) {
66
+ const filePath = (0, brainfile_path_1.resolveCliBrainfilePath)(options.file);
67
+ (0, v2_only_1.assertV2Brainfile)(filePath);
68
+ const dbPath = (0, memory_1.getIndexPath)(filePath);
69
+ if (!(0, memory_1.sqliteAvailable)()) {
70
+ const result = { success: true, available: false, path: dbPath, action: 'unavailable', reason: unavailableReason() };
71
+ if (options.json)
72
+ logger.log(JSON.stringify(result, null, 2));
73
+ else {
74
+ logger.log(chalk_1.default.yellow(`No local index: ${result.reason}.`));
75
+ logger.log(chalk_1.default.gray('search, brief and check scan the board instead; nothing else changes.'));
76
+ }
77
+ return result;
78
+ }
79
+ if (options.status && !fs.existsSync(dbPath)) {
80
+ const result = { success: true, available: true, path: dbPath, action: 'status' };
81
+ if (options.json)
82
+ logger.log(JSON.stringify(result, null, 2));
83
+ else
84
+ logger.log(chalk_1.default.gray(`No index yet at ${dbPath}; the next search builds it (or run brainfile index).`));
85
+ return result;
86
+ }
87
+ const index = memory_1.MemoryIndex.open(filePath);
88
+ if (!index)
89
+ throw new cli_error_1.CLIError(`Could not open the index at ${dbPath}`);
90
+ try {
91
+ let refresh;
92
+ let action = 'status';
93
+ if (options.rebuild) {
94
+ refresh = index.rebuild();
95
+ action = 'rebuild';
96
+ }
97
+ else if (!options.status) {
98
+ refresh = index.refresh();
99
+ action = 'refresh';
100
+ }
101
+ const status = index.status();
102
+ const result = { success: true, available: true, path: dbPath, action, ...(refresh ? { refresh } : {}), status };
103
+ if (options.json)
104
+ logger.log(JSON.stringify(result, null, 2));
105
+ else
106
+ render(result, logger);
107
+ return result;
108
+ }
109
+ finally {
110
+ index.close();
111
+ }
112
+ }
113
+ function render(result, logger) {
114
+ const status = result.status;
115
+ const r = result.refresh;
116
+ if (r) {
117
+ const verb = result.action === 'rebuild' ? 'Rebuilt' : 'Refreshed';
118
+ if (r.busy) {
119
+ logger.log(chalk_1.default.yellow('Another process is writing the index; showing it as it stands.'));
120
+ }
121
+ else {
122
+ logger.log(chalk_1.default.green(`${verb} in ${r.ms}ms`) + chalk_1.default.gray(` · ${r.added} added, ${r.updated} changed, ${r.removed} removed, ${r.unchanged} unchanged`));
123
+ }
124
+ }
125
+ logger.log(chalk_1.default.bold(`Index: ${status.path}`));
126
+ logger.log(chalk_1.default.gray(` Project: ${status.projectRoot}${r ? ` (listed via ${r.via})` : ''}`));
127
+ const rows = [
128
+ ['Board', 'board'], ['Logs', 'logs'], ['Ledger', 'ledger'], ['Plans', 'plans'], ['Project docs', 'repo'],
129
+ ];
130
+ for (const [label, key] of rows) {
131
+ logger.log(` ${label.padEnd(13)} ${String(status.files[key]).padStart(5)} files ${String(status.chunks[key]).padStart(6)} chunks`);
132
+ }
133
+ logger.log(chalk_1.default.gray(` ${status.totalFiles} files, ${status.totalChunks} chunks, ${(status.sizeBytes / 1024).toFixed(0)} KiB${status.lastRefresh ? `, refreshed ${status.lastRefresh}` : ''}`));
134
+ }
135
+ //# sourceMappingURL=memory-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-index.js","sourceRoot":"","sources":["../../src/commands/memory-index.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,4 @@
1
- type Fields = Record<string, unknown>;
2
- export interface MergeOutcome {
3
- content: string;
4
- /** False when conflict markers remain in the body. */
5
- clean: boolean;
6
- }
7
- /** Field-level last-writer-wins; exported for tests. */
8
- export declare function mergeFields(base: Fields, ours: Fields, theirs: Fields): Fields;
9
- /** Three-way text merge through git, then union-resolve list conflicts. */
10
- export declare function mergeBodies(base: string, ours: string, theirs: string): MergeOutcome;
11
- /** Merge two board documents against their common base. */
12
- export declare function mergeBoardDocuments(base: string, ours: string, theirs: string): MergeOutcome;
13
- /** "column: todo → review; title: …" for the fields that differ; exported for sync. */
14
- export declare function summarizeFieldChanges(before: string, after: string): string;
1
+ export { mergeBodies, mergeBoardDocuments, mergeFields, summarizeFieldChanges, type MergeOutcome, } from '@brainfile/core/repo';
15
2
  export interface MergeDriverOptions {
16
3
  base: string;
17
4
  ours: string;
@@ -22,5 +9,4 @@ export interface MergeDriverOptions {
22
9
  * returns the exit code (0 clean, 1 conflicts remain, 2 usage).
23
10
  */
24
11
  export declare function mergeDriverCommand(options: MergeDriverOptions): number;
25
- export {};
26
12
  //# sourceMappingURL=merge-driver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"merge-driver.d.ts","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"AAkBA,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEtC,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,KAAK,EAAE,OAAO,CAAC;CAChB;AAsBD,wDAAwD;AACxD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAoB9E;AAsBD,2EAA2E;AAC3E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CA+BpF;AAED,2DAA2D;AAC3D,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,CAQ5F;AAED,uFAAuF;AACvF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAU3E;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAMtE"}
1
+ {"version":3,"file":"merge-driver.d.ts","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,qBAAqB,EACrB,KAAK,YAAY,GAClB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAMtE"}
@@ -33,10 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.mergeFields = mergeFields;
37
- exports.mergeBodies = mergeBodies;
38
- exports.mergeBoardDocuments = mergeBoardDocuments;
39
- exports.summarizeFieldChanges = summarizeFieldChanges;
36
+ exports.summarizeFieldChanges = exports.mergeFields = exports.mergeBoardDocuments = exports.mergeBodies = void 0;
40
37
  exports.mergeDriverCommand = mergeDriverCommand;
41
38
  /**
42
39
  * `brainfile merge-driver <base> <ours> <theirs>` — git merge driver for
@@ -51,135 +48,12 @@ exports.mergeDriverCommand = mergeDriverCommand;
51
48
  * keeps git's markers and exits 1 so `sync` can name the file.
52
49
  */
53
50
  const fs = __importStar(require("fs"));
54
- const os = __importStar(require("os"));
55
- const path = __importStar(require("path"));
56
- const child_process_1 = require("child_process");
57
- const core_1 = require("@brainfile/core");
58
- function parseDoc(content) {
59
- const parsed = (0, core_1.parseFrontmatter)(content);
60
- if (!parsed)
61
- return null;
62
- return { data: parsed.data, body: parsed.body };
63
- }
64
- function same(a, b) {
65
- return JSON.stringify(a ?? null) === JSON.stringify(b ?? null);
66
- }
67
- function stamp(data) {
68
- const value = data.updatedAt;
69
- return typeof value === 'string' ? value : '';
70
- }
71
- /** Field-level last-writer-wins; exported for tests. */
72
- function mergeFields(base, ours, theirs) {
73
- const keys = [];
74
- for (const key of [...Object.keys(ours), ...Object.keys(theirs), ...Object.keys(base)]) {
75
- if (!keys.includes(key))
76
- keys.push(key);
77
- }
78
- const oursWins = stamp(ours) > stamp(theirs);
79
- const out = {};
80
- for (const key of keys) {
81
- const b = base[key];
82
- const o = ours[key];
83
- const t = theirs[key];
84
- let pick;
85
- if (same(o, t))
86
- pick = o;
87
- else if (same(b, o))
88
- pick = t;
89
- else if (same(b, t))
90
- pick = o;
91
- else if (key === 'updatedAt')
92
- pick = String(o ?? '') > String(t ?? '') ? o : t;
93
- else
94
- pick = oursWins ? o : t;
95
- if (pick !== undefined)
96
- out[key] = pick;
97
- }
98
- return out;
99
- }
100
- const CONFLICT = /^<{7}[^\n]*\n([\s\S]*?)^={7}\n([\s\S]*?)^>{7}[^\n]*\n?/gm;
101
- const LIST_ITEM = /^\s*[-*]\s+/;
102
- const LEADING_STAMP = /^\s*[-*]\s+(\d{4}-\d{2}-\d{2}T[0-9:.]+Z?)\b/;
103
- function unionLists(ours, theirs) {
104
- const a = ours.split('\n').filter((l) => l.trim().length > 0);
105
- const b = theirs.split('\n').filter((l) => l.trim().length > 0);
106
- if (![...a, ...b].every((l) => LIST_ITEM.test(l)))
107
- return null;
108
- const merged = [...a];
109
- for (const line of b)
110
- if (!merged.includes(line))
111
- merged.push(line);
112
- if (merged.every((l) => LEADING_STAMP.test(l))) {
113
- merged.sort((x, y) => {
114
- const sx = LEADING_STAMP.exec(x)?.[1] ?? '';
115
- const sy = LEADING_STAMP.exec(y)?.[1] ?? '';
116
- return sx < sy ? -1 : sx > sy ? 1 : 0;
117
- });
118
- }
119
- return `${merged.join('\n')}\n`;
120
- }
121
- /** Three-way text merge through git, then union-resolve list conflicts. */
122
- function mergeBodies(base, ours, theirs) {
123
- if (ours === theirs)
124
- return { content: ours, clean: true };
125
- if (base === ours)
126
- return { content: theirs, clean: true };
127
- if (base === theirs)
128
- return { content: ours, clean: true };
129
- const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'brainfile-merge-'));
130
- try {
131
- const files = { base: path.join(dir, 'base'), ours: path.join(dir, 'ours'), theirs: path.join(dir, 'theirs') };
132
- fs.writeFileSync(files.base, base);
133
- fs.writeFileSync(files.ours, ours);
134
- fs.writeFileSync(files.theirs, theirs);
135
- const r = (0, child_process_1.spawnSync)('git', ['merge-file', '-p', '-L', 'ours', '-L', 'base', '-L', 'theirs', files.ours, files.base, files.theirs], {
136
- encoding: 'utf-8',
137
- stdio: ['ignore', 'pipe', 'pipe'],
138
- });
139
- if (r.status === null || r.status < 0) {
140
- return { content: `<<<<<<< ours\n${ours}=======\n${theirs}>>>>>>> theirs\n`, clean: false };
141
- }
142
- if (r.status === 0)
143
- return { content: r.stdout, clean: true };
144
- let clean = true;
145
- const content = r.stdout.replace(CONFLICT, (whole, oursHunk, theirsHunk) => {
146
- const union = unionLists(oursHunk, theirsHunk);
147
- if (union === null) {
148
- clean = false;
149
- return whole;
150
- }
151
- return union;
152
- });
153
- return { content, clean };
154
- }
155
- finally {
156
- fs.rmSync(dir, { recursive: true, force: true });
157
- }
158
- }
159
- /** Merge two board documents against their common base. */
160
- function mergeBoardDocuments(base, ours, theirs) {
161
- const b = parseDoc(base);
162
- const o = parseDoc(ours);
163
- const t = parseDoc(theirs);
164
- if (!o || !t)
165
- return mergeBodies(base, ours, theirs);
166
- const data = mergeFields(b?.data ?? {}, o.data, t.data);
167
- const body = mergeBodies(b?.body ?? '', o.body, t.body);
168
- return { content: (0, core_1.serializeFrontmatter)(data, body.content), clean: body.clean };
169
- }
170
- /** "column: todo → review; title: …" for the fields that differ; exported for sync. */
171
- function summarizeFieldChanges(before, after) {
172
- const b = parseDoc(before)?.data ?? {};
173
- const a = parseDoc(after)?.data ?? {};
174
- const parts = [];
175
- for (const key of Object.keys(a)) {
176
- if (key === 'updatedAt' || same(b[key], a[key]))
177
- continue;
178
- const render = (v) => (typeof v === 'string' ? v : JSON.stringify(v));
179
- parts.push(`${key}: ${b[key] === undefined ? '∅' : render(b[key])} → ${render(a[key])}`);
180
- }
181
- return parts.join('; ');
182
- }
51
+ const repo_1 = require("@brainfile/core/repo");
52
+ var repo_2 = require("@brainfile/core/repo");
53
+ Object.defineProperty(exports, "mergeBodies", { enumerable: true, get: function () { return repo_2.mergeBodies; } });
54
+ Object.defineProperty(exports, "mergeBoardDocuments", { enumerable: true, get: function () { return repo_2.mergeBoardDocuments; } });
55
+ Object.defineProperty(exports, "mergeFields", { enumerable: true, get: function () { return repo_2.mergeFields; } });
56
+ Object.defineProperty(exports, "summarizeFieldChanges", { enumerable: true, get: function () { return repo_2.summarizeFieldChanges; } });
183
57
  /**
184
58
  * Entry point for git: reads the three files, writes the result over `ours`,
185
59
  * returns the exit code (0 clean, 1 conflicts remain, 2 usage).
@@ -188,7 +62,7 @@ function mergeDriverCommand(options) {
188
62
  const read = (p) => (fs.existsSync(p) ? fs.readFileSync(p, 'utf-8') : '');
189
63
  if (!options.ours || !options.theirs)
190
64
  return 2;
191
- const outcome = mergeBoardDocuments(read(options.base), read(options.ours), read(options.theirs));
65
+ const outcome = (0, repo_1.mergeBoardDocuments)(read(options.base), read(options.ours), read(options.theirs));
192
66
  fs.writeFileSync(options.ours, outcome.content, 'utf-8');
193
67
  return outcome.clean ? 0 : 1;
194
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"merge-driver.js","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merge-driver.js","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,gDAMC;AAvCD;;;;;;;;;;;GAWG;AACH,uCAAyB;AACzB,+CAA2D;AAE3D,6CAM8B;AAL5B,mGAAA,WAAW,OAAA;AACX,2GAAA,mBAAmB,OAAA;AACnB,mGAAA,WAAW,OAAA;AACX,6GAAA,qBAAqB,OAAA;AAUvB;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,OAA2B;IAC5D,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAA,0BAAmB,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAClG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export interface MigrateTrackedOptions {
2
2
  dir?: string;
3
- /** After `--to-branch` on a committed board, also commit its removal from the code branch. */
3
+ /** Accepted for compatibility: `--to-branch` now always commits the board's removal from the code branch. */
4
4
  commit?: boolean;
5
5
  }
6
6
  export declare function migrateToBranch(options?: MigrateTrackedOptions): void;
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-tracked.d.ts","sourceRoot":"","sources":["../../src/commands/migrate-tracked.ts"],"names":[],"mappings":"AA+BA,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA0LD,wBAAgB,eAAe,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI,CAuIzE;AAkBD,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI,CAgCxE"}
1
+ {"version":3,"file":"migrate-tracked.d.ts","sourceRoot":"","sources":["../../src/commands/migrate-tracked.ts"],"names":[],"mappings":"AAgCA,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6GAA6G;IAC7G,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA0LD,wBAAgB,eAAe,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI,CA6IzE;AAuBD,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI,CAgCxE"}
@@ -56,6 +56,7 @@ const chalk_1 = __importDefault(require("chalk"));
56
56
  const core_1 = require("@brainfile/core");
57
57
  const board_repo_1 = require("../utils/board-repo");
58
58
  const board_sync_1 = require("../utils/board-sync");
59
+ const repo_1 = require("@brainfile/core/repo");
59
60
  const SKIP_TOP_LEVEL = new Set(['.git']);
60
61
  const STATE_DIR = 'state';
61
62
  function locateBoard(rootDir) {
@@ -248,8 +249,13 @@ function migrateToBranch(options = {}) {
248
249
  const kind = (0, board_repo_1.boardRepoKind)(dotDir);
249
250
  const repoRoot = (0, board_repo_1.gitToplevel)(path.dirname(dotDir));
250
251
  if (kind === 'linked') {
252
+ // Finish what an earlier move left: the code branch may still track an old copy.
253
+ const root = (0, board_repo_1.listWorktrees)(dotDir)[0]?.path;
254
+ const untracked = root ? (0, repo_1.untrackBoardOnCodeBranch)(root) : null;
251
255
  console.log(chalk_1.default.green('Board is already a worktree on its own branch.'));
252
256
  console.log(chalk_1.default.gray(` ${dotDir}`));
257
+ if (untracked)
258
+ printUntracked(untracked);
253
259
  return;
254
260
  }
255
261
  if (!repoRoot) {
@@ -267,10 +273,12 @@ function migrateToBranch(options = {}) {
267
273
  }
268
274
  const branch = (0, board_repo_1.boardBranch)(repoRoot);
269
275
  if ((0, board_repo_1.git)(['rev-parse', '--verify', '--quiet', `refs/heads/${branch}`], repoRoot).ok) {
276
+ // A board already lives on the branch: this folder and it are two boards (spec-15).
270
277
  const checkedOut = (0, board_repo_1.listWorktrees)(repoRoot).find((w) => w.branch === `refs/heads/${branch}`);
271
- throw new Error(checkedOut
272
- ? `Branch '${branch}' is already checked out at ${checkedOut.path}.`
273
- : `Branch '${branch}' already exists. Delete it (git branch -D ${branch}) or set brainfile.branch to another name.`);
278
+ const where = checkedOut ? ` (checked out at ${checkedOut.path})` : '';
279
+ throw new Error(`A board already lives on the '${branch}' branch${where}, so this folder and it are two boards. ` +
280
+ `Compare them with brainfile where, then make them one: brainfile merge-boards refs/heads/${branch} ` +
281
+ `(or brainfile adopt refs/heads/${branch} to take the branch as it is). Nothing was changed.`);
274
282
  }
275
283
  const relDotDir = path.relative(repoRoot, dotDir).split(path.sep).join('/');
276
284
  const trackedOnCodeBranch = (0, board_repo_1.git)(['ls-files', '--error-unmatch', relDotDir], repoRoot).ok;
@@ -365,19 +373,22 @@ function migrateToBranch(options = {}) {
365
373
  console.log(chalk_1.default.gray(' Board changes that were not committed yet came along as one more commit on that branch.'));
366
374
  }
367
375
  if (trackedOnCodeBranch) {
368
- if (options.commit) {
369
- const commit = (0, board_repo_1.git)(['commit', '--quiet', '--no-verify', '-m', `chore: move the board to the ${branch} branch`], repoRoot);
370
- if (!commit.ok)
371
- throw new Error(`Could not commit the removal on the code branch: ${commit.stderr}`);
372
- console.log(chalk_1.default.gray(' The old copy on your code branch was removed in a commit; the board itself is on its own branch.'));
376
+ // One commit on the code branch drops the old copy and ignores the folder;
377
+ // anything else staged stays staged.
378
+ const untracked = (0, repo_1.untrackBoardOnCodeBranch)(repoRoot, relDotDir);
379
+ if (untracked) {
380
+ printUntracked(untracked);
373
381
  }
374
382
  else {
375
- console.log(chalk_1.default.gray(' Your code branch still tracks the old copy. It is staged to be dropped there (the board itself is safe). Commit that:'));
376
- console.log(chalk_1.default.cyan(` git commit -m "chore: move the board to the ${branch} branch"`));
383
+ console.log(chalk_1.default.gray(' Your code branch still tracks the old copy (HEAD is not a branch). It is staged to be dropped; commit that.'));
377
384
  }
378
385
  }
379
386
  printMigratedStory(dotDir, branch);
380
387
  }
388
+ function printUntracked(untracked) {
389
+ console.log(chalk_1.default.gray(` ${untracked.branch} stopped tracking the old copy and ignores .brainfile/, in one commit (${untracked.commit.slice(0, 7)}).`));
390
+ console.log(chalk_1.default.gray(` Push it like any commit: git push (a pull request, if ${untracked.branch} is protected).`));
391
+ }
381
392
  function printMigratedStory(dotDir, branch) {
382
393
  const say = (text = '') => console.log(text ? ` ${text}` : '');
383
394
  say();
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-tracked.js","sourceRoot":"","sources":["../../src/commands/migrate-tracked.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate-tracked.js","sourceRoot":"","sources":["../../src/commands/migrate-tracked.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,36 @@
1
- interface PatchOptions {
1
+ import { type Logger } from '../utils/logger';
2
+ export interface PatchOptions {
2
3
  file: string;
3
- task: string;
4
+ task?: string;
4
5
  title?: string;
5
6
  description?: string;
6
7
  priority?: 'low' | 'medium' | 'high' | 'critical' | 'none';
7
8
  tags?: string;
8
9
  assignee?: string;
9
10
  dueDate?: string;
11
+ /** New parent ID (parentId). */
12
+ parent?: string;
13
+ /** Comma-separated task IDs this task depends on; replaces the list. */
14
+ dependsOn?: string;
15
+ /** Comma-separated decision IDs this work rests on; replaces the list. */
16
+ decisions?: string;
10
17
  clearTags?: boolean;
11
18
  clearAssignee?: boolean;
12
19
  clearDueDate?: boolean;
13
20
  clearPriority?: boolean;
21
+ clearParent?: boolean;
22
+ clearDependsOn?: boolean;
23
+ clearDecisions?: boolean;
14
24
  }
15
- export declare function patchCommand(options: PatchOptions): void;
16
- export {};
25
+ export interface PatchResult {
26
+ success: true;
27
+ taskId: string;
28
+ changes: string[];
29
+ }
30
+ export declare const PATCH_COMMAND_HELP: string;
31
+ /**
32
+ * Partial update of a task's fields.
33
+ * Throws CLIError on failure instead of calling process.exit.
34
+ */
35
+ export declare function patchCommand(options: PatchOptions, logger?: Logger): PatchResult;
17
36
  //# sourceMappingURL=patch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"patch.d.ts","sourceRoot":"","sources":["../../src/commands/patch.ts"],"names":[],"mappings":"AAcA,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAmBD,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,QAwGjD"}
1
+ {"version":3,"file":"patch.d.ts","sourceRoot":"","sources":["../../src/commands/patch.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAiB,MAAM,iBAAiB,CAAC;AAO7D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,eAAO,MAAM,kBAAkB,QAWpB,CAAC;AAyBZ;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,GAAE,MAAsB,GAAG,WAAW,CAkJ/F"}