codingbuddy 4.2.0 → 4.3.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 (124) hide show
  1. package/dist/src/cli/cli.d.ts +2 -2
  2. package/dist/src/cli/cli.js +4 -2
  3. package/dist/src/cli/cli.js.map +1 -1
  4. package/dist/src/cli/cli.types.d.ts +3 -0
  5. package/dist/src/cli/init/prompts/agent-prompt.d.ts +1 -1
  6. package/dist/src/cli/restart-tui.d.ts +9 -0
  7. package/dist/src/cli/restart-tui.js +30 -0
  8. package/dist/src/cli/restart-tui.js.map +1 -0
  9. package/dist/src/cli/run-tui.d.ts +3 -1
  10. package/dist/src/cli/run-tui.js +13 -1
  11. package/dist/src/cli/run-tui.js.map +1 -1
  12. package/dist/src/keyword/keyword.types.d.ts +3 -3
  13. package/dist/src/keyword/keyword.types.js +31 -1
  14. package/dist/src/keyword/keyword.types.js.map +1 -1
  15. package/dist/src/keyword/patterns/backend.patterns.js +10 -0
  16. package/dist/src/keyword/patterns/backend.patterns.js.map +1 -1
  17. package/dist/src/keyword/patterns/context.patterns.js +1 -1
  18. package/dist/src/keyword/patterns/data-science.patterns.d.ts +2 -0
  19. package/dist/src/keyword/patterns/data-science.patterns.js +71 -0
  20. package/dist/src/keyword/patterns/data-science.patterns.js.map +1 -0
  21. package/dist/src/keyword/patterns/index.d.ts +3 -0
  22. package/dist/src/keyword/patterns/index.js +7 -1
  23. package/dist/src/keyword/patterns/index.js.map +1 -1
  24. package/dist/src/keyword/patterns/intent-pattern-checks.js +24 -0
  25. package/dist/src/keyword/patterns/intent-pattern-checks.js.map +1 -1
  26. package/dist/src/keyword/patterns/security.patterns.d.ts +2 -0
  27. package/dist/src/keyword/patterns/security.patterns.js +106 -0
  28. package/dist/src/keyword/patterns/security.patterns.js.map +1 -0
  29. package/dist/src/keyword/patterns/systems.patterns.d.ts +2 -0
  30. package/dist/src/keyword/patterns/systems.patterns.js +101 -0
  31. package/dist/src/keyword/patterns/systems.patterns.js.map +1 -0
  32. package/dist/src/keyword/patterns/test.patterns.d.ts +2 -0
  33. package/dist/src/keyword/patterns/test.patterns.js +71 -0
  34. package/dist/src/keyword/patterns/test.patterns.js.map +1 -0
  35. package/dist/src/keyword/strategies/__tests__/strategy-test.utils.d.ts +1 -1
  36. package/dist/src/keyword/strategies/__tests__/strategy-test.utils.js +4 -0
  37. package/dist/src/keyword/strategies/__tests__/strategy-test.utils.js.map +1 -1
  38. package/dist/src/keyword/strategies/act-agent.strategy.js +2 -2
  39. package/dist/src/keyword/strategies/act-agent.strategy.js.map +1 -1
  40. package/dist/src/mcp/handlers/index.d.ts +1 -0
  41. package/dist/src/mcp/handlers/index.js +3 -1
  42. package/dist/src/mcp/handlers/index.js.map +1 -1
  43. package/dist/src/mcp/handlers/mode.handler.js +15 -1
  44. package/dist/src/mcp/handlers/mode.handler.js.map +1 -1
  45. package/dist/src/mcp/handlers/tui.handler.d.ts +8 -0
  46. package/dist/src/mcp/handlers/tui.handler.js +50 -0
  47. package/dist/src/mcp/handlers/tui.handler.js.map +1 -0
  48. package/dist/src/mcp/mcp.module.js +1 -0
  49. package/dist/src/mcp/mcp.module.js.map +1 -1
  50. package/dist/src/shared/version.d.ts +1 -0
  51. package/dist/src/shared/version.js +5 -0
  52. package/dist/src/shared/version.js.map +1 -0
  53. package/dist/src/shared/version.utils.js +2 -14
  54. package/dist/src/shared/version.utils.js.map +1 -1
  55. package/dist/src/tui/__perf__/rendering-performance.spec.js +4 -4
  56. package/dist/src/tui/__perf__/rendering-performance.spec.js.map +1 -1
  57. package/dist/src/tui/components/ActivityVisualizer.d.ts +7 -3
  58. package/dist/src/tui/components/ActivityVisualizer.js +8 -9
  59. package/dist/src/tui/components/ActivityVisualizer.js.map +1 -1
  60. package/dist/src/tui/components/ActivityVisualizer.spec.js +73 -27
  61. package/dist/src/tui/components/ActivityVisualizer.spec.js.map +1 -1
  62. package/dist/src/tui/components/ChecklistPanel.d.ts +10 -0
  63. package/dist/src/tui/components/ChecklistPanel.js +19 -0
  64. package/dist/src/tui/components/ChecklistPanel.js.map +1 -0
  65. package/dist/src/tui/components/ChecklistPanel.spec.d.ts +1 -0
  66. package/dist/src/tui/components/ChecklistPanel.spec.js +45 -0
  67. package/dist/src/tui/components/ChecklistPanel.spec.js.map +1 -0
  68. package/dist/src/tui/components/FocusedAgentPanel.d.ts +2 -8
  69. package/dist/src/tui/components/FocusedAgentPanel.js +1 -14
  70. package/dist/src/tui/components/FocusedAgentPanel.js.map +1 -1
  71. package/dist/src/tui/components/FocusedAgentPanel.spec.js +20 -51
  72. package/dist/src/tui/components/FocusedAgentPanel.spec.js.map +1 -1
  73. package/dist/src/tui/components/HeaderBar.d.ts +1 -2
  74. package/dist/src/tui/components/HeaderBar.js +3 -7
  75. package/dist/src/tui/components/HeaderBar.js.map +1 -1
  76. package/dist/src/tui/components/HeaderBar.spec.js +13 -13
  77. package/dist/src/tui/components/HeaderBar.spec.js.map +1 -1
  78. package/dist/src/tui/components/StageHealthBar.d.ts +3 -1
  79. package/dist/src/tui/components/StageHealthBar.js +10 -4
  80. package/dist/src/tui/components/StageHealthBar.js.map +1 -1
  81. package/dist/src/tui/components/StageHealthBar.spec.js +21 -7
  82. package/dist/src/tui/components/StageHealthBar.spec.js.map +1 -1
  83. package/dist/src/tui/components/activity-visualizer.pure.d.ts +3 -8
  84. package/dist/src/tui/components/activity-visualizer.pure.js +113 -50
  85. package/dist/src/tui/components/activity-visualizer.pure.js.map +1 -1
  86. package/dist/src/tui/components/checklist-panel.pure.d.ts +2 -0
  87. package/dist/src/tui/components/checklist-panel.pure.js +18 -0
  88. package/dist/src/tui/components/checklist-panel.pure.js.map +1 -0
  89. package/dist/src/tui/components/flow-map.pure.d.ts +2 -2
  90. package/dist/src/tui/components/flow-map.pure.js +120 -29
  91. package/dist/src/tui/components/flow-map.pure.js.map +1 -1
  92. package/dist/src/tui/components/focused-agent.pure.d.ts +0 -14
  93. package/dist/src/tui/components/focused-agent.pure.js +0 -45
  94. package/dist/src/tui/components/focused-agent.pure.js.map +1 -1
  95. package/dist/src/tui/components/grid-layout.pure.js +26 -4
  96. package/dist/src/tui/components/grid-layout.pure.js.map +1 -1
  97. package/dist/src/tui/components/index.d.ts +4 -2
  98. package/dist/src/tui/components/index.js +7 -7
  99. package/dist/src/tui/components/index.js.map +1 -1
  100. package/dist/src/tui/components/stage-health.pure.d.ts +1 -0
  101. package/dist/src/tui/components/stage-health.pure.js +4 -0
  102. package/dist/src/tui/components/stage-health.pure.js.map +1 -1
  103. package/dist/src/tui/dashboard-app.d.ts +2 -1
  104. package/dist/src/tui/dashboard-app.js +12 -15
  105. package/dist/src/tui/dashboard-app.js.map +1 -1
  106. package/dist/src/tui/dashboard-app.spec.js +11 -3
  107. package/dist/src/tui/dashboard-app.spec.js.map +1 -1
  108. package/dist/src/tui/dashboard-types.d.ts +6 -0
  109. package/dist/src/tui/dashboard-types.js +1 -0
  110. package/dist/src/tui/dashboard-types.js.map +1 -1
  111. package/dist/src/tui/eventbus-ui.integration.spec.js +1 -0
  112. package/dist/src/tui/eventbus-ui.integration.spec.js.map +1 -1
  113. package/dist/src/tui/events/parse-agent.js +0 -26
  114. package/dist/src/tui/events/parse-agent.js.map +1 -1
  115. package/dist/src/tui/events/response-event-extractor.js +33 -7
  116. package/dist/src/tui/events/response-event-extractor.js.map +1 -1
  117. package/dist/src/tui/hooks/use-dashboard-state.d.ts +6 -0
  118. package/dist/src/tui/hooks/use-dashboard-state.js +68 -18
  119. package/dist/src/tui/hooks/use-dashboard-state.js.map +1 -1
  120. package/dist/src/tui/multi-session-app.js +6 -1
  121. package/dist/src/tui/multi-session-app.js.map +1 -1
  122. package/dist/src/tui-bundle.mjs +615 -333
  123. package/dist/tsconfig.build.tsbuildinfo +1 -1
  124. package/package.json +3 -3
