brainfile 0.19.0 → 0.21.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 (128) hide show
  1. package/README.md +18 -24
  2. package/dist/__tests__/helpers/mcp-wire.d.ts +45 -0
  3. package/dist/__tests__/helpers/mcp-wire.d.ts.map +1 -0
  4. package/dist/__tests__/helpers/mcp-wire.js +133 -0
  5. package/dist/__tests__/helpers/mcp-wire.js.map +1 -0
  6. package/dist/{chunk-YTFLC673.mjs → chunk-FOLBAGJS.mjs} +2483 -1075
  7. package/dist/cli.mjs +2526 -1656
  8. package/dist/commands/adr.d.ts +1 -9
  9. package/dist/commands/adr.d.ts.map +1 -1
  10. package/dist/commands/adr.js +11 -88
  11. package/dist/commands/adr.js.map +1 -1
  12. package/dist/commands/archive.d.ts +2 -5
  13. package/dist/commands/archive.d.ts.map +1 -1
  14. package/dist/commands/archive.js +43 -11
  15. package/dist/commands/archive.js.map +1 -1
  16. package/dist/commands/brief.d.ts +32 -0
  17. package/dist/commands/brief.d.ts.map +1 -0
  18. package/dist/commands/brief.js +161 -0
  19. package/dist/commands/brief.js.map +1 -0
  20. package/dist/commands/complete.js +1 -1
  21. package/dist/commands/complete.js.map +1 -1
  22. package/dist/commands/init.d.ts +14 -0
  23. package/dist/commands/init.d.ts.map +1 -1
  24. package/dist/commands/init.js +115 -15
  25. package/dist/commands/init.js.map +1 -1
  26. package/dist/commands/log.js +31 -18
  27. package/dist/commands/log.js.map +1 -1
  28. package/dist/commands/mcp.d.ts +9 -0
  29. package/dist/commands/mcp.d.ts.map +1 -1
  30. package/dist/commands/mcp.js +72 -17
  31. package/dist/commands/mcp.js.map +1 -1
  32. package/dist/commands/merge-driver.d.ts +26 -0
  33. package/dist/commands/merge-driver.d.ts.map +1 -0
  34. package/dist/commands/merge-driver.js +195 -0
  35. package/dist/commands/merge-driver.js.map +1 -0
  36. package/dist/commands/migrate-tracked.d.ts +8 -0
  37. package/dist/commands/migrate-tracked.d.ts.map +1 -0
  38. package/dist/commands/migrate-tracked.js +428 -0
  39. package/dist/commands/migrate-tracked.js.map +1 -0
  40. package/dist/commands/migrate.d.ts +6 -0
  41. package/dist/commands/migrate.d.ts.map +1 -1
  42. package/dist/commands/migrate.js +19 -12
  43. package/dist/commands/migrate.js.map +1 -1
  44. package/dist/commands/sync.d.ts +16 -0
  45. package/dist/commands/sync.d.ts.map +1 -0
  46. package/dist/commands/sync.js +152 -0
  47. package/dist/commands/sync.js.map +1 -0
  48. package/dist/commands/where.d.ts +21 -0
  49. package/dist/commands/where.d.ts.map +1 -0
  50. package/dist/commands/where.js +135 -0
  51. package/dist/commands/where.js.map +1 -0
  52. package/dist/mcp/helpers.d.ts +8 -0
  53. package/dist/mcp/helpers.d.ts.map +1 -1
  54. package/dist/mcp/helpers.js +44 -0
  55. package/dist/mcp/helpers.js.map +1 -1
  56. package/dist/mcp/schemas.d.ts +297 -0
  57. package/dist/mcp/schemas.d.ts.map +1 -0
  58. package/dist/mcp/schemas.js +328 -0
  59. package/dist/mcp/schemas.js.map +1 -0
  60. package/dist/mcp/tools/brief_tool.d.ts +14 -0
  61. package/dist/mcp/tools/brief_tool.d.ts.map +1 -0
  62. package/dist/mcp/tools/brief_tool.js +96 -0
  63. package/dist/mcp/tools/brief_tool.js.map +1 -0
  64. package/dist/mcp/tools/contract_tool.d.ts.map +1 -1
  65. package/dist/mcp/tools/contract_tool.js +43 -18
  66. package/dist/mcp/tools/contract_tool.js.map +1 -1
  67. package/dist/mcp/tools/get_task_tool.d.ts.map +1 -1
  68. package/dist/mcp/tools/get_task_tool.js +7 -2
  69. package/dist/mcp/tools/get_task_tool.js.map +1 -1
  70. package/dist/mcp/tools/list_tasks_tool.d.ts.map +1 -1
  71. package/dist/mcp/tools/list_tasks_tool.js +9 -3
  72. package/dist/mcp/tools/list_tasks_tool.js.map +1 -1
  73. package/dist/mcp/tools/search_tool.d.ts.map +1 -1
  74. package/dist/mcp/tools/search_tool.js +17 -4
  75. package/dist/mcp/tools/search_tool.js.map +1 -1
  76. package/dist/mcp/tools/subtask_tool.d.ts.map +1 -1
  77. package/dist/mcp/tools/subtask_tool.js +52 -17
  78. package/dist/mcp/tools/subtask_tool.js.map +1 -1
  79. package/dist/mcp/tools/task_add_tool.d.ts.map +1 -1
  80. package/dist/mcp/tools/task_add_tool.js +13 -7
  81. package/dist/mcp/tools/task_add_tool.js.map +1 -1
  82. package/dist/mcp/tools/task_complete_tool.d.ts.map +1 -1
  83. package/dist/mcp/tools/task_complete_tool.js +39 -10
  84. package/dist/mcp/tools/task_complete_tool.js.map +1 -1
  85. package/dist/mcp/tools/task_delete_tool.d.ts.map +1 -1
  86. package/dist/mcp/tools/task_delete_tool.js +12 -6
  87. package/dist/mcp/tools/task_delete_tool.js.map +1 -1
  88. package/dist/mcp/tools/task_move_tool.d.ts.map +1 -1
  89. package/dist/mcp/tools/task_move_tool.js +21 -11
  90. package/dist/mcp/tools/task_move_tool.js.map +1 -1
  91. package/dist/mcp/tools/task_patch_tool.d.ts.map +1 -1
  92. package/dist/mcp/tools/task_patch_tool.js +23 -10
  93. package/dist/mcp/tools/task_patch_tool.js.map +1 -1
  94. package/dist/schemas/board.json +1 -1
  95. package/dist/tui/theme.d.ts +98 -0
  96. package/dist/tui/theme.d.ts.map +1 -0
  97. package/dist/tui/theme.js +141 -0
  98. package/dist/tui/theme.js.map +1 -0
  99. package/dist/{tui-P56H4X7N.mjs → tui-M2KWIG2E.mjs} +1707 -2006
  100. package/dist/utils/board-autosync.d.ts +22 -0
  101. package/dist/utils/board-autosync.d.ts.map +1 -0
  102. package/dist/utils/board-autosync.js +166 -0
  103. package/dist/utils/board-autosync.js.map +1 -0
  104. package/dist/utils/board-commit-hooks.d.ts +12 -0
  105. package/dist/utils/board-commit-hooks.d.ts.map +1 -0
  106. package/dist/utils/board-commit-hooks.js +51 -0
  107. package/dist/utils/board-commit-hooks.js.map +1 -0
  108. package/dist/utils/board-repo.d.ts +108 -0
  109. package/dist/utils/board-repo.d.ts.map +1 -0
  110. package/dist/utils/board-repo.js +501 -0
  111. package/dist/utils/board-repo.js.map +1 -0
  112. package/dist/utils/board-sync.d.ts +111 -0
  113. package/dist/utils/board-sync.d.ts.map +1 -0
  114. package/dist/utils/board-sync.js +469 -0
  115. package/dist/utils/board-sync.js.map +1 -0
  116. package/dist/utils/brainfile-path.d.ts +11 -1
  117. package/dist/utils/brainfile-path.d.ts.map +1 -1
  118. package/dist/utils/brainfile-path.js +39 -2
  119. package/dist/utils/brainfile-path.js.map +1 -1
  120. package/dist/utils/cli-error.d.ts +20 -0
  121. package/dist/utils/cli-error.d.ts.map +1 -1
  122. package/dist/utils/cli-error.js +36 -0
  123. package/dist/utils/cli-error.js.map +1 -1
  124. package/package.json +3 -3
  125. package/dist/commands/rules.d.ts +0 -68
  126. package/dist/commands/rules.d.ts.map +0 -1
  127. package/dist/commands/rules.js +0 -322
  128. package/dist/commands/rules.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"task_complete_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_complete_tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task_complete_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_complete_tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task_delete_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_delete_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAM9D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CA+BnF"}
