@auto-engineer/pipeline 1.82.0 → 1.84.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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @auto-engineer/pipeline@1.82.0 build /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
2
+ > @auto-engineer/pipeline@1.84.0 build /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
3
3
  > tsc && tsx ../../scripts/fix-esm-imports.ts
4
4
 
5
5
  Fixed ESM imports in dist/
@@ -1,14 +1,14 @@
1
1
 
2
- > @auto-engineer/pipeline@1.81.0 test /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
2
+ > @auto-engineer/pipeline@1.83.0 test /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
3
3
  > vitest run --reporter=dot
4
4
 
5
5
 
6
6
   RUN  v3.2.4 /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
7
7
 
8
- ························································································································································································································································································································································································································································································································································
8
+ ·······································································································································································································································································································································································································································································································································································
9
9
 
10
-  Test Files  41 passed (41)
11
-  Tests  536 passed (536)
12
-  Start at  04:34:15
13
-  Duration  37.56s (transform 7.80s, setup 0ms, collect 14.54s, tests 30.28s, environment 26ms, prepare 26.68s)
10
+  Test Files  42 passed (42)
11
+  Tests  551 passed (551)
12
+  Start at  18:35:08
13
+  Duration  37.87s (transform 6.75s, setup 0ms, collect 14.45s, tests 28.59s, environment 38ms, prepare 28.21s)
14
14
 
@@ -1,4 +1,4 @@
1
1
 
2
- > @auto-engineer/pipeline@1.81.0 type-check /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
2
+ > @auto-engineer/pipeline@1.83.0 type-check /home/runner/work/auto-engineer/auto-engineer/packages/pipeline
3
3
  > tsc --noEmit
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,75 @@
1
1
  # @auto-engineer/pipeline
2
2
 