@@ -4,42 +4,88 @@ const react_1 = require("react");
4
4
  const vitest_1 = require("vitest");
5
5
  const ink_testing_library_1 = require("ink-testing-library");
6
6
  const ActivityVisualizer_1 = require("./ActivityVisualizer");
7
- function makeCalls() {
8
- return [
9
- { agentId: 'architect', toolName: 'Read', timestamp: Date.now(), status: 'completed' },
10
- { agentId: 'architect', toolName: 'Read', timestamp: Date.now(), status: 'completed' },
11
- { agentId: 'architect', toolName: 'Grep', timestamp: Date.now(), status: 'completed' },
12
- { agentId: 'tester', toolName: 'Bash', timestamp: Date.now(), status: 'completed' },
13
- ];
7
+ const dashboard_types_1 = require("../dashboard-types");
8
+ function makeAgents() {
9
+ const agents = new Map();
10
+ agents.set('main-agent', (0, dashboard_types_1.createDefaultDashboardNode)({
11
+ id: 'main-agent',
12
+ name: 'main-agent',
13
+ stage: 'PLAN',
14
+ status: 'running',
15
+ isPrimary: true,
16
+ progress: 50,
17
+ }));
18
+ agents.set('solution-architect', (0, dashboard_types_1.createDefaultDashboardNode)({
19
+ id: 'solution-architect',
20
+ name: 'solution-architect',
21
+ stage: 'PLAN',
22
+ status: 'running',
23
+ isPrimary: false,
24
+ progress: 30,
25
+ }));
26
+ return agents;
14
27
  }
28
+ const focusedAgent = (0, dashboard_types_1.createDefaultDashboardNode)({
29
+ id: 'main-agent',
30
+ name: 'main-agent',
31
+ stage: 'PLAN',
32
+ status: 'running',
33
+ isPrimary: true,
34
+ progress: 50,
35
+ });
36
+ const sampleEdges = [
37
+ { from: 'main-agent', to: 'solution-architect', label: 'delegates', type: 'delegation' },
38
+ ];
39
+ const defaultProps = {
40
+ currentMode: 'PLAN',
41
+ focusedAgent,
42
+ agents: makeAgents(),
43
+ edges: sampleEdges,
44
+ activeSkills: ['brainstorming'],
45
+ objectives: ['Design Activity panels'],
46
+ width: 80,
47
+ height: 10,
48
+ };
15
49
  (0, vitest_1.describe)('tui/components/ActivityVisualizer', () => {
16
50
  (0, vitest_1.it)('renders without crashing with data', () => {
17
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: makeCalls(), currentMode: "PLAN", width: 80, height: 10 }));
51
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
18
52
  (0, vitest_1.expect)(lastFrame()).toBeDefined();
19
53
  });
