@cyanautomation/kaseki-agent 1.27.0 → 1.27.2

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 (35) hide show
  1. package/dist/cli/commands/DoctorCommand.js +1 -1
  2. package/dist/index.d.ts +2 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +3 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/kaseki-api/index.d.ts +10 -0
  7. package/dist/kaseki-api/index.d.ts.map +1 -0
  8. package/dist/kaseki-api/index.js +10 -0
  9. package/dist/kaseki-api/index.js.map +1 -0
  10. package/dist/kaseki-api/service-bootstrapper.d.ts +60 -0
  11. package/dist/kaseki-api/service-bootstrapper.d.ts.map +1 -0
  12. package/dist/kaseki-api/service-bootstrapper.js +118 -0
  13. package/dist/kaseki-api/service-bootstrapper.js.map +1 -0
  14. package/dist/kaseki-api/setup-orchestrator.d.ts +32 -0
  15. package/dist/kaseki-api/setup-orchestrator.d.ts.map +1 -0
  16. package/dist/kaseki-api/setup-orchestrator.js +111 -0
  17. package/dist/kaseki-api/setup-orchestrator.js.map +1 -0
  18. package/dist/kaseki-api-service-wrapper.d.ts +1 -4
  19. package/dist/kaseki-api-service-wrapper.d.ts.map +1 -1
  20. package/dist/kaseki-api-service-wrapper.js +20 -32
  21. package/dist/kaseki-api-service-wrapper.js.map +1 -1
  22. package/dist/kaseki-api-service.d.ts +7 -15
  23. package/dist/kaseki-api-service.d.ts.map +1 -1
  24. package/dist/kaseki-api-service.js +13 -138
  25. package/dist/kaseki-api-service.js.map +1 -1
  26. package/dist/openapi-spec-generator.d.ts +0 -1
  27. package/dist/openapi-spec-generator.d.ts.map +1 -1
  28. package/dist/openapi-spec-generator.js +0 -1
  29. package/dist/openapi-spec-generator.js.map +1 -1
  30. package/dist/openapi-spec-generators/paths.d.ts +0 -1
  31. package/dist/openapi-spec-generators/paths.d.ts.map +1 -1
  32. package/dist/openapi-spec-generators/paths.js +0 -1
  33. package/dist/openapi-spec-generators/paths.js.map +1 -1
  34. package/package.json +4 -3
  35. package/scripts/startup-checks.sh +1 -1
@@ -234,7 +234,7 @@ export class DoctorCommand extends BaseCommand {
234
234
  const replacement = file.path.replace(/github_client_id/g, 'github_app_client_id');
235
235
  lines.push(` • ${file.name}: not found at ${file.path}`);
236
236
  lines.push(` ⚠️ Hint: Did you mean '${replacement}'?`);
237
- lines.push(` The filename should be "github_app_client_id" (with "app_" prefix), not just "github_client_id".`);
237
+ lines.push(' The filename should be "github_app_client_id" (with "app_" prefix), not just "github_client_id".');
238
238
  }