1
+ {"version":3,"file":"task_delete_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_delete_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAQ9D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAmCnF"}
@@ -34,10 +34,12 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.registerTaskDeleteTool = registerTaskDeleteTool;
37
+ const helpers_1 = require("../helpers");
37
38
  const zod_1 = require("zod");
38
39
  const fs = __importStar(require("fs"));
39
40
  const v2_detect_1 = require("../../utils/v2-detect");
40
- const helpers_1 = require("../helpers");
41
+ const helpers_2 = require("../helpers");
42
+ const schemas_1 = require("../schemas");
41
43
  function registerTaskDeleteTool(server, defaultFile) {
42
44
  server.registerTool('task_delete', {
43
45
  title: 'Delete Task',
@@ -45,10 +47,11 @@ function registerTaskDeleteTool(server, defaultFile) {
45
47
  inputSchema: zod_1.z.object({
46
48
  file: zod_1.z.string().optional().describe('Path to brainfile.md (default: brainfile.md)'),
47
49
  task: zod_1.z.string().describe('Task ID to delete')
48
- })
49
- }, async ({ file, task }) => {
50
+ }),
51
+ outputSchema: schemas_1.taskDeleteOutputSchema
52
+ }, (0, helpers_1.withBoardCommit)('task_delete', defaultFile, async ({ file, task }) => {
50
53
  const filePath = file || defaultFile;
51
- const guard = (0, helpers_1.requireV2)(filePath);
54
+ const guard = (0, helpers_2.requireV2)(filePath);
52
55
  if (guard)
53
56
  return guard;
54
57
  const dirs = (0, v2_detect_1.getV2Dirs)(filePath);
@@ -58,11 +61,14 @@ function registerTaskDeleteTool(server, defaultFile) {
58
61
  }
59
62
  try {
60
63
  fs.unlinkSync(found.filePath);
61
- return { content: [{ type: 'text', text: `Task ${task} deleted successfully` }] };
64
+ return {
65
+ content: [{ type: 'text', text: `Task ${task} deleted successfully` }],
66
+ structuredContent: { id: task, deleted: true },
67
+ };
62
68
  }
63
69
  catch (e) {
64
70
  return { content: [{ type: 'text', text: `Error: ${e.message}` }], isError: true };
65
71
  }
66
- });
72
+ }));
67
73
  }