20
54
  (0, vitest_1.it)('renders without crashing with empty data', () => {
21
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: [], currentMode: null, width: 80, height: 10 }));
55
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps, agents: new Map(), edges: [], activeSkills: [], objectives: [], focusedAgent: null }));
22
56
  (0, vitest_1.expect)(lastFrame()).toBeDefined();
23
57
  });
24
58
  (0, vitest_1.it)('renders without crashing when width=0 or height=0', () => {
25
- (0, vitest_1.expect)(() => (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: [], currentMode: null, width: 0, height: 10 }))).not.toThrow();
26
- (0, vitest_1.expect)(() => (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: [], currentMode: null, width: 80, height: 0 }))).not.toThrow();
27
- });
28
- (0, vitest_1.it)('contains bar chart content when calls exist', () => {
29
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: makeCalls(), currentMode: null, width: 80, height: 10 }));
30
- const frame = lastFrame() ?? '';
31
- (0, vitest_1.expect)(frame).toContain('Activity');
32
- });
33
- (0, vitest_1.it)('contains Live header and tool names when calls exist', () => {
34
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: makeCalls(), currentMode: null, width: 80, height: 10 }));
35
- const frame = lastFrame() ?? '';
36
- (0, vitest_1.expect)(frame).toContain('Live');
37
- });
38
- (0, vitest_1.it)('shows current mode in live panel', () => {
39
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { toolCalls: makeCalls(), currentMode: "ACT", width: 80, height: 10 }));
40
- const frame = lastFrame() ?? '';
41
- (0, vitest_1.expect)(frame).toContain('Mode');
42
- (0, vitest_1.expect)(frame).toContain('ACT');
59
+ (0, vitest_1.expect)(() => (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps, width: 0 }))).not.toThrow();
60
+ (0, vitest_1.expect)(() => (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps, height: 0 }))).not.toThrow();
61
+ });
62
+ (0, vitest_1.it)('contains Activity header in left panel', () => {
63
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
64
+ (0, vitest_1.expect)(lastFrame() ?? '').toContain('Activity');
65
+ });
66
+ (0, vitest_1.it)('contains Live header in right panel', () => {
67
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
68
+ (0, vitest_1.expect)(lastFrame() ?? '').toContain('Live');
69
+ });
70
+ (0, vitest_1.it)('shows agent name in tree', () => {
71
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
72
+ (0, vitest_1.expect)(lastFrame() ?? '').toContain('main-agent');
73
+ });
74
+ (0, vitest_1.it)('shows current mode in status card', () => {
75
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
76
+ (0, vitest_1.expect)(lastFrame() ?? '').toContain('PLAN');
77
+ });
78
+ (0, vitest_1.it)('shows focused agent name in status card', () => {
79
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
80
+ (0, vitest_1.expect)(lastFrame() ?? '').toContain('main-agent');
81
+ });
82
+ (0, vitest_1.it)('does NOT contain old Agents roster header', () => {
83
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
84
+ (0, vitest_1.expect)(lastFrame() ?? '').not.toContain('🤖 Agents');
85
+ });
86
+ (0, vitest_1.it)('does NOT contain old Events header', () => {
87
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ActivityVisualizer_1.ActivityVisualizer, { ...defaultProps }));
88
+ (0, vitest_1.expect)(lastFrame() ?? '').not.toContain('📋 Events');
43
89
  });
44
90
  });
45
91
  //# sourceMappingURL=ActivityVisualizer.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActivityVisualizer.spec.js","sourceRoot":"","sources":["../../../../src/tui/components/ActivityVisualizer.spec.tsx"],"names":[],"mappings":";;AAAA,iCAA0B;AAC1B,mCAA8C;AAC9C,6DAA6C;AAC7C,6DAA0D;AAG1D,SAAS,SAAS;IAChB,OAAO;QACL,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;QACtF,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;QACtF,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;QACtF,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;KACpF,CAAC;AACJ,CAAC;AAED,IAAA,iBAAQ,EAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,IAAA,WAAE,EAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,4BAAM,EAC1B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS,EAAE,EAAE,WAAW,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,CACzF,CAAC;QACF,IAAA,eAAM,EAAC,SAAS,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,4BAAM,EAC1B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,CAChF,CAAC;QACF,IAAA,eAAM,EAAC,SAAS,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,IAAA,eAAM,EAAC,GAAG,EAAE,CACV,IAAA,4BAAM,EAAC,8BAAC,uCAAkB,IAAC,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,GAAI,CAAC,CACvF,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,IAAA,eAAM,EAAC,GAAG,EAAE,CACV,IAAA,4BAAM,EAAC,8BAAC,uCAAkB,IAAC,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,GAAI,CAAC,CACvF,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,4BAAM,EAC1B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,CACzF,CAAC;QACF,MAAM,KAAK,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;QAChC,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,4BAAM,EAC1B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,CACzF,CAAC;QACF,MAAM,KAAK,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;QAChC,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,4BAAM,EAC1B,8BAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS,EAAE,EAAE,WAAW,EAAC,KAAK,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,CACxF,CAAC;QACF,MAAM,KAAK,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;QAChC,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ActivityVisualizer.spec.js","sourceRoot":"","sources":["../../../../src/tui/components/ActivityVisualizer.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { TaskItem } from '../dashboard-types';
