night-orch 0.20.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/cli/tui/projects-view.d.ts.map +1 -1
  2. package/dist/cli/tui/projects-view.js +24 -27
  3. package/dist/cli/tui/projects-view.js.map +1 -1
  4. package/dist/config/sanitize.d.ts +25 -40
  5. package/dist/config/sanitize.d.ts.map +1 -1
  6. package/dist/config/sanitize.js +28 -55
  7. package/dist/config/sanitize.js.map +1 -1
  8. package/dist/config/schema.d.ts +636 -735
  9. package/dist/config/schema.d.ts.map +1 -1
  10. package/dist/config/schema.js +59 -30
  11. package/dist/config/schema.js.map +1 -1
  12. package/dist/environment/hooks.d.ts +30 -0
  13. package/dist/environment/hooks.d.ts.map +1 -0
  14. package/dist/environment/hooks.js +112 -0
  15. package/dist/environment/hooks.js.map +1 -0
  16. package/dist/environment/manager.d.ts +30 -17
  17. package/dist/environment/manager.d.ts.map +1 -1
  18. package/dist/environment/manager.js +65 -99
  19. package/dist/environment/manager.js.map +1 -1
  20. package/dist/environment/tokens.d.ts +45 -0
  21. package/dist/environment/tokens.d.ts.map +1 -0
  22. package/dist/environment/tokens.js +77 -0
  23. package/dist/environment/tokens.js.map +1 -0
  24. package/dist/forge/status-comment.d.ts.map +1 -1
  25. package/dist/forge/status-comment.js +6 -4
  26. package/dist/forge/status-comment.js.map +1 -1
  27. package/dist/loop/engine.d.ts +2 -1
  28. package/dist/loop/engine.d.ts.map +1 -1
  29. package/dist/loop/engine.js +2 -2
  30. package/dist/loop/engine.js.map +1 -1
  31. package/dist/loop/post-publish.d.ts +2 -1
  32. package/dist/loop/post-publish.d.ts.map +1 -1
  33. package/dist/loop/post-publish.js.map +1 -1
  34. package/dist/loop/preflight.js +2 -2
  35. package/dist/loop/preflight.js.map +1 -1
  36. package/dist/loop/step-executor.d.ts +14 -1
  37. package/dist/loop/step-executor.d.ts.map +1 -1
  38. package/dist/loop/step-executor.js +53 -2
  39. package/dist/loop/step-executor.js.map +1 -1
  40. package/dist/loop/verification-profile.js +3 -1
  41. package/dist/loop/verification-profile.js.map +1 -1
  42. package/dist/loop/verifier.d.ts +15 -2
  43. package/dist/loop/verifier.d.ts.map +1 -1
  44. package/dist/loop/verifier.js +114 -42
  45. package/dist/loop/verifier.js.map +1 -1
  46. package/dist/ops/rebase-and-check.d.ts +1 -4
  47. package/dist/ops/rebase-and-check.d.ts.map +1 -1
  48. package/dist/ops/rebase-and-check.js +2 -2
  49. package/dist/ops/rebase-and-check.js.map +1 -1
  50. package/dist/poller/attempt-dispatcher.d.ts.map +1 -1
  51. package/dist/poller/attempt-dispatcher.js +23 -13
  52. package/dist/poller/attempt-dispatcher.js.map +1 -1
  53. package/dist/settings/definitions/github.d.ts.map +1 -1
  54. package/dist/settings/definitions/github.js +30 -0
  55. package/dist/settings/definitions/github.js.map +1 -1
  56. package/dist/state/db.d.ts.map +1 -1
  57. package/dist/state/db.js +2 -0
  58. package/dist/state/db.js.map +1 -1
  59. package/dist/state/migrations/035-web-secrets.d.ts +3 -0
  60. package/dist/state/migrations/035-web-secrets.d.ts.map +1 -0
  61. package/dist/state/migrations/035-web-secrets.js +10 -0
  62. package/dist/state/migrations/035-web-secrets.js.map +1 -0
  63. package/dist/state/web-secrets.d.ts +23 -0
  64. package/dist/state/web-secrets.d.ts.map +1 -0
  65. package/dist/state/web-secrets.js +53 -0
  66. package/dist/state/web-secrets.js.map +1 -0
  67. package/dist/web/server.d.ts +2 -2
  68. package/dist/web/server.d.ts.map +1 -1
  69. package/dist/web/server.js +24 -9
  70. package/dist/web/server.js.map +1 -1
  71. package/dist/workers/env.d.ts.map +1 -1
  72. package/dist/workers/env.js +15 -7
  73. package/dist/workers/env.js.map +1 -1
  74. package/examples/config.example.yaml +32 -20
  75. package/package.json +1 -1
  76. package/web/dist/assets/{index-CRZ9i9Pz.js → index-CTn9DDFl.js} +4 -4
  77. package/web/dist/assets/index-DNJc3G-c.css +1 -0
  78. package/web/dist/index.html +2 -2
  79. package/dist/environment/bootstrap.d.ts +0 -19
  80. package/dist/environment/bootstrap.d.ts.map +0 -1
  81. package/dist/environment/bootstrap.js +0 -89
  82. package/dist/environment/bootstrap.js.map +0 -1
  83. package/dist/environment/dedicated.d.ts +0 -17
  84. package/dist/environment/dedicated.d.ts.map +0 -1
  85. package/dist/environment/dedicated.js +0 -68
  86. package/dist/environment/dedicated.js.map +0 -1
  87. package/dist/environment/env-file.d.ts +0 -16
  88. package/dist/environment/env-file.d.ts.map +0 -1
  89. package/dist/environment/env-file.js +0 -74
  90. package/dist/environment/env-file.js.map +0 -1
  91. package/dist/environment/shared.d.ts +0 -6
  92. package/dist/environment/shared.d.ts.map +0 -1
  93. package/dist/environment/shared.js +0 -30
  94. package/dist/environment/shared.js.map +0 -1
  95. package/web/dist/assets/index-B8QrM7KP.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"projects-view.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/projects-view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,UAAU,iBAAiB;IACzB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC7C,oBAAoB,EAAE,MAAM,CAAA;IAC5B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,IAAI,EAAE,gBAAgB,CAAA;CACvB;AAKD,KAAK,gBAAgB,GAAG;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,IAAI,GACL,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAkFxC;AA8MD,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAG7F;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,GAAG,eAAe,CAgBpG"}