68
74
  //# sourceMappingURL=task_delete_tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task_delete_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_delete_tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,wDA+BC;AApCD,6BAAwB;AACxB,uCAAyB;AACzB,qDAA8D;AAC9D,wCAAuC;AAEvC,SAAgB,sBAAsB,CAAC,MAAiB,EAAE,WAAmB;IAC3E,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;YACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACpF,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;SAC/C,CAAC;KACT,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAG,IAAI,IAAI,WAAW,CAAC;QAErC,MAAM,KAAK,GAAG,IAAA,mBAAS,EAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAU,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,0BAA0B,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,IAAI,uBAAuB,EAAE,CAAC,EAAE,CAAC;QAC7F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAW,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"task_delete_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_delete_tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,wDAmCC;AA1CD,wCAA6C;AAC7C,6BAAwB;AACxB,uCAAyB;AACzB,qDAA8D;AAC9D,wCAAuC;AACvC,wCAAoD;AAEpD,SAAgB,sBAAsB,CAAC,MAAiB,EAAE,WAAmB;IAC3E,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;YACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACpF,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;SAC/C,CAAC;QACR,YAAY,EAAE,gCAAsB;KACrC,EACD,IAAA,yBAAe,EAAC,aAAa,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QACnE,MAAM,QAAQ,GAAG,IAAI,IAAI,WAAW,CAAC;QAErC,MAAM,KAAK,GAAG,IAAA,mBAAS,EAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,IAAA,sBAAU,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,0BAA0B,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,IAAI,uBAAuB,EAAE,CAAC;gBAC/E,iBAAiB,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAa,EAAE;aACxD,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAW,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzG,CAAC;IACH,CAAC,CACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"task_move_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_move_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAa9D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAkFjF"}
1
+ {"version":3,"file":"task_move_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_move_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAe9D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CA2FjF"}
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerTaskMoveTool = registerTaskMoveTool;
4
+ const helpers_1 = require("../helpers");
4
5
  const zod_1 = require("zod");
5
6
  const core_1 = require("@brainfile/core");
6
7
  const v2_detect_1 = require("../../utils/v2-detect");
7
8
  const core_2 = require("@brainfile/core");
8
9
  const errorHandler_1 = require("../../utils/errorHandler");