3
+ export interface ChecklistPanelProps {
4
+ tasks: TaskItem[];
5
+ contextDecisions?: string[];
6
+ contextNotes?: string[];
7
+ width?: number;
8
+ height?: number;
9
+ }
10
+ export declare function ChecklistPanel({ tasks, contextDecisions, contextNotes, width, height, }: ChecklistPanelProps): React.ReactElement;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChecklistPanel = ChecklistPanel;
4
+ const react_1 = require("react");
5
+ const ink_1 = require("ink");
6
+ const checklist_panel_pure_1 = require("./checklist-panel.pure");
7
+ const focused_agent_pure_1 = require("./focused-agent.pure");
8
+ const theme_1 = require("../utils/theme");
9
+ function ChecklistPanel({ tasks, contextDecisions = [], contextNotes = [], width, height, }) {
10
+ const resolvedTasks = (0, checklist_panel_pure_1.resolveChecklistTasks)(tasks, contextDecisions, contextNotes);
11
+ const checklist = (0, focused_agent_pure_1.formatEnhancedChecklist)(resolvedTasks);
12
+ return (react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: theme_1.BORDER_COLORS.panel, flexDirection: "column", width: width, height: height },
13
+ react_1.default.createElement(ink_1.Text, { bold: true, dimColor: true }, "\u2500\u2500\u2500 Checklist"),
14
+ checklist.split('\n').map((line, i) => {
15
+ const isCompleted = line.includes('✔');
16
+ return (react_1.default.createElement(ink_1.Text, { key: i, color: isCompleted ? 'green' : undefined }, line));
17
+ })));
18
+ }
19
+ //# sourceMappingURL=ChecklistPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChecklistPanel.js","sourceRoot":"","sources":["../../../../src/tui/components/ChecklistPanel.tsx"],"names":[],"mappings":";;AAeA,wCA+BC;AA9CD,iCAA0B;AAC1B,6BAAgC;AAChC,iEAA+D;AAC/D,6DAA+D;AAC/D,0CAA+C;AAW/C,SAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,gBAAgB,GAAG,EAAE,EACrB,YAAY,GAAG,EAAE,EACjB,KAAK,EACL,MAAM,GACc;IACpB,MAAM,aAAa,GAAG,IAAA,4CAAqB,EAAC,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACnF,MAAM,SAAS,GAAG,IAAA,4CAAuB,EAAC,aAAa,CAAC,CAAC;IAEzD,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,qBAAa,CAAC,KAAK,EAChC,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM;QAEd,8BAAC,UAAI,IAAC,IAAI,QAAC,QAAQ,yCAEZ;QACN,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,CACL,8BAAC,UAAI,IAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IACnD,IAAI,CACA,CACR,CAAC;QACJ,CAAC,CAAC,CACE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const react_1 = require("react");
4
+ const vitest_1 = require("vitest");
5
+ const ink_testing_library_1 = require("ink-testing-library");
6
+ const ChecklistPanel_1 = require("./ChecklistPanel");
7
+ (0, vitest_1.describe)('tui/components/ChecklistPanel', () => {
8
+ (0, vitest_1.it)('tasks가 있을 때 체크리스트를 렌더링한다', () => {
9
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [
10
+ { id: '1', subject: 'routes added', completed: true },
11
+ { id: '2', subject: 'tests updated', completed: false },
12
+ ] }));
13
+ const frame = lastFrame() ?? '';
14
+ (0, vitest_1.expect)(frame).toContain('✔ routes added');
15
+ (0, vitest_1.expect)(frame).toContain('◻ tests updated');
16
+ });
17
+ (0, vitest_1.it)('tasks가 비어있고 contextDecisions가 있으면 fallback을 렌더링한다', () => {
18
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [], contextDecisions: ['Use JWT for auth'], contextNotes: [] }));
19
+ (0, vitest_1.expect)(lastFrame()).toContain('Use JWT for auth');
20
+ });
21
+ (0, vitest_1.it)('tasks가 비어있고 contextNotes만 있으면 note fallback을 렌더링한다', () => {
22
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [], contextDecisions: [], contextNotes: ['Review existing codebase'] }));
23
+ (0, vitest_1.expect)(lastFrame()).toContain('Review existing codebase');
24
+ });
25
+ (0, vitest_1.it)('모두 비어있으면 기본 fallback을 렌더링한다', () => {
26
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [], contextDecisions: [], contextNotes: [] }));
27
+ (0, vitest_1.expect)(lastFrame()).toContain('Review current task objectives');
28
+ });
29
+ (0, vitest_1.it)('패널이 비어있지 않다 - 항상 최소 1개 항목 표시', () => {
30
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [] }));
31
+ const frame = lastFrame() ?? '';
32
+ (0, vitest_1.expect)(frame).toContain('Review current task objectives');
33
+ });
34
+ (0, vitest_1.it)('border와 Checklist 헤더를 렌더링한다', () => {
35
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [{ id: '1', subject: 'task', completed: false }] }));
36
+ const frame = lastFrame() ?? '';
37
+ (0, vitest_1.expect)(frame).toContain('┌');
38
+ (0, vitest_1.expect)(frame).toContain('Checklist');
39
+ });
40
+ (0, vitest_1.it)('width, height props를 수용한다', () => {
41
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(ChecklistPanel_1.ChecklistPanel, { tasks: [{ id: '1', subject: 'task', completed: false }], width: 60, height: 8 }));
42
+ (0, vitest_1.expect)(lastFrame()).toContain('task');
43
+ });
44
+ });
45
+ //# sourceMappingURL=ChecklistPanel.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChecklistPanel.spec.js","sourceRoot":"","sources":["../../../../src/tui/components/ChecklistPanel.spec.tsx"],"names":[],"mappings":"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"}
@@ -1,19 +1,13 @@
1
1
  import React from 'react';
2
- import type { DashboardNode, TaskItem, EventLogEntry, ToolCallRecord } from '../dashboard-types';
3
- import { type ToolIOData } from './focused-agent.pure';
2
+ import type { DashboardNode, EventLogEntry } from '../dashboard-types';
4
3
  export interface FocusedAgentPanelProps {
5
4
  agent: DashboardNode | null;
6
5
  objectives: string[];
7
6
  activeSkills: string[];
8
- tasks: TaskItem[];
9
- tools: string[];
10
- inputs: string[];
11
- outputs: ToolIOData;
12
7
  eventLog: EventLogEntry[];
13
- toolCalls: ToolCallRecord[];
14
8
  contextDecisions?: string[];
15
9
  contextNotes?: string[];
16
10
  width?: number;
17
11
  height?: number;
18
12
  }
19
- export declare function FocusedAgentPanel({ agent, objectives, activeSkills, tasks, tools, inputs, outputs, eventLog, toolCalls, contextDecisions, contextNotes, width, height, }: FocusedAgentPanelProps): React.ReactElement;
13
+ export declare function FocusedAgentPanel({ agent, objectives, activeSkills, eventLog, contextDecisions, contextNotes, width, height, }: FocusedAgentPanelProps): React.ReactElement;
@@ -25,7 +25,7 @@ function LogSection({ logs, eventLog, }) {
25
25
  react_1.default.createElement(ink_1.Text, { color: isError ? 'red' : undefined }, message)));