1
+ {"version":3,"file":"projects-view.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/projects-view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,UAAU,iBAAiB;IACzB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC7C,oBAAoB,EAAE,MAAM,CAAA;IAC5B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,IAAI,EAAE,gBAAgB,CAAA;CACvB;AAKD,KAAK,gBAAgB,GAAG;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,IAAI,GACL,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAkFxC;AAqMD,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAG7F;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,GAAG,eAAe,CAgBpG"}
@@ -18,7 +18,7 @@ export function ProjectsView({ repos, selectedIndex, workerProfiles, globalGithu
18
18
  })] }), _jsxs(Box, { width: "62%", flexDirection: "column", borderStyle: "single", borderColor: "gray", paddingX: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "Project Preview" }), !selectedRepo && _jsx(Text, { color: "gray", children: "Select a repository to inspect" }), selectedRepo && (_jsxs(_Fragment, { children: [_jsx(Text, { children: selectedRepo.repo }), _jsxs(Text, { dimColor: true, children: ["path ", truncate(selectedRepo.localPath, 92)] }), _jsxs(Text, { children: ["forge ", selectedRepo.forge, ' ', "base ", selectedRepo.baseBranch, ' ', "workflow ", selectedRepo.workflow ?? 'default'] }), _jsxs(Text, { children: ["concurrency ", selectedRepo.maxConcurrentRuns, ' ', "coder ", selectedRepo.defaults.coder] }), _jsxs(Text, { dimColor: true, children: ["labels ", selectedRepo.labels.ready.join(', '), ' ', '->', " ", selectedRepo.labels.reviewReady] })] }))] })] }), _jsx(Text, { color: "gray", children: "Press j/k to select a project, then o or Enter for full details" })] }));
19
19
  }