9
- const helpers_1 = require("../helpers");
10
+ const helpers_2 = require("../helpers");
11
+ const schemas_1 = require("../schemas");
10
12
  function registerTaskMoveTool(server, defaultFile) {
11
13
  server.registerTool('task_move', {
12
14
  title: 'Move Task',
@@ -16,8 +18,9 @@ function registerTaskMoveTool(server, defaultFile) {
16
18
  taskId: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional().describe('Task ID or array of task IDs to move'),
17
19
  task: zod_1.z.string().optional().describe('Alias of taskId for single task move'),
18
20
  column: zod_1.z.string().describe('Target column ID or name')
19
- })
20
- }, async ({ file, taskId, task, column }) => {
21
+ }),
22
+ outputSchema: schemas_1.taskMoveOutputSchema
23
+ }, (0, helpers_1.withBoardCommit)('task_move', defaultFile, async ({ file, taskId, task, column }) => {
21
24
  const filePath = file || defaultFile;
22
25
  const rawTaskIds = taskId ?? task;
23
26
  if (!rawTaskIds) {
@@ -25,7 +28,7 @@ function registerTaskMoveTool(server, defaultFile) {
25
28
  }
26
29
  const taskIds = Array.isArray(rawTaskIds) ? rawTaskIds : [rawTaskIds];
27
30
  const isBatch = taskIds.length > 1;
28
- const guard = (0, helpers_1.requireV2)(filePath);
31
+ const guard = (0, helpers_2.requireV2)(filePath);
29
32
  if (guard)
30
33
  return guard;
31
34
  const dirs = (0, v2_detect_1.getV2Dirs)(filePath);
@@ -40,7 +43,7 @@ function registerTaskMoveTool(server, defaultFile) {
40
43
  const targetColumnId = targetColumn?.id || column;
41
44
  const columnValidation = (0, core_2.validateColumn)(board, targetColumnId);
42
45
  if (!columnValidation.valid) {
43
- return (0, helpers_1.mcpStructuredError)(columnValidation.error || `Invalid column: ${targetColumnId}`, 'column', targetColumnId);
46
+ return (0, helpers_2.mcpStructuredError)(columnValidation.error || `Invalid column: ${targetColumnId}`, 'column', targetColumnId);
44
47
  }
45
48
  const resolvedTargetColumn = targetColumn || { id: column, title: column };
46
49
  const results = [];
@@ -59,23 +62,30 @@ function registerTaskMoveTool(server, defaultFile) {
59
62
  }
60
63
  results.push({ taskId: id, success: true, message, warning: warning?.warning });
61
64
  }
65
+ const successCount = results.filter(r => r.success).length;
66
+ const failureCount = results.length - successCount;
67
+ // The structured payload is always the batch shape, so agents parse one
68
+ // shape whether they moved one task or ten. Only the text branches.
69
+ const output = { success: failureCount === 0, successCount, failureCount, results };
62
70
  if (!isBatch) {
63
71
  const single = results[0];
64
72
  if (!single?.success) {
65
- return { content: [{ type: 'text', text: `Error: ${single?.error || 'Move failed'}` }], isError: true };
73
+ return {
74
+ content: [{ type: 'text', text: `Error: ${single?.error || 'Move failed'}` }],
75
+ structuredContent: output,
76
+ isError: true,
77
+ };
66
78
  }
67
79
  let text = single.message || `Task ${taskIds[0]} moved`;
68
80
  if (single.warning)
69
81
  text += `\n\n${single.warning}`;
70
- return { content: [{ type: 'text', text }] };
82
+ return { content: [{ type: 'text', text }], structuredContent: output };
71
83
  }
72
- const successCount = results.filter(r => r.success).length;
73
- const failureCount = results.length - successCount;
74
- const output = { success: failureCount === 0, successCount, failureCount, results };
75
84
  return {
76
85
  content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
86
+ structuredContent: output,
77
87
  isError: failureCount > 0 && successCount === 0,
78
88
  };
79
- });
89
+ }));
80
90
  }
81
91
  //# sourceMappingURL=task_move_tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task_move_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_move_tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task_move_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_move_tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task_patch_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_patch_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAY9D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAkFlF"}
1
+ {"version":3,"file":"task_patch_tool.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/task_patch_tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAc9D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CA8FlF"}
@@ -34,11 +34,13 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.registerTaskPatchTool = registerTaskPatchTool;
37
+ const helpers_1 = require("../helpers");
37
38
  const zod_1 = require("zod");
38
39
  const path = __importStar(require("path"));
39
40
  const core_1 = require("@brainfile/core");
40
41
  const v2_detect_1 = require("../../utils/v2-detect");
41
- const helpers_1 = require("../helpers");
42
+ const helpers_2 = require("../helpers");
43
+ const schemas_1 = require("../schemas");
42
44
  function registerTaskPatchTool(server, defaultFile) {
43
45
  server.registerTool('task_patch', {
44
46
  title: 'Patch Task',
@@ -55,8 +57,9 @@ function registerTaskPatchTool(server, defaultFile) {
55
57
  dueDate: zod_1.z.string().nullable().optional().describe('New due date (null to remove)'),
56
58
  relatedFiles: zod_1.z.array(zod_1.z.string()).nullable().optional().describe('Related file paths (null to remove)'),
57
59
  parentId: zod_1.z.string().nullable().optional().describe('Parent task ID (null to remove)')
58
- })
59
- }, async ({ file, taskId, task, title, description, priority, tags, assignee, dueDate, relatedFiles, parentId }) => {
60
+ }),
61
+ outputSchema: schemas_1.taskPatchOutputSchema
62
+ }, (0, helpers_1.withBoardCommit)('task_patch', defaultFile, async ({ file, taskId, task, title, description, priority, tags, assignee, dueDate, relatedFiles, parentId }) => {
60
63
  const filePath = file || defaultFile;
61
64
  const rawTaskIds = taskId ?? task;
62
65
  if (!rawTaskIds) {
@@ -65,7 +68,7 @@ function registerTaskPatchTool(server, defaultFile) {
65
68
  const taskIds = Array.isArray(rawTaskIds) ? rawTaskIds : [rawTaskIds];
66
69
  const isBatch = taskIds.length > 1;
67
70
  const isNull = (v) => v === null || v === 'null';
68
- const guard = (0, helpers_1.requireV2)(filePath);
71
+ const guard = (0, helpers_2.requireV2)(filePath);
69
72
  if (guard)
70
73
  return guard;
71
74
  const dirs = (0, v2_detect_1.getV2Dirs)(filePath);
@@ -94,20 +97,30 @@ function registerTaskPatchTool(server, defaultFile) {
94
97
  }
95
98
  results.push({ taskId: id, success: true });
96
99
  }
100
+ const successCount = results.filter(r => r.success).length;
101
+ const failureCount = results.length - successCount;
102
+ // Always the batch shape, so a single-task patch and a batch patch parse
103
+ // identically. Only the text branches.
104
+ const output = { success: failureCount === 0, successCount, failureCount, results };
97
105
  if (!isBatch) {
98
106
  const single = results[0];
99
107
  if (!single?.success) {
100
- return { content: [{ type: 'text', text: `Error: ${single?.error || 'Task not found'}` }], isError: true };
108
+ return {
109
+ content: [{ type: 'text', text: `Error: ${single?.error || 'Task not found'}` }],
110
+ structuredContent: output,
111
+ isError: true,
112
+ };
101
113
  }
102
- return { content: [{ type: 'text', text: `Task ${taskIds[0]} updated successfully` }] };
114
+ return {
115
+ content: [{ type: 'text', text: `Task ${taskIds[0]} updated successfully` }],
116
+ structuredContent: output,
117
+ };
103
118
  }
104
- const successCount = results.filter(r => r.success).length;
105
- const failureCount = results.length - successCount;
106
- const output = { success: failureCount === 0, successCount, failureCount, results };
107
119
  return {
108
120
  content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
121
+ structuredContent: output,
109
122
  isError: failureCount > 0 && successCount === 0,
110
123
  };
111
- });
124
+ }));
112
125
  }
