@exaudeus/workrail 3.40.0 → 3.42.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 (105) hide show
  1. package/dist/cli/commands/init.js +0 -3
  2. package/dist/cli-worktrain.js +48 -11
  3. package/dist/cli.js +0 -18
  4. package/dist/config/app-config.d.ts +0 -16
  5. package/dist/config/app-config.js +0 -14
  6. package/dist/config/config-file.js +0 -3
  7. package/dist/console-ui/assets/index-DGj8EsFR.css +1 -0
  8. package/dist/console-ui/assets/index-DwfWMKvv.js +28 -0
  9. package/dist/console-ui/index.html +2 -2
  10. package/dist/context-assembly/deps.d.ts +8 -0
  11. package/dist/context-assembly/deps.js +2 -0
  12. package/dist/context-assembly/index.d.ts +6 -0
  13. package/dist/context-assembly/index.js +50 -0
  14. package/dist/context-assembly/infra.d.ts +3 -0
  15. package/dist/context-assembly/infra.js +154 -0
  16. package/dist/context-assembly/types.d.ts +30 -0
  17. package/dist/context-assembly/types.js +2 -0
  18. package/dist/coordinators/pr-review.d.ts +20 -1
  19. package/dist/coordinators/pr-review.js +189 -4
  20. package/dist/daemon/daemon-events.d.ts +9 -1
  21. package/dist/daemon/soul-template.d.ts +2 -2
  22. package/dist/daemon/soul-template.js +11 -1
  23. package/dist/daemon/workflow-runner.d.ts +14 -1
  24. package/dist/daemon/workflow-runner.js +406 -25
  25. package/dist/di/container.js +1 -25
  26. package/dist/di/tokens.d.ts +0 -3
  27. package/dist/di/tokens.js +0 -3
  28. package/dist/domain/execution/state.d.ts +6 -6
  29. package/dist/engine/engine-factory.js +0 -1
  30. package/dist/infrastructure/console-defaults.d.ts +1 -0
  31. package/dist/infrastructure/console-defaults.js +4 -0
  32. package/dist/infrastructure/session/index.d.ts +0 -1
  33. package/dist/infrastructure/session/index.js +1 -3
  34. package/dist/manifest.json +138 -122
  35. package/dist/mcp/handlers/session.d.ts +1 -0
  36. package/dist/mcp/handlers/session.js +61 -13
  37. package/dist/mcp/handlers/v2-workflow.d.ts +2 -2
  38. package/dist/mcp/output-schemas.d.ts +234 -234
  39. package/dist/mcp/server.js +1 -18
  40. package/dist/mcp/tools.d.ts +2 -2
  41. package/dist/mcp/transports/http-entry.js +0 -2
  42. package/dist/mcp/transports/stdio-entry.js +1 -2
  43. package/dist/mcp/types.d.ts +0 -2
  44. package/dist/mcp/v2/tools.d.ts +24 -24
  45. package/dist/trigger/daemon-console.d.ts +2 -0
  46. package/dist/trigger/daemon-console.js +1 -1
  47. package/dist/trigger/trigger-listener.d.ts +2 -0
  48. package/dist/trigger/trigger-listener.js +3 -1
  49. package/dist/trigger/trigger-router.d.ts +4 -3
  50. package/dist/trigger/trigger-router.js +4 -3
  51. package/dist/trigger/trigger-store.js +17 -4
  52. package/dist/v2/durable-core/schemas/artifacts/assessment.d.ts +2 -2
  53. package/dist/v2/durable-core/schemas/artifacts/coordinator-signal.d.ts +2 -2
  54. package/dist/v2/durable-core/schemas/artifacts/loop-control.d.ts +6 -6
  55. package/dist/v2/durable-core/schemas/artifacts/review-verdict.d.ts +6 -6
  56. package/dist/v2/durable-core/schemas/compiled-workflow/index.d.ts +56 -56
  57. package/dist/v2/durable-core/schemas/execution-snapshot/blocked-snapshot.d.ts +83 -83
  58. package/dist/v2/durable-core/schemas/execution-snapshot/execution-snapshot.v1.d.ts +1024 -1024
  59. package/dist/v2/durable-core/schemas/export-bundle/index.d.ts +2336 -2336
  60. package/dist/v2/durable-core/schemas/session/dag-topology.d.ts +6 -6
  61. package/dist/v2/durable-core/schemas/session/events.d.ts +339 -339
  62. package/dist/v2/durable-core/schemas/session/gaps.d.ts +30 -30
  63. package/dist/v2/durable-core/schemas/session/manifest.d.ts +6 -6
  64. package/dist/v2/durable-core/schemas/session/outputs.d.ts +8 -8
  65. package/dist/v2/durable-core/schemas/session/validation-event.d.ts +3 -3
  66. package/dist/v2/usecases/console-routes.d.ts +2 -1
  67. package/dist/v2/usecases/console-routes.js +29 -5
  68. package/dist/v2/usecases/console-service.js +14 -0
  69. package/dist/v2/usecases/console-types.d.ts +1 -0
  70. package/docs/authoring.md +16 -16
  71. package/docs/design/context-assembly-design-candidates.md +199 -0
  72. package/docs/design/context-assembly-implementation-plan.md +211 -0
  73. package/docs/design/context-assembly-review-findings.md +112 -0
  74. package/docs/design/coordinator-message-queue-drain-plan.md +241 -0
  75. package/docs/design/coordinator-message-queue-drain-review.md +120 -0
  76. package/docs/design/coordinator-message-queue-drain.md +289 -0
  77. package/docs/design/shaping-workflow-external-research.md +119 -0
  78. package/docs/discovery/late-bound-goals-impl-plan.md +147 -0
  79. package/docs/discovery/late-bound-goals-review.md +82 -0
  80. package/docs/discovery/late-bound-goals.md +118 -0
  81. package/docs/discovery/steer-endpoint-design-candidates.md +288 -0
  82. package/docs/discovery/steer-endpoint-design-review-findings.md +104 -0
  83. package/docs/discovery/steer-endpoint-implementation-plan.md +284 -0
  84. package/docs/ideas/backlog.md +356 -0
  85. package/docs/ideas/design-candidates-console-session-tree-impl.md +64 -0
  86. package/docs/ideas/design-candidates-session-tree-view.md +196 -0
  87. package/docs/ideas/design-review-findings-console-session-tree-impl.md +75 -0
  88. package/docs/ideas/design-review-findings-session-tree-view.md +88 -0
  89. package/docs/ideas/implementation_plan_session_tree_view.md +238 -0
  90. package/package.json +2 -1
  91. package/spec/authoring-spec.json +16 -16
  92. package/spec/shape.schema.json +178 -0
  93. package/spec/workflow-tags.json +232 -47
  94. package/workflows/coding-task-workflow-agentic.json +491 -480
  95. package/workflows/wr.shaping.json +182 -0
  96. package/dist/console-ui/assets/index-8dh0Psu-.css +0 -1
  97. package/dist/console-ui/assets/index-CXWCAonr.js +0 -28
  98. package/dist/infrastructure/session/DashboardHeartbeat.d.ts +0 -8
  99. package/dist/infrastructure/session/DashboardHeartbeat.js +0 -39
  100. package/dist/infrastructure/session/DashboardLockRelease.d.ts +0 -2
  101. package/dist/infrastructure/session/DashboardLockRelease.js +0 -29
  102. package/dist/infrastructure/session/HttpServer.d.ts +0 -60
  103. package/dist/infrastructure/session/HttpServer.js +0 -912
  104. package/workflows/coding-task-workflow-agentic.lean.v2.json +0 -648
  105. package/workflows/coding-task-workflow-agentic.v2.json +0 -324
