@ddse/acm-aicoder 0.5.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 (165) hide show
  1. package/.aicoder/index.json +304 -0
  2. package/AICODER_IMPLEMENTATION_PLAN_PHASE2.md +284 -0
  3. package/LICENSE +21 -0
  4. package/README.md +490 -0
  5. package/bin/interactive.tsx +232 -0
  6. package/dist/bin/interactive.d.ts +3 -0
  7. package/dist/bin/interactive.d.ts.map +1 -0
  8. package/dist/bin/interactive.js +155 -0
  9. package/dist/bin/interactive.js.map +1 -0
  10. package/dist/src/config/providers.d.ts +15 -0
  11. package/dist/src/config/providers.d.ts.map +1 -0
  12. package/dist/src/config/providers.js +142 -0
  13. package/dist/src/config/providers.js.map +1 -0
  14. package/dist/src/config/session.d.ts +25 -0
  15. package/dist/src/config/session.d.ts.map +1 -0
  16. package/dist/src/config/session.js +97 -0
  17. package/dist/src/config/session.js.map +1 -0
  18. package/dist/src/context/bm25.d.ts +68 -0
  19. package/dist/src/context/bm25.d.ts.map +1 -0
  20. package/dist/src/context/bm25.js +131 -0
  21. package/dist/src/context/bm25.js.map +1 -0
  22. package/dist/src/context/code-search.d.ts +30 -0
  23. package/dist/src/context/code-search.d.ts.map +1 -0
  24. package/dist/src/context/code-search.js +150 -0
  25. package/dist/src/context/code-search.js.map +1 -0
  26. package/dist/src/context/context-pack.d.ts +25 -0
  27. package/dist/src/context/context-pack.d.ts.map +1 -0
  28. package/dist/src/context/context-pack.js +92 -0
  29. package/dist/src/context/context-pack.js.map +1 -0
  30. package/dist/src/context/dependency-mapper.d.ts +10 -0
  31. package/dist/src/context/dependency-mapper.d.ts.map +1 -0
  32. package/dist/src/context/dependency-mapper.js +62 -0
  33. package/dist/src/context/dependency-mapper.js.map +1 -0
  34. package/dist/src/context/index.d.ts +8 -0
  35. package/dist/src/context/index.d.ts.map +1 -0
  36. package/dist/src/context/index.js +9 -0
  37. package/dist/src/context/index.js.map +1 -0
  38. package/dist/src/context/symbol-extractor.d.ts +26 -0
  39. package/dist/src/context/symbol-extractor.d.ts.map +1 -0
  40. package/dist/src/context/symbol-extractor.js +129 -0
  41. package/dist/src/context/symbol-extractor.js.map +1 -0
  42. package/dist/src/context/test-mapper.d.ts +16 -0
  43. package/dist/src/context/test-mapper.d.ts.map +1 -0
  44. package/dist/src/context/test-mapper.js +66 -0
  45. package/dist/src/context/test-mapper.js.map +1 -0
  46. package/dist/src/context/types.d.ts +61 -0
  47. package/dist/src/context/types.d.ts.map +1 -0
  48. package/dist/src/context/types.js +3 -0
  49. package/dist/src/context/types.js.map +1 -0
  50. package/dist/src/context/workspace-indexer.d.ts +39 -0
  51. package/dist/src/context/workspace-indexer.d.ts.map +1 -0
  52. package/dist/src/context/workspace-indexer.js +222 -0
  53. package/dist/src/context/workspace-indexer.js.map +1 -0
  54. package/dist/src/index.d.ts +5 -0
  55. package/dist/src/index.d.ts.map +1 -0
  56. package/dist/src/index.js +6 -0
  57. package/dist/src/index.js.map +1 -0
  58. package/dist/src/registries.d.ts +34 -0
  59. package/dist/src/registries.d.ts.map +1 -0
  60. package/dist/src/registries.js +87 -0
  61. package/dist/src/registries.js.map +1 -0
  62. package/dist/src/runtime/budget-manager.d.ts +42 -0
  63. package/dist/src/runtime/budget-manager.d.ts.map +1 -0
  64. package/dist/src/runtime/budget-manager.js +82 -0
  65. package/dist/src/runtime/budget-manager.js.map +1 -0
  66. package/dist/src/runtime/interactive-runtime.d.ts +39 -0
  67. package/dist/src/runtime/interactive-runtime.d.ts.map +1 -0
  68. package/dist/src/runtime/interactive-runtime.js +321 -0
  69. package/dist/src/runtime/interactive-runtime.js.map +1 -0
  70. package/dist/src/tasks-v2/analysis-tasks.d.ts +117 -0
  71. package/dist/src/tasks-v2/analysis-tasks.d.ts.map +1 -0
  72. package/dist/src/tasks-v2/analysis-tasks.js +209 -0
  73. package/dist/src/tasks-v2/analysis-tasks.js.map +1 -0
  74. package/dist/src/tasks-v2/developer-tasks.d.ts +226 -0
  75. package/dist/src/tasks-v2/developer-tasks.d.ts.map +1 -0
  76. package/dist/src/tasks-v2/developer-tasks.js +322 -0
  77. package/dist/src/tasks-v2/developer-tasks.js.map +1 -0
  78. package/dist/src/tasks-v2/index.d.ts +3 -0
  79. package/dist/src/tasks-v2/index.d.ts.map +1 -0
  80. package/dist/src/tasks-v2/index.js +4 -0
  81. package/dist/src/tasks-v2/index.js.map +1 -0
  82. package/dist/src/tools-v2/edit-tools.d.ts +67 -0
  83. package/dist/src/tools-v2/edit-tools.d.ts.map +1 -0
  84. package/dist/src/tools-v2/edit-tools.js +117 -0
  85. package/dist/src/tools-v2/edit-tools.js.map +1 -0
  86. package/dist/src/tools-v2/index.d.ts +6 -0
  87. package/dist/src/tools-v2/index.d.ts.map +1 -0
  88. package/dist/src/tools-v2/index.js +7 -0
  89. package/dist/src/tools-v2/index.js.map +1 -0
  90. package/dist/src/tools-v2/read-tools.d.ts +129 -0
  91. package/dist/src/tools-v2/read-tools.d.ts.map +1 -0
  92. package/dist/src/tools-v2/read-tools.js +216 -0
  93. package/dist/src/tools-v2/read-tools.js.map +1 -0
  94. package/dist/src/tools-v2/search-tools.d.ts +73 -0
  95. package/dist/src/tools-v2/search-tools.d.ts.map +1 -0
  96. package/dist/src/tools-v2/search-tools.js +132 -0
  97. package/dist/src/tools-v2/search-tools.js.map +1 -0
  98. package/dist/src/tools-v2/test-tools.d.ts +59 -0
  99. package/dist/src/tools-v2/test-tools.d.ts.map +1 -0
  100. package/dist/src/tools-v2/test-tools.js +111 -0
  101. package/dist/src/tools-v2/test-tools.js.map +1 -0
  102. package/dist/src/tools-v2/workspace-context.d.ts +65 -0
  103. package/dist/src/tools-v2/workspace-context.d.ts.map +1 -0
  104. package/dist/src/tools-v2/workspace-context.js +336 -0
  105. package/dist/src/tools-v2/workspace-context.js.map +1 -0
  106. package/dist/src/ui/App.d.ts +9 -0
  107. package/dist/src/ui/App.d.ts.map +1 -0
  108. package/dist/src/ui/App.js +257 -0
  109. package/dist/src/ui/App.js.map +1 -0
  110. package/dist/src/ui/components/ChatPane.d.ts +12 -0
  111. package/dist/src/ui/components/ChatPane.d.ts.map +1 -0
  112. package/dist/src/ui/components/ChatPane.js +41 -0
  113. package/dist/src/ui/components/ChatPane.js.map +1 -0
  114. package/dist/src/ui/components/EventsPane.d.ts +12 -0
  115. package/dist/src/ui/components/EventsPane.d.ts.map +1 -0
  116. package/dist/src/ui/components/EventsPane.js +48 -0
  117. package/dist/src/ui/components/EventsPane.js.map +1 -0
  118. package/dist/src/ui/components/GoalsTasksPane.d.ts +18 -0
  119. package/dist/src/ui/components/GoalsTasksPane.d.ts.map +1 -0
  120. package/dist/src/ui/components/GoalsTasksPane.js +83 -0
  121. package/dist/src/ui/components/GoalsTasksPane.js.map +1 -0
  122. package/dist/src/ui/store.d.ts +74 -0
  123. package/dist/src/ui/store.d.ts.map +1 -0
  124. package/dist/src/ui/store.js +260 -0
  125. package/dist/src/ui/store.js.map +1 -0
  126. package/dist/tests/integration.test.d.ts +2 -0
  127. package/dist/tests/integration.test.d.ts.map +1 -0
  128. package/dist/tests/integration.test.js +415 -0
  129. package/dist/tests/integration.test.js.map +1 -0
  130. package/dist/tsconfig.tsbuildinfo +1 -0
  131. package/docs/AICODER.png +0 -0
  132. package/docs/INTERACTIVE_CLI_GUIDE.md +201 -0
  133. package/docs/TUI_MOCKUP.md +180 -0
  134. package/package.json +52 -0
  135. package/src/config/providers.ts +174 -0
  136. package/src/config/session.ts +143 -0
  137. package/src/context/bm25.ts +173 -0
  138. package/src/context/code-search.ts +188 -0
  139. package/src/context/context-pack.ts +133 -0
  140. package/src/context/dependency-mapper.ts +72 -0
  141. package/src/context/index.ts +8 -0
  142. package/src/context/symbol-extractor.ts +149 -0
  143. package/src/context/test-mapper.ts +77 -0
  144. package/src/context/types.ts +69 -0
  145. package/src/context/workspace-indexer.ts +249 -0
  146. package/src/index.ts +5 -0
  147. package/src/registries.ts +118 -0
  148. package/src/runtime/budget-manager.ts +118 -0
  149. package/src/runtime/interactive-runtime.ts +423 -0
  150. package/src/tasks-v2/analysis-tasks.ts +311 -0
  151. package/src/tasks-v2/developer-tasks.ts +437 -0
  152. package/src/tasks-v2/index.ts +3 -0
  153. package/src/tools-v2/edit-tools.ts +153 -0
  154. package/src/tools-v2/index.ts +6 -0
  155. package/src/tools-v2/read-tools.ts +286 -0
  156. package/src/tools-v2/search-tools.ts +175 -0
  157. package/src/tools-v2/test-tools.ts +147 -0
  158. package/src/tools-v2/workspace-context.ts +428 -0
  159. package/src/ui/App.tsx +392 -0
  160. package/src/ui/components/ChatPane.tsx +84 -0
  161. package/src/ui/components/EventsPane.tsx +81 -0
  162. package/src/ui/components/GoalsTasksPane.tsx +149 -0
  163. package/src/ui/store.ts +362 -0
  164. package/tests/integration.test.ts +537 -0
  165. package/tsconfig.json +22 -0