20
20
  function FocusedProjectView({ selectedRepo, workerProfiles, authDisplay, }) {
21
- return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, children: "Project Detail" }), !selectedRepo && _jsx(Text, { color: "gray", children: "No project selected" }), selectedRepo && authDisplay && (_jsxs(Box, { marginTop: 1, flexDirection: "column", borderStyle: "single", borderColor: "gray", paddingX: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: selectedRepo.repo }), _jsxs(Text, { dimColor: true, children: ["path ", truncate(selectedRepo.localPath, 120)] }), _jsxs(Text, { children: ["forge ", selectedRepo.forge, ' ', "branch ", selectedRepo.baseBranch, ' ', "prefix ", selectedRepo.branchPrefix, ' ', "workflow ", selectedRepo.workflow ?? 'default'] }), _jsxs(Text, { children: ["concurrency ", selectedRepo.maxConcurrentRuns, ' ', "token ", authDisplay.tokenEnv, ' ', "api ", authDisplay.apiBaseUrl] }), authDisplay.apiMissing && (_jsx(Text, { color: "yellow", children: "apiBaseUrl is required for Forgejo repositories" })), _jsx(Text, { bold: true, children: "Tools" }), _jsxs(Text, { children: ["planner ", describeRoleSelection(selectedRepo, 'planner', workerProfiles)] }), _jsxs(Text, { children: ["coder ", describeRoleSelection(selectedRepo, 'coder', workerProfiles)] }), _jsxs(Text, { children: ["reviewer ", describeRoleSelection(selectedRepo, 'reviewer', workerProfiles)] }), _jsxs(Text, { children: ["mentions ", formatList(selectedRepo.defaults.prMentions)] }), _jsx(Text, { bold: true, children: "Tags & Lanes" }), _jsxs(Text, { children: ["all tags ", formatList(collectTags(selectedRepo))] }), _jsxs(Text, { children: ["include ", formatList(selectedRepo.selectors.includeLabelsAny)] }), _jsxs(Text, { children: ["exclude ", formatList(selectedRepo.selectors.excludeLabelsAny)] }), _jsxs(Text, { children: ["lanes ready:", formatList(selectedRepo.labels.ready), " running:", selectedRepo.labels.running, " review:", selectedRepo.labels.reviewReady, " blocked:", selectedRepo.labels.blocked] }), _jsx(Text, { bold: true, children: "Execution" }), _jsxs(Text, { children: ["verify ", formatCommands(selectedRepo.verify)] }), _jsxs(Text, { children: ["planning PRD dir ", selectedRepo.planning.prdDirectory] }), _jsxs(Text, { children: ["prompts planner:", flag(selectedRepo.prompts?.plannerSystem), " coder:", flag(selectedRepo.prompts?.coderSystem), " reviewer:", flag(selectedRepo.prompts?.reviewerSystem)] }), _jsx(Text, { bold: true, children: "Environment" }), _jsxs(Text, { children: ["mode ", selectedRepo.environment?.defaultMode ?? 'shared (implicit default)'] }), _jsxs(Text, { children: ["bootstrap ", formatBootstrap(selectedRepo)] }), _jsxs(Text, { children: ["cleanup ", formatCleanup(selectedRepo)] }), _jsxs(Text, { children: ["shared ", formatSharedEnv(selectedRepo)] }), _jsxs(Text, { children: ["dedicated ", formatDedicatedEnv(selectedRepo)] }), _jsx(Text, { bold: true, children: "Merge Queue & Labels" }), _jsxs(Text, { children: ["merge queue ", selectedRepo.mergeQueue.enabled ? 'enabled' : 'disabled', ' ', "batch ", selectedRepo.mergeQueue.batchSize, ' ', "method ", selectedRepo.mergeQueue.mergeMethod, ' ', "approval ", selectedRepo.mergeQueue.requireApproval ? 'required' : 'optional', ' ', "retryFlakyOnce ", selectedRepo.mergeQueue.retryFlakyOnce ? 'yes' : 'no'] }), _jsxs(Text, { children: ["staging branch ", selectedRepo.mergeQueue.stagingBranchPrefix] }), _jsxs(Text, { children: ["label presentation ", formatLabelPresentation(selectedRepo)] })] })), _jsx(Text, { color: "gray", children: "Press q or esc to close project detail" })] }));
21
+ return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, children: "Project Detail" }), !selectedRepo && _jsx(Text, { color: "gray", children: "No project selected" }), selectedRepo && authDisplay && (_jsxs(Box, { marginTop: 1, flexDirection: "column", borderStyle: "single", borderColor: "gray", paddingX: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: selectedRepo.repo }), _jsxs(Text, { dimColor: true, children: ["path ", truncate(selectedRepo.localPath, 120)] }), _jsxs(Text, { children: ["forge ", selectedRepo.forge, ' ', "branch ", selectedRepo.baseBranch, ' ', "prefix ", selectedRepo.branchPrefix, ' ', "workflow ", selectedRepo.workflow ?? 'default'] }), _jsxs(Text, { children: ["concurrency ", selectedRepo.maxConcurrentRuns, ' ', "token ", authDisplay.tokenEnv, ' ', "api ", authDisplay.apiBaseUrl] }), authDisplay.apiMissing && (_jsx(Text, { color: "yellow", children: "apiBaseUrl is required for Forgejo repositories" })), _jsx(Text, { bold: true, children: "Tools" }), _jsxs(Text, { children: ["planner ", describeRoleSelection(selectedRepo, 'planner', workerProfiles)] }), _jsxs(Text, { children: ["coder ", describeRoleSelection(selectedRepo, 'coder', workerProfiles)] }), _jsxs(Text, { children: ["reviewer ", describeRoleSelection(selectedRepo, 'reviewer', workerProfiles)] }), _jsxs(Text, { children: ["mentions ", formatList(selectedRepo.defaults.prMentions)] }), _jsx(Text, { bold: true, children: "Tags & Lanes" }), _jsxs(Text, { children: ["all tags ", formatList(collectTags(selectedRepo))] }), _jsxs(Text, { children: ["include ", formatList(selectedRepo.selectors.includeLabelsAny)] }), _jsxs(Text, { children: ["exclude ", formatList(selectedRepo.selectors.excludeLabelsAny)] }), _jsxs(Text, { children: ["lanes ready:", formatList(selectedRepo.labels.ready), " running:", selectedRepo.labels.running, " review:", selectedRepo.labels.reviewReady, " blocked:", selectedRepo.labels.blocked] }), _jsx(Text, { bold: true, children: "Execution" }), _jsxs(Text, { children: ["verify ", formatCommands(selectedRepo.verify)] }), _jsxs(Text, { children: ["planning PRD dir ", selectedRepo.planning.prdDirectory] }), _jsxs(Text, { children: ["prompts planner:", flag(selectedRepo.prompts?.plannerSystem), " coder:", flag(selectedRepo.prompts?.coderSystem), " reviewer:", flag(selectedRepo.prompts?.reviewerSystem)] }), _jsx(Text, { bold: true, children: "Environment" }), _jsxs(Text, { children: ["ports ", formatPorts(selectedRepo)] }), _jsxs(Text, { children: ["beforeRun ", formatRunHooks(selectedRepo.environment?.beforeRun)] }), _jsxs(Text, { children: ["afterRun ", formatRunHooks(selectedRepo.environment?.afterRun)] }), _jsx(Text, { bold: true, children: "Merge Queue & Labels" }), _jsxs(Text, { children: ["merge queue ", selectedRepo.mergeQueue.enabled ? 'enabled' : 'disabled', ' ', "batch ", selectedRepo.mergeQueue.batchSize, ' ', "method ", selectedRepo.mergeQueue.mergeMethod, ' ', "approval ", selectedRepo.mergeQueue.requireApproval ? 'required' : 'optional', ' ', "retryFlakyOnce ", selectedRepo.mergeQueue.retryFlakyOnce ? 'yes' : 'no'] }), _jsxs(Text, { children: ["staging branch ", selectedRepo.mergeQueue.stagingBranchPrefix] }), _jsxs(Text, { children: ["label presentation ", formatLabelPresentation(selectedRepo)] })] })), _jsx(Text, { color: "gray", children: "Press q or esc to close project detail" })] }));
22
22
  }