@@ -1,8 +0,0 @@
1
- export declare class DashboardHeartbeat {
2
- private readonly lockFile;
3
- private readonly isPrimary;
4
- private timer;
5
- constructor(lockFile: string, isPrimary: () => boolean);
6
- start(): void;
7
- stop(): void;
8
- }
@@ -1,39 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DashboardHeartbeat = void 0;
7
- const promises_1 = __importDefault(require("fs/promises"));
8
- class DashboardHeartbeat {
9
- constructor(lockFile, isPrimary) {
10
- this.lockFile = lockFile;
11
- this.isPrimary = isPrimary;
12
- this.timer = null;
13
- }
14
- start() {
15
- this.stop();
16
- this.timer = setInterval(async () => {
17
- if (!this.isPrimary())
18
- return;
19
- try {
20
- const lockContent = await promises_1.default.readFile(this.lockFile, 'utf-8');
21
- const lockData = JSON.parse(lockContent);
22
- lockData.lastHeartbeat = new Date().toISOString();
23
- await promises_1.default.writeFile(this.lockFile, JSON.stringify(lockData, null, 2));
24
- }
25
- catch {
26
- }
27
- }, 30000);
28
- if (this.timer.unref) {
29
- this.timer.unref();
30
- }
31
- }
32
- stop() {
33
- if (!this.timer)
34
- return;
35
- clearInterval(this.timer);
36
- this.timer = null;
37
- }
38
- }
39
- exports.DashboardHeartbeat = DashboardHeartbeat;
@@ -1,2 +0,0 @@
1
- export declare function releaseLockFileSync(lockFile: string): void;
2
- export declare function releaseLockFile(lockFile: string): Promise<void>;
@@ -1,29 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.releaseLockFileSync = releaseLockFileSync;
7
- exports.releaseLockFile = releaseLockFile;
8
- const promises_1 = __importDefault(require("fs/promises"));
9
- function releaseLockFileSync(lockFile) {
10
- try {
11
- const fsSync = require('fs');
12
- fsSync.unlinkSync(lockFile);
13
- }
14
- catch (error) {
15
- if (error?.code !== 'ENOENT') {
16
- throw error;
17
- }
18
- }
19
- }
20
- async function releaseLockFile(lockFile) {
21
- try {
22
- await promises_1.default.unlink(lockFile);
23
- }
24
- catch (error) {
25
- if (error?.code !== 'ENOENT') {
26
- throw error;
27
- }
28
- }
29
- }
@@ -1,60 +0,0 @@
1
- import { Application } from 'express';
2
- import { SessionManager } from './SessionManager.js';
3
- import type { ProcessLifecyclePolicy } from '../../runtime/process-lifecycle-policy.js';
4
- import type { ProcessSignals } from '../../runtime/ports/process-signals.js';
5
- import type { ShutdownEvents } from '../../runtime/ports/shutdown-events.js';
6
- export type DashboardMode = {
7
- kind: 'unified';
8
- } | {
9
- kind: 'legacy';
10
- };
11
- export type BrowserBehavior = {
12
- kind: 'auto_open';
13
- } | {
14
- kind: 'manual';
15
- };
16
- export interface ServerConfig {
17
- port?: number;
18
- browserBehavior?: BrowserBehavior;
19
- dashboardMode?: DashboardMode;
20
- lockFilePath?: string;
21
- }
22
- export declare class HttpServer {
23
- private sessionManager;
24
- private readonly processLifecyclePolicy;
25
- private readonly processSignals;
26
- private readonly shutdownEvents;
27
- private readonly dashboardMode;
28
- private readonly browserBehavior;
29
- private app;
30
- private server;
31
- private port;
32
- private baseUrl;
33
- private isPrimary;
34
- private lockFile;
35
- private heartbeat;
36
- private _stopPromise;
37
- constructor(sessionManager: SessionManager, processLifecyclePolicy: ProcessLifecyclePolicy, processSignals: ProcessSignals, shutdownEvents: ShutdownEvents, dashboardMode: DashboardMode, browserBehavior: BrowserBehavior);
38
- private config;
39
- setConfig(config: ServerConfig): this;
40
- private setupMiddleware;
41
- private setupRoutes;
42
- start(): Promise<string | null>;
43
- private tryBecomePrimary;
44
- private shouldReclaimLock;
45
- private reclaimStaleLock;
46
- private setupPrimaryCleanup;
47
- private startAsPrimary;
48
- private startLegacyMode;
49
- private printBanner;
50
- openDashboard(sessionId?: string): Promise<string>;
51
- stop(): Promise<void>;
52
- private _runStop;
53
- mountRoutes(installer: (app: Application) => (() => void) | void): void;
54
- private readonly _routeDisposers;
55
- finalize(): void;
56
- getBaseUrl(): string;
57
- getPort(): number;
58
- fullCleanup(): Promise<number>;
59
- private getWorkrailPorts;
60
- }