26
26
  })));
27
27
  }
28
- function FocusedAgentPanel({ agent, objectives, activeSkills, tasks, tools, inputs, outputs, eventLog, toolCalls, contextDecisions = [], contextNotes = [], width, height, }) {
28
+ function FocusedAgentPanel({ agent, objectives, activeSkills, eventLog, contextDecisions = [], contextNotes = [], width, height, }) {
29
29
  if (!agent) {
30
30
  return (react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: theme_1.BORDER_COLORS.panel, flexDirection: "column", width: width, height: height },
31
31
  react_1.default.createElement(ink_1.Text, { dimColor: true }, "No agent focused")));
@@ -36,11 +36,7 @@ function FocusedAgentPanel({ agent, objectives, activeSkills, tasks, tools, inpu
36
36
  const statusLabel = agent.status.toUpperCase();
37
37
  const progressBar = (0, focused_agent_pure_1.formatEnhancedProgressBar)(agent.progress);
38
38
  const objective = (0, focused_agent_pure_1.formatObjective)(objectives);
39
- const checklist = (0, focused_agent_pure_1.formatEnhancedChecklist)(tasks);
40
- const toolIO = (0, focused_agent_pure_1.formatToolIO)(tools, inputs, outputs);
41
39
  const logs = (0, focused_agent_pure_1.formatLogTail)(eventLog);
42
- const agentToolCalls = toolCalls.filter(tc => tc.agentId === agent.id);
43
- const sparkline = (0, focused_agent_pure_1.formatActivitySparkline)(agentToolCalls);
44
40
  return (react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: theme_1.BORDER_COLORS.panel, flexDirection: "column", width: width, height: height },
45
41
  react_1.default.createElement(ink_1.Box, { gap: 2 },
46
42
  react_1.default.createElement(ink_1.Text, null, avatar),
@@ -57,15 +53,6 @@ function FocusedAgentPanel({ agent, objectives, activeSkills, tasks, tools, inpu
57
53
  activeSkills.length > 0 ? (activeSkills.map((s, i) => react_1.default.createElement(ink_1.Text, { key: i },
58
54
  " ",
59
55
  s))) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "No skills")),
60
- react_1.default.createElement(SectionDivider, { title: "Checklist" }),
61
- checklist ? (checklist.split('\n').map((line, i) => {
62
- const isCompleted = line.includes('✔');
63
- return (react_1.default.createElement(ink_1.Text, { key: i, color: isCompleted ? 'green' : undefined }, line));
64
- })) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "No tasks")),
65
- react_1.default.createElement(SectionDivider, { title: "Activity" }),
66
- react_1.default.createElement(ink_1.Text, null, sparkline),
67
- react_1.default.createElement(SectionDivider, { title: "Tools / IO" }),
68
- react_1.default.createElement(ink_1.Text, null, toolIO),
69
56
  react_1.default.createElement(SectionDivider, { title: "Context" }),
70
57
  contextDecisions.length > 0 || contextNotes.length > 0 ? (react_1.default.createElement(ContextSection_1.ContextSection, { decisions: contextDecisions, notes: contextNotes, width: width })) : (react_1.default.createElement(ink_1.Text, { dimColor: true }, "No context")),
71
58
  react_1.default.createElement(SectionDivider, { title: "Event Log" }),
@@ -1 +1 @@
1
- {"version":3,"file":"FocusedAgentPanel.js","sourceRoot":"","sources":["../../../../src/tui/components/FocusedAgentPanel.tsx"],"names":[],"mappings":";;AAiEA,8CAkHC;AAnLD,iCAA0B;AAC1B,6BAAgC;AAEhC,0CAAiG;AACjG,6DAS8B;AAC9B,qDAAkD;AAkBlD,SAAS,cAAc,CAAC,EAAE,KAAK,EAAqB;IAClD,OAAO,8BAAC,UAAI,IAAC,KAAK,EAAC,SAAS,IAAE,IAAA,yCAAoB,EAAC,KAAK,CAAC,CAAQ,CAAC;AACpE,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,QAAQ,GAIT;IACC,IAAI,CAAC,IAAI;QAAE,OAAO,8BAAC,UAAI,IAAC,QAAQ,sBAAiB,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IACjD,OAAO,CACL,8DACG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,MAAM,OAAO,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,OAAO,CACL,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;YACjB,8BAAC,UAAI,IAAC,QAAQ,UAAE,SAAS,CAAQ;YACjC,8BAAC,UAAI,IAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAG,OAAO,CAAQ,CACtD,CACP,CAAC;IACJ,CAAC,CAAC,CACD,CACJ,CAAC;AACJ,CAAC;AAED,SAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,UAAU,EACV,YAAY,EACZ,KAAK,EACL,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,SAAS,EACT,gBAAgB,GAAG,EAAE,EACrB,YAAY,GAAG,EAAE,EACjB,KAAK,EACL,MAAM,GACiB;IACvB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,qBAAa,CAAC,KAAK,EAChC,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM;YAEd,8BAAC,UAAI,IAAC,QAAQ,6BAAwB,CAClC,CACP,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,oBAAY,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,8CAAyB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAA,oCAAe,EAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAA,4CAAuB,EAAC,KAAK,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,IAAA,iCAAY,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAA,kCAAa,EAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,IAAA,4CAAuB,EAAC,cAAc,CAAC,CAAC;IAE1D,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,qBAAa,CAAC,KAAK,EAChC,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM;QAGd,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC;YACT,8BAAC,UAAI,QAAE,MAAM,CAAQ;YACrB,8BAAC,UAAI,IAAC,IAAI,UAAE,KAAK,CAAC,IAAI,CAAQ;YAC9B,8BAAC,UAAI,IAAC,KAAK,EAAE,WAAW,EAAE,IAAI,UAC3B,IAAI,CACA;YACP,8BAAC,UAAI,IAAC,KAAK,EAAE,WAAW,IAAG,WAAW,CAAQ;YAC9C,8BAAC,UAAI,IAAC,QAAQ,UAAE,KAAK,CAAC,KAAK,CAAQ,CAC/B;QAGN,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC;YACT,8BAAC,UAAI,IAAC,KAAK,EAAC,SAAS,IAAE,WAAW,CAAC,GAAG,CAAQ;YAC9C,8BAAC,UAAI,IAAC,QAAQ,UAAE,WAAW,CAAC,KAAK,CAAQ,CACrC;QAGN,8BAAC,cAAc,IAAC,KAAK,EAAC,WAAW,GAAG;QACnC,SAAS,CAAC,CAAC,CAAC,8BAAC,UAAI,QAAE,SAAS,CAAQ,CAAC,CAAC,CAAC,8BAAC,UAAI,IAAC,QAAQ,0BAAqB;QAG3E,8BAAC,cAAc,IAAC,KAAK,EAAC,QAAQ,GAAG;QAChC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACzB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,8BAAC,UAAI,IAAC,GAAG,EAAE,CAAC;;YAAI,CAAC,CAAQ,CAAC,CACtD,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,sBAAiB,CAChC;QAGD,8BAAC,cAAc,IAAC,KAAK,EAAC,WAAW,GAAG;QACnC,SAAS,CAAC,CAAC,CAAC,CACX,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,CACL,8BAAC,UAAI,IAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IACnD,IAAI,CACA,CACR,CAAC;QACJ,CAAC,CAAC,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,qBAAgB,CAC/B;QAGD,8BAAC,cAAc,IAAC,KAAK,EAAC,UAAU,GAAG;QACnC,8BAAC,UAAI,QAAE,SAAS,CAAQ;QAGxB,8BAAC,cAAc,IAAC,KAAK,EAAC,YAAY,GAAG;QACrC,8BAAC,UAAI,QAAE,MAAM,CAAQ;QAGrB,8BAAC,cAAc,IAAC,KAAK,EAAC,SAAS,GAAG;QACjC,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACxD,8BAAC,+BAAc,IAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CACnF,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,uBAAkB,CACjC;QAGD,8BAAC,cAAc,IAAC,KAAK,EAAC,WAAW,GAAG;QACpC,8BAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAC1C,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"FocusedAgentPanel.js","sourceRoot":"","sources":["../../../../src/tui/components/FocusedAgentPanel.tsx"],"names":[],"mappings":";;AAwDA,8CAkFC;AA1ID,iCAA0B;AAC1B,6BAAgC;AAEhC,0CAAiG;AACjG,6DAK8B;AAC9B,qDAAkD;AAalD,SAAS,cAAc,CAAC,EAAE,KAAK,EAAqB;IAClD,OAAO,8BAAC,UAAI,IAAC,KAAK,EAAC,SAAS,IAAE,IAAA,yCAAoB,EAAC,KAAK,CAAC,CAAQ,CAAC;AACpE,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,QAAQ,GAIT;IACC,IAAI,CAAC,IAAI;QAAE,OAAO,8BAAC,UAAI,IAAC,QAAQ,sBAAiB,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IACjD,OAAO,CACL,8DACG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,MAAM,OAAO,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,OAAO,CACL,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;YACjB,8BAAC,UAAI,IAAC,QAAQ,UAAE,SAAS,CAAQ;YACjC,8BAAC,UAAI,IAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAG,OAAO,CAAQ,CACtD,CACP,CAAC;IACJ,CAAC,CAAC,CACD,CACJ,CAAC;AACJ,CAAC;AAED,SAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,gBAAgB,GAAG,EAAE,EACrB,YAAY,GAAG,EAAE,EACjB,KAAK,EACL,MAAM,GACiB;IACvB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,qBAAa,CAAC,KAAK,EAChC,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM;YAEd,8BAAC,UAAI,IAAC,QAAQ,6BAAwB,CAClC,CACP,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,oBAAY,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,8CAAyB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAA,oCAAe,EAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAA,kCAAa,EAAC,QAAQ,CAAC,CAAC;IAErC,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,qBAAa,CAAC,KAAK,EAChC,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM;QAGd,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC;YACT,8BAAC,UAAI,QAAE,MAAM,CAAQ;YACrB,8BAAC,UAAI,IAAC,IAAI,UAAE,KAAK,CAAC,IAAI,CAAQ;YAC9B,8BAAC,UAAI,IAAC,KAAK,EAAE,WAAW,EAAE,IAAI,UAC3B,IAAI,CACA;YACP,8BAAC,UAAI,IAAC,KAAK,EAAE,WAAW,IAAG,WAAW,CAAQ;YAC9C,8BAAC,UAAI,IAAC,QAAQ,UAAE,KAAK,CAAC,KAAK,CAAQ,CAC/B;QAGN,8BAAC,SAAG,IAAC,GAAG,EAAE,CAAC;YACT,8BAAC,UAAI,IAAC,KAAK,EAAC,SAAS,IAAE,WAAW,CAAC,GAAG,CAAQ;YAC9C,8BAAC,UAAI,IAAC,QAAQ,UAAE,WAAW,CAAC,KAAK,CAAQ,CACrC;QAGN,8BAAC,cAAc,IAAC,KAAK,EAAC,WAAW,GAAG;QACnC,SAAS,CAAC,CAAC,CAAC,8BAAC,UAAI,QAAE,SAAS,CAAQ,CAAC,CAAC,CAAC,8BAAC,UAAI,IAAC,QAAQ,0BAAqB;QAG3E,8BAAC,cAAc,IAAC,KAAK,EAAC,QAAQ,GAAG;QAChC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACzB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,8BAAC,UAAI,IAAC,GAAG,EAAE,CAAC;;YAAI,CAAC,CAAQ,CAAC,CACtD,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,sBAAiB,CAChC;QAGD,8BAAC,cAAc,IAAC,KAAK,EAAC,SAAS,GAAG;QACjC,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACxD,8BAAC,+BAAc,IAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CACnF,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,QAAQ,uBAAkB,CACjC;QAGD,8BAAC,cAAc,IAAC,KAAK,EAAC,WAAW,GAAG;QACpC,8BAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAC1C,CACP,CAAC;AACJ,CAAC"}
@@ -15,123 +15,92 @@ const dashboard_types_1 = require("../dashboard-types");
15
15
  progress: 50,
16
16
  });
17
17
  (0, vitest_1.it)('should render agent name and status', () => {
18
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Add /users endpoints'], tasks: [{ id: '1', subject: 'routes added', completed: true }], tools: ['file_edit'], inputs: ['spec.md'], outputs: { files: 3 }, eventLog: [], toolCalls: [] }));
18
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Add /users endpoints'], eventLog: [] }));
19
19
  const frame = lastFrame() ?? '';
20
20
  (0, vitest_1.expect)(frame).toContain('BackendDev');
21
21
  (0, vitest_1.expect)(frame).toContain('RUNNING');
22
22
  (0, vitest_1.expect)(frame).toContain('●');
23
23
  });
24
24
  (0, vitest_1.it)('should render progress bar with braille chars and label', () => {
25
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
25
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [] }));
26
26
  const frame = lastFrame() ?? '';