239
239
  else {
240
240
  lines.push(` • ${file.name}: not found at ${file.path}`);
package/dist/index.d.ts CHANGED
@@ -2,7 +2,8 @@ export { JobScheduler } from './job-scheduler';
2
2
  export { ResultCache } from './result-cache';
3
3
  export { WebhookManager } from './webhook-manager';
4
4
  export { KasekiApiConfig, validateApiKey, loadConfig } from './kaseki-api-config';
5
- export { createGracefulShutdown, assertSupportedNodeVersion } from './kaseki-api-service';
5
+ export { initializeSetup, type SetupContext, } from './kaseki-api/setup-orchestrator';
6
+ export { bootstrapServices, gracefulShutdown, type BootstrappedServices, type ShutdownDeps, } from './kaseki-api/service-bootstrapper';
6
7
  export type { Job, RunRequest, RunResponse, StatusResponse, StructuredProgress, LogResponse, ArtifactResponse, RunsListResponse, ErrorResponse, ValidationResponse, PreflightCheck, PreflightResponse, AnalysisResponse, WebhookPayload, WebhookEventType, } from './kaseki-api-types';
7
8
  export { KasekiApiClient } from './kaseki-api-client';
8
9
  export { sendErrorResponse, buildStatusResponse, detectContentType } from './utils/response-helpers';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAG1F,YAAY,EACV,GAAG,EACH,UAAU,EACV,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EACL,cAAc,EACd,cAAc,IAAI,cAAc,EAChC,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,eAAe,EACf,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGlF,OAAO,EACL,eAAe,EACf,KAAK,YAAY,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,GAClB,MAAM,mCAAmC,CAAC;AAG3C,YAAY,EACV,GAAG,EACH,UAAU,EACV,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EACL,cAAc,EACd,cAAc,IAAI,cAAc,EAChC,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,eAAe,EACf,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -6,7 +6,9 @@ export { ResultCache } from './result-cache.js';
6
6
  export { WebhookManager } from './webhook-manager.js';
7
7
  // Configuration & Utilities
8
8
  export { validateApiKey, loadConfig } from './kaseki-api-config.js';
9
- export { createGracefulShutdown, assertSupportedNodeVersion } from './kaseki-api-service.js';
9
+ // Kaseki API orchestration (refactored modules)
10
+ export { initializeSetup, } from './kaseki-api/setup-orchestrator.js';
11
+ export { bootstrapServices, gracefulShutdown, } from './kaseki-api/service-bootstrapper.js';
10
12
  // Client
11
13
  export { KasekiApiClient } from './kaseki-api-client.js';
12
14
  // Utilities (Phase 1 extractions)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6DAA6D;AAE7D,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,4BAA4B;AAC5B,OAAO,EAAmB,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAqB1F,SAAS;AACT,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,kCAAkC;AAClC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EACL,cAAc,EACd,cAAc,IAAI,cAAc,EAChC,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,eAAe,EACf,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,qCAAqC;AACrC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,kCAAkC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,sCAAsC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6DAA6D;AAE7D,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,4BAA4B;AAC5B,OAAO,EAAmB,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAElF,gDAAgD;AAChD,OAAO,EACL,eAAe,GAEhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GAGjB,MAAM,mCAAmC,CAAC;AAqB3C,SAAS;AACT,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,kCAAkC;AAClC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EACL,cAAc,EACd,cAAc,IAAI,cAAc,EAChC,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,eAAe,EACf,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,qCAAqC;AACrC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,kCAAkC;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,sCAAsC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Public API for kaseki-api module
3
+ *
4
+ * Exports:
5
+ * - SetupOrchestrator: Node version validation + template initialization
6
+ * - ServiceBootstrapper: Component initialization + graceful shutdown
7
+ */
8
+ export { initializeSetup, type SetupContext } from './setup-orchestrator';
9
+ export { bootstrapServices, gracefulShutdown, type BootstrappedServices, type ShutdownDeps, } from './service-bootstrapper';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kaseki-api/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Public API for kaseki-api module
3
+ *
4
+ * Exports:
5
+ * - SetupOrchestrator: Node version validation + template initialization
6
+ * - ServiceBootstrapper: Component initialization + graceful shutdown
7
+ */
8
+ export { initializeSetup } from './setup-orchestrator.js';
9
+ export { bootstrapServices, gracefulShutdown, } from './service-bootstrapper.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/kaseki-api/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAqB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GAGjB,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import type { Server } from 'http';
2
+ import type { KasekiApiConfig } from '../kaseki-api-config';
3
+ import { JobScheduler } from '../job-scheduler';
4
+ import { WebhookManager } from '../webhook-manager';
5
+ import { IdempotencyStore } from '../idempotency-store';
6
+ import { PreFlightValidator } from '../pre-flight-validator';
7
+ import { ResultCache } from '../result-cache';
8
+ /**
9
+ * All bootstrapped service instances, ready for use
10
+ */
11
+ export interface BootstrappedServices {
12
+ artifactCache: ResultCache;
13
+ webhookManager: WebhookManager;
14
+ idempotencyStore: IdempotencyStore;
15
+ preFlightValidator: PreFlightValidator;
16
+ scheduler: JobScheduler;
17
+ }
18
+ /**
19
+ * Dependencies required for graceful shutdown orchestration
20
+ */
21
+ export interface ShutdownDeps {
22
+ server: Server;
23
+ scheduler: Pick<JobScheduler, 'shutdown'>;
24
+ webhookManager: Pick<WebhookManager, 'shutdown'>;
25
+ idempotencyStore: Pick<IdempotencyStore, 'shutdown'>;
26
+ forceExitAfterMs?: number;
27
+ exit?: (code: number) => never;
28
+ }
29
+ /**
30
+ * Bootstraps all service components with proper dependency injection and initialization order
31
+ *
32
+ * Initialization sequence (order matters for dependencies):
33
+ * 1. ResultCache (standalone, no dependencies)
34
+ * 2. WebhookManager (depends on: resultsDir)
35
+ * 3. IdempotencyStore (depends on: resultsDir)
36
+ * 4. PreFlightValidator (standalone)
37
+ * 5. JobScheduler (depends on: config, webhookManager, artifactCache)
38
+ *
39
+ * @param config - Validated KasekiApiConfig
40
+ * @returns BootstrappedServices object with all initialized services
41
+ * @throws Error with context if any service initialization fails
42
+ */
43
+ export declare function bootstrapServices(config: KasekiApiConfig): Promise<BootstrappedServices>;
44
+ /**
45
+ * Orchestrates graceful shutdown of all services and the HTTP server
46
+ *
47
+ * Shutdown sequence:
48
+ * 1. Close HTTP server (stop accepting new connections)
49
+ * 2. Shutdown scheduler (cancel running jobs)
50
+ * 3. Shutdown webhook manager (flush pending webhooks)
51
+ * 4. Shutdown idempotency store (finalize persistence)
52
+ * 5. Exit process
53
+ *
54
+ * Hard timeout (8000ms default) ensures process exits even if services hang
55
+ *
56
+ * @param deps - ShutdownDeps with server and all service instances
57
+ * @throws Error if shutdown sequence fails (but still attempts exit)
58
+ */
59
+ export declare function gracefulShutdown(deps: ShutdownDeps): Promise<void>;
60
+ //# sourceMappingURL=service-bootstrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-bootstrapper.d.ts","sourceRoot":"","sources":["../../src/kaseki-api/service-bootstrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,WAAW,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC1C,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IACjD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;CAChC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA+C9F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAkDxE"}
@@ -0,0 +1,118 @@
1
+ import { createEventLogger } from '../logger.js';
2
+ import { JobScheduler } from '../job-scheduler.js';
3
+ import { WebhookManager } from '../webhook-manager.js';
4
+ import { IdempotencyStore } from '../idempotency-store.js';
5
+ import { PreFlightValidator } from '../pre-flight-validator.js';
6
+ import { ResultCache } from '../result-cache.js';
7
+ const logger = createEventLogger('service-bootstrapper');
8
+ /**
9
+ * Bootstraps all service components with proper dependency injection and initialization order
10
+ *
11
+ * Initialization sequence (order matters for dependencies):
12
+ * 1. ResultCache (standalone, no dependencies)
13
+ * 2. WebhookManager (depends on: resultsDir)
14
+ * 3. IdempotencyStore (depends on: resultsDir)
15
+ * 4. PreFlightValidator (standalone)
16
+ * 5. JobScheduler (depends on: config, webhookManager, artifactCache)
17
+ *
18
+ * @param config - Validated KasekiApiConfig
19
+ * @returns BootstrappedServices object with all initialized services
20
+ * @throws Error with context if any service initialization fails
21
+ */
22
+ export async function bootstrapServices(config) {
23
+ logger.info('Starting service bootstrap');
24
+ try {
25
+ // 1. Create artifact cache (no dependencies)
26
+ logger.info('Initializing ResultCache');
27
+ const artifactCache = new ResultCache({
28
+ maxEntries: config.artifactCacheMaxEntries,
29
+ ttlMs: config.artifactCacheTtlMs,
30
+ maxFileBytes: config.artifactCacheMaxFileBytes,
31
+ });
32
+ logger.info('ResultCache initialized');
33
+ // 2. Create webhook manager (depends on: resultsDir)
34
+ logger.info('Initializing WebhookManager');
35
+ const webhookManager = new WebhookManager(config.resultsDir);
36
+ logger.info('WebhookManager initialized');
37
+ // 3. Create idempotency store (depends on: resultsDir)
38
+ logger.info('Initializing IdempotencyStore');
39
+ const idempotencyStore = new IdempotencyStore(config.resultsDir, 24);
40
+ logger.info('IdempotencyStore initialized');
41
+ // 4. Create pre-flight validator (no dependencies)
42
+ logger.info('Initializing PreFlightValidator');
43
+ const preFlightValidator = new PreFlightValidator();
44
+ logger.info('PreFlightValidator initialized');
45
+ // 5. Create scheduler (depends on: config, webhookManager, artifactCache)
46
+ logger.info('Initializing JobScheduler');
47
+ const scheduler = new JobScheduler(config, webhookManager, artifactCache);
48
+ logger.info('JobScheduler initialized');
49
+ logger.info('Service bootstrap complete');
50
+ return {
51
+ artifactCache,
52
+ webhookManager,
53
+ idempotencyStore,
54
+ preFlightValidator,
55
+ scheduler,
56
+ };
57
+ }
58
+ catch (err) {
59
+ const errorMessage = err instanceof Error ? err.message : String(err);
60
+ logger.error('Failed to bootstrap services', { error: errorMessage });
61
+ throw new Error(`Service bootstrap failed: ${errorMessage}`, { cause: err });
62
+ }
63
+ }
64
+ /**
65
+ * Orchestrates graceful shutdown of all services and the HTTP server
66
+ *
67
+ * Shutdown sequence:
68
+ * 1. Close HTTP server (stop accepting new connections)
69
+ * 2. Shutdown scheduler (cancel running jobs)
70
+ * 3. Shutdown webhook manager (flush pending webhooks)
71
+ * 4. Shutdown idempotency store (finalize persistence)
72
+ * 5. Exit process
73
+ *
74
+ * Hard timeout (8000ms default) ensures process exits even if services hang
75
+ *
76
+ * @param deps - ShutdownDeps with server and all service instances
77
+ * @throws Error if shutdown sequence fails (but still attempts exit)
78
+ */
79
+ export async function gracefulShutdown(deps) {
80
+ const { server, scheduler, webhookManager, idempotencyStore, forceExitAfterMs = 8000, exit = process.exit, } = deps;
81
+ logger.info('Starting graceful shutdown', { timeoutMs: forceExitAfterMs });
82
+ const hardTimeout = setTimeout(() => {
83
+ logger.error(`Graceful shutdown timeout after ${forceExitAfterMs}ms, forcing exit`);
84
+ exit(1);
85
+ }, forceExitAfterMs);
86
+ try {
87
+ // 1. Close HTTP server
88
+ await new Promise((resolve, reject) => {
89
+ server.close((err) => {
90
+ if (err) {
91
+ reject(err);
92
+ return;
93
+ }
94
+ logger.info('HTTP server closed');
95
+ resolve();
96
+ });
97
+ });
98
+ // 2. Shutdown scheduler
99
+ scheduler.shutdown();
100
+ logger.info('Job scheduler shutdown');
101
+ // 3. Shutdown webhook manager
102
+ await webhookManager.shutdown();
103
+ logger.info('Webhook manager shutdown');
104
+ // 4. Shutdown idempotency store
105
+ idempotencyStore.shutdown();
106
+ logger.info('Idempotency store shutdown');
107
+ logger.info('Graceful shutdown complete');
108
+ exit(0);
109
+ }
110
+ catch (err) {
111
+ logger.error('Error during graceful shutdown', { error: String(err) });
112
+ exit(1);
113
+ }
114
+ finally {
115
+ clearTimeout(hardTimeout);
116
+ }
117
+ }
118
+ //# sourceMappingURL=service-bootstrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-bootstrapper.js","sourceRoot":"","sources":["../../src/kaseki-api/service-bootstrapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Context returned after successful setup initialization
3
+ */
4
+ export interface SetupContext {
5
+ nodeVersionValid: boolean;
6
+ templateInitialized: boolean;
7
+ templateDir: string;
8
+ }
9
+ /**
10
+ * Validates that the runtime Node version meets minimum requirements
11
+ * @throws Calls process.exit(1) if validation fails
12
+ */
13
+ export declare function assertSupportedNodeVersion(version?: string, minimumMajor?: number): void;
14
+ /**
15
+ * Phase 3: Auto-initialize /agents/kaseki-template if missing
16
+ * This eliminates the need for manual 'kaseki-activate.sh --controller bootstrap'
17
+ *
18
+ * Tries three strategies in order:
19
+ * 1. Copy from /app/kaseki-template (Docker image seed)
20
+ * 2. Create symlink to /app/run-kaseki.sh (Docker fallback)
21
+ * 3. Continue with warning (jobs will fail with clear error message)
22
+ */
23
+ export declare function ensureTemplateInitialized(templateDir: string): Promise<void>;
24
+ /**
25
+ * Orchestrates setup initialization: validates Node version and initializes template directory
26
+ *
27
+ * @param templateDir - Path to template directory (defaults to KASEKI_TEMPLATE_DIR env var or /agents/kaseki-template)
28
+ * @returns SetupContext with initialization status
29
+ * @throws Calls process.exit(1) if Node version validation fails
30
+ */
31
+ export declare function initializeSetup(templateDir?: string): Promise<SetupContext>;
32
+ //# sourceMappingURL=setup-orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-orchestrator.d.ts","sourceRoot":"","sources":["../../src/kaseki-api/setup-orchestrator.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,MAA8B,EACvC,YAAY,GAAE,MAAW,GACxB,IAAI,CAaN;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkElF;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC,CAkBvB"}
@@ -0,0 +1,111 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { execSync } from 'child_process';
4
+ import { createEventLogger } from '../logger.js';
5
+ const logger = createEventLogger('setup-orchestrator');
6
+ /**
7
+ * Validates that the runtime Node version meets minimum requirements
8
+ * @throws Calls process.exit(1) if validation fails
9
+ */
10
+ export function assertSupportedNodeVersion(version = process.versions.node, minimumMajor = 24) {
11
+ const normalizedVersion = version.trim();
12
+ const isValidVersion = /^\d+(?:\.\d+){0,2}$/.test(normalizedVersion);
13
+ const major = Number.parseInt(normalizedVersion.split('.')[0] ?? '', 10);
14
+ logger.info(`Node runtime detected: v${normalizedVersion}`);
15
+ if (!isValidVersion || !Number.isFinite(major) || major < minimumMajor) {
16
+ logger.error(`Unsupported Node.js runtime v${normalizedVersion}. Kaseki API service requires Node.js >= ${minimumMajor}. Please upgrade Node or deploy the Docker image built from this repo's Dockerfile (node:24-bookworm-slim).`);
17
+ process.exit(1);
18
+ }
19
+ }
20
+ /**
21
+ * Phase 3: Auto-initialize /agents/kaseki-template if missing
22
+ * This eliminates the need for manual 'kaseki-activate.sh --controller bootstrap'
23
+ *
24
+ * Tries three strategies in order:
25
+ * 1. Copy from /app/kaseki-template (Docker image seed)
26
+ * 2. Create symlink to /app/run-kaseki.sh (Docker fallback)
27
+ * 3. Continue with warning (jobs will fail with clear error message)
28
+ */
29
+ export async function ensureTemplateInitialized(templateDir) {
30
+ const runScript = path.join(templateDir, 'run-kaseki.sh');
31
+ // Check if bootstrap is already complete
32
+ if (fs.existsSync(runScript)) {
33
+ logger.info('Template directory is initialized', { templateDir, runScript });
34
+ return;
35
+ }
36
+ // Template is missing - try to initialize it
37
+ logger.info('Template directory missing; attempting auto-initialization...', { templateDir });
38
+ try {
39
+ // Ensure parent directory exists
40
+ const parentDir = path.dirname(templateDir);
41
+ if (!fs.existsSync(parentDir)) {
42
+ fs.mkdirSync(parentDir, { recursive: true, mode: 0o755 });
43
+ logger.info('Created parent directory', { parentDir });
44
+ }
45
+ // Try strategy 1: Copy from image
46
+ // If we're running in Docker and the template exists at /app/kaseki-template, copy it
47
+ const imageTemplateDir = '/app/kaseki-template';
48
+ if (fs.existsSync(imageTemplateDir) && fs.existsSync(path.join(imageTemplateDir, 'run-kaseki.sh'))) {
49
+ try {
50
+ execSync(`cp -r "${imageTemplateDir}" "${templateDir}"`, { stdio: 'pipe' });
51
+ logger.info('Template initialized from Docker image', { templateDir });
52
+ return;
53
+ }
54
+ catch (err) {
55
+ logger.warn('Failed to copy template from image; trying alternate strategy', {
56
+ error: err instanceof Error ? err.message : String(err),
57
+ });
58
+ }
59
+ }
60
+ // Try strategy 2: Create symlink to /app (if we're in Docker)
61
+ if (fs.existsSync('/app/run-kaseki.sh')) {
62
+ try {
63
+ // Create template directory and symlink key files
64
+ fs.mkdirSync(templateDir, { recursive: true, mode: 0o755 });
65
+ fs.symlinkSync('/app/run-kaseki.sh', runScript, 'file');
66
+ logger.info('Template initialized via symlink to /app', { templateDir });
67
+ return;
68
+ }
69
+ catch (err) {
70
+ logger.warn('Failed to create symlink; trying alternate strategy', {
71
+ error: err instanceof Error ? err.message : String(err),
72
+ });
73
+ }
74
+ }
75
+ // Strategy 3 failed - log warning but continue
76
+ // The API will start but jobs will fail with clear error message
77
+ logger.warn('Could not auto-initialize template directory. Jobs will fail until bootstrap is completed manually.', {
78
+ templateDir,
79
+ remediation: 'Run: docker exec <container> /scripts/startup-checks.sh bootstrap',
80
+ });
81
+ }
82
+ catch (err) {
83
+ logger.error('Unexpected error during template initialization', {
84
+ error: err instanceof Error ? err.message : String(err),
85
+ templateDir,
86
+ });
87
+ // Continue anyway - jobs will fail with clear error message
88
+ }
89
+ }
90
+ /**
91
+ * Orchestrates setup initialization: validates Node version and initializes template directory
92
+ *
93
+ * @param templateDir - Path to template directory (defaults to KASEKI_TEMPLATE_DIR env var or /agents/kaseki-template)
94
+ * @returns SetupContext with initialization status
95
+ * @throws Calls process.exit(1) if Node version validation fails
96
+ */
97
+ export async function initializeSetup(templateDir) {
98
+ const resolvedTemplateDir = templateDir || process.env.KASEKI_TEMPLATE_DIR || '/agents/kaseki-template';
99
+ logger.info('Starting setup orchestration', { templateDir: resolvedTemplateDir });
100
+ // Validate Node version (will call process.exit(1) if invalid)
101
+ assertSupportedNodeVersion();
102
+ // Initialize template directory
103
+ await ensureTemplateInitialized(resolvedTemplateDir);
104
+ logger.info('Setup orchestration complete');
105
+ return {
106
+ nodeVersionValid: true,
107
+ templateInitialized: true,
108
+ templateDir: resolvedTemplateDir,
109
+ };
110
+ }
111
+ //# sourceMappingURL=setup-orchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-orchestrator.js","sourceRoot":"","sources":["../../src/kaseki-api/setup-orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,MAAM,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;AAWvD;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CACxC,UAAkB,OAAO,CAAC,QAAQ,CAAC,IAAI,EACvC,eAAuB,EAAE;IAEzB,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzE,MAAM,CAAC,IAAI,CAAC,2BAA2B,iBAAiB,EAAE,CAAC,CAAC;IAE5D,IAAI,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,YAAY,EAAE,CAAC;QACvE,MAAM,CAAC,KAAK,CACV,gCAAgC,iBAAiB,4CAA4C,YAAY,6GAA6G,CACvN,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,WAAmB;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAE1D,yCAAyC;IACzC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IAED,6CAA6C;IAC7C,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAE9F,IAAI,CAAC;QACH,iCAAiC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,kCAAkC;QAClC,sFAAsF;QACtF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;QAChD,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;YACnG,IAAI,CAAC;gBACH,QAAQ,CAAC,UAAU,gBAAgB,MAAM,WAAW,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC5E,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE;oBAC3E,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,IAAI,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,kDAAkD;gBAClD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5D,EAAE,CAAC,WAAW,CAAC,oBAAoB,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACxD,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBACzE,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE;oBACjE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,iEAAiE;QACjE,MAAM,CAAC,IAAI,CACT,qGAAqG,EACrG;YACE,WAAW;YACX,WAAW,EAAE,mEAAmE;SACjF,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE;YAC9D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACvD,WAAW;SACZ,CAAC,CAAC;QACH,4DAA4D;IAC9D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAoB;IAEpB,MAAM,mBAAmB,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,yBAAyB,CAAC;IAExG,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAElF,+DAA+D;IAC/D,0BAA0B,EAAE,CAAC;IAE7B,gCAAgC;IAChC,MAAM,yBAAyB,CAAC,mBAAmB,CAAC,CAAC;IAErD,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAE5C,OAAO;QACL,gBAAgB,EAAE,IAAI;QACtB,mBAAmB,EAAE,IAAI;QACzB,WAAW,EAAE,mBAAmB;KACjC,CAAC;AACJ,CAAC"}
@@ -11,10 +11,7 @@ interface KasekiAPIServiceOptions {
11
11
  declare class KasekiAPIServiceImpl {
12
12
  private server;
13
13
  private logger;
14
- private scheduler;
15
- private webhookManager;
16
- private idempotencyStore;
17
- private artifactCache;
14
+ private services;
18
15
  private config;
19
16
  constructor(options?: KasekiAPIServiceOptions);
20
17
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"kaseki-api-service-wrapper.d.ts","sourceRoot":"","sources":["../src/kaseki-api-service-wrapper.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,UAAU,uBAAuB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,oBAAoB;IACxB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,GAAE,uBAA4B;IA2BjD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0G5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KACd;CAOJ;AAED,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"kaseki-api-service-wrapper.d.ts","sourceRoot":"","sources":["../src/kaseki-api-service-wrapper.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,UAAU,uBAAuB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,oBAAoB;IACxB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,QAAQ,CAAqC;IACrD,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,GAAE,uBAA4B;IA2BjD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8F5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KACd;CAOJ;AAED,eAAe,oBAAoB,CAAC"}
@@ -5,21 +5,14 @@
5
5
  */
6
6
  import express from 'express';
7
7
  import { loadConfig } from './kaseki-api-config.js';
8
- import { JobScheduler } from './job-scheduler.js';
9
- import { WebhookManager } from './webhook-manager.js';
10
- import { IdempotencyStore } from './idempotency-store.js';
11
- import { PreFlightValidator } from './pre-flight-validator.js';
12
8
  import { createApiRouter } from './kaseki-api-routes.js';
13
9
  import { createEventLogger } from './logger.js';
14
- import { ResultCache } from './result-cache.js';
15
- import { createGracefulShutdown, assertSupportedNodeVersion } from './kaseki-api-service.js';
10
+ import { initializeSetup } from './kaseki-api/setup-orchestrator.js';
11
+ import { bootstrapServices, gracefulShutdown } from './kaseki-api/service-bootstrapper.js';
16
12
  class KasekiAPIServiceImpl {
17
13
  server = null;
18
14
  logger = createEventLogger('kaseki-api');
19
- scheduler = null;
20
- webhookManager = null;
21
- idempotencyStore = null;
22
- artifactCache = null;
15
+ services = null;
23
16
  config = loadConfig();
24
17
  constructor(options = {}) {
25
18
  // Override config port if provided
@@ -50,8 +43,8 @@ class KasekiAPIServiceImpl {
50
43
  */
51
44
  async start() {
52
45
  try {
53
- // Validate Node.js version
54
- assertSupportedNodeVersion();
46
+ // Initialize setup (Node version check, template init)
47
+ await initializeSetup();
55
48
  // Log startup configuration
56
49
  this.logger.event('service_startup_config', {
57
50
  port: this.config.port,
@@ -65,22 +58,13 @@ class KasekiAPIServiceImpl {
65
58
  if (this.config.apiKeys.length === 0) {
66
59
  this.logger.warn('⚠️ Kaseki API authentication is disabled; service will only bind to loopback for trusted local development.', { host: this.config.host, remediation: 'Set KASEKI_API_KEYS before exposing the API on a network interface.' });
67
60
  }
61
+ // Bootstrap service components
62
+ this.services = await bootstrapServices(this.config);
68
63
  // Create Express app
69
64
  const app = express();
70
65
  app.use(express.json());
71
- // Create managers
72
- this.artifactCache = new ResultCache({
73
- maxEntries: this.config.artifactCacheMaxEntries,
74
- ttlMs: this.config.artifactCacheTtlMs,
75
- maxFileBytes: this.config.artifactCacheMaxFileBytes,
76
- });
77
- this.webhookManager = new WebhookManager(this.config.resultsDir);
78
- this.idempotencyStore = new IdempotencyStore(this.config.resultsDir, 24);
79
- const preFlightValidator = new PreFlightValidator();
80
- // Create scheduler
81
- this.scheduler = new JobScheduler(this.config, this.webhookManager, this.artifactCache);
82
66
  // Mount API routes
83
- const apiRouter = createApiRouter(this.scheduler, this.config, this.idempotencyStore, preFlightValidator, this.artifactCache);
67
+ const apiRouter = createApiRouter(this.services.scheduler, this.config, this.services.idempotencyStore, this.services.preFlightValidator, this.services.artifactCache);
84
68
  app.use('/api', apiRouter);
85
69
  app.use('/', apiRouter);
86
70
  // Start server
@@ -101,15 +85,19 @@ class KasekiAPIServiceImpl {
101
85
  ? app.listen(this.config.port, this.config.host, onListening)
102
86
  : app.listen(this.config.port, onListening);
103
87
  // Setup graceful shutdown
104
- if (this.server && this.scheduler && this.webhookManager && this.idempotencyStore) {
105
- const gracefulShutdown = createGracefulShutdown({
88
+ if (this.server && this.services) {
89
+ process.on('SIGTERM', () => void gracefulShutdown({
106
90
  server: this.server,
107
- scheduler: this.scheduler,
108
- webhookManager: this.webhookManager,
109
- idempotencyStore: this.idempotencyStore,
110
- });
111
- process.on('SIGTERM', () => void gracefulShutdown('SIGTERM'));
112
- process.on('SIGINT', () => void gracefulShutdown('SIGINT'));
91
+ scheduler: this.services.scheduler,
92
+ webhookManager: this.services.webhookManager,
93
+ idempotencyStore: this.services.idempotencyStore,
94
+ }));
95
+ process.on('SIGINT', () => void gracefulShutdown({
96
+ server: this.server,
97
+ scheduler: this.services.scheduler,
98
+ webhookManager: this.services.webhookManager,
99
+ idempotencyStore: this.services.idempotencyStore,
100
+ }));
113
101
  }
114
102
  // Catch unhandled errors
115
103
  process.on('uncaughtException', (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"kaseki-api-service-wrapper.js","sourceRoot":"","sources":["../src/kaseki-api-service-wrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kaseki-api-service-wrapper.js","sourceRoot":"","sources":["../src/kaseki-api-service-wrapper.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,8 @@
1
- import type { Server } from 'http';
2
- import { JobScheduler } from './job-scheduler';
3
- import { WebhookManager } from './webhook-manager';
4
- import { IdempotencyStore } from './idempotency-store';
5
- type ShutdownDeps = {
6
- server: Server;
7
- scheduler: Pick<JobScheduler, 'shutdown'>;
8
- webhookManager: WebhookManager;
9
- idempotencyStore: IdempotencyStore;
10
- forceExitAfterMs?: number;
11
- exit?: (code: number) => never;
12
- };
13
- export declare function createGracefulShutdown({ server, scheduler, webhookManager, idempotencyStore, forceExitAfterMs, exit, }: ShutdownDeps): (signal: string) => Promise<void>;
14
- export declare function assertSupportedNodeVersion(version?: string, minimumMajor?: number): void;
15
- export {};
1
+ import { assertSupportedNodeVersion, ensureTemplateInitialized } from './kaseki-api/setup-orchestrator';
2
+ import { type ShutdownDeps } from './kaseki-api/service-bootstrapper';
3
+ export { assertSupportedNodeVersion, ensureTemplateInitialized };
4
+ /**
5
+ * Legacy wrapper for gracefulShutdown to maintain backwards compatibility
6
+ */
7
+ export declare function createGracefulShutdown(deps: ShutdownDeps): () => Promise<void>;
16
8
  //# sourceMappingURL=kaseki-api-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kaseki-api-service.d.ts","sourceRoot":"","sources":["../src/kaseki-api-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAKnC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQvD,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC1C,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;CAChC,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EACrC,MAAM,EACN,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,gBAAuB,EACvB,IAAmB,GACpB,EAAE,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CA0ClD;AAED,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,MAA8B,EACvC,YAAY,GAAE,MAAW,GACxB,IAAI,CAcN"}
1
+ {"version":3,"file":"kaseki-api-service.d.ts","sourceRoot":"","sources":["../src/kaseki-api-service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAmB,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACzH,OAAO,EAAuC,KAAK,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAE3G,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,CAAC;AAEjE;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,uBAExD"}
@@ -1,139 +1,26 @@
1
1
  import express from 'express';
2
2
  import swaggerUi from 'swagger-ui-express';
3
- import * as fs from 'fs';
4
- import * as path from 'path';
5
3
  import { loadConfig } from './kaseki-api-config.js';
6
- import { JobScheduler } from './job-scheduler.js';
7
- import { WebhookManager } from './webhook-manager.js';
8
- import { IdempotencyStore } from './idempotency-store.js';
9
- import { PreFlightValidator } from './pre-flight-validator.js';
10
4
  import { createApiRouter } from './kaseki-api-routes.js';
11
5
  import { createEventLogger } from './logger.js';
12
- import { ResultCache } from './result-cache.js';
13
6
  import { generateOpenAPISpec } from './openapi-spec-generator.js';
14
- import { execSync } from 'child_process';
15
- export function createGracefulShutdown({ server, scheduler, webhookManager, idempotencyStore, forceExitAfterMs = 8000, exit = process.exit, }) {
16
- const logger = createEventLogger('kaseki-api');
17
- return async (signal) => {
18
- logger.info(`Received ${signal}, shutting down gracefully...`);
19
- const hardTimeout = setTimeout(() => {
20
- logger.error(`Graceful shutdown timeout after ${forceExitAfterMs}ms, forcing exit`);
21
- exit(1);
22
- }, forceExitAfterMs);
23
- try {
24
- await new Promise((resolve, reject) => {
25
- server.close((err) => {
26
- if (err) {
27
- reject(err);
28
- return;
29
- }
30
- logger.info('HTTP server closed');
31
- resolve();
32
- });
33
- });
34
- scheduler.shutdown();
35
- logger.info('Job scheduler shutdown');
36
- await webhookManager.shutdown();
37
- logger.info('Webhook manager shutdown');
38
- idempotencyStore.shutdown();
39
- logger.info('Idempotency store shutdown');
40
- exit(0);
41
- }
42
- catch (err) {
43
- logger.error('Error during graceful shutdown:', { error: String(err) });
44
- exit(1);
45
- }
46
- finally {
47
- clearTimeout(hardTimeout);
48
- }
49
- };
50
- }
51
- export function assertSupportedNodeVersion(version = process.versions.node, minimumMajor = 24) {
52
- const normalizedVersion = version.trim();
53
- const isValidVersion = /^\d+(?:\.\d+){0,2}$/.test(normalizedVersion);
54
- const major = Number.parseInt(normalizedVersion.split('.')[0] ?? '', 10);
55
- const logger = createEventLogger('kaseki-api');
56
- logger.info(`Node runtime detected: v${normalizedVersion}`);
57
- if (!isValidVersion || !Number.isFinite(major) || major < minimumMajor) {
58
- logger.error(`Unsupported Node.js runtime v${normalizedVersion}. Kaseki API service requires Node.js >= ${minimumMajor}. Please upgrade Node or deploy the Docker image built from this repo's Dockerfile (node:24-bookworm-slim).`);
59
- process.exit(1);
60
- }
61
- }
7
+ import { initializeSetup, assertSupportedNodeVersion, ensureTemplateInitialized } from './kaseki-api/setup-orchestrator.js';
8
+ import { bootstrapServices, gracefulShutdown } from './kaseki-api/service-bootstrapper.js';
9
+ export { assertSupportedNodeVersion, ensureTemplateInitialized };
62
10
  /**
63
- * Phase 3: Auto-initialize /agents/kaseki-template if missing
64
- * This eliminates the need for manual 'kaseki-activate.sh --controller bootstrap'
11
+ * Legacy wrapper for gracefulShutdown to maintain backwards compatibility
65
12
  */
66
- async function ensureTemplateInitialized(templateDir) {
67
- const logger = createEventLogger('kaseki-api');
68
- const runScript = path.join(templateDir, 'run-kaseki.sh');
69
- // Check if bootstrap is already complete
70
- if (fs.existsSync(runScript)) {
71
- logger.info('Template directory is initialized', { templateDir, runScript });
72
- return;
73
- }
74
- // Template is missing - try to initialize it
75
- logger.info('Template directory missing; attempting auto-initialization...', { templateDir });
76
- try {
77
- // Ensure parent directory exists
78
- const parentDir = path.dirname(templateDir);
79
- if (!fs.existsSync(parentDir)) {
80
- fs.mkdirSync(parentDir, { recursive: true, mode: 0o755 });
81
- logger.info('Created parent directory', { parentDir });
82
- }
83
- // Try strategy 1: Copy from image
84
- // If we're running in Docker and the template exists at /app/kaseki-template, copy it
85
- const imageTemplateDir = '/app/kaseki-template';
86
- if (fs.existsSync(imageTemplateDir) && fs.existsSync(path.join(imageTemplateDir, 'run-kaseki.sh'))) {
87
- try {
88
- execSync(`cp -r "${imageTemplateDir}" "${templateDir}"`, { stdio: 'pipe' });
89
- logger.info('Template initialized from Docker image', { templateDir });
90
- return;
91
- }
92
- catch (err) {
93
- logger.warn('Failed to copy template from image; trying alternate strategy', {
94
- error: err instanceof Error ? err.message : String(err),
95
- });
96
- }
97
- }
98
- // Try strategy 2: Create symlink to /app (if we're in Docker)
99
- if (fs.existsSync('/app/run-kaseki.sh')) {
100
- try {
101
- // Create template directory and symlink key files
102
- fs.mkdirSync(templateDir, { recursive: true, mode: 0o755 });
103
- fs.symlinkSync('/app/run-kaseki.sh', runScript, 'file');
104
- logger.info('Template initialized via symlink to /app', { templateDir });
105
- return;
106
- }
107
- catch (err) {
108
- logger.warn('Failed to create symlink; trying alternate strategy', {
109
- error: err instanceof Error ? err.message : String(err),
110
- });
111
- }
112
- }
113
- // Strategy 3 failed - log warning but continue
114
- // The API will start but jobs will fail with clear error message
115
- logger.warn('Could not auto-initialize template directory. Jobs will fail until bootstrap is completed manually.', {
116
- templateDir,
117
- remediation: 'Run: docker exec <container> /scripts/startup-checks.sh bootstrap',
118
- });
119
- }
120
- catch (err) {
121
- logger.error('Unexpected error during template initialization', {
122
- error: err instanceof Error ? err.message : String(err),
123
- templateDir,
124
- });
125
- // Continue anyway - jobs will fail with clear error message
126
- }
13
+ export function createGracefulShutdown(deps) {
14
+ return () => gracefulShutdown(deps);
127
15
  }
128
16
  /**
129
17
  * Main Kaseki API service.
130
18
  */
131
19
  async function main() {
132
20
  const logger = createEventLogger('kaseki-api');
133
- assertSupportedNodeVersion();
134
- // Phase 3: Auto-initialize template directory
21
+ // Phase 3: Auto-initialize setup (Node version and template directory)
135
22
  const templateDir = process.env.KASEKI_TEMPLATE_DIR || '/agents/kaseki-template';
136
- await ensureTemplateInitialized(templateDir);
23
+ await initializeSetup(templateDir);
137
24
  // Load configuration
138
25
  let config;
139
26
  try {
@@ -172,6 +59,8 @@ async function main() {
172
59
  memoryUsage: JSON.stringify(process.memoryUsage()),
173
60
  cpuUsage: JSON.stringify(process.cpuUsage()),
174
61
  });
62
+ // Bootstrap all services
63
+ const { artifactCache, webhookManager, idempotencyStore, preFlightValidator, scheduler } = await bootstrapServices(config);
175
64
  // Create Express app
176
65
  const app = express();
177
66
  app.use(express.json());
@@ -185,20 +74,6 @@ async function main() {
185
74
  app.get('/api/openapi.json', (_req, res) => {
186
75
  res.json(openApiSpec);
187
76
  });
188
- // Create shared artifact content cache
189
- const artifactCache = new ResultCache({
190
- maxEntries: config.artifactCacheMaxEntries,
191
- ttlMs: config.artifactCacheTtlMs,
192
- maxFileBytes: config.artifactCacheMaxFileBytes,
193
- });
194
- // Create webhook manager
195
- const webhookManager = new WebhookManager(config.resultsDir);
196
- // Create idempotency store
197
- const idempotencyStore = new IdempotencyStore(config.resultsDir, 24);
198
- // Create pre-flight validator
199
- const preFlightValidator = new PreFlightValidator();
200
- // Create scheduler
201
- const scheduler = new JobScheduler(config, webhookManager, artifactCache);
202
77
  // Mount API routes
203
78
  const apiRouter = createApiRouter(scheduler, config, idempotencyStore, preFlightValidator, artifactCache);
204
79
  app.use('/api', apiRouter);
@@ -223,9 +98,9 @@ async function main() {
223
98
  ? app.listen(config.port, config.host, onListening)
224
99
  : app.listen(config.port, onListening);
225
100
  // Graceful shutdown
226
- const gracefulShutdown = createGracefulShutdown({ server, scheduler, webhookManager, idempotencyStore });
227
- process.on('SIGTERM', () => void gracefulShutdown('SIGTERM'));
228
- process.on('SIGINT', () => void gracefulShutdown('SIGINT'));
101
+ const shutdown = () => gracefulShutdown({ server, scheduler, webhookManager, idempotencyStore });
102
+ process.on('SIGTERM', () => void shutdown());
103
+ process.on('SIGINT', () => void shutdown());
229
104
  // Catch unhandled errors
230
105
  process.on('uncaughtException', (err) => {
231
106
  logger.error('Uncaught exception:', { error: String(err), stack: err instanceof Error ? err.stack : undefined });
@@ -1 +1 @@
1
- {"version":3,"file":"kaseki-api-service.js","sourceRoot":"","sources":["../src/kaseki-api-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kaseki-api-service.js","sourceRoot":"","sources":["../src/kaseki-api-service.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACzH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAqB,MAAM,mCAAmC,CAAC;AAE3G,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,CAAC;AAEjE;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAkB;IACvD,OAAO,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAE/C,uEAAuE;IACvE,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,yBAAyB,CAAC;IACjF,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IAEnC,qBAAqB;IACrB,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IACxD,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE;QACrC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B;QAC3E,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;QACvD,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;QAC3D,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;QAClC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,SAAS;QAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CACT,8GAA8G,EAC9G,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,qEAAqE,EAAE,CAC1G,CAAC;IACJ,CAAC;IAED,uBAAuB;IACvB,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;QAC1C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;QACxB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAClD,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;KAC7C,CAAC,CAAC;IAEH,yBAAyB;IACzB,MAAM,EACJ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACV,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEpC,qBAAqB;IACrB,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAExB,iCAAiC;IACjC,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC;IAE1C,iCAAiC;IACjC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE;QAC7D,SAAS,EAAE,2BAA2B;KACvC,CAAC,CAAC,CAAC;IAEJ,8BAA8B;IAC9B,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACzC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,mBAAmB;IACnB,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,CAAC,CAAC;IAC1G,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAExB,eAAe;IACf,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC;QAC/C,MAAM,OAAO,GAAG,UAAU,WAAW,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE;YAC9B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B;YAC3E,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YAClC,uBAAuB,EAAE,GAAG,OAAO,OAAO;YAC1C,cAAc,EAAE,GAAG,OAAO,mBAAmB;SAC9C,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI;QACxB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC;QACnD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAEzC,oBAAoB;IACpB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEjG,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAE5C,yBAAyB;IACzB,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;QACtC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAChC,KAAK,IAAI,EAAE,CAAC;AACd,CAAC"}
@@ -9,5 +9,4 @@
9
9
  * This spec is generated from route definitions and request/response types.
10
10
  */
11
11
  export declare function generateOpenAPISpec(): Record<string, unknown>;
12
- export default generateOpenAPISpec;
13
12
  //# sourceMappingURL=openapi-spec-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-spec-generator.d.ts","sourceRoot":"","sources":["../src/openapi-spec-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyB7D;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"openapi-spec-generator.d.ts","sourceRoot":"","sources":["../src/openapi-spec-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyB7D"}
@@ -34,5 +34,4 @@ export function generateOpenAPISpec() {
34
34
  tags,
35
35
  };
36
36
  }
37
- export default generateOpenAPISpec;
38
37
  //# sourceMappingURL=openapi-spec-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-spec-generator.js","sourceRoot":"","sources":["../src/openapi-spec-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EACL,eAAe,EACf,SAAS,EACT,YAAY,EACZ,SAAS,GACV,MAAM,sCAAsC,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,sCAAsC;IACtC,MAAM,mBAAmB,GAAG,wBAAwB,EAAE,CAAC;IACvD,MAAM,gBAAgB,GAAG,qBAAqB,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAAG,sBAAsB,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IAErC,4CAA4C;IAC5C,MAAM,KAAK,GAAG,aAAa,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAEtF,qEAAqE;IACrE,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IAEzB,0CAA0C;IAC1C,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,IAAI;QACJ,OAAO;QACP,KAAK;QACL,UAAU;QACV,IAAI;KACL,CAAC;AACJ,CAAC;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"openapi-spec-generator.js","sourceRoot":"","sources":["../src/openapi-spec-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EACL,eAAe,EACf,SAAS,EACT,YAAY,EACZ,SAAS,GACV,MAAM,sCAAsC,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,sCAAsC;IACtC,MAAM,mBAAmB,GAAG,wBAAwB,EAAE,CAAC;IACvD,MAAM,gBAAgB,GAAG,qBAAqB,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAAG,sBAAsB,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IAErC,4CAA4C;IAC5C,MAAM,KAAK,GAAG,aAAa,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAEtF,qEAAqE;IACrE,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IAEzB,0CAA0C;IAC1C,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,IAAI;QACJ,OAAO;QACP,KAAK;QACL,UAAU;QACV,IAAI;KACL,CAAC;AACJ,CAAC"}
@@ -16,5 +16,4 @@
16
16
  * Aggregates all endpoint builders organized by feature area.
17
17
  */
18
18
  export declare function buildAllPaths(errorResponseSchema: Record<string, unknown>, runRequestSchema: Record<string, unknown>, runResponseSchema: Record<string, unknown>): Record<string, unknown>;
19
- export default buildAllPaths;
20
19
  //# sourceMappingURL=paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/openapi-spec-generators/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAi1BH;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5C,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/openapi-spec-generators/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAi1BH;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5C,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB"}
@@ -839,5 +839,4 @@ export function buildAllPaths(errorResponseSchema, runRequestSchema, runResponse
839
839
  ...buildWebhookPaths(errorResponseSchema),
840
840
  };
841
841
  }
842
- export default buildAllPaths;
843
842
  //# sourceMappingURL=paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/openapi-spec-generators/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;GAGG;AACH,SAAS,qBAAqB,CAAC,mBAA4C;IACzE,OAAO;QACL,SAAS,EAAE;YACT,GAAG,EAAE;gBACH,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,uBAAuB;gBAChC,WAAW,EAAE,uEAAuE;gBACpF,IAAI,EAAE,CAAC,iBAAiB,CAAC;gBACzB,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,oBAAoB;wBACjC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;qCACzC;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QAED,QAAQ,EAAE;YACR,GAAG,EAAE;gBACH,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EACT,mIAAmI;gBACrI,IAAI,EAAE,CAAC,iBAAiB,CAAC;gBACzB,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,kBAAkB;wBAC/B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCAC5B;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,sBAAsB;wBACnC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAC5B,mBAA4C,EAC5C,gBAAyC;IAEzC,OAAO;QACL,cAAc,EAAE;YACd,GAAG,EAAE;gBACH,WAAW,EAAE,YAAY;gBACzB,OAAO,EAAE,oBAAoB;gBAC7B,WAAW,EAAE,qEAAqE;gBAClF,IAAI,EAAE,CAAC,cAAc,CAAC;gBACtB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,mCAAmC;wBAChD,OAAO,EAAE;4BACP,YAAY,EAAE;gCACZ,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;iCACf;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,gBAAgB,EAAE;YAChB,GAAG,EAAE;gBACH,WAAW,EAAE,cAAc;gBAC3B,OAAO,EAAE,uBAAuB;gBAChC,WAAW,EACT,yHAAyH;gBAC3H,IAAI,EAAE,CAAC,cAAc,CAAC;gBACtB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,4BAA4B;wBACzC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;oCAC/B,UAAU,EAAE;wCACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC5B,MAAM,EAAE;4CACN,IAAI,EAAE,OAAO;4CACb,KAAK,EAAE;gDACL,IAAI,EAAE,QAAQ;gDACd,UAAU,EAAE;oDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDACxB,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oDACvB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iDAChC;6CACF;yCACF;wCACD,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wCACtD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;qCACrD;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,eAAe,EAAE;YACf,IAAI,EAAE;gBACJ,WAAW,EAAE,cAAc;gBAC3B,OAAO,EAAE,6BAA6B;gBACtC,WAAW,EACT,0HAA0H;gBAC5H,IAAI,EAAE,CAAC,cAAc,CAAC;gBACtB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACP,kBAAkB,EAAE;4BAClB,MAAM,EAAE,gBAAgB;yBACzB;qBACF;iBACF;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,mBAAmB;wBAChC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wCACpD,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wCACtD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wCACpD,wBAAwB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;qCAC9C;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,iBAAiB;wBAC9B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,uBAAuB,CAC9B,mBAA4C,EAC5C,gBAAyC,EACzC,iBAA0C;IAE1C,OAAO;QACL,WAAW,EAAE;YACX,IAAI,EAAE;gBACJ,WAAW,EAAE,YAAY;gBACzB,OAAO,EAAE,0BAA0B;gBACnC,WAAW,EACT,oGAAoG;gBACtG,IAAI,EAAE,CAAC,gBAAgB,CAAC;gBACxB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACP,kBAAkB,EAAE;4BAClB,MAAM,EAAE,gBAAgB;yBACzB;qBACF;iBACF;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,yBAAyB;wBACtC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,iBAAiB;6BAC1B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,gEAAgE;wBAC7E,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,iBAAiB;6BAC1B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,iBAAiB;wBAC9B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;YAED,GAAG,EAAE;gBACH,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE,eAAe;gBACxB,WAAW,EACT,gGAAgG;gBAClG,IAAI,EAAE,CAAC,gBAAgB,CAAC;gBACxB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,OAAO;wBACb,EAAE,EAAE,OAAO;wBACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE;wBAClE,WAAW,EAAE,kCAAkC;qBAChD;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,EAAE,EAAE,OAAO;wBACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;wBACnD,WAAW,EAAE,uBAAuB;qBACrC;iBACF;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE;4CACJ,IAAI,EAAE,OAAO;4CACb,KAAK,EAAE,iBAAiB;yCACzB;wCACD,KAAK,EAAE;4CACL,IAAI,EAAE,SAAS;4CACf,WAAW,EAAE,gCAAgC;yCAC9C;qCACF;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,uBAAuB,EAAE;YACvB,GAAG,EAAE;gBACH,WAAW,EAAE,cAAc;gBAC3B,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EACT,wGAAwG;gBAC1G,IAAI,EAAE,CAAC,gBAAgB,CAAC;gBACxB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,sCAAsC;qBACpD;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,oBAAoB;wBACjC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,EAAE,IAAI,EAAE,qCAAqC,EAAE;6BACxD;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,eAAe;wBAC5B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,uBAAuB,EAAE;YACvB,IAAI,EAAE;gBACJ,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,cAAc;gBACvB,WAAW,EACT,0HAA0H;gBAC5H,IAAI,EAAE,CAAC,gBAAgB,CAAC;gBACxB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,uBAAuB;wBACpC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCAC5B;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,eAAe;wBAC5B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,mBAA4C;IAC1E,OAAO;QACL,yBAAyB,EAAE;YACzB,GAAG,EAAE;gBACH,WAAW,EAAE,gBAAgB;gBAC7B,OAAO,EAAE,qBAAqB;gBAC9B,WAAW,EACT,mHAAmH;gBACrH,IAAI,EAAE,CAAC,qBAAqB,CAAC;gBAC7B,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,EAAE,EAAE,OAAO;wBACX,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;wBACzC,WAAW,EAAE,qDAAqD;qBACnE;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,uCAAuC;wBACpD,OAAO,EAAE;4BACP,sBAAsB,EAAE;gCACtB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,WAAW,EAAE,oCAAoC;iCAClD;6BACF;4BACD,mBAAmB,EAAE;gCACnB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,WAAW,EAAE,6CAA6C;iCAC3D;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,eAAe;wBAC5B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,+BAA+B,EAAE;YAC/B,GAAG,EAAE;gBACH,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,uBAAuB;gBAChC,WAAW,EACT,wHAAwH;gBAC1H,IAAI,EAAE,CAAC,qBAAqB,CAAC;gBAC7B,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC;yBAC/E;wBACD,WAAW,EAAE,sBAAsB;qBACpC;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,EAAE,EAAE,OAAO;wBACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE;wBACrD,WAAW,EAAE,wCAAwC;qBACtD;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,aAAa;wBAC1B,OAAO,EAAE;4BACP,YAAY,EAAE;gCACZ,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6BAC3B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,sBAAsB;wBACnC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,mBAA4C;IACtE,OAAO;QACL,0BAA0B,EAAE;YAC1B,GAAG,EAAE;gBACH,WAAW,EAAE,iBAAiB;gBAC9B,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EACT,yGAAyG;gBAC3G,IAAI,EAAE,CAAC,WAAW,CAAC;gBACnB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,gBAAgB;wBAC7B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC;oCAC9C,UAAU,EAAE;wCACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCACtB,SAAS,EAAE;4CACT,IAAI,EAAE,QAAQ;4CACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC;yCACnD;wCACD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC7B,SAAS,EAAE;4CACT,IAAI,EAAE,OAAO;4CACb,KAAK,EAAE;gDACL,IAAI,EAAE,QAAQ;gDACd,UAAU,EAAE;oDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDACxB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oDACzB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDAC/B,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oDAC9B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iDAChC;6CACF;yCACF;wCACD,WAAW,EAAE;4CACX,IAAI,EAAE,OAAO;4CACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CACzB,WAAW,EAAE,uCAAuC;yCACrD;wCACD,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;qCACnC;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,eAAe;wBAC5B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;QAED,0BAA0B,EAAE;YAC1B,GAAG,EAAE;gBACH,WAAW,EAAE,kBAAkB;gBAC/B,OAAO,EAAE,wBAAwB;gBACjC,WAAW,EACT,gJAAgJ;gBAClJ,IAAI,EAAE,CAAC,WAAW,CAAC;gBACnB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC1B,WAAW,EAAE,mDAAmD;qBACjE;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,uBAAuB;wBACpC,OAAO,EAAE;4BACP,KAAK,EAAE;gCACL,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;6BAC7C;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,oBAAoB;wBACjC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,mBAA4C;IACzE,OAAO;QACL,yBAAyB,EAAE;YACzB,GAAG,EAAE;gBACH,WAAW,EAAE,gBAAgB;gBAC7B,OAAO,EAAE,gCAAgC;gBACzC,WAAW,EACT,iHAAiH;gBACnH,IAAI,EAAE,CAAC,aAAa,CAAC;gBACrB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,IAAI;wBACV,EAAE,EAAE,MAAM;wBACV,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE;wBACpD,WAAW,EAAE,oBAAoB;qBAClC;iBACF;gBACD,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;oCAC1B,UAAU,EAAE;wCACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCACtB,MAAM,EAAE;4CACN,IAAI,EAAE,QAAQ;4CACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC;yCACnD;wCACD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;wCAClD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;wCACpD,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAClC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC7B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC5B,OAAO,EAAE;4CACP,IAAI,EAAE,QAAQ;4CACd,UAAU,EAAE;gDACV,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gDAC1D,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;6CAC9B;yCACF;wCACD,UAAU,EAAE;4CACV,IAAI,EAAE,QAAQ;4CACd,UAAU,EAAE;gDACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gDAC3B,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;6CAC7D;yCACF;wCACD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;qCACrD;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,eAAe;wBAC5B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,mBAA4C;IACrE,OAAO;QACL,oBAAoB,EAAE;YACpB,IAAI,EAAE;gBACJ,WAAW,EAAE,aAAa;gBAC1B,OAAO,EAAE,4BAA4B;gBACrC,WAAW,EAAE,6EAA6E;gBAC1F,IAAI,EAAE,CAAC,UAAU,CAAC;gBAClB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAC9B,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACP,kBAAkB,EAAE;4BAClB,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,QAAQ,EAAE,CAAC,KAAK,CAAC;gCACjB,UAAU,EAAE;oCACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE;oCACtC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAC3B;6BACF;yBACF;qBACF;iBACF;gBACD,SAAS,EAAE;oBACT,KAAK,EAAE;wBACL,WAAW,EAAE,yBAAyB;wBACtC,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,UAAU,EAAE;wCACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wCAC/B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCAC5B;iCACF;6BACF;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,+BAA+B;wBAC5C,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE;4BACP,kBAAkB,EAAE;gCAClB,MAAM,EAAE,mBAAmB;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,mBAA4C,EAC5C,gBAAyC,EACzC,iBAA0C;IAE1C,OAAO;QACL,GAAG,qBAAqB,CAAC,mBAAmB,CAAC;QAC7C,GAAG,qBAAqB,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;QAC/D,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;QACpF,GAAG,sBAAsB,CAAC,mBAAmB,CAAC;QAC9C,GAAG,kBAAkB,CAAC,mBAAmB,CAAC;QAC1C,GAAG,qBAAqB,CAAC,mBAAmB,CAAC;QAC7C,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/openapi-spec-generators/paths.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanautomation/kaseki-agent",
3
- "version": "1.27.0",
3
+ "version": "1.27.2",
4
4
  "description": "Admin/helper/doctor toolbox and local API client for Kaseki diagnostics, setup, and API-backed coding-agent task workflows",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -80,6 +80,7 @@
80
80
  "dependencies": {
81
81
  "enquirer": "^2.4.1",
82
82
  "express": "^4.18.2",
83
+ "fallow": "^2.74.0",
83
84
  "swagger-ui-express": "^5.0.1",
84
85
  "zod": "^3.22.4"
85
86
  },
@@ -98,13 +99,13 @@
98
99
  "@typescript-eslint/eslint-plugin": "^8.0.0",
99
100
  "@typescript-eslint/parser": "^8.0.0",
100
101
  "conventional-changelog-conventionalcommits": "^9.3.1",
101
- "typescript": "^5.7.3",
102
102
  "eslint": "^9.0.0",
103
103
  "eslint-plugin-unused-imports": "^4.0.0",
104
104
  "jest": "^29.7.0",
105
105
  "semantic-release": "^25.0.3",
106
106
  "ts-jest": "^29.2.6",
107
107
  "ts-node": "^10.9.2",
108
- "tsx": "^4.21.0"
108
+ "tsx": "^4.21.0",
109
+ "typescript": "^5.7.3"
109
110
  }
110
111
  }
@@ -52,7 +52,7 @@ log_info() {
52
52
  # Check if a directory is writable (even if it doesn't exist yet)
53
53
  is_writable_or_creatable() {
54
54
  local target_dir="$1"
55
- local parent_dir parent_part
55
+ local parent_dir
56
56
 
57
57
  # If directory exists, check if it's writable
58
58
  if [ -d "$target_dir" ]; then