113
126
  //# sourceMappingURL=task_patch_tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task_patch_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_patch_tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task_patch_tool.js","sourceRoot":"","sources":["../../../src/mcp/tools/task_patch_tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,sDA8FC;AA3GD,wCAA6C;AAC7C,6BAAwB;AACxB,2CAA6B;AAC7B,0CAKyB;AACzB,qDAAkD;AAClD,wCAAuC;AACvC,wCAAmD;AAEnD,SAAgB,qBAAqB,CAAC,MAAiB,EAAE,WAAmB;IAC1E,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,0IAA0I;QACvJ,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;YACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACpF,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YAChH,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YAC9E,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACvD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC1F,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACvH,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACrF,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACpF,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACnF,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YACvG,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SACvF,CAAC;QACR,YAAY,EAAE,+BAAqB;KACpC,EACD,IAAA,yBAAe,EAAC,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE;QACzJ,MAAM,QAAQ,GAAG,IAAI,IAAI,WAAW,CAAC;QACrC,MAAM,UAAU,GAAG,MAAM,IAAI,IAAI,CAAC;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACpG,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnC,MAAM,MAAM,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,MAAM,CAAC;QAE1D,MAAM,KAAK,GAAG,IAAA,mBAAS,EAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,OAAO,GAAgE,EAAE,CAAC;QAEhF,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAA,mBAAY,EAAC,EAAE,CAAC,CAAC,CAAC;YAC5D,MAAM,GAAG,GAAG,IAAA,mBAAgB,EAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBACtE,SAAS;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,CAAI,CAAuB,EAAwB,EAAE,CACpE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAO,CAAC,CAAC;YAE9D,MAAM,MAAM,GAAG,IAAA,oBAAa,EAAC,QAAQ,EAAE;gBACrC,KAAK;gBACL,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC;gBAClC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAA8B;gBACzD,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;gBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;gBAC5B,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;gBAC1B,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC;gBACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;aAC7B,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,gBAAgB,EAAE,CAAC,CAAC;gBACtF,SAAS;YACX,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC3D,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;QACnD,yEAAyE;QACzE,uCAAuC;QACvC,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,YAAY,KAAK,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAEpF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACrB,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,EAAE,KAAK,IAAI,gBAAgB,EAAE,EAAE,CAAC;oBACzF,iBAAiB,EAAE,MAAM;oBACzB,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,QAAQ,OAAO,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC;gBACrF,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YAC3E,iBAAiB,EAAE,MAAM;YACzB,OAAO,EAAE,YAAY,GAAG,CAAC,IAAI,YAAY,KAAK,CAAC;SAChD,CAAC;IACJ,CAAC,CACF,CAAC,CAAC;AACL,CAAC"}
@@ -2,7 +2,7 @@
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://brainfile.md/v1/board.json",
4
4
  "title": "Brainfile Board Schema",
5
- "description": "Schema for Kanban-style task boards. In v2 (per-task file architecture), the board file is config-only: it defines columns, rules, and project metadata. Tasks are standalone .md files in .brainfile/tasks/ (active) and .brainfile/logs/ (completed), each validated against task.json. In v1 (legacy), tasks are embedded in column arrays within this file.",
5
+ "description": "Schema for Kanban-style task boards. In v2 (per-task file architecture), the board file is config-only: it defines columns, document types, and project metadata. Tasks are standalone .md files in .brainfile/tasks/ (active) and .brainfile/logs/ (completed), each validated against task.json. In v1 (legacy), tasks are embedded in column arrays within this file.",
6
6
  "x-brainfile-renderer": "kanban",
7
7
  "x-brainfile-columns-path": "$.columns",