23
23
  function describeRoleSelection(repo, role, workerProfiles) {
24
24
  const agent = repo.defaults[role];
@@ -64,7 +64,17 @@ function formatCommands(commands) {
64
64
  if (Array.isArray(command) || typeof command === 'string') {
65
65
  return `${index + 1}:${formatCommand(command)}`;
66
66
  }
67
- return `${index + 1}:${formatCommand(command.command)} (timeout=${command.timeoutSeconds}s)`;
67
+ const parts = [formatCommand(command.command)];
68
+ if (command.timeoutSeconds !== undefined)
69
+ parts.push(`timeout=${command.timeoutSeconds}s`);
70
+ if (command.before && command.before.length > 0)
71
+ parts.push(`before×${command.before.length}`);
72
+ if (command.after && command.after.length > 0)
73
+ parts.push(`after×${command.after.length}`);
74
+ if (command.env && Object.keys(command.env).length > 0)
75
+ parts.push(`env×${Object.keys(command.env).length}`);
76
+ const suffix = parts.length > 1 ? ` (${parts.slice(1).join(', ')})` : '';
77
+ return `${index + 1}:${parts[0]}${suffix}`;
68
78
  })
69
79
  .join(' | ');
70
80
  }
@@ -73,34 +83,21 @@ function formatCommand(command) {
73
83
  return command;
74
84
  return command.map(formatShellArg).join(' ');
75
85
  }
