@codeyam/codeyam-cli 0.1.15 → 0.1.16

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 (44) hide show
  1. package/analyzer-template/.build-info.json +6 -6
  2. package/analyzer-template/log.txt +3 -3
  3. package/codeyam-cli/src/commands/editor.js +68 -7
  4. package/codeyam-cli/src/commands/editor.js.map +1 -1
  5. package/codeyam-cli/src/commands/init.js +1 -0
  6. package/codeyam-cli/src/commands/init.js.map +1 -1
  7. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +62 -1
  8. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -1
  9. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +57 -0
  10. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -1
  11. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +41 -0
  12. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -1
  13. package/codeyam-cli/src/utils/editorAudit.js +24 -0
  14. package/codeyam-cli/src/utils/editorAudit.js.map +1 -1
  15. package/codeyam-cli/src/utils/install-skills.js +5 -0
  16. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  17. package/codeyam-cli/src/utils/scenarioCoverage.js +4 -1
  18. package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -1
  19. package/codeyam-cli/src/utils/scenariosManifest.js +6 -0
  20. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -1
  21. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +40 -0
  22. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -1
  23. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +92 -21
  24. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -1
  25. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +7 -1
  26. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -1
  27. package/codeyam-cli/src/webserver/build/client/assets/{editor.entity.(_sha)-B7xQ9Sjy.js → editor.entity.(_sha)-DN5ouXAl.js} +14 -14
  28. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-oepecPae.js +41 -0
  29. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.dev-CUobbQdQ.js → entity._sha.scenarios._scenarioId.dev-KTQuL0aj.js} +1 -1
  30. package/codeyam-cli/src/webserver/build/client/assets/{manifest-5d53342d.js → manifest-389033be.js} +1 -1
  31. package/codeyam-cli/src/webserver/build/server/assets/{analysisRunner-DcJSnBCE.js → analysisRunner-D_1MSYeW.js} +1 -1
  32. package/codeyam-cli/src/webserver/build/server/assets/{index-CEaDhUiv.js → index-ckWaCf_v.js} +1 -1
  33. package/codeyam-cli/src/webserver/build/server/assets/{init-DA7guOrE.js → init-ld124R4Z.js} +2 -2
  34. package/codeyam-cli/src/webserver/build/server/assets/{server-build-juyiY2m6.js → server-build-DzzNZGv_.js} +100 -100
  35. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  36. package/codeyam-cli/src/webserver/build-info.json +5 -5
  37. package/codeyam-cli/src/webserver/idleDetector.js +41 -8
  38. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -1
  39. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +36 -0
  40. package/codeyam-cli/src/webserver/terminalServer.js +4 -4
  41. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
  42. package/codeyam-cli/templates/codeyam-editor-reference.md +214 -0
  43. package/package.json +1 -1
  44. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-CxmrE6AF.js +0 -41
@@ -8,13 +8,14 @@ function createDetector(opts) {
8
8
  idleTimeoutMs: opts?.idleTimeoutMs ?? 3000,
9
9
  typingCooldownMs: opts?.typingCooldownMs ?? 2000,
10
10
  minOutputForReidle: opts?.minOutputForReidle ?? 100,
11
+ activeOutputPattern: opts?.activeOutputPattern,
11
12
  });
12
13
  return { detector, onIdle, onActive };
13
14
  }