27
27
  (0, vitest_1.expect)(frame).toContain('⣿');
28
28
  (0, vitest_1.expect)(frame).toContain('░');
29
29
  (0, vitest_1.expect)(frame).toContain('50%');
30
30
  });
31
- (0, vitest_1.it)('should render section dividers including Activity', () => {
32
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Design auth'], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
31
+ (0, vitest_1.it)('should render section dividers without Activity or Tools/IO', () => {
32
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Design auth'], eventLog: [] }));
33
33
  const frame = lastFrame() ?? '';
34
34
  (0, vitest_1.expect)(frame).toContain('─── Objective');
35
- (0, vitest_1.expect)(frame).toContain('─── Checklist');
36
- (0, vitest_1.expect)(frame).toContain('─── Activity');
37
- (0, vitest_1.expect)(frame).toContain('─── Tools / IO');
35
+ (0, vitest_1.expect)(frame).not.toContain('─── Activity');
36
+ (0, vitest_1.expect)(frame).not.toContain('─── Tools / IO');
38
37
  (0, vitest_1.expect)(frame).toContain('─── Event Log');
39
38
  });
40
39
  (0, vitest_1.it)('should render objectives', () => {
41
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Add /users endpoints', 'Update DTO'], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
40
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: ['Add /users endpoints', 'Update DTO'], eventLog: [] }));
42
41
  (0, vitest_1.expect)(lastFrame()).toContain('Add /users endpoints');
43
42
  });