3
+ ## 1.84.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`7b5e912`](https://github.com/BeOnAuto/auto-engineer/commit/7b5e912dfda709fd3d33bf478f515d4e86c982af) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **server-implementer**: integrate shadow detection into retry loops
8
+ - **server-implementer**: add detectImportedTypeShadowing utility
9
+ - **server-generator-nestjs**: add model to ServerGenerationFailedEvent
10
+ - **server-generator-apollo-emmett**: add model to failure events
11
+ - **pipeline**: emit PipelineRunCompleted when all commands complete
12
+
13
+ - [`ba4b32f`](https://github.com/BeOnAuto/auto-engineer/commit/ba4b32f29fbfb45e14a6294fdc06583e466fb7e3) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: merge co-firing GWT conditions in gwt.ts
14
+
15
+ ### Patch Changes
16
+
17
+ - [`3271cfe`](https://github.com/BeOnAuto/auto-engineer/commit/3271cfe4b8be6316454045b02e1e0f1d1fd6414f) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: fix singleton projection instruction steps 1 and 4
18
+
19
+ - [`4833113`](https://github.com/BeOnAuto/auto-engineer/commit/4833113ca52361ca4a4c931390a48b592f1adc78) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: add snapshot test for co-firing rule merge
20
+
21
+ - [`c3c788d`](https://github.com/BeOnAuto/auto-engineer/commit/c3c788defe899dd9c3d50819759c15df764fab2e) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-implementer**: add Bursts 4-5 to ketchup plan
22
+
23
+ - Updated dependencies [[`7b5e912`](https://github.com/BeOnAuto/auto-engineer/commit/7b5e912dfda709fd3d33bf478f515d4e86c982af), [`3271cfe`](https://github.com/BeOnAuto/auto-engineer/commit/3271cfe4b8be6316454045b02e1e0f1d1fd6414f), [`ba4b32f`](https://github.com/BeOnAuto/auto-engineer/commit/ba4b32f29fbfb45e14a6294fdc06583e466fb7e3), [`4833113`](https://github.com/BeOnAuto/auto-engineer/commit/4833113ca52361ca4a4c931390a48b592f1adc78), [`c3c788d`](https://github.com/BeOnAuto/auto-engineer/commit/c3c788defe899dd9c3d50819759c15df764fab2e)]:
24
+ - @auto-engineer/file-store@1.84.0
25
+ - @auto-engineer/message-bus@1.84.0
26
+
27
+ ## 1.83.0
28
+
29
+ ### Minor Changes
30
+
31
+ - [`d4fca9a`](https://github.com/BeOnAuto/auto-engineer/commit/d4fca9a9898dfe2087a8489e5e9dbbd9a6253d24) Thanks [@SamHatoum](https://github.com/SamHatoum)! - - **pipeline**: emit PipelineRunCompleted when all commands complete
32
+
33
+ - [`dfda4a1`](https://github.com/BeOnAuto/auto-engineer/commit/dfda4a16a93f50100e7492990e6906bbc8b2445c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-implementer**: add detectImportedTypeShadowing utility
34
+
35
+ - [`a58a249`](https://github.com/BeOnAuto/auto-engineer/commit/a58a249899b6b97f6166d13a11e175478b9bcb8c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-nestjs**: add model to ServerGenerationFailedEvent
36
+
37
+ - [`98ba39b`](https://github.com/BeOnAuto/auto-engineer/commit/98ba39b83131ef24093e6100432d9cf6b1dcdd76) Thanks [@SamHatoum](https://github.com/SamHatoum)! - - **pipeline**: add debounce logic to QuiescenceTracker
38
+
39
+ - [`a305e78`](https://github.com/BeOnAuto/auto-engineer/commit/a305e788b5344d5533be3b95e7702bcbb03056f7) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-implementer**: integrate shadow detection into retry loops
40
+
41
+ - [`c8f3f9f`](https://github.com/BeOnAuto/auto-engineer/commit/c8f3f9ff4d173b063d039d3ee7bd6b639044dd5c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: add model to failure events
42
+
43
+ - [`2b920cc`](https://github.com/BeOnAuto/auto-engineer/commit/2b920cc6c90951d3fa6c1039cf883dd17e8d59c7) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - add restart commands for server, client, and storybook
44
+ - update killPortHolder to use graceful SIGTERM then SIGKILL
45
+ - sort imports in restart command files
46
+ - sort exports alphabetically to satisfy biome organizeImports
47
+ - **typical**: update clean:dev script to include installation step
48
+
49
+ ### Patch Changes
50
+
51
+ - [`e5f9f43`](https://github.com/BeOnAuto/auto-engineer/commit/e5f9f439a2c622d1241438e6b9431556c9e55691) Thanks [@SamHatoum](https://github.com/SamHatoum)! - - **pipeline**: verify PipelineRunCompleted waits for retries
52
+
53
+ - [`e2da8b5`](https://github.com/BeOnAuto/auto-engineer/commit/e2da8b5ccee2bc606dd8d7e13968e2c3081e4314) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-implementer**: add ketchup plan for type shadow detection
54
+
55
+ - [`3967f21`](https://github.com/BeOnAuto/auto-engineer/commit/3967f21a7bbc12aded3137b1d5982cd588a2ed51) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: clarify Internal State Pattern extends not replaces
56
+
57
+ - [`5b14f47`](https://github.com/BeOnAuto/auto-engineer/commit/5b14f472b15edee7255570eb0fc796ebbfa638e5) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: update ketchup-plan with completed model repair bursts
58
+
59
+ - [`d435781`](https://github.com/BeOnAuto/auto-engineer/commit/d4357815201bade7a48f665c3d8fa696c5755b4f) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **typical**: wire SubmitBugReport on generation failures
60
+
61
+ - [`afa04da`](https://github.com/BeOnAuto/auto-engineer/commit/afa04da090785aedf34567183db0e7a46f54c9ee) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: add ketchup plan for model repair system
62
+
63
+ - [`46189ec`](https://github.com/BeOnAuto/auto-engineer/commit/46189ec17840f8d42fb95003f82dead4875ddd03) Thanks [@SamHatoum](https://github.com/SamHatoum)! - - **pipeline**: update ketchup-plan with completed Phase 13
64
+
65
+ - [`f4bc85c`](https://github.com/BeOnAuto/auto-engineer/commit/f4bc85c4026522dfcfd15844bdc50e645185a912) Thanks [@SamHatoum](https://github.com/SamHatoum)! - - **server-generator-apollo-emmett**: remove invalid argument to reactor.close()
66
+
67
+ - [`3dbb41e`](https://github.com/BeOnAuto/auto-engineer/commit/3dbb41edf2d1eb3a7110038aeb29952befc570da) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed a bug where a required argument was missing when closing the reactor in the Apollo Emmett server generator
68
+
69
+ - Updated dependencies [[`e5f9f43`](https://github.com/BeOnAuto/auto-engineer/commit/e5f9f439a2c622d1241438e6b9431556c9e55691), [`d4fca9a`](https://github.com/BeOnAuto/auto-engineer/commit/d4fca9a9898dfe2087a8489e5e9dbbd9a6253d24), [`e2da8b5`](https://github.com/BeOnAuto/auto-engineer/commit/e2da8b5ccee2bc606dd8d7e13968e2c3081e4314), [`dfda4a1`](https://github.com/BeOnAuto/auto-engineer/commit/dfda4a16a93f50100e7492990e6906bbc8b2445c), [`3967f21`](https://github.com/BeOnAuto/auto-engineer/commit/3967f21a7bbc12aded3137b1d5982cd588a2ed51), [`a58a249`](https://github.com/BeOnAuto/auto-engineer/commit/a58a249899b6b97f6166d13a11e175478b9bcb8c), [`5b14f47`](https://github.com/BeOnAuto/auto-engineer/commit/5b14f472b15edee7255570eb0fc796ebbfa638e5), [`d435781`](https://github.com/BeOnAuto/auto-engineer/commit/d4357815201bade7a48f665c3d8fa696c5755b4f), [`98ba39b`](https://github.com/BeOnAuto/auto-engineer/commit/98ba39b83131ef24093e6100432d9cf6b1dcdd76), [`a305e78`](https://github.com/BeOnAuto/auto-engineer/commit/a305e788b5344d5533be3b95e7702bcbb03056f7), [`c8f3f9f`](https://github.com/BeOnAuto/auto-engineer/commit/c8f3f9ff4d173b063d039d3ee7bd6b639044dd5c), [`afa04da`](https://github.com/BeOnAuto/auto-engineer/commit/afa04da090785aedf34567183db0e7a46f54c9ee), [`46189ec`](https://github.com/BeOnAuto/auto-engineer/commit/46189ec17840f8d42fb95003f82dead4875ddd03), [`f4bc85c`](https://github.com/BeOnAuto/auto-engineer/commit/f4bc85c4026522dfcfd15844bdc50e645185a912), [`2b920cc`](https://github.com/BeOnAuto/auto-engineer/commit/2b920cc6c90951d3fa6c1039cf883dd17e8d59c7), [`3dbb41e`](https://github.com/BeOnAuto/auto-engineer/commit/3dbb41edf2d1eb3a7110038aeb29952befc570da)]:
70
+ - @auto-engineer/file-store@1.83.0
71
+ - @auto-engineer/message-bus@1.83.0
72
+
3
73
  ## 1.82.0
4
74
 
5
75
  ### Minor Changes
@@ -39,6 +39,7 @@ export declare class PipelineServer {
39
39
  private readonly storeFileName?;
40
40
  private sqliteEventStore?;
41
41
  private currentSessionId;
42
+ private readonly quiescenceTracker;
42
43
  constructor(config: PipelineServerConfig);
43
44
  get port(): number;
44
45
  getHttpServer(): HttpServer;
@@ -66,6 +67,7 @@ export declare class PipelineServer {
66
67
  private emitCommandDispatched;
67
68
  private emitDomainEventEmitted;
68
69
  private emitPipelineRunStarted;
70
+ private emitPipelineRunCompleted;
69
71
  private updateNodeStatus;
70
72
  private broadcastNodeStatusChanged;
71
73
  private broadcastPipelineRunStarted;
@@ -88,6 +90,7 @@ export declare class PipelineServer {
88
90
  private addMermaidStyles;
89
91
  private processCommand;
90
92
  private executeCommand;
93
+ private executeCommandInner;
91
94
  private getStatusFromEvents;
92
95
  private dispatchFromSettled;
93
96
  private handlePhasedComplete;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-server.d.ts","sourceRoot":"","sources":["../../../src/server/pipeline-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline-server.d.ts","sourceRoot":"","sources":["../../../src/server/pipeline-server.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { PipelineRuntime } from '../runtime/pipeline-runtime.js';
11
11
  import { createPipelineEventStore } from '../store/pipeline-event-store.js';
12
12
  import { createCommandGate } from './command-gate.js';
13
13
  import { createPhasedBridge } from './phased-bridge.js';
14
+ import { QuiescenceTracker } from './quiescence-tracker.js';
14
15
  import { SSEManager } from './sse-manager.js';
15
16
  import { createV2RuntimeBridge } from './v2-runtime-bridge.js';
16
17
  export class PipelineServer {
@@ -46,6 +47,12 @@ export class PipelineServer {
46
47
  });
47
48
  this.sseManager = new SSEManager();
48
49
  this.commandGate = createCommandGate();
50
+ this.quiescenceTracker = new QuiescenceTracker({
51
+ debounceMs: 50,
52
+ onQuiescent: () => {
53
+ void this.emitPipelineRunCompleted();
54
+ },
55
+ });
49
56
  }
50
57
  get port() {
51
58
  return this.actualPort;
@@ -498,6 +505,28 @@ export class PipelineServer {
498
505
  },
499
506
  ]);
500
507
  }
508
+ async emitPipelineRunCompleted() {
509
+ const correlationId = this.currentSessionId;
510
+ const requestId = `req-${nanoid()}`;
511
+ await this.eventStoreContext.eventStore.appendToStream(`pipeline-${correlationId}`, [
512
+ {
513
+ type: 'DomainEventEmitted',
514
+ data: {
515
+ correlationId,
516
+ requestId,
517
+ eventType: 'PipelineRunCompleted',
518
+ eventData: { correlationId, timestamp: new Date().toISOString() },
519
+ timestamp: new Date(),
520
+ },
521
+ },
522
+ ]);
523
+ const event = {
524
+ type: 'PipelineRunCompleted',
525
+ data: { correlationId, timestamp: new Date().toISOString() },
526
+ correlationId,
527
+ };
528
+ this.sseManager.broadcast(event);
529
+ }
501
530
  async updateNodeStatus(correlationId, commandName, status, lastDurationMs) {
502
531
  const existing = await this.eventStoreContext.readModel.getNodeStatus(correlationId, commandName);
503
532
  const previousStatus = existing?.status ?? 'idle';
@@ -777,6 +806,15 @@ export class PipelineServer {
777
806
  });
778
807
  }
779
808
  async executeCommand(command, handler, signal) {
809
+ this.quiescenceTracker.increment();
810
+ try {
811
+ await this.executeCommandInner(command, handler, signal);
812
+ }
813
+ finally {
814
+ this.quiescenceTracker.decrement();
815
+ }
816
+ }
817
+ async executeCommandInner(command, handler, signal) {
780
818
  const itemKey = this.extractItemKey(command.type, command.data, command.requestId);
781
819
  await this.getOrCreateItemStatus(this.currentSessionId, command.type, itemKey, command.requestId);
782
820
  await this.updateNodeStatus(this.currentSessionId, command.type, 'running');
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-server.js","sourceRoot":"","sources":["../../../src/server/pipeline-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline-server.js","sourceRoot":"","sources":["../../../src/server/pipeline-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export interface QuiescenceTrackerOptions {
2
+ debounceMs?: number;
3
+ onQuiescent?: () => void;
4
+ }
5
+ export declare class QuiescenceTracker {
6
+ private pendingCount;
7
+ private debounceTimer;
8
+ private readonly debounceMs;
9
+ private readonly onQuiescent?;
10
+ constructor(options?: QuiescenceTrackerOptions);
11
+ increment(): void;
12
+ decrement(): void;
13
+ isQuiescent(): boolean;
14
+ reset(): void;
15
+ private scheduleQuiescenceCheck;
16
+ private cancelDebounce;
17
+ }
18
+ //# sourceMappingURL=quiescence-tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quiescence-tracker.d.ts","sourceRoot":"","sources":["../../../src/server/quiescence-tracker.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;gBAE9B,OAAO,GAAE,wBAA6B;IAKlD,SAAS,IAAI,IAAI;IAKjB,SAAS,IAAI,IAAI;IAOjB,WAAW,IAAI,OAAO;IAItB,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,cAAc;CAMvB"}
@@ -0,0 +1,44 @@
1
+ export class QuiescenceTracker {
2
+ constructor(options = {}) {
3
+ this.pendingCount = 0;
4
+ this.debounceTimer = null;
5
+ this.debounceMs = options.debounceMs ?? 50;
6
+ this.onQuiescent = options.onQuiescent;
7
+ }
8
+ increment() {
9
+ this.pendingCount++;
10
+ this.cancelDebounce();
11
+ }
12
+ decrement() {
13
+ if (this.pendingCount > 0) {
14
+ this.pendingCount--;
15
+ }
16
+ this.scheduleQuiescenceCheck();
17
+ }
18
+ isQuiescent() {
19
+ return this.pendingCount === 0;
20
+ }
21
+ reset() {
22
+ this.pendingCount = 0;
23
+ this.cancelDebounce();
24
+ }
25
+ scheduleQuiescenceCheck() {
26
+ const callback = this.onQuiescent;
27
+ if (!this.isQuiescent() || !callback) {
28
+ return;
29
+ }
30
+ this.cancelDebounce();
31
+ this.debounceTimer = setTimeout(() => {
32
+ if (this.isQuiescent()) {
33
+ callback();
34
+ }
35
+ }, this.debounceMs);
36
+ }
37
+ cancelDebounce() {
38
+ if (this.debounceTimer !== null) {
39
+ clearTimeout(this.debounceTimer);
40
+ this.debounceTimer = null;
41
+ }
42
+ }
43
+ }
44
+ //# sourceMappingURL=quiescence-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quiescence-tracker.js","sourceRoot":"","sources":["../../../src/server/quiescence-tracker.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,iBAAiB;IAM5B,YAAY,UAAoC,EAAE;QAL1C,iBAAY,GAAG,CAAC,CAAC;QACjB,kBAAa,GAAyC,IAAI,CAAC;QAKjE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,uBAAuB;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}