14
15
  describe('IdleDetector', () => {
15
16
  it('signals idle after output stops for the timeout duration', () => {
16
17
  const { detector, onIdle } = createDetector();
17
- detector.onPtyOutput(500);
18
+ detector.onPtyOutput('x'.repeat(500));
18
19
  expect(onIdle).not.toHaveBeenCalled();
19
20
  jest.advanceTimersByTime(3000);
20
21
  expect(onIdle).toHaveBeenCalledTimes(1);
@@ -22,16 +23,16 @@ describe('IdleDetector', () => {
22
23
  });
23
24
  it('does not signal idle before timeout elapses', () => {
24
25
  const { detector, onIdle } = createDetector();
25
- detector.onPtyOutput(500);
26
+ detector.onPtyOutput('x'.repeat(500));
26
27
  jest.advanceTimersByTime(2999);
27
28
  expect(onIdle).not.toHaveBeenCalled();
28
29
  detector.dispose();
29
30
  });
30
31
  it('resets the timer on each new output chunk', () => {
31
32
  const { detector, onIdle } = createDetector();
32
- detector.onPtyOutput(100);
33
+ detector.onPtyOutput('x'.repeat(100));
33
34
  jest.advanceTimersByTime(2000);
34
- detector.onPtyOutput(100);
35
+ detector.onPtyOutput('x'.repeat(100));
35
36
  jest.advanceTimersByTime(2000);
36
37
  expect(onIdle).not.toHaveBeenCalled();
37
38
  jest.advanceTimersByTime(1000);
@@ -40,7 +41,7 @@ describe('IdleDetector', () => {
40
41
  });
41
42
  it('suppresses idle timer during user typing', () => {
42
43
  const { detector, onIdle } = createDetector();
43
- detector.onPtyOutput(500);
44
+ detector.onPtyOutput('x'.repeat(500));
44
45
  jest.advanceTimersByTime(1000);
45
46
  // User starts typing
46
47
  detector.onUserInput();
@@ -50,12 +51,12 @@ describe('IdleDetector', () => {
50
51
  });
51
52
  it('resumes idle detection after typing cooldown expires', () => {
52
53
  const { detector, onIdle } = createDetector();
53
- detector.onPtyOutput(500);
54
+ detector.onPtyOutput('x'.repeat(500));
54
55
  detector.onUserInput();
55
56
  jest.advanceTimersByTime(5000);
56
57
  expect(onIdle).not.toHaveBeenCalled();
57
58
  // Typing cooldown expired (2s), now new output arrives
58
- detector.onPtyOutput(500);
59
+ detector.onPtyOutput('x'.repeat(500));
59
60
  jest.advanceTimersByTime(3000);
60
61
  expect(onIdle).toHaveBeenCalledTimes(1);
61
62
  detector.dispose();
@@ -64,7 +65,7 @@ describe('IdleDetector', () => {
64
65
  const { detector, onIdle } = createDetector();
65
66
  detector.onUserInput();
66
67
  // PTY echoes the keystroke
67
- detector.onPtyOutput(1);
68
+ detector.onPtyOutput('a');
68
69
  jest.advanceTimersByTime(5000);
69
70
  expect(onIdle).not.toHaveBeenCalled();
70
71
  detector.dispose();
@@ -72,11 +73,11 @@ describe('IdleDetector', () => {
72
73
  it('does not re-signal idle without sufficient new output', () => {
73
74
  const { detector, onIdle } = createDetector();
74
75
  // First idle
75
- detector.onPtyOutput(500);
76
+ detector.onPtyOutput('x'.repeat(500));
76
77
  jest.advanceTimersByTime(3000);
77
78
  expect(onIdle).toHaveBeenCalledTimes(1);
78
79
  // Small output (< 100 bytes) — should NOT trigger re-idle
79
- detector.onPtyOutput(10);
80
+ detector.onPtyOutput('x'.repeat(10));
80
81
  jest.advanceTimersByTime(5000);
81
82
  expect(onIdle).toHaveBeenCalledTimes(1);
82
83
  detector.dispose();
@@ -84,12 +85,12 @@ describe('IdleDetector', () => {
84
85
  it('signals active then re-idles after substantial new output', () => {
85
86
  const { detector, onIdle, onActive } = createDetector();
86
87
  // First idle
87
- detector.onPtyOutput(500);
88
+ detector.onPtyOutput('x'.repeat(500));
88
89
  jest.advanceTimersByTime(3000);
89
90
  expect(onIdle).toHaveBeenCalledTimes(1);
90
91
  expect(onActive).not.toHaveBeenCalled();
91
92
  // Claude produces a real response (>= 100 bytes)
92
- detector.onPtyOutput(200);
93
+ detector.onPtyOutput('x'.repeat(200));
93
94
  expect(onActive).toHaveBeenCalledTimes(1);
94
95
  // Goes idle again
95
96
  jest.advanceTimersByTime(3000);
@@ -99,13 +100,13 @@ describe('IdleDetector', () => {
99
100
  it('accumulates small output chunks toward the re-idle threshold', () => {
100
101
  const { detector, onIdle, onActive } = createDetector();
101
102
  // First idle
102
- detector.onPtyOutput(500);
103
+ detector.onPtyOutput('x'.repeat(500));
103
104
  jest.advanceTimersByTime(3000);
104
105
  expect(onIdle).toHaveBeenCalledTimes(1);
105
106
  // Several small chunks that together exceed the threshold
106
- detector.onPtyOutput(40);
107
- detector.onPtyOutput(40);
108
- detector.onPtyOutput(40); // total = 120, exceeds 100
107
+ detector.onPtyOutput('x'.repeat(40));
108
+ detector.onPtyOutput('x'.repeat(40));
109
+ detector.onPtyOutput('x'.repeat(40)); // total = 120, exceeds 100
109
110
  expect(onActive).toHaveBeenCalledTimes(1);
110
111
  jest.advanceTimersByTime(3000);
111
112
  expect(onIdle).toHaveBeenCalledTimes(2);
@@ -114,16 +115,16 @@ describe('IdleDetector', () => {
114
115
  it('reports isIdle correctly', () => {
115
116
  const { detector } = createDetector();
116
117
  expect(detector.isIdle).toBe(false);
117
- detector.onPtyOutput(500);
118
+ detector.onPtyOutput('x'.repeat(500));
118
119
  jest.advanceTimersByTime(3000);
119
120
  expect(detector.isIdle).toBe(true);
120
- detector.onPtyOutput(200);
121
+ detector.onPtyOutput('x'.repeat(200));
121
122
  expect(detector.isIdle).toBe(false);
122
123
  detector.dispose();
123
124
  });
124
125
  it('cleans up timers on dispose', () => {
125
126
  const { detector, onIdle } = createDetector();
126
- detector.onPtyOutput(500);
127
+ detector.onPtyOutput('x'.repeat(500));
127
128
  detector.dispose();
128
129
  jest.advanceTimersByTime(5000);
129
130
  expect(onIdle).not.toHaveBeenCalled();
@@ -132,10 +133,10 @@ describe('IdleDetector', () => {
132
133
  const { detector, onIdle } = createDetector();
133
134
  // Simulate: user types, PTY echoes, user types more
134
135
  detector.onUserInput();
135
- detector.onPtyOutput(2);
136
+ detector.onPtyOutput('ab');
136
137
  jest.advanceTimersByTime(500);
137
138
  detector.onUserInput();
138
- detector.onPtyOutput(2);
139
+ detector.onPtyOutput('cd');
139
140
  jest.advanceTimersByTime(500);
140
141
  detector.onUserInput();
141
142
  jest.advanceTimersByTime(5000);
@@ -143,4 +144,74 @@ describe('IdleDetector', () => {
143
144
  detector.dispose();
144
145
  });
145
146
  });
147
+ describe('IdleDetector activeOutputPattern', () => {
148
+ it('suppresses idle when last output matches active pattern', () => {
149
+ const { detector, onIdle } = createDetector({
150
+ activeOutputPattern: /✶/,
151
+ });
152
+ // Status line with ✶ is the last output
153
+ detector.onPtyOutput('\r\x1b[K✶ Cascading… (16m 56s · ↓ 15.6k tokens)');
154
+ jest.advanceTimersByTime(3000);
155
+ // Should NOT signal idle — pattern matched, timer restarted
156
+ expect(onIdle).not.toHaveBeenCalled();
157
+ detector.dispose();
158
+ });
159
+ it('signals idle normally when last output does not match pattern', () => {
160
+ const { detector, onIdle } = createDetector({
161
+ activeOutputPattern: /✶/,
162
+ });
163
+ // Normal prompt output (no ✶)
164
+ detector.onPtyOutput('$ ');
165
+ jest.advanceTimersByTime(3000);
166
+ expect(onIdle).toHaveBeenCalledTimes(1);
167
+ detector.dispose();
168
+ });
169
+ it('after suppression, eventually signals idle when pattern disappears', () => {
170
+ const { detector, onIdle } = createDetector({
171
+ activeOutputPattern: /✶/,
172
+ });
173
+ // Status line with ✶
174
+ detector.onPtyOutput('✶ Working…');
175
+ jest.advanceTimersByTime(3000);
176
+ expect(onIdle).not.toHaveBeenCalled(); // suppressed
177
+ // Status line clears, prompt appears
178
+ detector.onPtyOutput('\r\n$ ');
179
+ jest.advanceTimersByTime(3000);
180
+ expect(onIdle).toHaveBeenCalledTimes(1);
181
+ detector.dispose();
182
+ });
183
+ it('updates lastLine correctly across multiple chunks with \\r rewrites', () => {
184
+ const { detector, onIdle } = createDetector({
185
+ activeOutputPattern: /✶/,
186
+ });
187
+ // Ink-style rewrite: partial content, then \r + full line
188
+ detector.onPtyOutput('✶ Step 1');
189
+ jest.advanceTimersByTime(1000);
190
+ // Carriage return rewrites the line — old content discarded
191
+ detector.onPtyOutput('\r$ done');
192
+ jest.advanceTimersByTime(3000);
193
+ // ✶ is no longer in the last line — should signal idle
194
+ expect(onIdle).toHaveBeenCalledTimes(1);
195
+ detector.dispose();
196
+ });
197
+ it('caps lastLine buffer to prevent unbounded growth', () => {
198
+ const { detector, onIdle } = createDetector({
199
+ activeOutputPattern: /✶/,
200
+ });
201
+ // Send a very long line
202
+ detector.onPtyOutput('x'.repeat(1000));
203
+ jest.advanceTimersByTime(3000);
204
+ // No pattern match — should signal idle normally
205
+ expect(onIdle).toHaveBeenCalledTimes(1);
206
+ detector.dispose();
207
+ });
208
+ it('works without activeOutputPattern (backward compatible)', () => {
209
+ const { detector, onIdle } = createDetector();
210
+ detector.onPtyOutput('✶ Working…');
211
+ jest.advanceTimersByTime(3000);
212
+ // No pattern configured — idle should fire normally
213
+ expect(onIdle).toHaveBeenCalledTimes(1);
214
+ detector.dispose();
215
+ });
216
+ });
146
217
  //# sourceMappingURL=idleDetector.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"idleDetector.test.js","sourceRoot":"","sources":["../../../../../src/webserver/__tests__/idleDetector.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idleDetector.test.js","sourceRoot":"","sources":["../../../../../src/webserver/__tests__/idleDetector.test.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,13 @@ const IGNORED_NETWORK_URLS = ['/api/health', '/__codeyam__/preview-health'];
9
9
  export function parseClientErrors(captureOutput) {
10
10
  const errors = [];
11
11
  for (const line of captureOutput.split('\n')) {
12
- if (line.includes('[JournalCapture] Page console.error:')) {
12
+ if (line.includes('[JournalCapture] HTTP error:')) {
13
+ errors.push(line.replace(/.*\[JournalCapture\] /, ''));
14
+ }
15
+ else if (line.includes('[JournalCapture] API response error:')) {
16
+ errors.push(line.replace(/.*\[JournalCapture\] /, ''));
17
+ }
18
+ else if (line.includes('[JournalCapture] Page console.error:')) {
13
19
  errors.push(line.replace(/.*\[JournalCapture\] Page console\.error:\s*/, ''));
14
20
  }
15
21
  else if (line.includes('[JournalCapture] Network failed:')) {
@@ -1 +1 @@
1
- {"version":3,"file":"clientErrors.js","sourceRoot":"","sources":["../../../../../../src/webserver/app/lib/clientErrors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientErrors.js","sourceRoot":"","sources":["../../../../../../src/webserver/app/lib/clientErrors.ts"],"names":[],"mappings":"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"}