@generacy-ai/orchestrator 0.0.0-preview-20260304013206
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.
- package/LICENSE +191 -0
- package/dist/auth/api-key.d.ts +63 -0
- package/dist/auth/api-key.d.ts.map +1 -0
- package/dist/auth/api-key.js +102 -0
- package/dist/auth/api-key.js.map +1 -0
- package/dist/auth/github-oauth.d.ts +29 -0
- package/dist/auth/github-oauth.d.ts.map +1 -0
- package/dist/auth/github-oauth.js +136 -0
- package/dist/auth/github-oauth.js.map +1 -0
- package/dist/auth/index.d.ts +5 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +9 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/jwt.d.ts +34 -0
- package/dist/auth/jwt.d.ts.map +1 -0
- package/dist/auth/jwt.js +74 -0
- package/dist/auth/jwt.js.map +1 -0
- package/dist/auth/middleware.d.ts +43 -0
- package/dist/auth/middleware.d.ts.map +1 -0
- package/dist/auth/middleware.js +101 -0
- package/dist/auth/middleware.js.map +1 -0
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +5 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/loader.d.ts +21 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +295 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/schema.d.ts +733 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +174 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/middleware/error-handler.d.ts +30 -0
- package/dist/middleware/error-handler.d.ts.map +1 -0
- package/dist/middleware/error-handler.js +173 -0
- package/dist/middleware/error-handler.js.map +1 -0
- package/dist/middleware/index.d.ts +4 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +4 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/rate-limit.d.ts +32 -0
- package/dist/middleware/rate-limit.d.ts.map +1 -0
- package/dist/middleware/rate-limit.js +92 -0
- package/dist/middleware/rate-limit.js.map +1 -0
- package/dist/middleware/request-logger.d.ts +31 -0
- package/dist/middleware/request-logger.d.ts.map +1 -0
- package/dist/middleware/request-logger.js +89 -0
- package/dist/middleware/request-logger.js.map +1 -0
- package/dist/routes/agents.d.ts +7 -0
- package/dist/routes/agents.d.ts.map +1 -0
- package/dist/routes/agents.js +78 -0
- package/dist/routes/agents.js.map +1 -0
- package/dist/routes/dispatch.d.ts +8 -0
- package/dist/routes/dispatch.d.ts.map +1 -0
- package/dist/routes/dispatch.js +46 -0
- package/dist/routes/dispatch.js.map +1 -0
- package/dist/routes/events.d.ts +14 -0
- package/dist/routes/events.d.ts.map +1 -0
- package/dist/routes/events.js +240 -0
- package/dist/routes/events.js.map +1 -0
- package/dist/routes/health.d.ts +14 -0
- package/dist/routes/health.d.ts.map +1 -0
- package/dist/routes/health.js +132 -0
- package/dist/routes/health.js.map +1 -0
- package/dist/routes/index.d.ts +36 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/index.js +34 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/integrations.d.ts +34 -0
- package/dist/routes/integrations.d.ts.map +1 -0
- package/dist/routes/integrations.js +81 -0
- package/dist/routes/integrations.js.map +1 -0
- package/dist/routes/metrics.d.ts +31 -0
- package/dist/routes/metrics.d.ts.map +1 -0
- package/dist/routes/metrics.js +157 -0
- package/dist/routes/metrics.js.map +1 -0
- package/dist/routes/pr-webhooks.d.ts +15 -0
- package/dist/routes/pr-webhooks.d.ts.map +1 -0
- package/dist/routes/pr-webhooks.js +114 -0
- package/dist/routes/pr-webhooks.js.map +1 -0
- package/dist/routes/queue.d.ts +7 -0
- package/dist/routes/queue.d.ts.map +1 -0
- package/dist/routes/queue.js +94 -0
- package/dist/routes/queue.js.map +1 -0
- package/dist/routes/webhooks.d.ts +15 -0
- package/dist/routes/webhooks.d.ts.map +1 -0
- package/dist/routes/webhooks.js +117 -0
- package/dist/routes/webhooks.js.map +1 -0
- package/dist/routes/workflows.d.ts +7 -0
- package/dist/routes/workflows.d.ts.map +1 -0
- package/dist/routes/workflows.js +138 -0
- package/dist/routes/workflows.js.map +1 -0
- package/dist/server.d.ts +35 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +264 -0
- package/dist/server.js.map +1 -0
- package/dist/services/agent-registry.d.ts +89 -0
- package/dist/services/agent-registry.d.ts.map +1 -0
- package/dist/services/agent-registry.js +173 -0
- package/dist/services/agent-registry.js.map +1 -0
- package/dist/services/epic-completion-monitor-service.d.ts +69 -0
- package/dist/services/epic-completion-monitor-service.d.ts.map +1 -0
- package/dist/services/epic-completion-monitor-service.js +200 -0
- package/dist/services/epic-completion-monitor-service.js.map +1 -0
- package/dist/services/identity.d.ts +41 -0
- package/dist/services/identity.d.ts.map +1 -0
- package/dist/services/identity.js +91 -0
- package/dist/services/identity.js.map +1 -0
- package/dist/services/index.d.ts +13 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +13 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/label-monitor-service.d.ts +95 -0
- package/dist/services/label-monitor-service.d.ts.map +1 -0
- package/dist/services/label-monitor-service.js +414 -0
- package/dist/services/label-monitor-service.js.map +1 -0
- package/dist/services/label-sync-service.d.ts +76 -0
- package/dist/services/label-sync-service.d.ts.map +1 -0
- package/dist/services/label-sync-service.js +108 -0
- package/dist/services/label-sync-service.js.map +1 -0
- package/dist/services/phase-tracker-service.d.ts +32 -0
- package/dist/services/phase-tracker-service.d.ts.map +1 -0
- package/dist/services/phase-tracker-service.js +82 -0
- package/dist/services/phase-tracker-service.js.map +1 -0
- package/dist/services/pr-feedback-monitor-service.d.ts +86 -0
- package/dist/services/pr-feedback-monitor-service.d.ts.map +1 -0
- package/dist/services/pr-feedback-monitor-service.js +423 -0
- package/dist/services/pr-feedback-monitor-service.js.map +1 -0
- package/dist/services/queue-service.d.ts +62 -0
- package/dist/services/queue-service.d.ts.map +1 -0
- package/dist/services/queue-service.js +147 -0
- package/dist/services/queue-service.js.map +1 -0
- package/dist/services/redis-queue-adapter.d.ts +35 -0
- package/dist/services/redis-queue-adapter.d.ts.map +1 -0
- package/dist/services/redis-queue-adapter.js +218 -0
- package/dist/services/redis-queue-adapter.js.map +1 -0
- package/dist/services/smee-receiver.d.ts +87 -0
- package/dist/services/smee-receiver.d.ts.map +1 -0
- package/dist/services/smee-receiver.js +225 -0
- package/dist/services/smee-receiver.js.map +1 -0
- package/dist/services/webhook-setup-service.d.ts +253 -0
- package/dist/services/webhook-setup-service.d.ts.map +1 -0
- package/dist/services/webhook-setup-service.js +369 -0
- package/dist/services/webhook-setup-service.js.map +1 -0
- package/dist/services/worker-dispatcher.d.ts +57 -0
- package/dist/services/worker-dispatcher.d.ts.map +1 -0
- package/dist/services/worker-dispatcher.js +211 -0
- package/dist/services/worker-dispatcher.js.map +1 -0
- package/dist/services/workflow-service.d.ts +65 -0
- package/dist/services/workflow-service.d.ts.map +1 -0
- package/dist/services/workflow-service.js +164 -0
- package/dist/services/workflow-service.js.map +1 -0
- package/dist/sse/events.d.ts +50 -0
- package/dist/sse/events.d.ts.map +1 -0
- package/dist/sse/events.js +152 -0
- package/dist/sse/events.js.map +1 -0
- package/dist/sse/index.d.ts +4 -0
- package/dist/sse/index.d.ts.map +1 -0
- package/dist/sse/index.js +7 -0
- package/dist/sse/index.js.map +1 -0
- package/dist/sse/stream.d.ts +109 -0
- package/dist/sse/stream.d.ts.map +1 -0
- package/dist/sse/stream.js +239 -0
- package/dist/sse/stream.js.map +1 -0
- package/dist/sse/subscriptions.d.ts +91 -0
- package/dist/sse/subscriptions.d.ts.map +1 -0
- package/dist/sse/subscriptions.js +299 -0
- package/dist/sse/subscriptions.js.map +1 -0
- package/dist/types/api.d.ts +651 -0
- package/dist/types/api.d.ts.map +1 -0
- package/dist/types/api.js +169 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +27 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/monitor.d.ts +243 -0
- package/dist/types/monitor.d.ts.map +1 -0
- package/dist/types/monitor.js +2 -0
- package/dist/types/monitor.js.map +1 -0
- package/dist/types/problem-details.d.ts +63 -0
- package/dist/types/problem-details.d.ts.map +1 -0
- package/dist/types/problem-details.js +37 -0
- package/dist/types/problem-details.js.map +1 -0
- package/dist/types/sse.d.ts +224 -0
- package/dist/types/sse.d.ts.map +1 -0
- package/dist/types/sse.js +103 -0
- package/dist/types/sse.js.map +1 -0
- package/dist/types/webhook.d.ts +59 -0
- package/dist/types/webhook.d.ts.map +1 -0
- package/dist/types/webhook.js +2 -0
- package/dist/types/webhook.js.map +1 -0
- package/dist/utils/correlation.d.ts +30 -0
- package/dist/utils/correlation.d.ts.map +1 -0
- package/dist/utils/correlation.js +34 -0
- package/dist/utils/correlation.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/shutdown.d.ts +28 -0
- package/dist/utils/shutdown.d.ts.map +1 -0
- package/dist/utils/shutdown.js +86 -0
- package/dist/utils/shutdown.js.map +1 -0
- package/dist/worker/claude-cli-worker.d.ts +61 -0
- package/dist/worker/claude-cli-worker.d.ts.map +1 -0
- package/dist/worker/claude-cli-worker.js +330 -0
- package/dist/worker/claude-cli-worker.js.map +1 -0
- package/dist/worker/cli-spawner.d.ts +42 -0
- package/dist/worker/cli-spawner.d.ts.map +1 -0
- package/dist/worker/cli-spawner.js +183 -0
- package/dist/worker/cli-spawner.js.map +1 -0
- package/dist/worker/config.d.ts +76 -0
- package/dist/worker/config.d.ts.map +1 -0
- package/dist/worker/config.js +39 -0
- package/dist/worker/config.js.map +1 -0
- package/dist/worker/epic-post-tasks.d.ts +73 -0
- package/dist/worker/epic-post-tasks.d.ts.map +1 -0
- package/dist/worker/epic-post-tasks.js +266 -0
- package/dist/worker/epic-post-tasks.js.map +1 -0
- package/dist/worker/gate-checker.d.ts +22 -0
- package/dist/worker/gate-checker.d.ts.map +1 -0
- package/dist/worker/gate-checker.js +41 -0
- package/dist/worker/gate-checker.js.map +1 -0
- package/dist/worker/index.d.ts +13 -0
- package/dist/worker/index.d.ts.map +1 -0
- package/dist/worker/index.js +19 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/label-manager.d.ts +89 -0
- package/dist/worker/label-manager.d.ts.map +1 -0
- package/dist/worker/label-manager.js +200 -0
- package/dist/worker/label-manager.js.map +1 -0
- package/dist/worker/output-capture.d.ts +58 -0
- package/dist/worker/output-capture.d.ts.map +1 -0
- package/dist/worker/output-capture.js +153 -0
- package/dist/worker/output-capture.js.map +1 -0
- package/dist/worker/phase-loop.d.ts +64 -0
- package/dist/worker/phase-loop.d.ts.map +1 -0
- package/dist/worker/phase-loop.js +185 -0
- package/dist/worker/phase-loop.js.map +1 -0
- package/dist/worker/phase-resolver.d.ts +62 -0
- package/dist/worker/phase-resolver.d.ts.map +1 -0
- package/dist/worker/phase-resolver.js +144 -0
- package/dist/worker/phase-resolver.js.map +1 -0
- package/dist/worker/pr-feedback-handler.d.ts +105 -0
- package/dist/worker/pr-feedback-handler.d.ts.map +1 -0
- package/dist/worker/pr-feedback-handler.js +391 -0
- package/dist/worker/pr-feedback-handler.js.map +1 -0
- package/dist/worker/pr-linker.d.ts +69 -0
- package/dist/worker/pr-linker.d.ts.map +1 -0
- package/dist/worker/pr-linker.js +108 -0
- package/dist/worker/pr-linker.js.map +1 -0
- package/dist/worker/pr-manager.d.ts +61 -0
- package/dist/worker/pr-manager.d.ts.map +1 -0
- package/dist/worker/pr-manager.js +140 -0
- package/dist/worker/pr-manager.js.map +1 -0
- package/dist/worker/repo-checkout.d.ts +63 -0
- package/dist/worker/repo-checkout.d.ts.map +1 -0
- package/dist/worker/repo-checkout.js +160 -0
- package/dist/worker/repo-checkout.js.map +1 -0
- package/dist/worker/stage-comment-manager.d.ts +34 -0
- package/dist/worker/stage-comment-manager.d.ts.map +1 -0
- package/dist/worker/stage-comment-manager.js +114 -0
- package/dist/worker/stage-comment-manager.js.map +1 -0
- package/dist/worker/types.d.ts +192 -0
- package/dist/worker/types.d.ts.map +1 -0
- package/dist/worker/types.js +53 -0
- package/dist/worker/types.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,733 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { WorkerConfigSchema, type WorkerConfig } from '../worker/config.js';
|
|
3
|
+
/**
|
|
4
|
+
* Logging level configuration
|
|
5
|
+
*/
|
|
6
|
+
export declare const LogLevelSchema: z.ZodEnum<["trace", "debug", "info", "warn", "error"]>;
|
|
7
|
+
export type LogLevel = z.infer<typeof LogLevelSchema>;
|
|
8
|
+
/**
|
|
9
|
+
* Server configuration
|
|
10
|
+
*/
|
|
11
|
+
export declare const ServerConfigSchema: z.ZodObject<{
|
|
12
|
+
/** Port to listen on (0 = random available port) */
|
|
13
|
+
port: z.ZodDefault<z.ZodNumber>;
|
|
14
|
+
/** Host to bind to */
|
|
15
|
+
host: z.ZodDefault<z.ZodString>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
port: number;
|
|
18
|
+
host: string;
|
|
19
|
+
}, {
|
|
20
|
+
port?: number | undefined;
|
|
21
|
+
host?: string | undefined;
|
|
22
|
+
}>;
|
|
23
|
+
export type ServerConfig = z.infer<typeof ServerConfigSchema>;
|
|
24
|
+
/**
|
|
25
|
+
* Redis configuration
|
|
26
|
+
*/
|
|
27
|
+
export declare const RedisConfigSchema: z.ZodObject<{
|
|
28
|
+
/** Redis connection URL */
|
|
29
|
+
url: z.ZodDefault<z.ZodString>;
|
|
30
|
+
}, "strip", z.ZodTypeAny, {
|
|
31
|
+
url: string;
|
|
32
|
+
}, {
|
|
33
|
+
url?: string | undefined;
|
|
34
|
+
}>;
|
|
35
|
+
export type RedisConfig = z.infer<typeof RedisConfigSchema>;
|
|
36
|
+
/**
|
|
37
|
+
* GitHub OAuth configuration
|
|
38
|
+
*/
|
|
39
|
+
export declare const GitHubOAuthConfigSchema: z.ZodObject<{
|
|
40
|
+
/** GitHub OAuth client ID */
|
|
41
|
+
clientId: z.ZodString;
|
|
42
|
+
/** GitHub OAuth client secret */
|
|
43
|
+
clientSecret: z.ZodString;
|
|
44
|
+
/** OAuth callback URL */
|
|
45
|
+
callbackUrl: z.ZodDefault<z.ZodString>;
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
clientId: string;
|
|
48
|
+
clientSecret: string;
|
|
49
|
+
callbackUrl: string;
|
|
50
|
+
}, {
|
|
51
|
+
clientId: string;
|
|
52
|
+
clientSecret: string;
|
|
53
|
+
callbackUrl?: string | undefined;
|
|
54
|
+
}>;
|
|
55
|
+
export type GitHubOAuthConfig = z.infer<typeof GitHubOAuthConfigSchema>;
|
|
56
|
+
/**
|
|
57
|
+
* JWT configuration
|
|
58
|
+
*/
|
|
59
|
+
export declare const JWTConfigSchema: z.ZodObject<{
|
|
60
|
+
/** Secret key for signing JWTs */
|
|
61
|
+
secret: z.ZodString;
|
|
62
|
+
/** Token expiration time */
|
|
63
|
+
expiresIn: z.ZodDefault<z.ZodString>;
|
|
64
|
+
}, "strip", z.ZodTypeAny, {
|
|
65
|
+
secret: string;
|
|
66
|
+
expiresIn: string;
|
|
67
|
+
}, {
|
|
68
|
+
secret: string;
|
|
69
|
+
expiresIn?: string | undefined;
|
|
70
|
+
}>;
|
|
71
|
+
export type JWTConfig = z.infer<typeof JWTConfigSchema>;
|
|
72
|
+
/**
|
|
73
|
+
* Authentication configuration
|
|
74
|
+
*/
|
|
75
|
+
export declare const AuthConfigSchema: z.ZodObject<{
|
|
76
|
+
/** Whether authentication is enabled */
|
|
77
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
78
|
+
/** Enabled authentication providers */
|
|
79
|
+
providers: z.ZodDefault<z.ZodArray<z.ZodEnum<["apiKey", "github-oauth2"]>, "many">>;
|
|
80
|
+
/** GitHub OAuth configuration (required if github-oauth2 provider is enabled) */
|
|
81
|
+
github: z.ZodOptional<z.ZodObject<{
|
|
82
|
+
/** GitHub OAuth client ID */
|
|
83
|
+
clientId: z.ZodString;
|
|
84
|
+
/** GitHub OAuth client secret */
|
|
85
|
+
clientSecret: z.ZodString;
|
|
86
|
+
/** OAuth callback URL */
|
|
87
|
+
callbackUrl: z.ZodDefault<z.ZodString>;
|
|
88
|
+
}, "strip", z.ZodTypeAny, {
|
|
89
|
+
clientId: string;
|
|
90
|
+
clientSecret: string;
|
|
91
|
+
callbackUrl: string;
|
|
92
|
+
}, {
|
|
93
|
+
clientId: string;
|
|
94
|
+
clientSecret: string;
|
|
95
|
+
callbackUrl?: string | undefined;
|
|
96
|
+
}>>;
|
|
97
|
+
/** JWT configuration */
|
|
98
|
+
jwt: z.ZodObject<{
|
|
99
|
+
/** Secret key for signing JWTs */
|
|
100
|
+
secret: z.ZodString;
|
|
101
|
+
/** Token expiration time */
|
|
102
|
+
expiresIn: z.ZodDefault<z.ZodString>;
|
|
103
|
+
}, "strip", z.ZodTypeAny, {
|
|
104
|
+
secret: string;
|
|
105
|
+
expiresIn: string;
|
|
106
|
+
}, {
|
|
107
|
+
secret: string;
|
|
108
|
+
expiresIn?: string | undefined;
|
|
109
|
+
}>;
|
|
110
|
+
}, "strip", z.ZodTypeAny, {
|
|
111
|
+
enabled: boolean;
|
|
112
|
+
jwt: {
|
|
113
|
+
secret: string;
|
|
114
|
+
expiresIn: string;
|
|
115
|
+
};
|
|
116
|
+
providers: ("apiKey" | "github-oauth2")[];
|
|
117
|
+
github?: {
|
|
118
|
+
clientId: string;
|
|
119
|
+
clientSecret: string;
|
|
120
|
+
callbackUrl: string;
|
|
121
|
+
} | undefined;
|
|
122
|
+
}, {
|
|
123
|
+
jwt: {
|
|
124
|
+
secret: string;
|
|
125
|
+
expiresIn?: string | undefined;
|
|
126
|
+
};
|
|
127
|
+
github?: {
|
|
128
|
+
clientId: string;
|
|
129
|
+
clientSecret: string;
|
|
130
|
+
callbackUrl?: string | undefined;
|
|
131
|
+
} | undefined;
|
|
132
|
+
enabled?: boolean | undefined;
|
|
133
|
+
providers?: ("apiKey" | "github-oauth2")[] | undefined;
|
|
134
|
+
}>;
|
|
135
|
+
export type AuthConfig = z.infer<typeof AuthConfigSchema>;
|
|
136
|
+
/**
|
|
137
|
+
* Rate limit configuration
|
|
138
|
+
*/
|
|
139
|
+
export declare const RateLimitConfigSchema: z.ZodObject<{
|
|
140
|
+
/** Whether rate limiting is enabled */
|
|
141
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
142
|
+
/** Maximum requests per time window */
|
|
143
|
+
max: z.ZodDefault<z.ZodNumber>;
|
|
144
|
+
/** Time window for rate limiting */
|
|
145
|
+
timeWindow: z.ZodDefault<z.ZodString>;
|
|
146
|
+
}, "strip", z.ZodTypeAny, {
|
|
147
|
+
enabled: boolean;
|
|
148
|
+
max: number;
|
|
149
|
+
timeWindow: string;
|
|
150
|
+
}, {
|
|
151
|
+
enabled?: boolean | undefined;
|
|
152
|
+
max?: number | undefined;
|
|
153
|
+
timeWindow?: string | undefined;
|
|
154
|
+
}>;
|
|
155
|
+
export type RateLimitConfig = z.infer<typeof RateLimitConfigSchema>;
|
|
156
|
+
/**
|
|
157
|
+
* CORS configuration
|
|
158
|
+
*/
|
|
159
|
+
export declare const CorsConfigSchema: z.ZodObject<{
|
|
160
|
+
/** Allowed origins (true = reflect request origin) */
|
|
161
|
+
origin: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
162
|
+
/** Whether to include credentials */
|
|
163
|
+
credentials: z.ZodDefault<z.ZodBoolean>;
|
|
164
|
+
}, "strip", z.ZodTypeAny, {
|
|
165
|
+
origin: string | boolean | string[];
|
|
166
|
+
credentials: boolean;
|
|
167
|
+
}, {
|
|
168
|
+
origin?: string | boolean | string[] | undefined;
|
|
169
|
+
credentials?: boolean | undefined;
|
|
170
|
+
}>;
|
|
171
|
+
export type CorsConfig = z.infer<typeof CorsConfigSchema>;
|
|
172
|
+
/**
|
|
173
|
+
* Logging configuration
|
|
174
|
+
*/
|
|
175
|
+
export declare const LoggingConfigSchema: z.ZodObject<{
|
|
176
|
+
/** Log level */
|
|
177
|
+
level: z.ZodDefault<z.ZodEnum<["trace", "debug", "info", "warn", "error"]>>;
|
|
178
|
+
/** Pretty print logs (for development) */
|
|
179
|
+
pretty: z.ZodDefault<z.ZodBoolean>;
|
|
180
|
+
}, "strip", z.ZodTypeAny, {
|
|
181
|
+
level: "error" | "trace" | "debug" | "info" | "warn";
|
|
182
|
+
pretty: boolean;
|
|
183
|
+
}, {
|
|
184
|
+
level?: "error" | "trace" | "debug" | "info" | "warn" | undefined;
|
|
185
|
+
pretty?: boolean | undefined;
|
|
186
|
+
}>;
|
|
187
|
+
export type LoggingConfig = z.infer<typeof LoggingConfigSchema>;
|
|
188
|
+
/**
|
|
189
|
+
* Repository configuration for label sync
|
|
190
|
+
*/
|
|
191
|
+
export declare const RepositoryConfigSchema: z.ZodObject<{
|
|
192
|
+
/** GitHub organization or username */
|
|
193
|
+
owner: z.ZodString;
|
|
194
|
+
/** Repository name */
|
|
195
|
+
repo: z.ZodString;
|
|
196
|
+
}, "strip", z.ZodTypeAny, {
|
|
197
|
+
owner: string;
|
|
198
|
+
repo: string;
|
|
199
|
+
}, {
|
|
200
|
+
owner: string;
|
|
201
|
+
repo: string;
|
|
202
|
+
}>;
|
|
203
|
+
export type RepositoryConfig = z.infer<typeof RepositoryConfigSchema>;
|
|
204
|
+
/**
|
|
205
|
+
* Monitor configuration for label detection
|
|
206
|
+
*/
|
|
207
|
+
export declare const MonitorConfigSchema: z.ZodObject<{
|
|
208
|
+
/** Polling interval in milliseconds */
|
|
209
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
210
|
+
/** GitHub webhook secret for signature verification */
|
|
211
|
+
webhookSecret: z.ZodOptional<z.ZodString>;
|
|
212
|
+
/** Maximum concurrent GitHub API calls during polling */
|
|
213
|
+
maxConcurrentPolls: z.ZodDefault<z.ZodNumber>;
|
|
214
|
+
/** Enable adaptive polling frequency */
|
|
215
|
+
adaptivePolling: z.ZodDefault<z.ZodBoolean>;
|
|
216
|
+
/** GitHub username for this cluster — used to filter issues by assignee */
|
|
217
|
+
clusterGithubUsername: z.ZodOptional<z.ZodString>;
|
|
218
|
+
}, "strip", z.ZodTypeAny, {
|
|
219
|
+
pollIntervalMs: number;
|
|
220
|
+
maxConcurrentPolls: number;
|
|
221
|
+
adaptivePolling: boolean;
|
|
222
|
+
webhookSecret?: string | undefined;
|
|
223
|
+
clusterGithubUsername?: string | undefined;
|
|
224
|
+
}, {
|
|
225
|
+
pollIntervalMs?: number | undefined;
|
|
226
|
+
webhookSecret?: string | undefined;
|
|
227
|
+
maxConcurrentPolls?: number | undefined;
|
|
228
|
+
adaptivePolling?: boolean | undefined;
|
|
229
|
+
clusterGithubUsername?: string | undefined;
|
|
230
|
+
}>;
|
|
231
|
+
export type MonitorConfig = z.infer<typeof MonitorConfigSchema>;
|
|
232
|
+
/**
|
|
233
|
+
* PR feedback monitor configuration
|
|
234
|
+
*/
|
|
235
|
+
export declare const PrMonitorConfigSchema: z.ZodObject<{
|
|
236
|
+
/** Whether the PR feedback monitor is enabled */
|
|
237
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
238
|
+
/** Polling interval in milliseconds */
|
|
239
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
240
|
+
/** GitHub webhook secret for signature verification */
|
|
241
|
+
webhookSecret: z.ZodOptional<z.ZodString>;
|
|
242
|
+
/** Enable adaptive polling frequency */
|
|
243
|
+
adaptivePolling: z.ZodDefault<z.ZodBoolean>;
|
|
244
|
+
/** Maximum concurrent GitHub API calls during polling */
|
|
245
|
+
maxConcurrentPolls: z.ZodDefault<z.ZodNumber>;
|
|
246
|
+
}, "strip", z.ZodTypeAny, {
|
|
247
|
+
enabled: boolean;
|
|
248
|
+
pollIntervalMs: number;
|
|
249
|
+
maxConcurrentPolls: number;
|
|
250
|
+
adaptivePolling: boolean;
|
|
251
|
+
webhookSecret?: string | undefined;
|
|
252
|
+
}, {
|
|
253
|
+
enabled?: boolean | undefined;
|
|
254
|
+
pollIntervalMs?: number | undefined;
|
|
255
|
+
webhookSecret?: string | undefined;
|
|
256
|
+
maxConcurrentPolls?: number | undefined;
|
|
257
|
+
adaptivePolling?: boolean | undefined;
|
|
258
|
+
}>;
|
|
259
|
+
export type PrMonitorConfig = z.infer<typeof PrMonitorConfigSchema>;
|
|
260
|
+
/**
|
|
261
|
+
* Epic completion monitor configuration
|
|
262
|
+
*/
|
|
263
|
+
export declare const EpicMonitorConfigSchema: z.ZodObject<{
|
|
264
|
+
/** Whether the epic completion monitor is enabled */
|
|
265
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
266
|
+
/** Polling interval in milliseconds (minimum 60 seconds) */
|
|
267
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
268
|
+
}, "strip", z.ZodTypeAny, {
|
|
269
|
+
enabled: boolean;
|
|
270
|
+
pollIntervalMs: number;
|
|
271
|
+
}, {
|
|
272
|
+
enabled?: boolean | undefined;
|
|
273
|
+
pollIntervalMs?: number | undefined;
|
|
274
|
+
}>;
|
|
275
|
+
export type EpicMonitorConfig = z.infer<typeof EpicMonitorConfigSchema>;
|
|
276
|
+
/**
|
|
277
|
+
* Dispatch configuration for worker queue and dispatcher
|
|
278
|
+
*/
|
|
279
|
+
export declare const DispatchConfigSchema: z.ZodObject<{
|
|
280
|
+
/** Interval between queue polls in milliseconds */
|
|
281
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
282
|
+
/** Maximum number of concurrent workers */
|
|
283
|
+
maxConcurrentWorkers: z.ZodDefault<z.ZodNumber>;
|
|
284
|
+
/** Worker heartbeat TTL in milliseconds */
|
|
285
|
+
heartbeatTtlMs: z.ZodDefault<z.ZodNumber>;
|
|
286
|
+
/** Interval between heartbeat/reaper checks in milliseconds */
|
|
287
|
+
heartbeatCheckIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
288
|
+
/** Timeout for graceful shutdown of workers in milliseconds */
|
|
289
|
+
shutdownTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
290
|
+
/** Maximum retry attempts before dead-lettering */
|
|
291
|
+
maxRetries: z.ZodDefault<z.ZodNumber>;
|
|
292
|
+
}, "strip", z.ZodTypeAny, {
|
|
293
|
+
pollIntervalMs: number;
|
|
294
|
+
maxConcurrentWorkers: number;
|
|
295
|
+
heartbeatTtlMs: number;
|
|
296
|
+
heartbeatCheckIntervalMs: number;
|
|
297
|
+
shutdownTimeoutMs: number;
|
|
298
|
+
maxRetries: number;
|
|
299
|
+
}, {
|
|
300
|
+
pollIntervalMs?: number | undefined;
|
|
301
|
+
maxConcurrentWorkers?: number | undefined;
|
|
302
|
+
heartbeatTtlMs?: number | undefined;
|
|
303
|
+
heartbeatCheckIntervalMs?: number | undefined;
|
|
304
|
+
shutdownTimeoutMs?: number | undefined;
|
|
305
|
+
maxRetries?: number | undefined;
|
|
306
|
+
}>;
|
|
307
|
+
export type DispatchConfig = z.infer<typeof DispatchConfigSchema>;
|
|
308
|
+
export { WorkerConfigSchema, type WorkerConfig };
|
|
309
|
+
/**
|
|
310
|
+
* Complete orchestrator configuration
|
|
311
|
+
*/
|
|
312
|
+
export declare const OrchestratorConfigSchema: z.ZodObject<{
|
|
313
|
+
server: z.ZodDefault<z.ZodObject<{
|
|
314
|
+
/** Port to listen on (0 = random available port) */
|
|
315
|
+
port: z.ZodDefault<z.ZodNumber>;
|
|
316
|
+
/** Host to bind to */
|
|
317
|
+
host: z.ZodDefault<z.ZodString>;
|
|
318
|
+
}, "strip", z.ZodTypeAny, {
|
|
319
|
+
port: number;
|
|
320
|
+
host: string;
|
|
321
|
+
}, {
|
|
322
|
+
port?: number | undefined;
|
|
323
|
+
host?: string | undefined;
|
|
324
|
+
}>>;
|
|
325
|
+
redis: z.ZodDefault<z.ZodObject<{
|
|
326
|
+
/** Redis connection URL */
|
|
327
|
+
url: z.ZodDefault<z.ZodString>;
|
|
328
|
+
}, "strip", z.ZodTypeAny, {
|
|
329
|
+
url: string;
|
|
330
|
+
}, {
|
|
331
|
+
url?: string | undefined;
|
|
332
|
+
}>>;
|
|
333
|
+
auth: z.ZodObject<{
|
|
334
|
+
/** Whether authentication is enabled */
|
|
335
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
336
|
+
/** Enabled authentication providers */
|
|
337
|
+
providers: z.ZodDefault<z.ZodArray<z.ZodEnum<["apiKey", "github-oauth2"]>, "many">>;
|
|
338
|
+
/** GitHub OAuth configuration (required if github-oauth2 provider is enabled) */
|
|
339
|
+
github: z.ZodOptional<z.ZodObject<{
|
|
340
|
+
/** GitHub OAuth client ID */
|
|
341
|
+
clientId: z.ZodString;
|
|
342
|
+
/** GitHub OAuth client secret */
|
|
343
|
+
clientSecret: z.ZodString;
|
|
344
|
+
/** OAuth callback URL */
|
|
345
|
+
callbackUrl: z.ZodDefault<z.ZodString>;
|
|
346
|
+
}, "strip", z.ZodTypeAny, {
|
|
347
|
+
clientId: string;
|
|
348
|
+
clientSecret: string;
|
|
349
|
+
callbackUrl: string;
|
|
350
|
+
}, {
|
|
351
|
+
clientId: string;
|
|
352
|
+
clientSecret: string;
|
|
353
|
+
callbackUrl?: string | undefined;
|
|
354
|
+
}>>;
|
|
355
|
+
/** JWT configuration */
|
|
356
|
+
jwt: z.ZodObject<{
|
|
357
|
+
/** Secret key for signing JWTs */
|
|
358
|
+
secret: z.ZodString;
|
|
359
|
+
/** Token expiration time */
|
|
360
|
+
expiresIn: z.ZodDefault<z.ZodString>;
|
|
361
|
+
}, "strip", z.ZodTypeAny, {
|
|
362
|
+
secret: string;
|
|
363
|
+
expiresIn: string;
|
|
364
|
+
}, {
|
|
365
|
+
secret: string;
|
|
366
|
+
expiresIn?: string | undefined;
|
|
367
|
+
}>;
|
|
368
|
+
}, "strip", z.ZodTypeAny, {
|
|
369
|
+
enabled: boolean;
|
|
370
|
+
jwt: {
|
|
371
|
+
secret: string;
|
|
372
|
+
expiresIn: string;
|
|
373
|
+
};
|
|
374
|
+
providers: ("apiKey" | "github-oauth2")[];
|
|
375
|
+
github?: {
|
|
376
|
+
clientId: string;
|
|
377
|
+
clientSecret: string;
|
|
378
|
+
callbackUrl: string;
|
|
379
|
+
} | undefined;
|
|
380
|
+
}, {
|
|
381
|
+
jwt: {
|
|
382
|
+
secret: string;
|
|
383
|
+
expiresIn?: string | undefined;
|
|
384
|
+
};
|
|
385
|
+
github?: {
|
|
386
|
+
clientId: string;
|
|
387
|
+
clientSecret: string;
|
|
388
|
+
callbackUrl?: string | undefined;
|
|
389
|
+
} | undefined;
|
|
390
|
+
enabled?: boolean | undefined;
|
|
391
|
+
providers?: ("apiKey" | "github-oauth2")[] | undefined;
|
|
392
|
+
}>;
|
|
393
|
+
rateLimit: z.ZodDefault<z.ZodObject<{
|
|
394
|
+
/** Whether rate limiting is enabled */
|
|
395
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
396
|
+
/** Maximum requests per time window */
|
|
397
|
+
max: z.ZodDefault<z.ZodNumber>;
|
|
398
|
+
/** Time window for rate limiting */
|
|
399
|
+
timeWindow: z.ZodDefault<z.ZodString>;
|
|
400
|
+
}, "strip", z.ZodTypeAny, {
|
|
401
|
+
enabled: boolean;
|
|
402
|
+
max: number;
|
|
403
|
+
timeWindow: string;
|
|
404
|
+
}, {
|
|
405
|
+
enabled?: boolean | undefined;
|
|
406
|
+
max?: number | undefined;
|
|
407
|
+
timeWindow?: string | undefined;
|
|
408
|
+
}>>;
|
|
409
|
+
cors: z.ZodDefault<z.ZodObject<{
|
|
410
|
+
/** Allowed origins (true = reflect request origin) */
|
|
411
|
+
origin: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
412
|
+
/** Whether to include credentials */
|
|
413
|
+
credentials: z.ZodDefault<z.ZodBoolean>;
|
|
414
|
+
}, "strip", z.ZodTypeAny, {
|
|
415
|
+
origin: string | boolean | string[];
|
|
416
|
+
credentials: boolean;
|
|
417
|
+
}, {
|
|
418
|
+
origin?: string | boolean | string[] | undefined;
|
|
419
|
+
credentials?: boolean | undefined;
|
|
420
|
+
}>>;
|
|
421
|
+
logging: z.ZodDefault<z.ZodObject<{
|
|
422
|
+
/** Log level */
|
|
423
|
+
level: z.ZodDefault<z.ZodEnum<["trace", "debug", "info", "warn", "error"]>>;
|
|
424
|
+
/** Pretty print logs (for development) */
|
|
425
|
+
pretty: z.ZodDefault<z.ZodBoolean>;
|
|
426
|
+
}, "strip", z.ZodTypeAny, {
|
|
427
|
+
level: "error" | "trace" | "debug" | "info" | "warn";
|
|
428
|
+
pretty: boolean;
|
|
429
|
+
}, {
|
|
430
|
+
level?: "error" | "trace" | "debug" | "info" | "warn" | undefined;
|
|
431
|
+
pretty?: boolean | undefined;
|
|
432
|
+
}>>;
|
|
433
|
+
repositories: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
434
|
+
/** GitHub organization or username */
|
|
435
|
+
owner: z.ZodString;
|
|
436
|
+
/** Repository name */
|
|
437
|
+
repo: z.ZodString;
|
|
438
|
+
}, "strip", z.ZodTypeAny, {
|
|
439
|
+
owner: string;
|
|
440
|
+
repo: string;
|
|
441
|
+
}, {
|
|
442
|
+
owner: string;
|
|
443
|
+
repo: string;
|
|
444
|
+
}>, "many">>;
|
|
445
|
+
monitor: z.ZodDefault<z.ZodObject<{
|
|
446
|
+
/** Polling interval in milliseconds */
|
|
447
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
448
|
+
/** GitHub webhook secret for signature verification */
|
|
449
|
+
webhookSecret: z.ZodOptional<z.ZodString>;
|
|
450
|
+
/** Maximum concurrent GitHub API calls during polling */
|
|
451
|
+
maxConcurrentPolls: z.ZodDefault<z.ZodNumber>;
|
|
452
|
+
/** Enable adaptive polling frequency */
|
|
453
|
+
adaptivePolling: z.ZodDefault<z.ZodBoolean>;
|
|
454
|
+
/** GitHub username for this cluster — used to filter issues by assignee */
|
|
455
|
+
clusterGithubUsername: z.ZodOptional<z.ZodString>;
|
|
456
|
+
}, "strip", z.ZodTypeAny, {
|
|
457
|
+
pollIntervalMs: number;
|
|
458
|
+
maxConcurrentPolls: number;
|
|
459
|
+
adaptivePolling: boolean;
|
|
460
|
+
webhookSecret?: string | undefined;
|
|
461
|
+
clusterGithubUsername?: string | undefined;
|
|
462
|
+
}, {
|
|
463
|
+
pollIntervalMs?: number | undefined;
|
|
464
|
+
webhookSecret?: string | undefined;
|
|
465
|
+
maxConcurrentPolls?: number | undefined;
|
|
466
|
+
adaptivePolling?: boolean | undefined;
|
|
467
|
+
clusterGithubUsername?: string | undefined;
|
|
468
|
+
}>>;
|
|
469
|
+
prMonitor: z.ZodDefault<z.ZodObject<{
|
|
470
|
+
/** Whether the PR feedback monitor is enabled */
|
|
471
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
472
|
+
/** Polling interval in milliseconds */
|
|
473
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
474
|
+
/** GitHub webhook secret for signature verification */
|
|
475
|
+
webhookSecret: z.ZodOptional<z.ZodString>;
|
|
476
|
+
/** Enable adaptive polling frequency */
|
|
477
|
+
adaptivePolling: z.ZodDefault<z.ZodBoolean>;
|
|
478
|
+
/** Maximum concurrent GitHub API calls during polling */
|
|
479
|
+
maxConcurrentPolls: z.ZodDefault<z.ZodNumber>;
|
|
480
|
+
}, "strip", z.ZodTypeAny, {
|
|
481
|
+
enabled: boolean;
|
|
482
|
+
pollIntervalMs: number;
|
|
483
|
+
maxConcurrentPolls: number;
|
|
484
|
+
adaptivePolling: boolean;
|
|
485
|
+
webhookSecret?: string | undefined;
|
|
486
|
+
}, {
|
|
487
|
+
enabled?: boolean | undefined;
|
|
488
|
+
pollIntervalMs?: number | undefined;
|
|
489
|
+
webhookSecret?: string | undefined;
|
|
490
|
+
maxConcurrentPolls?: number | undefined;
|
|
491
|
+
adaptivePolling?: boolean | undefined;
|
|
492
|
+
}>>;
|
|
493
|
+
epicMonitor: z.ZodDefault<z.ZodObject<{
|
|
494
|
+
/** Whether the epic completion monitor is enabled */
|
|
495
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
496
|
+
/** Polling interval in milliseconds (minimum 60 seconds) */
|
|
497
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
498
|
+
}, "strip", z.ZodTypeAny, {
|
|
499
|
+
enabled: boolean;
|
|
500
|
+
pollIntervalMs: number;
|
|
501
|
+
}, {
|
|
502
|
+
enabled?: boolean | undefined;
|
|
503
|
+
pollIntervalMs?: number | undefined;
|
|
504
|
+
}>>;
|
|
505
|
+
dispatch: z.ZodDefault<z.ZodObject<{
|
|
506
|
+
/** Interval between queue polls in milliseconds */
|
|
507
|
+
pollIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
508
|
+
/** Maximum number of concurrent workers */
|
|
509
|
+
maxConcurrentWorkers: z.ZodDefault<z.ZodNumber>;
|
|
510
|
+
/** Worker heartbeat TTL in milliseconds */
|
|
511
|
+
heartbeatTtlMs: z.ZodDefault<z.ZodNumber>;
|
|
512
|
+
/** Interval between heartbeat/reaper checks in milliseconds */
|
|
513
|
+
heartbeatCheckIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
514
|
+
/** Timeout for graceful shutdown of workers in milliseconds */
|
|
515
|
+
shutdownTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
516
|
+
/** Maximum retry attempts before dead-lettering */
|
|
517
|
+
maxRetries: z.ZodDefault<z.ZodNumber>;
|
|
518
|
+
}, "strip", z.ZodTypeAny, {
|
|
519
|
+
pollIntervalMs: number;
|
|
520
|
+
maxConcurrentWorkers: number;
|
|
521
|
+
heartbeatTtlMs: number;
|
|
522
|
+
heartbeatCheckIntervalMs: number;
|
|
523
|
+
shutdownTimeoutMs: number;
|
|
524
|
+
maxRetries: number;
|
|
525
|
+
}, {
|
|
526
|
+
pollIntervalMs?: number | undefined;
|
|
527
|
+
maxConcurrentWorkers?: number | undefined;
|
|
528
|
+
heartbeatTtlMs?: number | undefined;
|
|
529
|
+
heartbeatCheckIntervalMs?: number | undefined;
|
|
530
|
+
shutdownTimeoutMs?: number | undefined;
|
|
531
|
+
maxRetries?: number | undefined;
|
|
532
|
+
}>>;
|
|
533
|
+
worker: z.ZodDefault<z.ZodObject<{
|
|
534
|
+
phaseTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
535
|
+
workspaceDir: z.ZodDefault<z.ZodString>;
|
|
536
|
+
shutdownGracePeriodMs: z.ZodDefault<z.ZodNumber>;
|
|
537
|
+
validateCommand: z.ZodDefault<z.ZodString>;
|
|
538
|
+
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
539
|
+
gates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
|
|
540
|
+
phase: z.ZodEnum<["specify", "clarify", "plan", "tasks", "implement", "validate"]>;
|
|
541
|
+
gateLabel: z.ZodString;
|
|
542
|
+
condition: z.ZodEnum<["always", "on-questions", "on-failure"]>;
|
|
543
|
+
}, "strip", z.ZodTypeAny, {
|
|
544
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
545
|
+
gateLabel: string;
|
|
546
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
547
|
+
}, {
|
|
548
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
549
|
+
gateLabel: string;
|
|
550
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
551
|
+
}>, "many">>>;
|
|
552
|
+
}, "strip", z.ZodTypeAny, {
|
|
553
|
+
phaseTimeoutMs: number;
|
|
554
|
+
workspaceDir: string;
|
|
555
|
+
shutdownGracePeriodMs: number;
|
|
556
|
+
validateCommand: string;
|
|
557
|
+
maxTurns: number;
|
|
558
|
+
gates: Record<string, {
|
|
559
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
560
|
+
gateLabel: string;
|
|
561
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
562
|
+
}[]>;
|
|
563
|
+
}, {
|
|
564
|
+
phaseTimeoutMs?: number | undefined;
|
|
565
|
+
workspaceDir?: string | undefined;
|
|
566
|
+
shutdownGracePeriodMs?: number | undefined;
|
|
567
|
+
validateCommand?: string | undefined;
|
|
568
|
+
maxTurns?: number | undefined;
|
|
569
|
+
gates?: Record<string, {
|
|
570
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
571
|
+
gateLabel: string;
|
|
572
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
573
|
+
}[]> | undefined;
|
|
574
|
+
}>>;
|
|
575
|
+
}, "strip", z.ZodTypeAny, {
|
|
576
|
+
server: {
|
|
577
|
+
port: number;
|
|
578
|
+
host: string;
|
|
579
|
+
};
|
|
580
|
+
redis: {
|
|
581
|
+
url: string;
|
|
582
|
+
};
|
|
583
|
+
auth: {
|
|
584
|
+
enabled: boolean;
|
|
585
|
+
jwt: {
|
|
586
|
+
secret: string;
|
|
587
|
+
expiresIn: string;
|
|
588
|
+
};
|
|
589
|
+
providers: ("apiKey" | "github-oauth2")[];
|
|
590
|
+
github?: {
|
|
591
|
+
clientId: string;
|
|
592
|
+
clientSecret: string;
|
|
593
|
+
callbackUrl: string;
|
|
594
|
+
} | undefined;
|
|
595
|
+
};
|
|
596
|
+
rateLimit: {
|
|
597
|
+
enabled: boolean;
|
|
598
|
+
max: number;
|
|
599
|
+
timeWindow: string;
|
|
600
|
+
};
|
|
601
|
+
cors: {
|
|
602
|
+
origin: string | boolean | string[];
|
|
603
|
+
credentials: boolean;
|
|
604
|
+
};
|
|
605
|
+
logging: {
|
|
606
|
+
level: "error" | "trace" | "debug" | "info" | "warn";
|
|
607
|
+
pretty: boolean;
|
|
608
|
+
};
|
|
609
|
+
repositories: {
|
|
610
|
+
owner: string;
|
|
611
|
+
repo: string;
|
|
612
|
+
}[];
|
|
613
|
+
monitor: {
|
|
614
|
+
pollIntervalMs: number;
|
|
615
|
+
maxConcurrentPolls: number;
|
|
616
|
+
adaptivePolling: boolean;
|
|
617
|
+
webhookSecret?: string | undefined;
|
|
618
|
+
clusterGithubUsername?: string | undefined;
|
|
619
|
+
};
|
|
620
|
+
prMonitor: {
|
|
621
|
+
enabled: boolean;
|
|
622
|
+
pollIntervalMs: number;
|
|
623
|
+
maxConcurrentPolls: number;
|
|
624
|
+
adaptivePolling: boolean;
|
|
625
|
+
webhookSecret?: string | undefined;
|
|
626
|
+
};
|
|
627
|
+
epicMonitor: {
|
|
628
|
+
enabled: boolean;
|
|
629
|
+
pollIntervalMs: number;
|
|
630
|
+
};
|
|
631
|
+
dispatch: {
|
|
632
|
+
pollIntervalMs: number;
|
|
633
|
+
maxConcurrentWorkers: number;
|
|
634
|
+
heartbeatTtlMs: number;
|
|
635
|
+
heartbeatCheckIntervalMs: number;
|
|
636
|
+
shutdownTimeoutMs: number;
|
|
637
|
+
maxRetries: number;
|
|
638
|
+
};
|
|
639
|
+
worker: {
|
|
640
|
+
phaseTimeoutMs: number;
|
|
641
|
+
workspaceDir: string;
|
|
642
|
+
shutdownGracePeriodMs: number;
|
|
643
|
+
validateCommand: string;
|
|
644
|
+
maxTurns: number;
|
|
645
|
+
gates: Record<string, {
|
|
646
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
647
|
+
gateLabel: string;
|
|
648
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
649
|
+
}[]>;
|
|
650
|
+
};
|
|
651
|
+
}, {
|
|
652
|
+
auth: {
|
|
653
|
+
jwt: {
|
|
654
|
+
secret: string;
|
|
655
|
+
expiresIn?: string | undefined;
|
|
656
|
+
};
|
|
657
|
+
github?: {
|
|
658
|
+
clientId: string;
|
|
659
|
+
clientSecret: string;
|
|
660
|
+
callbackUrl?: string | undefined;
|
|
661
|
+
} | undefined;
|
|
662
|
+
enabled?: boolean | undefined;
|
|
663
|
+
providers?: ("apiKey" | "github-oauth2")[] | undefined;
|
|
664
|
+
};
|
|
665
|
+
server?: {
|
|
666
|
+
port?: number | undefined;
|
|
667
|
+
host?: string | undefined;
|
|
668
|
+
} | undefined;
|
|
669
|
+
redis?: {
|
|
670
|
+
url?: string | undefined;
|
|
671
|
+
} | undefined;
|
|
672
|
+
rateLimit?: {
|
|
673
|
+
enabled?: boolean | undefined;
|
|
674
|
+
max?: number | undefined;
|
|
675
|
+
timeWindow?: string | undefined;
|
|
676
|
+
} | undefined;
|
|
677
|
+
cors?: {
|
|
678
|
+
origin?: string | boolean | string[] | undefined;
|
|
679
|
+
credentials?: boolean | undefined;
|
|
680
|
+
} | undefined;
|
|
681
|
+
logging?: {
|
|
682
|
+
level?: "error" | "trace" | "debug" | "info" | "warn" | undefined;
|
|
683
|
+
pretty?: boolean | undefined;
|
|
684
|
+
} | undefined;
|
|
685
|
+
repositories?: {
|
|
686
|
+
owner: string;
|
|
687
|
+
repo: string;
|
|
688
|
+
}[] | undefined;
|
|
689
|
+
monitor?: {
|
|
690
|
+
pollIntervalMs?: number | undefined;
|
|
691
|
+
webhookSecret?: string | undefined;
|
|
692
|
+
maxConcurrentPolls?: number | undefined;
|
|
693
|
+
adaptivePolling?: boolean | undefined;
|
|
694
|
+
clusterGithubUsername?: string | undefined;
|
|
695
|
+
} | undefined;
|
|
696
|
+
prMonitor?: {
|
|
697
|
+
enabled?: boolean | undefined;
|
|
698
|
+
pollIntervalMs?: number | undefined;
|
|
699
|
+
webhookSecret?: string | undefined;
|
|
700
|
+
maxConcurrentPolls?: number | undefined;
|
|
701
|
+
adaptivePolling?: boolean | undefined;
|
|
702
|
+
} | undefined;
|
|
703
|
+
epicMonitor?: {
|
|
704
|
+
enabled?: boolean | undefined;
|
|
705
|
+
pollIntervalMs?: number | undefined;
|
|
706
|
+
} | undefined;
|
|
707
|
+
dispatch?: {
|
|
708
|
+
pollIntervalMs?: number | undefined;
|
|
709
|
+
maxConcurrentWorkers?: number | undefined;
|
|
710
|
+
heartbeatTtlMs?: number | undefined;
|
|
711
|
+
heartbeatCheckIntervalMs?: number | undefined;
|
|
712
|
+
shutdownTimeoutMs?: number | undefined;
|
|
713
|
+
maxRetries?: number | undefined;
|
|
714
|
+
} | undefined;
|
|
715
|
+
worker?: {
|
|
716
|
+
phaseTimeoutMs?: number | undefined;
|
|
717
|
+
workspaceDir?: string | undefined;
|
|
718
|
+
shutdownGracePeriodMs?: number | undefined;
|
|
719
|
+
validateCommand?: string | undefined;
|
|
720
|
+
maxTurns?: number | undefined;
|
|
721
|
+
gates?: Record<string, {
|
|
722
|
+
phase: "specify" | "clarify" | "plan" | "tasks" | "implement" | "validate";
|
|
723
|
+
gateLabel: string;
|
|
724
|
+
condition: "always" | "on-questions" | "on-failure";
|
|
725
|
+
}[]> | undefined;
|
|
726
|
+
} | undefined;
|
|
727
|
+
}>;
|
|
728
|
+
export type OrchestratorConfig = z.infer<typeof OrchestratorConfigSchema>;
|
|
729
|
+
/**
|
|
730
|
+
* Validate configuration and return typed result
|
|
731
|
+
*/
|
|
732
|
+
export declare function validateConfig(config: unknown): OrchestratorConfig;
|
|
733
|
+
//# sourceMappingURL=schema.d.ts.map
|