44
- (0, vitest_1.it)('should render checklist with ✔/◻ icons', () => {
45
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [
46
- { id: '1', subject: 'routes added', completed: true },
47
- { id: '2', subject: 'tests updated', completed: false },
48
- ], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
49
- const frame = lastFrame() ?? '';
50
- (0, vitest_1.expect)(frame).toContain('✔ routes added');
51
- (0, vitest_1.expect)(frame).toContain('◻ tests updated');
52
- });
53
- (0, vitest_1.it)('should render tool/IO section', () => {
54
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: ['file_edit', 'test_run'], inputs: ['spec.md'], outputs: { files: 12, commits: 3 }, eventLog: [], toolCalls: [] }));
55
- const frame = lastFrame() ?? '';
56
- (0, vitest_1.expect)(frame).toContain('file_edit');
57
- (0, vitest_1.expect)(frame).toContain('spec.md');
58
- });
59
43
  (0, vitest_1.it)('should render logs', () => {
60
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [
44
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [
61
45
  { timestamp: '10:12:01', message: 'ACT start', level: 'info' },
62
46
  { timestamp: '10:12:09', message: 'edited: users.controller.ts', level: 'info' },
63
- ], toolCalls: [] }));
47
+ ] }));
64
48
  (0, vitest_1.expect)(lastFrame()).toContain('ACT start');
65
49
  });
66
50
  (0, vitest_1.it)('should render placeholder when no agent focused', () => {
67
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: null, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
51
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: null, activeSkills: [], objectives: [], eventLog: [] }));
68
52
  (0, vitest_1.expect)(lastFrame()).toContain('No agent focused');
69
53
  });
70
54
  (0, vitest_1.it)('accepts and applies width and height props', () => {
71
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [], width: 60, height: 20 }));
55
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [], width: 60, height: 20 }));
72
56
  (0, vitest_1.expect)(lastFrame()).toContain('BackendDev');
73
57
  });
74
58
  (0, vitest_1.it)('accepts width and height props with no agent', () => {
75
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: null, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [], width: 60, height: 20 }));
59
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: null, activeSkills: [], objectives: [], eventLog: [], width: 60, height: 20 }));
76
60
  (0, vitest_1.expect)(lastFrame()).toContain('No agent focused');
77
61
  });
78
62
  (0, vitest_1.it)('should render single border with cyan color', () => {
79
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
63
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [] }));
80
64
  const frame = lastFrame() ?? '';
81
65
  (0, vitest_1.expect)(frame).toContain('┌');
82
66
  (0, vitest_1.expect)(frame).toContain('┘');
83
67
  });
84
68
  (0, vitest_1.it)('should render Skills section with active skills', () => {
85
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: ['tdd', 'debugging'], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
69
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: ['tdd', 'debugging'], objectives: [], eventLog: [] }));
86
70
  const frame = lastFrame() ?? '';
87
71
  (0, vitest_1.expect)(frame).toContain('─── Skills');
88
72
  (0, vitest_1.expect)(frame).toContain('tdd');
89
73
  (0, vitest_1.expect)(frame).toContain('debugging');
90
74
  });
91
75
  (0, vitest_1.it)('should render "No skills" when activeSkills is empty', () => {
92
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
76
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [] }));
93
77
  (0, vitest_1.expect)(lastFrame()).toContain('No skills');
94
78
  });
95
79
  (0, vitest_1.it)('should render emoji avatar in agent header', () => {
96
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
80
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [] }));
97
81
  (0, vitest_1.expect)(lastFrame()).toContain('⚙️');
98
82
  });