8
8
  "x-brainfile-title-field": "title",
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Brainfile TUI v3 design system.
3
+ *
4
+ * Two rules drive everything here:
5
+ *
6
+ * 1. **Colour is signal only.** Priority, contract state and selection get
7
+ * colour; nothing else does. IDs and metadata are dim, titles are default
8
+ * foreground. There are no decorative accents and no theme colours for
9
+ * "chrome", because v3 has no chrome.
10
+ * 2. **Structure comes from typography.** A document's kind is a single glyph
11
+ * in column 1; hierarchy is two spaces of indent; separation is whitespace.
12
+ * The only box-drawing character that survives is the horizontal rule used
13
+ * for the header and footer boundaries.
14
+ */
15
+ declare const RAW_PALETTE: {
16
+ readonly text: "#ffffff";
17
+ readonly textSecondary: "#a0a0a0";
18
+ readonly textMuted: "#606060";
19
+ readonly textDim: "#404040";
20
+ readonly critical: "#ef4444";
21
+ readonly high: "#f59e0b";
22
+ readonly medium: "#3b82f6";
23
+ readonly low: "#6b7280";
24
+ readonly contractDraft: "#606060";
25
+ readonly contractReady: "#06b6d4";
26
+ readonly contractInProgress: "#eab308";
27
+ readonly contractDelivered: "#c026d3";
28
+ readonly contractDone: "#22c55e";
29
+ readonly contractFailed: "#ef4444";
30
+ readonly success: "#22c55e";
31
+ readonly warning: "#eab308";
32
+ readonly error: "#ef4444";
33
+ readonly info: "#3b82f6";
34
+ readonly accent: "#7c3aed";
35
+ };
36
+ /**
37
+ * `NO_COLOR` (https://no-color.org): any non-empty value disables colour. The
38
+ * empty string is falsy in JS, which happens to be exactly the spec's rule.
39
+ *
40
+ * Gating happens HERE, at the prop layer, rather than by forcing `chalk.level`
41
+ * to 0 globally. Ink still applies `inverse` through `chalk.inverse`, and chalk
42
+ * level 0 (NO_COLOR / FORCE_COLOR=0) is a no-op — so selection also puts a
43
+ * cursor glyph in column 1 of `DocumentRow`. The palette gate keeps colour
44
+ * props `undefined`; the glyph is what a no-colour terminal can actually see.
45
+ *
46
+ * The Proxy means all ~107 `PALETTE.x` call sites need no change, and the check
47
+ * is a plain runtime read at module init, so it survives the esbuild bundle
48
+ * without depending on import order the way a `FORCE_COLOR` shim would.
49
+ */
50
+ export declare function isNoColor(env?: NodeJS.ProcessEnv): boolean;
51
+ /**
52
+ * The palette the views see. Exported as a factory so the gate is testable
53
+ * without module-cache gymnastics — `PALETTE` itself is the one-shot
54
+ * application of it to the real environment.
55
+ */
56
+ export declare function makePalette(noColor: boolean): typeof RAW_PALETTE;
57
+ export declare const NO_COLOR: boolean;
58
+ export declare const PALETTE: typeof RAW_PALETTE;
59
+ /** The only box-drawing character v3 uses: header and footer rules. */
60
+ export declare const RULE = "\u2500";
61
+ /**
62
+ * Document-type glyphs (column 1). A plain task deliberately renders *no*
63
+ * glyph — the blank column is what makes typed documents stand out.
64
+ */
65
+ export declare const TYPE_GLYPHS: Record<string, string>;
66
+ export declare function getTypeGlyph(type?: string): string;
67
+ /**
68
+ * Plain (non-emoji) glyphs used by the chrome-free views. The v2 emoji set
69
+ * (📄 📁 🔍 📦 📋 🗑 …) is gone: emoji have unreliable terminal widths and
70
+ * broke column alignment, which is the whole point of the v3 list.
71
+ */
72
+ export declare const GLYPHS: {
73
+ readonly pointer: "▸";
74
+ readonly cursor: "▌";
75
+ readonly collapsed: "▶";
76
+ readonly success: "✓";
77
+ readonly error: "✗";
78
+ readonly warning: "⚠";
79
+ readonly live: "●";
80
+ readonly subtaskOpen: "◻";
81
+ readonly subtaskDone: "☑";
82
+ readonly orphanParent: "←";
83
+ /** Board-list row glyph for a parent-with-children that is expanded (§A1). */
84
+ readonly parentExpanded: "▾";
85
+ /** Board-list row glyph for a parent-with-children that is collapsed (§A1). */
86
+ readonly parentCollapsed: "▸";
87
+ /** Detail body scroll indicator (§B2), e.g. `↕ 2/9`. */
88
+ readonly scroll: "↕";
89
+ };
90
+ export type ContractState = 'draft' | 'ready' | 'in_progress' | 'delivered' | 'done' | 'failed' | 'blocked';
91
+ /**
92
+ * Contract state → colour. Unlike v2 (which had two divergent, both-incomplete
93
+ * switch statements in TaskCard and TaskDetail) this is the single mapping, and
94
+ * it covers all six states the schema can produce.
95
+ */
96
+ export declare function getContractStateColor(state?: string): string;
97
+ export {};
98
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/tui/theme.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;CA6BP,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,WAAW,CAGhE;AAED,eAAO,MAAM,QAAQ,SAAc,CAAC;AAEpC,eAAO,MAAM,OAAO,EAAE,OAAO,WAAmC,CAAC;AAEjE,uEAAuE;AACvE,eAAO,MAAM,IAAI,WAAM,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM9C,CAAC;AAEF,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAGlD;AAED;;;;GAIG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;IAWjB,8EAA8E;;IAE9E,+EAA+E;;IAE/E,wDAAwD;;CAEhD,CAAC;AAEX,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,OAAO,GACP,aAAa,GACb,WAAW,GACX,MAAM,GACN,QAAQ,GACR,SAAS,CAAC;AAEd;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAiB5D"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ /**
3
+ * Brainfile TUI v3 design system.
4
+ *
5
+ * Two rules drive everything here:
6
+ *
7
+ * 1. **Colour is signal only.** Priority, contract state and selection get
8
+ * colour; nothing else does. IDs and metadata are dim, titles are default
9
+ * foreground. There are no decorative accents and no theme colours for
10
+ * "chrome", because v3 has no chrome.
11
+ * 2. **Structure comes from typography.** A document's kind is a single glyph
12
+ * in column 1; hierarchy is two spaces of indent; separation is whitespace.
13
+ * The only box-drawing character that survives is the horizontal rule used
14
+ * for the header and footer boundaries.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.GLYPHS = exports.TYPE_GLYPHS = exports.RULE = exports.PALETTE = exports.NO_COLOR = void 0;
18
+ exports.isNoColor = isNoColor;
19
+ exports.makePalette = makePalette;
20
+ exports.getTypeGlyph = getTypeGlyph;
21
+ exports.getContractStateColor = getContractStateColor;
22
+ const RAW_PALETTE = {
23
+ // Text hierarchy
24
+ text: '#ffffff',
25
+ textSecondary: '#a0a0a0',
26
+ textMuted: '#606060',
27
+ textDim: '#404040',
28
+ // Priority signal
29
+ critical: '#ef4444',
30
+ high: '#f59e0b',
31
+ medium: '#3b82f6',
32
+ low: '#6b7280',
33
+ // Contract-state signal (design §3: draft dim · ready cyan · in_progress
34
+ // yellow · delivered magenta · done green · failed/blocked red)
35
+ contractDraft: '#606060',
36
+ contractReady: '#06b6d4',
37
+ contractInProgress: '#eab308',
38
+ contractDelivered: '#c026d3',
39
+ contractDone: '#22c55e',
40
+ contractFailed: '#ef4444',
41
+ // Feedback
42
+ success: '#22c55e',
43
+ warning: '#eab308',
44
+ error: '#ef4444',
45
+ info: '#3b82f6',
46
+ accent: '#7c3aed',
47
+ };
48
+ /**
49
+ * `NO_COLOR` (https://no-color.org): any non-empty value disables colour. The
50
+ * empty string is falsy in JS, which happens to be exactly the spec's rule.
51
+ *
52
+ * Gating happens HERE, at the prop layer, rather than by forcing `chalk.level`
53
+ * to 0 globally. Ink still applies `inverse` through `chalk.inverse`, and chalk
54
+ * level 0 (NO_COLOR / FORCE_COLOR=0) is a no-op — so selection also puts a
55
+ * cursor glyph in column 1 of `DocumentRow`. The palette gate keeps colour
56
+ * props `undefined`; the glyph is what a no-colour terminal can actually see.
57
+ *
58
+ * The Proxy means all ~107 `PALETTE.x` call sites need no change, and the check
59
+ * is a plain runtime read at module init, so it survives the esbuild bundle
60
+ * without depending on import order the way a `FORCE_COLOR` shim would.
61
+ */
62
+ function isNoColor(env = process.env) {
63
+ return Boolean(env.NO_COLOR);
64
+ }
65
+ /**
66
+ * The palette the views see. Exported as a factory so the gate is testable
67
+ * without module-cache gymnastics — `PALETTE` itself is the one-shot
68
+ * application of it to the real environment.
69
+ */
70
+ function makePalette(noColor) {
71
+ if (!noColor)
72
+ return RAW_PALETTE;
73
+ return new Proxy(RAW_PALETTE, { get: () => undefined });
74
+ }
75
+ exports.NO_COLOR = isNoColor();
76
+ exports.PALETTE = makePalette(exports.NO_COLOR);
77
+ /** The only box-drawing character v3 uses: header and footer rules. */
78
+ exports.RULE = '─';
79
+ /**
80
+ * Document-type glyphs (column 1). A plain task deliberately renders *no*
81
+ * glyph — the blank column is what makes typed documents stand out.
82
+ */
83
+ exports.TYPE_GLYPHS = {
84
+ epic: '▸',
85
+ spec: '◆',
86
+ adr: '●',
87
+ plan: '⎘',
88
+ task: '',
89
+ };
90
+ function getTypeGlyph(type) {
91
+ if (!type)
92
+ return '';
93
+ return exports.TYPE_GLYPHS[type.toLowerCase()] ?? '';
94
+ }
95
+ /**
96
+ * Plain (non-emoji) glyphs used by the chrome-free views. The v2 emoji set
97
+ * (📄 📁 🔍 📦 📋 🗑 …) is gone: emoji have unreliable terminal widths and
98
+ * broke column alignment, which is the whole point of the v3 list.
99
+ */
100
+ exports.GLYPHS = {
101
+ pointer: '▸',
102
+ cursor: '▌',
103
+ collapsed: '▶',
104
+ success: '✓',
105
+ error: '✗',
106
+ warning: '⚠',
107
+ live: '●',
108
+ subtaskOpen: '◻',
109
+ subtaskDone: '☑',
110
+ orphanParent: '←',
111
+ /** Board-list row glyph for a parent-with-children that is expanded (§A1). */
112
+ parentExpanded: '▾',
113
+ /** Board-list row glyph for a parent-with-children that is collapsed (§A1). */
114
+ parentCollapsed: '▸',
115
+ /** Detail body scroll indicator (§B2), e.g. `↕ 2/9`. */
116
+ scroll: '↕',
117
+ };
118
+ /**
119
+ * Contract state → colour. Unlike v2 (which had two divergent, both-incomplete
120
+ * switch statements in TaskCard and TaskDetail) this is the single mapping, and
121
+ * it covers all six states the schema can produce.
122
+ */
123
+ function getContractStateColor(state) {
124
+ switch (state?.toLowerCase()) {
125
+ case 'ready':
126
+ return exports.PALETTE.contractReady;
127
+ case 'in_progress':
128
+ return exports.PALETTE.contractInProgress;
129
+ case 'delivered':
130
+ return exports.PALETTE.contractDelivered;
131
+ case 'done':
132
+ return exports.PALETTE.contractDone;
133
+ case 'failed':
134
+ case 'blocked':
135
+ return exports.PALETTE.contractFailed;
136
+ case 'draft':
137
+ default:
138
+ return exports.PALETTE.contractDraft;
139
+ }
140
+ }
141
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/tui/theme.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AA+CH,8BAEC;AAOD,kCAGC;AAqBD,oCAGC;AAwCD,sDAiBC;AA1ID,MAAM,WAAW,GAAG;IAClB,iBAAiB;IACjB,IAAI,EAAE,SAAS;IACf,aAAa,EAAE,SAAS;IACxB,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,SAAS;IAElB,kBAAkB;IAClB,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,GAAG,EAAE,SAAS;IAEd,yEAAyE;IACzE,gEAAgE;IAChE,aAAa,EAAE,SAAS;IACxB,aAAa,EAAE,SAAS;IACxB,kBAAkB,EAAE,SAAS;IAC7B,iBAAiB,EAAE,SAAS;IAC5B,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IAEzB,WAAW;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;CAET,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,SAAgB,SAAS,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC5D,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAgB,WAAW,CAAC,OAAgB;IAC1C,IAAI,CAAC,OAAO;QAAE,OAAO,WAAW,CAAC;IACjC,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAkC,CAAC;AAC3F,CAAC;AAEY,QAAA,QAAQ,GAAG,SAAS,EAAE,CAAC;AAEvB,QAAA,OAAO,GAAuB,WAAW,CAAC,gBAAQ,CAAC,CAAC;AAEjE,uEAAuE;AAC1D,QAAA,IAAI,GAAG,GAAG,CAAC;AAExB;;;GAGG;AACU,QAAA,WAAW,GAA2B;IACjD,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,EAAE;CACT,CAAC;AAEF,SAAgB,YAAY,CAAC,IAAa;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,OAAO,mBAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACU,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE,GAAG;IACZ,MAAM,EAAE,GAAG;IACX,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,GAAG;IACZ,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,GAAG;IACT,WAAW,EAAE,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,8EAA8E;IAC9E,cAAc,EAAE,GAAG;IACnB,+EAA+E;IAC/E,eAAe,EAAE,GAAG;IACpB,wDAAwD;IACxD,MAAM,EAAE,GAAG;CACH,CAAC;AAWX;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,KAAc;IAClD,QAAQ,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,eAAO,CAAC,aAAa,CAAC;QAC/B,KAAK,aAAa;YAChB,OAAO,eAAO,CAAC,kBAAkB,CAAC;QACpC,KAAK,WAAW;YACd,OAAO,eAAO,CAAC,iBAAiB,CAAC;QACnC,KAAK,MAAM;YACT,OAAO,eAAO,CAAC,YAAY,CAAC;QAC9B,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,eAAO,CAAC,cAAc,CAAC;QAChC,KAAK,OAAO,CAAC;QACb;YACE,OAAO,eAAO,CAAC,aAAa,CAAC;IACjC,CAAC;AACH,CAAC"}