@@ -0,0 +1,260 @@
1
+ // Application state store for the interactive TUI
2
+ // Manages chat messages, tasks, events, and budget state
3
+ import { EventEmitter } from 'events';
4
+ export class AppStore extends EventEmitter {
5
+ state = {
6
+ messages: [],
7
+ showReasoning: true,
8
+ tasks: [],
9
+ events: [],
10
+ taskOutputs: {},
11
+ inputText: '',
12
+ isProcessing: false,
13
+ goalSummary: undefined,
14
+ };
15
+ getState() {
16
+ return {
17
+ ...this.state,
18
+ messages: [...this.state.messages],
19
+ showReasoning: this.state.showReasoning,
20
+ tasks: this.state.tasks.map(task => ({ ...task })),
21
+ events: [...this.state.events],
22
+ taskOutputs: { ...this.state.taskOutputs },
23
+ };
24
+ }
25
+ // Chat methods
26
+ addMessage(role, content, streaming = false) {
27
+ const id = `msg-${Date.now()}-${Math.random()}`;
28
+ const message = {
29
+ id,
30
+ role,
31
+ content,
32
+ timestamp: Date.now(),
33
+ streaming,
34
+ };
35
+ this.state.messages.push(message);
36
+ this.emit('update', this.state);
37
+ return id;
38
+ }
39
+ isReasoningVisible() {
40
+ return this.state.showReasoning;
41
+ }
42
+ setReasoningVisible(visible) {
43
+ if (this.state.showReasoning !== visible) {
44
+ this.state.showReasoning = visible;
45
+ this.emit('update', this.state);
46
+ }
47
+ }
48
+ toggleReasoningVisible() {
49
+ this.state.showReasoning = !this.state.showReasoning;
50
+ this.emit('update', this.state);
51
+ return this.state.showReasoning;
52
+ }
53
+ updateMessage(id, content, streaming = false) {
54
+ const message = this.state.messages.find(m => m.id === id);
55
+ if (message) {
56
+ message.content = content;
57
+ message.streaming = streaming;
58
+ this.emit('update', this.state);
59
+ }
60
+ }
61
+ appendToMessage(id, delta) {
62
+ const message = this.state.messages.find(m => m.id === id);
63
+ if (message) {
64
+ message.content += delta;
65
+ this.emit('update', this.state);
66
+ }
67
+ }
68
+ // Goal/Plan methods
69
+ setGoal(goal, context, plan) {
70
+ this.state.currentGoal = goal;
71
+ this.state.currentContext = context;
72
+ this.state.currentPlan = plan;
73
+ // Initialize tasks from plan
74
+ this.state.tasks = plan.tasks.map((task, idx) => {
75
+ const taskId = task.id || task.capability || task.capabilityRef || `task-${idx}`;
76
+ const displayName = task.name || task.capability || task.capabilityRef || `Task ${idx + 1}`;
77
+ return {
78
+ id: String(taskId),
79
+ name: String(displayName),
80
+ title: task.title ?? displayName,
81
+ objective: task.objective,
82
+ successCriteria: Array.isArray(task.successCriteria)
83
+ ? task.successCriteria
84
+ : undefined,
85
+ status: 'pending',
86
+ };
87
+ });
88
+ this.state.taskOutputs = {};
89
+ this.state.goalSummary = undefined;
90
+ this.emit('update', this.state);
91
+ }
92
+ updateTaskStatus(taskId, status, progress, error) {
93
+ const task = this.state.tasks.find(t => t.id === taskId);
94
+ if (task) {
95
+ task.status = status;
96
+ if (progress !== undefined)
97
+ task.progress = progress;
98
+ if (error)
99
+ task.error = error;
100
+ this.emit('update', this.state);
101
+ }
102
+ }
103
+ setTaskRetry(taskId, attempt, maxAttempts) {
104
+ const task = this.state.tasks.find(t => t.id === taskId);
105
+ if (task) {
106
+ task.attempt = attempt;
107
+ task.maxAttempts = maxAttempts;
108
+ task.status = 'retrying';
109
+ this.emit('update', this.state);
110
+ }
111
+ }
112
+ // Budget methods
113
+ updateBudgetStatus(status) {
114
+ this.state.budgetStatus = status;
115
+ this.emit('update', this.state);
116
+ }
117
+ // Event methods
118
+ addEvent(type, data, color) {
119
+ const event = {
120
+ id: `event-${Date.now()}-${Math.random()}`,
121
+ type,
122
+ timestamp: Date.now(),
123
+ data,
124
+ color,
125
+ };
126
+ this.state.events.push(event);
127
+ // Keep only last 100 events to prevent memory bloat
128
+ if (this.state.events.length > 100) {
129
+ this.state.events = this.state.events.slice(-100);
130
+ }
131
+ this.emit('update', this.state);
132
+ }
133
+ // UI methods
134
+ setInputText(text) {
135
+ this.state.inputText = text;
136
+ this.emit('update', this.state);
137
+ }
138
+ setProcessing(isProcessing) {
139
+ this.state.isProcessing = isProcessing;
140
+ this.emit('update', this.state);
141
+ }
142
+ // Lifecycle methods
143
+ clearGoal() {
144
+ this.state.currentGoal = undefined;
145
+ this.state.currentContext = undefined;
146
+ this.state.currentPlan = undefined;
147
+ this.state.tasks = [];
148
+ this.state.taskOutputs = {};
149
+ this.state.goalSummary = undefined;
150
+ this.emit('update', this.state);
151
+ }
152
+ reset() {
153
+ this.state = {
154
+ messages: [
155
+ {
156
+ id: 'welcome',
157
+ role: 'system',
158
+ content: 'Session reset. Ready for new goal.',
159
+ timestamp: Date.now(),
160
+ }
161
+ ],
162
+ showReasoning: true,
163
+ tasks: [],
164
+ events: [],
165
+ taskOutputs: {},
166
+ inputText: '',
167
+ isProcessing: false,
168
+ goalSummary: undefined,
169
+ };
170
+ this.emit('update', this.state);
171
+ }
172
+ recordTaskOutput(taskId, output, narrative) {
173
+ this.state.taskOutputs[taskId] = output;
174
+ const task = this.state.tasks.find(t => t.id === taskId);
175
+ if (task) {
176
+ task.rawOutput = output;
177
+ task.outputSummary = this.formatOutputSummary(output);
178
+ task.narrative = narrative;
179
+ }
180
+ this.emit('update', this.state);
181
+ const label = task?.name || taskId;
182
+ const summary = task?.outputSummary ?? this.formatOutputSummary(output);
183
+ const reasoning = narrative?.reasoning?.length ? narrative.reasoning.join(' ') : undefined;
184
+ if (summary || reasoning) {
185
+ const lines = [];
186
+ if (summary) {
187
+ lines.push(summary);
188
+ }
189
+ if (reasoning) {
190
+ lines.push(`Narrative: ${reasoning}`);
191
+ }
192
+ if (narrative?.postcheck && narrative.postcheck.status !== 'COMPLETE') {
193
+ lines.push(`Postcheck: ${narrative.postcheck.status}${narrative.postcheck.reason ? ` (${narrative.postcheck.reason})` : ''}`);
194
+ }
195
+ this.addMessage('system', `Task "${label}" output:\n${lines.join('\n')}`);
196
+ }
197
+ }
198
+ setGoalSummary(summary) {
199
+ this.state.goalSummary = summary;
200
+ this.emit('update', this.state);
201
+ if (summary) {
202
+ this.addMessage('system', `Goal summary:\n${summary}`);
203
+ }
204
+ }
205
+ formatOutputSummary(output) {
206
+ if (output === undefined || output === null) {
207
+ return 'No output produced.';
208
+ }
209
+ if (typeof output === 'string') {
210
+ const trimmed = output.trim();
211
+ return trimmed.length > 0 ? this.truncate(trimmed) : 'Output was an empty string.';
212
+ }
213
+ if (typeof output === 'number' || typeof output === 'boolean') {
214
+ return String(output);
215
+ }
216
+ if (Array.isArray(output)) {
217
+ if (output.length === 0) {
218
+ return 'Output array was empty.';
219
+ }
220
+ const preview = output
221
+ .slice(0, 3)
222
+ .map(item => this.previewValue(item))
223
+ .join('\n');
224
+ const suffix = output.length > 3 ? `\n… ${output.length - 3} more item(s)` : '';
225
+ return this.truncate(preview + suffix);
226
+ }
227
+ if (typeof output === 'object') {
228
+ return this.truncate(this.previewValue(output));
229
+ }
230
+ return this.truncate(String(output));
231
+ }
232
+ previewValue(value) {
233
+ if (value === null)
234
+ return 'null';
235
+ if (typeof value === 'string')
236
+ return value.trim() || '""';
237
+ if (typeof value === 'number' || typeof value === 'boolean')
238
+ return String(value);
239
+ if (Array.isArray(value)) {
240
+ const items = value.slice(0, 3).map(v => this.previewValue(v)).join(', ');
241
+ return `[${items}${value.length > 3 ? ', …' : ''}]`;
242
+ }
243
+ if (typeof value === 'object') {
244
+ const entries = Object.entries(value);
245
+ const preview = entries
246
+ .slice(0, 4)
247
+ .map(([key, val]) => `${key}: ${this.previewValue(val)}`)
248
+ .join(', ');
249
+ const suffix = entries.length > 4 ? ', …' : '';
250
+ return `{ ${preview}${suffix} }`;
251
+ }
252
+ return String(value);
253
+ }
254
+ truncate(value, max = 400) {
255
+ if (value.length <= max)
256
+ return value;
257
+ return `${value.slice(0, max - 1)}…`;
258
+ }
259
+ }
260
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ui/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.test.d.ts","sourceRoot":"","sources":["../../tests/integration.test.ts"],"names":[],"mappings":""}