99
- (0, vitest_1.it)('should render sparkline section', () => {
100
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
101
- const frame = lastFrame() ?? '';
102
- (0, vitest_1.expect)(frame).toContain('─── Activity');
103
- (0, vitest_1.expect)(frame).toContain('▁');
104
- });
105
- (0, vitest_1.it)('should filter toolCalls by agentId for sparkline', () => {
106
- const now = Date.now();
107
- const toolCalls = [
108
- { agentId: 'agent-1', toolName: 'bash', timestamp: now - 1000, status: 'completed' },
109
- { agentId: 'agent-2', toolName: 'read', timestamp: now - 2000, status: 'completed' },
110
- ];
111
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: toolCalls }));
112
- (0, vitest_1.expect)(lastFrame()).toContain('─── Activity');
113
- });
114
83
  (0, vitest_1.describe)('Context section', () => {
115
84
  (0, vitest_1.it)('renders context decisions when provided', () => {
116
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [], contextDecisions: ['Use JWT for auth', 'Add rate limiting'], contextNotes: [] }));
85
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [], contextDecisions: ['Use JWT for auth', 'Add rate limiting'], contextNotes: [] }));
117
86
  const frame = lastFrame() ?? '';
118
87
  (0, vitest_1.expect)(frame).toContain('Use JWT for auth');
119
88
  (0, vitest_1.expect)(frame).toContain('Add rate limiting');
120
89
  (0, vitest_1.expect)(frame).toContain('─── Context');
121
90
  });
122
91
  (0, vitest_1.it)('renders context notes when provided', () => {
123
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [], contextDecisions: [], contextNotes: ['Review existing codebase'] }));
92
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [], contextDecisions: [], contextNotes: ['Review existing codebase'] }));
124
93
  const frame = lastFrame() ?? '';
125
94
  (0, vitest_1.expect)(frame).toContain('Review existing codebase');
126
95
  (0, vitest_1.expect)(frame).toContain('─── Context');
127
96
  });
128
97
  (0, vitest_1.it)('renders No context when both empty', () => {
129
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [], contextDecisions: [], contextNotes: [] }));
98
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [], contextDecisions: [], contextNotes: [] }));
130
99
  const frame = lastFrame() ?? '';
131
100
  (0, vitest_1.expect)(frame).toContain('No context');
132
101
  });
133
102
  (0, vitest_1.it)('renders No context when props omitted', () => {
134
- const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], tasks: [], tools: [], inputs: [], outputs: {}, eventLog: [], toolCalls: [] }));
103
+ const { lastFrame } = (0, ink_testing_library_1.render)(react_1.default.createElement(FocusedAgentPanel_1.FocusedAgentPanel, { agent: mockAgent, activeSkills: [], objectives: [], eventLog: [] }));
135
104
  const frame = lastFrame() ?? '';
136
105
  (0, vitest_1.expect)(frame).toContain('No context');
137
106
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FocusedAgentPanel.spec.js","sourceRoot":"","sources":["../../../../src/tui/components/FocusedAgentPanel.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FocusedAgentPanel.spec.js","sourceRoot":"","sources":["../../../../src/tui/components/FocusedAgentPanel.spec.tsx"],"names":[],"mappings":"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"}
@@ -3,10 +3,9 @@ import type { LayoutMode, GlobalRunState } from '../dashboard-types';
3
3
  import type { Mode } from '../types';
4
4
  export interface HeaderBarProps {
5
5
  workspace: string;
6
- sessionId: string;
7
6
  currentMode: Mode | null;
8
7
  globalState: GlobalRunState;
9
8
  layoutMode: LayoutMode;
10
9
  width: number;
11
10
  }
12
- export declare function HeaderBar({ workspace, sessionId, currentMode, globalState, layoutMode, width, }: HeaderBarProps): React.ReactElement;
11
+ export declare function HeaderBar({ workspace, currentMode, globalState, layoutMode, width, }: HeaderBarProps): React.ReactElement;
@@ -30,7 +30,7 @@ function StateIndicator({ globalState }) {
30
30
  " ",
31
31
  globalState));
32
32
  }
33
- function HeaderBar({ workspace, sessionId, currentMode, globalState, layoutMode, width, }) {
33
+ function HeaderBar({ workspace, currentMode, globalState, layoutMode, width, }) {
34
34
  if (layoutMode === 'narrow') {
35
35
  return (react_1.default.createElement(ink_1.Box, { borderStyle: "double", borderColor: theme_1.BORDER_COLORS.panel, width: width, overflowX: "hidden", flexDirection: "row" },
36
36
  react_1.default.createElement(ink_1.Text, { color: "cyan", bold: true }, "\u27E8\u27E9 CODINGBUDDY"),
@@ -39,17 +39,13 @@ function HeaderBar({ workspace, sessionId, currentMode, globalState, layoutMode,
39
39
  react_1.default.createElement(ink_1.Box, { flexGrow: 1 }),
40
40
  react_1.default.createElement(StateIndicator, { globalState: globalState })));
41
41
  }
42
- const sessDisplay = sessionId.length > 8 ? sessionId.slice(0, 8) : sessionId;
43
42
  return (react_1.default.createElement(ink_1.Box, { borderStyle: "double", borderColor: theme_1.BORDER_COLORS.panel, width: width, overflowX: "hidden", flexDirection: "row" },
44
- react_1.default.createElement(ink_1.Box, { gap: 2, flexShrink: 0 },
43
+ react_1.default.createElement(ink_1.Box, { gap: 2, flexShrink: 1, minWidth: 0 },
45
44
  react_1.default.createElement(ink_1.Text, { color: "cyan", bold: true }, "\u27E8\u27E9 CODINGBUDDY AGENT DASHBOARD"),
46
45
  react_1.default.createElement(ModeFlow, { currentMode: currentMode }),
47
46
  react_1.default.createElement(StateIndicator, { globalState: globalState })),
48
47
  react_1.default.createElement(ink_1.Box, { flexGrow: 1 }),
49
48
  react_1.default.createElement(ink_1.Box, { flexShrink: 1, overflowX: "hidden" },
50
- react_1.default.createElement(ink_1.Text, { dimColor: true, wrap: "truncate" },
51
- workspace,
52
- " sess:",
53
- sessDisplay))));
49
+ react_1.default.createElement(ink_1.Text, { dimColor: true, wrap: "truncate" }, workspace))));
54
50
  }
55
51
  //# sourceMappingURL=HeaderBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderBar.js","sourceRoot":"","sources":["../../../../src/tui/components/HeaderBar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HeaderBar.js","sourceRoot":"","sources":["../../../../src/tui/components/HeaderBar.tsx"],"names":[],"mappings":"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"}