76
- function formatBootstrap(repo) {
77
- const bootstrap = repo.environment?.bootstrap ?? [];
78
- if (bootstrap.length === 0)
86
+ function formatPorts(repo) {
87
+ const ports = repo.environment?.ports;
88
+ if (!ports)
79
89
  return '(none)';
80
- return bootstrap.map((step) => `${step.when}:${formatCommand(step.command)}`).join(' | ');
81
- }
82
- function formatCleanup(repo) {
83
- const cleanup = repo.environment?.cleanup ?? [];
84
- if (cleanup.length === 0)
90
+ const entries = Object.entries(ports);
91
+ if (entries.length === 0)
85
92
  return '(none)';
86
- return cleanup.map((step) => `${step.when}:${formatCommand(step.command)}`).join(' | ');
87
- }
88
- function formatSharedEnv(repo) {
89
- const shared = repo.environment?.shared;
90
- if (!shared)
91
- return '(not configured)';
92
- const healthcheck = shared.healthcheck ? formatCommand(shared.healthcheck) : '(none)';
93
- return `requireRunning=${shared.requireRunning ? 'yes' : 'no'} healthcheck=${healthcheck}`;
93
+ return entries.map(([name, range]) => `${name} ${range.min}-${range.max}`).join(', ');
94
94
  }
95
- function formatDedicatedEnv(repo) {
96
- const dedicated = repo.environment?.dedicated;
97
- if (!dedicated)
98
- return '(not configured)';
99
- const services = dedicated.compose.services.length > 0
100
- ? dedicated.compose.services.join(',')
101
- : '(all)';
102
- const healthcheck = dedicated.healthcheck ? formatCommand(dedicated.healthcheck) : '(none)';
103
- return `compose=${dedicated.compose.file} services=${services} project=${dedicated.compose.projectName} copyFrom=${dedicated.env.copyFrom} overrides=${Object.keys(dedicated.env.overrides).length} overrideFiles=${dedicated.env.overrideFiles.length} healthcheck=${healthcheck} teardown=${dedicated.teardownOnComplete ? 'yes' : 'no'}`;
95
+ function formatRunHooks(hooks) {
96
+ if (!hooks || hooks.length === 0)
97
+ return '(none)';
98
+ return hooks
99
+ .map((hook) => (Array.isArray(hook) || typeof hook === 'string' ? formatCommand(hook) : formatCommand(hook.command)))
100
+ .join(' | ');
104
101
  }
105
102
  function formatLabelPresentation(repo) {
106
103
  const entries = Object.entries(repo.labelConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"projects-view.js","sourceRoot":"","sources":["../../../src/cli/tui/projects-view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects-view.js","sourceRoot":"","sources":["../../../src/cli/tui/projects-view.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,26 @@
1
1
  import type { RepoConfig, WorkerProfile } from './schema.js';
2
2
  export type CommandSpec = string | string[];
3
- export type VerifyCommandSpec = CommandSpec | {
3
+ export type VerifyCommandSpec = RepoConfig['verify'][number];
4
+ /**
5
+ * Redacted verify command for the projects API. Carries env **keys only** —
6
+ * never values — because a command's `env` can hold local DB passwords and
7
+ * this is served over `/api/projects`.
8
+ */
9
+ export type VerifyCommandSummary = CommandSpec | {
4
10
  command: CommandSpec;
5
- timeoutSeconds: number;
11
+ timeoutSeconds?: number;
12
+ before?: CommandSpec[];
13
+ after?: CommandSpec[];
14
+ envKeys?: string[];
15
+ };
16
+ export type RunHookSummary = CommandSpec | {
17
+ command: CommandSpec;
18
+ failureHints?: Array<{
19
+ contains: string;
20
+ message: string;
21
+ output: 'combined' | 'stdout' | 'stderr';
22
+ }>;
6
23
  };
7
- export type CommandWhen = 'always' | 'dedicated' | 'shared';
8
24
  export interface ProjectWorkerProfileSummary {
9
25
  type: string;
10
26
  command: string;
@@ -56,45 +72,14 @@ export interface ProjectRepoSummary {
56
72
  prMentions: string[];
57
73
  };
58
74
  environment?: {
59
- defaultMode: 'shared' | 'dedicated';
60
- dedicated?: {
61
- compose: {
62
- file: string;
63
- services: string[];
64
- projectName: string;
65
- };
66
- env: {
67
- copyFrom: string;
68
- overrideKeys: string[];
69
- overrideFiles: string[];
70
- };
71
- healthcheck?: CommandSpec;
72
- teardownOnComplete: boolean;
73
- };
74
- shared?: {
75
- requireRunning: boolean;
76
- healthcheck?: CommandSpec;
77
- };
78
- bootstrap: Array<{
79
- command: CommandSpec;
80
- when: CommandWhen;
81
- failureHints?: Array<{
82
- contains: string;
83
- message: string;
84
- output: 'combined' | 'stdout' | 'stderr';
85
- }>;
86
- }>;
87
- cleanup: Array<{
88
- command: CommandSpec;
89
- when: CommandWhen;
90
- failureHints?: Array<{
91
- contains: string;
92
- message: string;
93
- output: 'combined' | 'stdout' | 'stderr';
94
- }>;
75
+ ports?: Record<string, {
76
+ min: number;
77
+ max: number;
95
78
  }>;
79
+ beforeRun: RunHookSummary[];
80
+ afterRun: RunHookSummary[];
96
81
  };
97
- verify: VerifyCommandSpec[];
82
+ verify: VerifyCommandSummary[];
98
83
  prompts: {
99
84
  plannerSystem: boolean;
100
85
  coderSystem: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE5D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAC3C,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAA;AAC9F,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAA;AAE3D,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,oBAAoB,EAAE,MAAM,CAAA;IAC5B,UAAU,EAAE,OAAO,CAAA;IACnB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC3B,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,aAAa,CAAA;IACrB,MAAM,CAAC,EAAE;QACP,YAAY,EAAE,MAAM,CAAA;QACpB,MAAM,EAAE,aAAa,CAAA;KACtB,CAAA;IACD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrE,QAAQ,EAAE;QACR,OAAO,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;QACxC,KAAK,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;QACtC,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;QACzC,QAAQ,EAAE,UAAU,GAAG,aAAa,CAAA;QACpC,cAAc,EAAE,QAAQ,GAAG,MAAM,CAAA;QACjC,UAAU,EAAE,MAAM,EAAE,CAAA;KACrB,CAAA;IACD,WAAW,CAAC,EAAE;QACZ,WAAW,EAAE,QAAQ,GAAG,WAAW,CAAA;QACnC,SAAS,CAAC,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAA;gBACZ,QAAQ,EAAE,MAAM,EAAE,CAAA;gBAClB,WAAW,EAAE,MAAM,CAAA;aACpB,CAAA;YACD,GAAG,EAAE;gBACH,QAAQ,EAAE,MAAM,CAAA;gBAChB,YAAY,EAAE,MAAM,EAAE,CAAA;gBACtB,aAAa,EAAE,MAAM,EAAE,CAAA;aACxB,CAAA;YACD,WAAW,CAAC,EAAE,WAAW,CAAA;YACzB,kBAAkB,EAAE,OAAO,CAAA;SAC5B,CAAA;QACD,MAAM,CAAC,EAAE;YACP,cAAc,EAAE,OAAO,CAAA;YACvB,WAAW,CAAC,EAAE,WAAW,CAAA;SAC1B,CAAA;QACD,SAAS,EAAE,KAAK,CAAC;YACf,OAAO,EAAE,WAAW,CAAA;YACpB,IAAI,EAAE,WAAW,CAAA;YACjB,YAAY,CAAC,EAAE,KAAK,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAA;gBAChB,OAAO,EAAE,MAAM,CAAA;gBACf,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAA;aACzC,CAAC,CAAA;SACH,CAAC,CAAA;QACF,OAAO,EAAE,KAAK,CAAC;YACb,OAAO,EAAE,WAAW,CAAA;YACpB,IAAI,EAAE,WAAW,CAAA;YACjB,YAAY,CAAC,EAAE,KAAK,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAA;gBAChB,OAAO,EAAE,MAAM,CAAA;gBACf,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAA;aACzC,CAAC,CAAA;SACH,CAAC,CAAA;KACH,CAAA;IACD,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAC3B,OAAO,EAAE;QACP,aAAa,EAAE,OAAO,CAAA;QACtB,WAAW,EAAE,OAAO,CAAA;QACpB,cAAc,EAAE,OAAO,CAAA;KACxB,CAAA;IACD,QAAQ,EAAE;QACR,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,SAAS,EAAE;QACT,gBAAgB,EAAE,MAAM,EAAE,CAAA;QAC1B,gBAAgB,EAAE,MAAM,EAAE,CAAA;KAC3B,CAAA;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE;QACjB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,UAAU,EAAE;QACV,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,WAAW,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAA;QAC1C,cAAc,EAAE,OAAO,CAAA;QACvB,eAAe,EAAE,OAAO,CAAA;QACxB,mBAAmB,EAAE,MAAM,CAAA;KAC5B,CAAA;IACD,iBAAiB,EAAE;QACjB,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,MAAM,CAAA;QACjB,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,CAAA;CACF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,2BAA2B,CAUzF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,kBAAkB,CAsExE"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"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"}
@@ -80,63 +80,32 @@ export function sanitizeProjectRepo(repo) {
80
80
  }
81
81
  function sanitizeEnvironment(environment) {
82
82
  return {
83
- defaultMode: environment.defaultMode,
84
- ...(environment.dedicated
85
- ? {
86
- dedicated: {
87
- compose: {
88
- file: environment.dedicated.compose.file,
89
- services: [...environment.dedicated.compose.services],
90
- projectName: environment.dedicated.compose.projectName,
91
- },
92
- env: {
93
- copyFrom: environment.dedicated.env.copyFrom,
94
- overrideKeys: Object.keys(environment.dedicated.env.overrides),
95
- overrideFiles: [...environment.dedicated.env.overrideFiles],
96
- },
97
- ...(environment.dedicated.healthcheck
98
- ? { healthcheck: copyCommandSpec(environment.dedicated.healthcheck) }
99
- : {}),
100
- teardownOnComplete: environment.dedicated.teardownOnComplete,
101
- },
102
- }
103
- : {}),
104
- ...(environment.shared
83
+ ...(environment.ports ? { ports: copyPortPools(environment.ports) } : {}),
84
+ beforeRun: environment.beforeRun.map(copyRunHook),
85
+ afterRun: environment.afterRun.map(copyRunHook),
86
+ };
87
+ }
88
+ function copyPortPools(ports) {
89
+ const out = {};
90
+ for (const [name, range] of Object.entries(ports))
91
+ out[name] = { ...range };
92
+ return out;
93
+ }
94
+ function copyRunHook(hook) {
95
+ if (Array.isArray(hook) || typeof hook === 'string') {
96
+ return copyCommandSpec(hook);
97
+ }
98
+ return {
99
+ command: copyCommandSpec(hook.command),
100
+ ...(hook.failureHints && hook.failureHints.length > 0
105
101
  ? {
106
- shared: {
107
- requireRunning: environment.shared.requireRunning,
108
- ...(environment.shared.healthcheck
109
- ? { healthcheck: copyCommandSpec(environment.shared.healthcheck) }
110
- : {}),
111
- },
102
+ failureHints: hook.failureHints.map((hint) => ({
103
+ contains: hint.contains,
104
+ message: hint.message,
105
+ output: hint.output,
106
+ })),
112
107
  }
113
108
  : {}),
114
- bootstrap: environment.bootstrap.map((step) => ({
115
- when: step.when,
116
- command: copyCommandSpec(step.command),
117
- ...(step.failureHints && step.failureHints.length > 0
118
- ? {
119
- failureHints: step.failureHints.map((hint) => ({
120
- contains: hint.contains,
121
- message: hint.message,
122
- output: hint.output,
123
- })),
124
- }
125
- : {}),
126
- })),
127
- cleanup: environment.cleanup.map((step) => ({
128
- when: step.when,
129
- command: copyCommandSpec(step.command),
130
- ...(step.failureHints && step.failureHints.length > 0
131
- ? {
132
- failureHints: step.failureHints.map((hint) => ({
133
- contains: hint.contains,
134
- message: hint.message,
135
- output: hint.output,
136
- })),
137
- }
138
- : {}),
139
- })),
140
109
  };
141
110
  }
142
111
  function sanitizeLabels(labels) {
@@ -175,7 +144,11 @@ function copyVerifyCommandSpec(command) {
175
144
  }
176
145
  return {
177
146
  command: copyCommandSpec(command.command),
178
- timeoutSeconds: command.timeoutSeconds,
147
+ ...(command.timeoutSeconds !== undefined ? { timeoutSeconds: command.timeoutSeconds } : {}),
148
+ ...(command.before ? { before: command.before.map(copyCommandSpec) } : {}),
149
+ ...(command.after ? { after: command.after.map(copyCommandSpec) } : {}),
150
+ // Keys only — never expose env VALUES (may hold local DB passwords) over the API.
151
+ ...(command.env ? { envKeys: Object.keys(command.env) } : {}),
179
152
  };
180
153
  }
181
154
  //# sourceMappingURL=sanitize.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAqHA,MAAM,UAAU,qBAAqB,CAAC,OAAsB;IAC1D,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;QACvB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;KAClC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;QACxC,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC;gBACE,MAAM,EAAE;oBACN,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;oBACtC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;iBAC3C;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,WAAW,EAAE,MAAM,CAAC,WAAW,CAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YACxD,KAAK;YACL;gBACE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE;SACF,CAAC,CACH;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;YAC9B,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAChC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc;YAC5C,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;SAC1C;QACD,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,EAAE;YACP,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC;YACnD,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC;YAC/C,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;SACtD;QACD,QAAQ,EAAE;YACR,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;SACzC;QACD,SAAS,EAAE;YACT,gBAAgB,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;YACtD,gBAAgB,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;SACvD;QACD,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,UAAU,EAAE;YACV,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO;YAChC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS;YACpC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW;YACxC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc;YAC9C,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe;YAChD,mBAAmB,EAAE,IAAI,CAAC,UAAU,CAAC,mBAAmB;SACzD;QACD,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO;YACvC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,SAAS;YAC3C,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc;gBACvC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,WAAmD;IAC9E,OAAO;QACL,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;QACjD,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC;KAChD,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CACpB,KAAmE;IAEnE,MAAM,GAAG,GAAiD,EAAE,CAAA;IAC5D,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAC3E,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,IAAiE;IACpF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO;QACL,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;YACnD,CAAC,CAAC;gBACE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC;aACJ;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,MAA4B;IAClD,OAAO;QACL,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5C,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAA;IAChF,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAS,eAAe,CAAC,OAAoB;IAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,OAAO,CAAC,CAAA;IACrB,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAA0B;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;IAED,OAAO;QACL,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,kFAAkF;QAClF,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9D,CAAA;AACH,CAAC"}