@pellux/goodvibes-sdk 0.33.37 → 0.34.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 (83) hide show
  1. package/dist/client-auth/control-plane-auth-snapshot.d.ts +23 -0
  2. package/dist/client-auth/control-plane-auth-snapshot.d.ts.map +1 -1
  3. package/dist/client-auth/oauth-types.d.ts +18 -0
  4. package/dist/client-auth/oauth-types.d.ts.map +1 -1
  5. package/dist/client-auth/types.d.ts +26 -0
  6. package/dist/client-auth/types.d.ts.map +1 -1
  7. package/dist/client.d.ts +22 -0
  8. package/dist/client.d.ts.map +1 -1
  9. package/dist/contracts/artifacts/operator-contract.json +1463 -10
  10. package/dist/events/knowledge.d.ts +31 -0
  11. package/dist/events/knowledge.d.ts.map +1 -1
  12. package/dist/events/tasks.d.ts +58 -0
  13. package/dist/events/tasks.d.ts.map +1 -1
  14. package/dist/events/transport.d.ts +60 -0
  15. package/dist/events/transport.d.ts.map +1 -1
  16. package/dist/platform/agents/wrfc-config.d.ts +6 -0
  17. package/dist/platform/agents/wrfc-config.d.ts.map +1 -1
  18. package/dist/platform/agents/wrfc-config.js +6 -0
  19. package/dist/platform/agents/wrfc-controller.d.ts +74 -0
  20. package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
  21. package/dist/platform/agents/wrfc-controller.js +368 -9
  22. package/dist/platform/agents/wrfc-reporting.d.ts +60 -0
  23. package/dist/platform/agents/wrfc-reporting.d.ts.map +1 -1
  24. package/dist/platform/agents/wrfc-reporting.js +131 -7
  25. package/dist/platform/agents/wrfc-types.d.ts +12 -0
  26. package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
  27. package/dist/platform/config/manager.d.ts +11 -0
  28. package/dist/platform/config/manager.d.ts.map +1 -1
  29. package/dist/platform/config/manager.js +17 -1
  30. package/dist/platform/config/schema-domain-core.d.ts +2 -0
  31. package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
  32. package/dist/platform/config/schema-domain-core.js +17 -0
  33. package/dist/platform/config/schema-shared.d.ts +6 -0
  34. package/dist/platform/config/schema-shared.d.ts.map +1 -1
  35. package/dist/platform/config/schema-types.d.ts +9 -2
  36. package/dist/platform/config/schema-types.d.ts.map +1 -1
  37. package/dist/platform/control-plane/method-catalog-calendar.d.ts +9 -0
  38. package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -0
  39. package/dist/platform/control-plane/method-catalog-calendar.js +117 -0
  40. package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
  41. package/dist/platform/control-plane/method-catalog-channels.js +174 -0
  42. package/dist/platform/control-plane/method-catalog-control-automation.d.ts.map +1 -1
  43. package/dist/platform/control-plane/method-catalog-control-automation.js +10 -4
  44. package/dist/platform/control-plane/method-catalog-email.d.ts +9 -0
  45. package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -0
  46. package/dist/platform/control-plane/method-catalog-email.js +101 -0
  47. package/dist/platform/control-plane/method-catalog-knowledge.js +4 -4
  48. package/dist/platform/control-plane/method-catalog-runtime.d.ts.map +1 -1
  49. package/dist/platform/control-plane/method-catalog-runtime.js +13 -0
  50. package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
  51. package/dist/platform/control-plane/method-catalog.js +4 -0
  52. package/dist/platform/control-plane/routes/automation.js +2 -2
  53. package/dist/platform/control-plane/routes/operator.d.ts.map +1 -1
  54. package/dist/platform/control-plane/routes/operator.js +2 -0
  55. package/dist/platform/control-plane/routes/sessions.js +1 -1
  56. package/dist/platform/daemon/http/router.d.ts.map +1 -1
  57. package/dist/platform/daemon/http/router.js +12 -2
  58. package/dist/platform/daemon/http-listener.d.ts +17 -0
  59. package/dist/platform/daemon/http-listener.d.ts.map +1 -1
  60. package/dist/platform/daemon/http-listener.js +186 -7
  61. package/dist/platform/knowledge/knowledge-api.d.ts +1 -1
  62. package/dist/platform/knowledge/knowledge-api.d.ts.map +1 -1
  63. package/dist/platform/knowledge/knowledge-api.js +1 -1
  64. package/dist/platform/runtime/store/helpers/reducers/lifecycle.d.ts.map +1 -1
  65. package/dist/platform/runtime/store/helpers/reducers/lifecycle.js +4 -0
  66. package/dist/platform/runtime/store/helpers/reducers/sync.d.ts.map +1 -1
  67. package/dist/platform/runtime/store/helpers/reducers/sync.js +4 -0
  68. package/dist/platform/security/http-auth.d.ts.map +1 -1
  69. package/dist/platform/security/http-auth.js +11 -4
  70. package/dist/platform/security/user-auth.d.ts +98 -2
  71. package/dist/platform/security/user-auth.d.ts.map +1 -1
  72. package/dist/platform/security/user-auth.js +195 -18
  73. package/dist/platform/sessions/manager.d.ts +19 -2
  74. package/dist/platform/sessions/manager.d.ts.map +1 -1
  75. package/dist/platform/sessions/manager.js +43 -6
  76. package/dist/platform/state/memory-registry.d.ts +1 -1
  77. package/dist/platform/state/memory-registry.d.ts.map +1 -1
  78. package/dist/platform/state/memory-registry.js +2 -2
  79. package/dist/platform/state/memory-store.d.ts +1 -1
  80. package/dist/platform/state/memory-store.d.ts.map +1 -1
  81. package/dist/platform/state/memory-store.js +2 -2
  82. package/dist/platform/version.js +1 -1
  83. package/package.json +9 -9
@@ -1,3 +1,6 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { execSync } from 'node:child_process';
3
+ import { isAbsolute, resolve } from 'node:path';
1
4
  import { parseCompletionReport } from './completion-report.js';
2
5
  import { buildFixerConstraintAddendum, buildReviewerConstraintAddendum } from './wrfc-prompt-addenda.js';
3
6
  import { logger } from '../utils/logger.js';
@@ -29,14 +32,25 @@ export function extractScoreFromText(text) {
29
32
  }
30
33
  return null;
31
34
  }
35
+ /**
36
+ * Determines whether a review verdict passes.
37
+ *
38
+ * Score >= threshold is a NECESSARY condition. Prose language ("passed",
39
+ * "approved") is treated as confirmation only — it can never elevate a
40
+ * sub-threshold score to a pass verdict.
41
+ *
42
+ * This is intentionally fail-closed: if the score is below threshold,
43
+ * the result is always false regardless of what the reviewer wrote.
44
+ */
32
45
  export function extractPassedFromText(text, score, threshold) {
33
- if (score >= threshold)
34
- return true;
35
- if (/\bpass(ed|es|ing)?\b/i.test(text) && !/\bfail/i.test(text))
36
- return true;
37
- if (/\bapproved?\b/i.test(text))
38
- return true;
39
- return false;
46
+ // Score must meet or exceed threshold — no exceptions.
47
+ if (score < threshold)
48
+ return false;
49
+ // Score meets threshold: treat prose as optional confirmation (ignored either way).
50
+ // We check for explicit fail language as a safety override even when score >= threshold.
51
+ if (/\bfail(ed|s|ing)?\b/i.test(text) && !/\bpassed?\b/i.test(text))
52
+ return false;
53
+ return true;
40
54
  }
41
55
  export function extractIssuesFromText(text) {
42
56
  const issues = [];
@@ -72,6 +86,116 @@ export function parseEngineerCompletionReport(rawOutput, _template) {
72
86
  uncertainties: [],
73
87
  };
74
88
  }
89
+ /**
90
+ * Verifies that an engineer's self-reported work actually materialised on disk.
91
+ *
92
+ * Strategy:
93
+ * 1. Stat every path claimed in filesCreated/filesModified.
94
+ * 2. If any claimed paths are missing, check git diff/status as a fallback
95
+ * (the engineer may have written to a path not literally listed).
96
+ * 3. If no paths were claimed at all, fall through to git as the sole signal.
97
+ *
98
+ * This is intentionally lenient about the git check — a non-empty diff is
99
+ * treated as corroborating evidence even when individual file stats fail.
100
+ */
101
+ export function verifyEngineerClaims(report, projectRoot) {
102
+ const isEngineerShape = (r) => r.archetype === 'engineer';
103
+ if (!isEngineerShape(report)) {
104
+ return {
105
+ claimedPaths: [],
106
+ foundPaths: [],
107
+ missingPaths: [],
108
+ gitDiffDetected: null,
109
+ kind: 'verified_empty',
110
+ verified: true,
111
+ summary: 'Non-engineer report; claim verification skipped.',
112
+ };
113
+ }
114
+ const claimedPaths = [
115
+ ...report.filesCreated,
116
+ ...report.filesModified,
117
+ // Note: filesDeleted are intentionally excluded — we expect them to be gone.
118
+ ];
119
+ const foundPaths = [];
120
+ const missingPaths = [];
121
+ for (const p of claimedPaths) {
122
+ const absolute = isAbsolute(p) ? p : resolve(projectRoot, p);
123
+ if (existsSync(absolute)) {
124
+ foundPaths.push(p);
125
+ }
126
+ else {
127
+ missingPaths.push(p);
128
+ }
129
+ }
130
+ // Fall through to git when paths are missing or none were claimed.
131
+ let gitDiffDetected = null;
132
+ if (missingPaths.length > 0 || claimedPaths.length === 0) {
133
+ try {
134
+ const result = execSync('git diff --stat HEAD', {
135
+ cwd: projectRoot,
136
+ timeout: 10_000,
137
+ encoding: 'utf-8',
138
+ stdio: ['pipe', 'pipe', 'pipe'],
139
+ }).trim();
140
+ gitDiffDetected = result.length > 0;
141
+ }
142
+ catch {
143
+ // git not available or not a git repo — treat as inconclusive
144
+ gitDiffDetected = null;
145
+ }
146
+ }
147
+ const allClaimedFound = claimedPaths.length > 0 && missingPaths.length === 0;
148
+ const gitCorroborates = gitDiffDetected === true;
149
+ // Determine the tri-state kind:
150
+ // - files_verified: had claims and all found on disk.
151
+ // - git_corroborated: had claims but some missing; git diff shows work happened.
152
+ // - verified_empty: no claims at all but git diff shows changes (legit no-list work).
153
+ // - unverifiable_no_claims: no claims AND no git diff — suspicious phantom work.
154
+ // - unverified: had claims, some missing, and git shows nothing.
155
+ let kind;
156
+ if (allClaimedFound) {
157
+ kind = 'files_verified';
158
+ }
159
+ else if (claimedPaths.length > 0 && gitCorroborates) {
160
+ kind = 'git_corroborated';
161
+ }
162
+ else if (claimedPaths.length === 0 && gitCorroborates) {
163
+ kind = 'verified_empty';
164
+ }
165
+ else if (claimedPaths.length === 0 && !gitCorroborates) {
166
+ // Either git showed no changes (gitDiffDetected === false) or git was unavailable (null).
167
+ // Both cases are treated as unverifiable — we cannot confirm any work was done.
168
+ kind = 'unverifiable_no_claims';
169
+ }
170
+ else {
171
+ // claimedPaths.length > 0 && missingPaths.length > 0 && !gitCorroborates
172
+ kind = 'unverified';
173
+ }
174
+ const verified = kind === 'files_verified' || kind === 'git_corroborated' || kind === 'verified_empty';
175
+ const summaryParts = [];
176
+ if (claimedPaths.length > 0) {
177
+ summaryParts.push(`${foundPaths.length}/${claimedPaths.length} claimed paths found on disk`);
178
+ if (missingPaths.length > 0) {
179
+ summaryParts.push(`missing: ${missingPaths.slice(0, 5).join(', ')}${missingPaths.length > 5 ? ` (+${missingPaths.length - 5} more)` : ''}`);
180
+ }
181
+ }
182
+ else {
183
+ summaryParts.push('no file paths claimed');
184
+ }
185
+ if (gitDiffDetected !== null) {
186
+ summaryParts.push(`git diff: ${gitDiffDetected ? 'changes detected' : 'no changes detected'}`);
187
+ }
188
+ summaryParts.push(`kind: ${kind}`);
189
+ return {
190
+ claimedPaths,
191
+ foundPaths,
192
+ missingPaths,
193
+ gitDiffDetected,
194
+ kind,
195
+ verified,
196
+ summary: summaryParts.join('; '),
197
+ };
198
+ }
75
199
  export function parseReviewerCompletionReport(chainId, rawOutput, threshold) {
76
200
  const reviewerReport = parseCompletionReport(rawOutput);
77
201
  if (reviewerReport && reviewerReport.archetype === 'reviewer') {
@@ -58,6 +58,12 @@ export interface WrfcSubtask {
58
58
  severity: 'critical';
59
59
  description: string;
60
60
  }> | undefined;
61
+ /**
62
+ * Whether the engineer's self-reported work claims were verified on disk.
63
+ * Undefined until claim verification runs (after engineering/fixing phase).
64
+ * false = verification ran and found missing claims (phantom work detected).
65
+ */
66
+ claimsVerified?: boolean | undefined;
61
67
  }
62
68
  /** A single WRFC chain instance. */
63
69
  export interface WrfcChain {
@@ -107,6 +113,12 @@ export interface WrfcChain {
107
113
  severity: 'critical';
108
114
  description: string;
109
115
  }> | undefined;
116
+ /**
117
+ * Whether the engineer's self-reported work claims were verified on disk.
118
+ * Undefined until claim verification runs (after engineering/fixing phase).
119
+ * false = verification ran and found missing claims (phantom work detected).
120
+ */
121
+ claimsVerified?: boolean | undefined;
110
122
  }
111
123
  /** Quality gate definition. */
112
124
  export interface QualityGate {
@@ -1 +1 @@
1
- {"version":3,"file":"wrfc-types.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrfc-types.d.ts","sourceRoot":"","sources":["../../../src/platform/agents/wrfc-types.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,17 @@ export declare class ConfigManager {
47
47
  getControlPlaneConfigDir(): string;
48
48
  getWorkingDirectory(): string | null;
49
49
  getHomeDirectory(): string | null;
50
+ /**
51
+ * Returns the absolute path to the global (surface-level) settings.json file.
52
+ * Consumers should use this instead of casting through `as unknown` to access
53
+ * the private `configPath` field.
54
+ */
55
+ getConfigPath(): string;
56
+ /**
57
+ * Returns the absolute path to the project-level settings.json file, or
58
+ * `undefined` if no `workingDir` was provided at construction time.
59
+ */
60
+ getProjectConfigPath(): string | undefined;
50
61
  attachHookDispatcher(hookDispatcher: Pick<HookDispatcher, 'fire'> | null): void;
51
62
  private resolvePath;
52
63
  /** Get a config value by dot-path key. */
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/platform/config/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/platform/config/manager.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,21 @@ export class ConfigManager {
102
102
  getHomeDirectory() {
103
103
  return this.homeDirectory;
104
104
  }
105
+ /**
106
+ * Returns the absolute path to the global (surface-level) settings.json file.
107
+ * Consumers should use this instead of casting through `as unknown` to access
108
+ * the private `configPath` field.
109
+ */
110
+ getConfigPath() {
111
+ return this.configPath;
112
+ }
113
+ /**
114
+ * Returns the absolute path to the project-level settings.json file, or
115
+ * `undefined` if no `workingDir` was provided at construction time.
116
+ */
117
+ getProjectConfigPath() {
118
+ return this.projectConfigPath ?? undefined;
119
+ }
105
120
  attachHookDispatcher(hookDispatcher) {
106
121
  this.hookDispatcher = hookDispatcher;
107
122
  }
@@ -132,7 +147,8 @@ export class ConfigManager {
132
147
  set(key, value, options = {}) {
133
148
  const schema = CONFIG_SCHEMA.find(s => s.key === key);
134
149
  if (schema?.validate && !schema.validate(value)) {
135
- throw new ConfigError(`Invalid value for ${key}: ${String(value)}`);
150
+ const hint = schema.validationHint ? ` (${schema.validationHint})` : '';
151
+ throw new ConfigError(`Invalid value for ${key}: ${String(value)}${hint}`);
136
152
  }
137
153
  if (schema?.type === 'enum' && schema.enumValues && !schema.enumValues.includes(value)) {
138
154
  throw new ConfigError(`Invalid value for ${key}: "${String(value)}". Allowed: ${schema.enumValues.join(', ')}`);
@@ -83,6 +83,7 @@ export declare const coreConfigDefaults: {
83
83
  voice: string;
84
84
  llmProvider: string;
85
85
  llmModel: string;
86
+ speed: number;
86
87
  };
87
88
  release: {
88
89
  channel: string;
@@ -103,6 +104,7 @@ export declare const coreConfigDefaults: {
103
104
  scoreThreshold: number;
104
105
  maxFixAttempts: number;
105
106
  autoCommit: boolean;
107
+ agentHeartbeatTimeoutMs: number;
106
108
  gates: {
107
109
  name: string;
108
110
  command: string;
@@ -1 +1 @@
1
- {"version":3,"file":"schema-domain-core.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-domain-core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6H9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,uBAAuB,EAuZ3D,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,uBAAuB,EA+H3D,CAAC"}
1
+ {"version":3,"file":"schema-domain-core.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-domain-core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+H9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,uBAAuB,EA+Z3D,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,uBAAuB,EAsI3D,CAAC"}
@@ -82,6 +82,7 @@ export const coreConfigDefaults = {
82
82
  voice: '',
83
83
  llmProvider: '',
84
84
  llmModel: '',
85
+ speed: 1.0,
85
86
  },
86
87
  release: {
87
88
  channel: 'stable',
@@ -102,6 +103,7 @@ export const coreConfigDefaults = {
102
103
  scoreThreshold: 9.9,
103
104
  maxFixAttempts: 5,
104
105
  autoCommit: true,
106
+ agentHeartbeatTimeoutMs: 0,
105
107
  gates: [
106
108
  { name: 'typecheck', command: 'npx tsc --noEmit', enabled: true },
107
109
  { name: 'lint', command: 'npx eslint . --max-warnings 0', enabled: true },
@@ -511,6 +513,14 @@ export const coreHeadConfigSettings = [
511
513
  default: '',
512
514
  description: 'Optional LLM model override for spoken-output turns; empty means use the active chat model',
513
515
  },
516
+ {
517
+ key: 'tts.speed',
518
+ type: 'number',
519
+ default: 1.0,
520
+ description: 'Playback speed multiplier for TTS synthesis (0.25–4.0); 1.0 is normal speed',
521
+ validate: (v) => typeof v === 'number' && Number.isFinite(v) && v >= 0.25 && v <= 4.0,
522
+ validationHint: 'finite number in [0.25, 4.0]',
523
+ },
514
524
  {
515
525
  key: 'ui.operationalMessages',
516
526
  type: 'enum',
@@ -603,6 +613,13 @@ export const coreTailConfigSettings = [
603
613
  default: true,
604
614
  description: 'Auto-commit when WRFC chain passes review and quality gates',
605
615
  },
616
+ {
617
+ key: 'wrfc.agentHeartbeatTimeoutMs',
618
+ type: 'number',
619
+ default: 0,
620
+ description: 'Watchdog timeout in ms for silent WRFC child agents. 0 = disabled.',
621
+ validate: (v) => typeof v === 'number' && v >= 0,
622
+ },
606
623
  {
607
624
  key: 'cache.enabled',
608
625
  type: 'boolean',
@@ -6,5 +6,11 @@ export interface ConfigSettingDefinition {
6
6
  description: string;
7
7
  enumValues?: string[] | undefined;
8
8
  validate?: ((value: unknown) => boolean) | undefined;
9
+ /**
10
+ * Optional hint appended to the validation-failure message when `validate`
11
+ * returns false. Use to tell callers the accepted range or format,
12
+ * e.g. `'finite number in [0.25, 4.0]'`.
13
+ */
14
+ validationHint?: string | undefined;
9
15
  }
10
16
  //# sourceMappingURL=schema-shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-shared.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-shared.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAErF,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;CACtD"}
1
+ {"version":3,"file":"schema-shared.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-shared.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAErF,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IACrD;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC"}
@@ -30,6 +30,8 @@ export interface TtsConfig {
30
30
  voice: string;
31
31
  llmProvider: string;
32
32
  llmModel: string;
33
+ /** Playback speed multiplier (0.25–4.0); 1.0 = normal speed. */
34
+ speed: number;
33
35
  }
34
36
  export interface AutomationConfig {
35
37
  enabled: boolean;
@@ -449,9 +451,14 @@ export interface ConfigSetting {
449
451
  description: string;
450
452
  enumValues?: string[] | undefined;
451
453
  validate?: ((value: unknown) => boolean) | undefined;
454
+ /**
455
+ * Optional hint appended to the validation-failure message when `validate`
456
+ * returns false. E.g. `'finite number in [0.25, 4.0]'`.
457
+ */
458
+ validationHint?: string | undefined;
452
459
  }
453
460
  /** Dot-path config keys for all settings. */
454
- export type ConfigKey = 'display.stream' | 'display.lineNumbers' | 'display.collapseThreshold' | 'display.theme' | 'display.showThinking' | 'display.showReasoningSummary' | 'display.showTokenSpeed' | 'display.showToolPreview' | 'provider.reasoningEffort' | 'provider.model' | 'provider.embeddingProvider' | 'provider.systemPromptFile' | 'behavior.autoApprove' | 'behavior.autoCompactThreshold' | 'behavior.staleContextWarnings' | 'behavior.saveHistory' | 'behavior.notifyOnComplete' | 'behavior.suggestAlternativeOnProviderFail' | 'behavior.hitlMode' | 'behavior.returnContextMode' | 'behavior.guidanceMode' | 'storage.secretPolicy' | 'storage.artifacts.maxBytes' | 'permissions.mode' | 'permissions.tools.read' | 'permissions.tools.write' | 'permissions.tools.edit' | 'permissions.tools.exec' | 'permissions.tools.find' | 'permissions.tools.fetch' | 'permissions.tools.analyze' | 'permissions.tools.inspect' | 'permissions.tools.agent' | 'permissions.tools.state' | 'permissions.tools.workflow' | 'permissions.tools.registry' | 'permissions.tools.delegate' | 'permissions.tools.mcp' | 'orchestration.recursionEnabled' | 'orchestration.maxActiveAgents' | 'orchestration.maxDepth' | 'sandbox.replIsolation' | 'sandbox.mcpIsolation' | 'sandbox.windowsMode' | 'sandbox.vmBackend' | 'sandbox.qemuBinary' | 'sandbox.qemuImagePath' | 'sandbox.qemuExecWrapper' | 'sandbox.qemuGuestHost' | 'sandbox.qemuGuestPort' | 'sandbox.qemuGuestUser' | 'sandbox.qemuWorkspacePath' | 'sandbox.qemuSessionMode' | 'sandbox.replJavaScriptCommand' | 'ui.voiceEnabled' | 'ui.systemMessages' | 'ui.operationalMessages' | 'ui.wrfcMessages' | 'tts.provider' | 'tts.voice' | 'tts.llmProvider' | 'tts.llmModel' | 'release.channel' | 'danger.daemon' | 'danger.httpListener' | 'tools.llmEnabled' | 'tools.llmProvider' | 'tools.llmModel' | 'tools.autoHeal' | 'tools.defaultTokenBudget' | 'tools.hooksFile' | 'wrfc.scoreThreshold' | 'wrfc.maxFixAttempts' | 'wrfc.autoCommit' | 'cache.enabled' | 'cache.stableTtl' | 'cache.monitorHitRate' | 'cache.hitRateWarningThreshold' | 'helper.enabled' | 'helper.globalProvider' | 'helper.globalModel' | 'automation.enabled' | 'automation.maxConcurrentRuns' | 'automation.runHistoryLimit' | 'automation.defaultTimeoutMs' | 'automation.catchUpWindowMinutes' | 'automation.failureCooldownMs' | 'automation.deleteAfterRun' | 'controlPlane.enabled' | 'controlPlane.hostMode' | 'controlPlane.host' | 'controlPlane.port' | 'controlPlane.baseUrl' | 'controlPlane.streamMode' | 'controlPlane.allowRemote' | 'controlPlane.trustProxy' | 'controlPlane.openaiCompatible.enabled' | 'controlPlane.openaiCompatible.pathPrefix' | 'controlPlane.tls.mode' | 'controlPlane.tls.certFile' | 'controlPlane.tls.keyFile' | 'httpListener.hostMode' | 'httpListener.host' | 'httpListener.port' | 'httpListener.trustProxy' | 'httpListener.tls.mode' | 'httpListener.tls.certFile' | 'httpListener.tls.keyFile' | 'web.enabled' | 'web.hostMode' | 'web.host' | 'web.port' | 'web.publicBaseUrl' | 'web.staticAssetsDir' | 'surfaces.slack.enabled' | 'surfaces.slack.signingSecret' | 'surfaces.slack.botToken' | 'surfaces.slack.appToken' | 'surfaces.slack.defaultChannel' | 'surfaces.slack.workspaceId' | 'surfaces.discord.enabled' | 'surfaces.discord.publicKey' | 'surfaces.discord.botToken' | 'surfaces.discord.applicationId' | 'surfaces.discord.defaultChannelId' | 'surfaces.discord.guildId' | 'surfaces.ntfy.enabled' | 'surfaces.ntfy.baseUrl' | 'surfaces.ntfy.topic' | 'surfaces.ntfy.chatTopic' | 'surfaces.ntfy.agentTopic' | 'surfaces.ntfy.remoteTopic' | 'surfaces.ntfy.token' | 'surfaces.ntfy.defaultPriority' | 'surfaces.webhook.enabled' | 'surfaces.webhook.defaultTarget' | 'surfaces.webhook.timeoutMs' | 'surfaces.webhook.secret' | 'surfaces.homeassistant.enabled' | 'surfaces.homeassistant.instanceUrl' | 'surfaces.homeassistant.accessToken' | 'surfaces.homeassistant.webhookSecret' | 'surfaces.homeassistant.defaultConversationId' | 'surfaces.homeassistant.deviceId' | 'surfaces.homeassistant.deviceName' | 'surfaces.homeassistant.eventType' | 'surfaces.homeassistant.remoteSessionTtlMs' | 'surfaces.telegram.enabled' | 'surfaces.telegram.botToken' | 'surfaces.telegram.webhookSecret' | 'surfaces.telegram.defaultChatId' | 'surfaces.telegram.botUsername' | 'surfaces.telegram.mode' | 'surfaces.googleChat.enabled' | 'surfaces.googleChat.webhookUrl' | 'surfaces.googleChat.verificationToken' | 'surfaces.googleChat.appId' | 'surfaces.googleChat.spaceId' | 'surfaces.signal.enabled' | 'surfaces.signal.bridgeUrl' | 'surfaces.signal.account' | 'surfaces.signal.token' | 'surfaces.signal.defaultRecipient' | 'surfaces.whatsapp.enabled' | 'surfaces.whatsapp.provider' | 'surfaces.whatsapp.accessToken' | 'surfaces.whatsapp.verifyToken' | 'surfaces.whatsapp.signingSecret' | 'surfaces.whatsapp.phoneNumberId' | 'surfaces.whatsapp.businessAccountId' | 'surfaces.whatsapp.defaultRecipient' | 'surfaces.telephony.enabled' | 'surfaces.telephony.provider' | 'surfaces.telephony.mode' | 'surfaces.telephony.bridgeUrl' | 'surfaces.telephony.token' | 'surfaces.telephony.accountSid' | 'surfaces.telephony.authToken' | 'surfaces.telephony.fromNumber' | 'surfaces.telephony.defaultRecipient' | 'surfaces.telephony.webhookSecret' | 'surfaces.telephony.voiceLanguage' | 'surfaces.imessage.enabled' | 'surfaces.imessage.bridgeUrl' | 'surfaces.imessage.account' | 'surfaces.imessage.token' | 'surfaces.imessage.defaultChatId' | 'surfaces.msteams.enabled' | 'surfaces.msteams.appId' | 'surfaces.msteams.appPassword' | 'surfaces.msteams.tenantId' | 'surfaces.msteams.serviceUrl' | 'surfaces.msteams.botId' | 'surfaces.msteams.defaultConversationId' | 'surfaces.msteams.defaultChannelId' | 'surfaces.bluebubbles.enabled' | 'surfaces.bluebubbles.serverUrl' | 'surfaces.bluebubbles.password' | 'surfaces.bluebubbles.account' | 'surfaces.bluebubbles.defaultChatGuid' | 'surfaces.mattermost.enabled' | 'surfaces.mattermost.baseUrl' | 'surfaces.mattermost.botToken' | 'surfaces.mattermost.teamId' | 'surfaces.mattermost.defaultChannelId' | 'surfaces.matrix.enabled' | 'surfaces.matrix.homeserverUrl' | 'surfaces.matrix.accessToken' | 'surfaces.matrix.userId' | 'surfaces.matrix.defaultRoomId' | 'watchers.enabled' | 'watchers.pollIntervalMs' | 'watchers.heartbeatIntervalMs' | 'watchers.recoveryWindowMinutes' | 'service.enabled' | 'service.autostart' | 'service.restartOnFailure' | 'service.platform' | 'service.serviceName' | 'service.logPath' | 'network.outboundTls.mode' | 'network.outboundTls.customCaFile' | 'network.outboundTls.customCaDir' | 'network.outboundTls.allowInsecureLocalhost' | 'network.remoteFetch.allowPrivateHosts' | 'runtime.companionChatLimiter.perSessionLimit' | 'runtime.eventBus.maxListeners' | 'telemetry.includeRawPrompts' | 'batch.mode' | 'batch.fallback' | 'batch.queueBackend' | 'batch.tickIntervalMs' | 'batch.maxDelayMs' | 'batch.maxJobsPerProviderBatch' | 'batch.maxQueuePayloadBytes' | 'batch.maxQueueMessagesPerDay' | 'cloudflare.enabled' | 'cloudflare.freeTierMode' | 'cloudflare.accountId' | 'cloudflare.apiTokenRef' | 'cloudflare.zoneId' | 'cloudflare.zoneName' | 'cloudflare.workerName' | 'cloudflare.workerSubdomain' | 'cloudflare.workerHostname' | 'cloudflare.workerBaseUrl' | 'cloudflare.daemonBaseUrl' | 'cloudflare.daemonHostname' | 'cloudflare.workerTokenRef' | 'cloudflare.workerClientTokenRef' | 'cloudflare.workerCron' | 'cloudflare.queueName' | 'cloudflare.deadLetterQueueName' | 'cloudflare.tunnelName' | 'cloudflare.tunnelId' | 'cloudflare.tunnelTokenRef' | 'cloudflare.accessAppId' | 'cloudflare.accessServiceTokenId' | 'cloudflare.accessServiceTokenRef' | 'cloudflare.kvNamespaceName' | 'cloudflare.kvNamespaceId' | 'cloudflare.durableObjectNamespaceName' | 'cloudflare.durableObjectNamespaceId' | 'cloudflare.r2BucketName' | 'cloudflare.secretsStoreName' | 'cloudflare.secretsStoreId' | 'cloudflare.maxQueueOpsPerDay';
461
+ export type ConfigKey = 'display.stream' | 'display.lineNumbers' | 'display.collapseThreshold' | 'display.theme' | 'display.showThinking' | 'display.showReasoningSummary' | 'display.showTokenSpeed' | 'display.showToolPreview' | 'provider.reasoningEffort' | 'provider.model' | 'provider.embeddingProvider' | 'provider.systemPromptFile' | 'behavior.autoApprove' | 'behavior.autoCompactThreshold' | 'behavior.staleContextWarnings' | 'behavior.saveHistory' | 'behavior.notifyOnComplete' | 'behavior.suggestAlternativeOnProviderFail' | 'behavior.hitlMode' | 'behavior.returnContextMode' | 'behavior.guidanceMode' | 'storage.secretPolicy' | 'storage.artifacts.maxBytes' | 'permissions.mode' | 'permissions.tools.read' | 'permissions.tools.write' | 'permissions.tools.edit' | 'permissions.tools.exec' | 'permissions.tools.find' | 'permissions.tools.fetch' | 'permissions.tools.analyze' | 'permissions.tools.inspect' | 'permissions.tools.agent' | 'permissions.tools.state' | 'permissions.tools.workflow' | 'permissions.tools.registry' | 'permissions.tools.delegate' | 'permissions.tools.mcp' | 'orchestration.recursionEnabled' | 'orchestration.maxActiveAgents' | 'orchestration.maxDepth' | 'sandbox.replIsolation' | 'sandbox.mcpIsolation' | 'sandbox.windowsMode' | 'sandbox.vmBackend' | 'sandbox.qemuBinary' | 'sandbox.qemuImagePath' | 'sandbox.qemuExecWrapper' | 'sandbox.qemuGuestHost' | 'sandbox.qemuGuestPort' | 'sandbox.qemuGuestUser' | 'sandbox.qemuWorkspacePath' | 'sandbox.qemuSessionMode' | 'sandbox.replJavaScriptCommand' | 'ui.voiceEnabled' | 'ui.systemMessages' | 'ui.operationalMessages' | 'ui.wrfcMessages' | 'tts.provider' | 'tts.voice' | 'tts.llmProvider' | 'tts.llmModel' | 'tts.speed' | 'release.channel' | 'danger.daemon' | 'danger.httpListener' | 'tools.llmEnabled' | 'tools.llmProvider' | 'tools.llmModel' | 'tools.autoHeal' | 'tools.defaultTokenBudget' | 'tools.hooksFile' | 'wrfc.scoreThreshold' | 'wrfc.maxFixAttempts' | 'wrfc.autoCommit' | 'wrfc.agentHeartbeatTimeoutMs' | 'cache.enabled' | 'cache.stableTtl' | 'cache.monitorHitRate' | 'cache.hitRateWarningThreshold' | 'helper.enabled' | 'helper.globalProvider' | 'helper.globalModel' | 'automation.enabled' | 'automation.maxConcurrentRuns' | 'automation.runHistoryLimit' | 'automation.defaultTimeoutMs' | 'automation.catchUpWindowMinutes' | 'automation.failureCooldownMs' | 'automation.deleteAfterRun' | 'controlPlane.enabled' | 'controlPlane.hostMode' | 'controlPlane.host' | 'controlPlane.port' | 'controlPlane.baseUrl' | 'controlPlane.streamMode' | 'controlPlane.allowRemote' | 'controlPlane.trustProxy' | 'controlPlane.openaiCompatible.enabled' | 'controlPlane.openaiCompatible.pathPrefix' | 'controlPlane.tls.mode' | 'controlPlane.tls.certFile' | 'controlPlane.tls.keyFile' | 'httpListener.hostMode' | 'httpListener.host' | 'httpListener.port' | 'httpListener.trustProxy' | 'httpListener.tls.mode' | 'httpListener.tls.certFile' | 'httpListener.tls.keyFile' | 'web.enabled' | 'web.hostMode' | 'web.host' | 'web.port' | 'web.publicBaseUrl' | 'web.staticAssetsDir' | 'surfaces.slack.enabled' | 'surfaces.slack.signingSecret' | 'surfaces.slack.botToken' | 'surfaces.slack.appToken' | 'surfaces.slack.defaultChannel' | 'surfaces.slack.workspaceId' | 'surfaces.discord.enabled' | 'surfaces.discord.publicKey' | 'surfaces.discord.botToken' | 'surfaces.discord.applicationId' | 'surfaces.discord.defaultChannelId' | 'surfaces.discord.guildId' | 'surfaces.ntfy.enabled' | 'surfaces.ntfy.baseUrl' | 'surfaces.ntfy.topic' | 'surfaces.ntfy.chatTopic' | 'surfaces.ntfy.agentTopic' | 'surfaces.ntfy.remoteTopic' | 'surfaces.ntfy.token' | 'surfaces.ntfy.defaultPriority' | 'surfaces.webhook.enabled' | 'surfaces.webhook.defaultTarget' | 'surfaces.webhook.timeoutMs' | 'surfaces.webhook.secret' | 'surfaces.homeassistant.enabled' | 'surfaces.homeassistant.instanceUrl' | 'surfaces.homeassistant.accessToken' | 'surfaces.homeassistant.webhookSecret' | 'surfaces.homeassistant.defaultConversationId' | 'surfaces.homeassistant.deviceId' | 'surfaces.homeassistant.deviceName' | 'surfaces.homeassistant.eventType' | 'surfaces.homeassistant.remoteSessionTtlMs' | 'surfaces.telegram.enabled' | 'surfaces.telegram.botToken' | 'surfaces.telegram.webhookSecret' | 'surfaces.telegram.defaultChatId' | 'surfaces.telegram.botUsername' | 'surfaces.telegram.mode' | 'surfaces.googleChat.enabled' | 'surfaces.googleChat.webhookUrl' | 'surfaces.googleChat.verificationToken' | 'surfaces.googleChat.appId' | 'surfaces.googleChat.spaceId' | 'surfaces.signal.enabled' | 'surfaces.signal.bridgeUrl' | 'surfaces.signal.account' | 'surfaces.signal.token' | 'surfaces.signal.defaultRecipient' | 'surfaces.whatsapp.enabled' | 'surfaces.whatsapp.provider' | 'surfaces.whatsapp.accessToken' | 'surfaces.whatsapp.verifyToken' | 'surfaces.whatsapp.signingSecret' | 'surfaces.whatsapp.phoneNumberId' | 'surfaces.whatsapp.businessAccountId' | 'surfaces.whatsapp.defaultRecipient' | 'surfaces.telephony.enabled' | 'surfaces.telephony.provider' | 'surfaces.telephony.mode' | 'surfaces.telephony.bridgeUrl' | 'surfaces.telephony.token' | 'surfaces.telephony.accountSid' | 'surfaces.telephony.authToken' | 'surfaces.telephony.fromNumber' | 'surfaces.telephony.defaultRecipient' | 'surfaces.telephony.webhookSecret' | 'surfaces.telephony.voiceLanguage' | 'surfaces.imessage.enabled' | 'surfaces.imessage.bridgeUrl' | 'surfaces.imessage.account' | 'surfaces.imessage.token' | 'surfaces.imessage.defaultChatId' | 'surfaces.msteams.enabled' | 'surfaces.msteams.appId' | 'surfaces.msteams.appPassword' | 'surfaces.msteams.tenantId' | 'surfaces.msteams.serviceUrl' | 'surfaces.msteams.botId' | 'surfaces.msteams.defaultConversationId' | 'surfaces.msteams.defaultChannelId' | 'surfaces.bluebubbles.enabled' | 'surfaces.bluebubbles.serverUrl' | 'surfaces.bluebubbles.password' | 'surfaces.bluebubbles.account' | 'surfaces.bluebubbles.defaultChatGuid' | 'surfaces.mattermost.enabled' | 'surfaces.mattermost.baseUrl' | 'surfaces.mattermost.botToken' | 'surfaces.mattermost.teamId' | 'surfaces.mattermost.defaultChannelId' | 'surfaces.matrix.enabled' | 'surfaces.matrix.homeserverUrl' | 'surfaces.matrix.accessToken' | 'surfaces.matrix.userId' | 'surfaces.matrix.defaultRoomId' | 'watchers.enabled' | 'watchers.pollIntervalMs' | 'watchers.heartbeatIntervalMs' | 'watchers.recoveryWindowMinutes' | 'service.enabled' | 'service.autostart' | 'service.restartOnFailure' | 'service.platform' | 'service.serviceName' | 'service.logPath' | 'network.outboundTls.mode' | 'network.outboundTls.customCaFile' | 'network.outboundTls.customCaDir' | 'network.outboundTls.allowInsecureLocalhost' | 'network.remoteFetch.allowPrivateHosts' | 'runtime.companionChatLimiter.perSessionLimit' | 'runtime.eventBus.maxListeners' | 'telemetry.includeRawPrompts' | 'batch.mode' | 'batch.fallback' | 'batch.queueBackend' | 'batch.tickIntervalMs' | 'batch.maxDelayMs' | 'batch.maxJobsPerProviderBatch' | 'batch.maxQueuePayloadBytes' | 'batch.maxQueueMessagesPerDay' | 'cloudflare.enabled' | 'cloudflare.freeTierMode' | 'cloudflare.accountId' | 'cloudflare.apiTokenRef' | 'cloudflare.zoneId' | 'cloudflare.zoneName' | 'cloudflare.workerName' | 'cloudflare.workerSubdomain' | 'cloudflare.workerHostname' | 'cloudflare.workerBaseUrl' | 'cloudflare.daemonBaseUrl' | 'cloudflare.daemonHostname' | 'cloudflare.workerTokenRef' | 'cloudflare.workerClientTokenRef' | 'cloudflare.workerCron' | 'cloudflare.queueName' | 'cloudflare.deadLetterQueueName' | 'cloudflare.tunnelName' | 'cloudflare.tunnelId' | 'cloudflare.tunnelTokenRef' | 'cloudflare.accessAppId' | 'cloudflare.accessServiceTokenId' | 'cloudflare.accessServiceTokenRef' | 'cloudflare.kvNamespaceName' | 'cloudflare.kvNamespaceId' | 'cloudflare.durableObjectNamespaceName' | 'cloudflare.durableObjectNamespaceId' | 'cloudflare.r2BucketName' | 'cloudflare.secretsStoreName' | 'cloudflare.secretsStoreId' | 'cloudflare.maxQueueOpsPerDay';
455
462
  /** Maps a ConfigKey to its value type. */
456
- export type ConfigValue<K extends ConfigKey> = K extends 'display.stream' ? boolean : K extends 'display.lineNumbers' ? LineNumberMode : K extends 'display.collapseThreshold' ? number : K extends 'display.theme' ? string : K extends 'display.showThinking' ? boolean : K extends 'display.showReasoningSummary' ? boolean : K extends 'display.showTokenSpeed' ? boolean : K extends 'display.showToolPreview' ? boolean : K extends 'provider.reasoningEffort' ? 'instant' | 'low' | 'medium' | 'high' : K extends 'provider.model' ? string : K extends 'provider.embeddingProvider' ? string : K extends 'provider.systemPromptFile' ? string : K extends 'behavior.autoApprove' ? boolean : K extends 'behavior.autoCompactThreshold' ? number : K extends 'behavior.staleContextWarnings' ? boolean : K extends 'behavior.saveHistory' ? boolean : K extends 'behavior.notifyOnComplete' ? boolean : K extends 'behavior.suggestAlternativeOnProviderFail' ? boolean : K extends 'behavior.hitlMode' ? 'quiet' | 'balanced' | 'operator' : K extends 'behavior.returnContextMode' ? 'off' | 'local' | 'assisted' : K extends 'behavior.guidanceMode' ? 'off' | 'minimal' | 'guided' : K extends 'storage.secretPolicy' ? 'plaintext_allowed' | 'preferred_secure' | 'require_secure' : K extends 'storage.artifacts.maxBytes' ? number : K extends 'permissions.mode' ? PermissionMode : K extends 'permissions.tools.read' ? PermissionAction : K extends 'permissions.tools.write' ? PermissionAction : K extends 'permissions.tools.edit' ? PermissionAction : K extends 'permissions.tools.exec' ? PermissionAction : K extends 'permissions.tools.find' ? PermissionAction : K extends 'permissions.tools.fetch' ? PermissionAction : K extends 'permissions.tools.analyze' ? PermissionAction : K extends 'permissions.tools.inspect' ? PermissionAction : K extends 'permissions.tools.agent' ? PermissionAction : K extends 'permissions.tools.state' ? PermissionAction : K extends 'permissions.tools.workflow' ? PermissionAction : K extends 'permissions.tools.registry' ? PermissionAction : K extends 'permissions.tools.delegate' ? PermissionAction : K extends 'permissions.tools.mcp' ? PermissionAction : K extends 'orchestration.recursionEnabled' ? boolean : K extends 'orchestration.maxActiveAgents' ? number : K extends 'orchestration.maxDepth' ? number : K extends 'sandbox.replIsolation' ? 'shared-vm' | 'per-runtime-vm' : K extends 'sandbox.mcpIsolation' ? 'disabled' | 'shared-vm' | 'hybrid' | 'per-server-vm' : K extends 'sandbox.windowsMode' ? 'native-basic' | 'require-wsl' : K extends 'sandbox.vmBackend' ? 'local' | 'qemu' : K extends 'sandbox.qemuBinary' ? string : K extends 'sandbox.qemuImagePath' ? string : K extends 'sandbox.qemuExecWrapper' ? string : K extends 'sandbox.qemuGuestHost' ? string : K extends 'sandbox.qemuGuestPort' ? number : K extends 'sandbox.qemuGuestUser' ? string : K extends 'sandbox.qemuWorkspacePath' ? string : K extends 'sandbox.qemuSessionMode' ? 'attach' | 'launch-per-command' : K extends 'sandbox.replJavaScriptCommand' ? string : K extends 'ui.voiceEnabled' ? boolean : K extends 'ui.systemMessages' ? 'panel' | 'conversation' | 'both' : K extends 'ui.operationalMessages' ? 'panel' | 'conversation' | 'both' : K extends 'ui.wrfcMessages' ? 'panel' | 'conversation' | 'both' : K extends 'tts.provider' ? string : K extends 'tts.voice' ? string : K extends 'tts.llmProvider' ? string : K extends 'tts.llmModel' ? string : K extends 'release.channel' ? 'stable' | 'preview' : K extends 'danger.daemon' ? boolean : K extends 'danger.httpListener' ? boolean : K extends 'tools.llmEnabled' ? boolean : K extends 'tools.llmProvider' ? string : K extends 'tools.llmModel' ? string : K extends 'tools.autoHeal' ? boolean : K extends 'tools.defaultTokenBudget' ? number : K extends 'tools.hooksFile' ? string : K extends 'wrfc.scoreThreshold' ? number : K extends 'wrfc.maxFixAttempts' ? number : K extends 'wrfc.autoCommit' ? boolean : K extends 'cache.enabled' ? boolean : K extends 'cache.stableTtl' ? '5m' | '1h' : K extends 'cache.monitorHitRate' ? boolean : K extends 'cache.hitRateWarningThreshold' ? number : K extends 'helper.enabled' ? boolean : K extends 'helper.globalProvider' ? string : K extends 'helper.globalModel' ? string : K extends 'automation.enabled' ? boolean : K extends 'automation.maxConcurrentRuns' ? number : K extends 'automation.runHistoryLimit' ? number : K extends 'automation.defaultTimeoutMs' ? number : K extends 'automation.catchUpWindowMinutes' ? number : K extends 'automation.failureCooldownMs' ? number : K extends 'automation.deleteAfterRun' ? boolean : K extends 'controlPlane.enabled' ? boolean : K extends 'controlPlane.hostMode' ? 'local' | 'network' | 'custom' : K extends 'controlPlane.host' ? string : K extends 'controlPlane.port' ? number : K extends 'controlPlane.baseUrl' ? string : K extends 'controlPlane.streamMode' ? 'sse' | 'websocket' | 'both' : K extends 'controlPlane.allowRemote' ? boolean : K extends 'controlPlane.trustProxy' ? boolean : K extends 'controlPlane.openaiCompatible.enabled' ? boolean : K extends 'controlPlane.openaiCompatible.pathPrefix' ? string : K extends 'controlPlane.tls.mode' ? 'off' | 'proxy' | 'direct' : K extends 'controlPlane.tls.certFile' ? string : K extends 'controlPlane.tls.keyFile' ? string : K extends 'httpListener.hostMode' ? 'local' | 'network' | 'custom' : K extends 'httpListener.host' ? string : K extends 'httpListener.port' ? number : K extends 'httpListener.trustProxy' ? boolean : K extends 'httpListener.tls.mode' ? 'off' | 'proxy' | 'direct' : K extends 'httpListener.tls.certFile' ? string : K extends 'httpListener.tls.keyFile' ? string : K extends 'web.enabled' ? boolean : K extends 'web.hostMode' ? 'local' | 'network' | 'custom' : K extends 'web.host' ? string : K extends 'web.port' ? number : K extends 'web.publicBaseUrl' ? string : K extends 'web.staticAssetsDir' ? string : K extends 'surfaces.slack.enabled' ? boolean : K extends 'surfaces.slack.signingSecret' ? string : K extends 'surfaces.slack.botToken' ? string : K extends 'surfaces.slack.appToken' ? string : K extends 'surfaces.slack.defaultChannel' ? string : K extends 'surfaces.slack.workspaceId' ? string : K extends 'surfaces.discord.enabled' ? boolean : K extends 'surfaces.discord.publicKey' ? string : K extends 'surfaces.discord.botToken' ? string : K extends 'surfaces.discord.applicationId' ? string : K extends 'surfaces.discord.defaultChannelId' ? string : K extends 'surfaces.discord.guildId' ? string : K extends 'surfaces.ntfy.enabled' ? boolean : K extends 'surfaces.ntfy.baseUrl' ? string : K extends 'surfaces.ntfy.topic' ? string : K extends 'surfaces.ntfy.chatTopic' ? string : K extends 'surfaces.ntfy.agentTopic' ? string : K extends 'surfaces.ntfy.remoteTopic' ? string : K extends 'surfaces.ntfy.token' ? string : K extends 'surfaces.ntfy.defaultPriority' ? number : K extends 'surfaces.webhook.enabled' ? boolean : K extends 'surfaces.webhook.defaultTarget' ? string : K extends 'surfaces.webhook.timeoutMs' ? number : K extends 'surfaces.webhook.secret' ? string : K extends 'surfaces.homeassistant.enabled' ? boolean : K extends 'surfaces.homeassistant.instanceUrl' ? string : K extends 'surfaces.homeassistant.accessToken' ? string : K extends 'surfaces.homeassistant.webhookSecret' ? string : K extends 'surfaces.homeassistant.defaultConversationId' ? string : K extends 'surfaces.homeassistant.deviceId' ? string : K extends 'surfaces.homeassistant.deviceName' ? string : K extends 'surfaces.homeassistant.eventType' ? string : K extends 'surfaces.homeassistant.remoteSessionTtlMs' ? number : K extends 'surfaces.telegram.enabled' ? boolean : K extends 'surfaces.telegram.botToken' ? string : K extends 'surfaces.telegram.webhookSecret' ? string : K extends 'surfaces.telegram.defaultChatId' ? string : K extends 'surfaces.telegram.botUsername' ? string : K extends 'surfaces.telegram.mode' ? 'webhook' | 'polling' : K extends 'surfaces.googleChat.enabled' ? boolean : K extends 'surfaces.googleChat.webhookUrl' ? string : K extends 'surfaces.googleChat.verificationToken' ? string : K extends 'surfaces.googleChat.appId' ? string : K extends 'surfaces.googleChat.spaceId' ? string : K extends 'surfaces.signal.enabled' ? boolean : K extends 'surfaces.signal.bridgeUrl' ? string : K extends 'surfaces.signal.account' ? string : K extends 'surfaces.signal.token' ? string : K extends 'surfaces.signal.defaultRecipient' ? string : K extends 'surfaces.whatsapp.enabled' ? boolean : K extends 'surfaces.whatsapp.provider' ? 'meta-cloud' | 'bridge' : K extends 'surfaces.whatsapp.accessToken' ? string : K extends 'surfaces.whatsapp.verifyToken' ? string : K extends 'surfaces.whatsapp.signingSecret' ? string : K extends 'surfaces.whatsapp.phoneNumberId' ? string : K extends 'surfaces.whatsapp.businessAccountId' ? string : K extends 'surfaces.whatsapp.defaultRecipient' ? string : K extends 'surfaces.telephony.enabled' ? boolean : K extends 'surfaces.telephony.provider' ? 'twilio' | 'bridge' : K extends 'surfaces.telephony.mode' ? 'sms' | 'voice' | 'bridge' : K extends 'surfaces.telephony.bridgeUrl' ? string : K extends 'surfaces.telephony.token' ? string : K extends 'surfaces.telephony.accountSid' ? string : K extends 'surfaces.telephony.authToken' ? string : K extends 'surfaces.telephony.fromNumber' ? string : K extends 'surfaces.telephony.defaultRecipient' ? string : K extends 'surfaces.telephony.webhookSecret' ? string : K extends 'surfaces.telephony.voiceLanguage' ? string : K extends 'surfaces.imessage.enabled' ? boolean : K extends 'surfaces.imessage.bridgeUrl' ? string : K extends 'surfaces.imessage.account' ? string : K extends 'surfaces.imessage.token' ? string : K extends 'surfaces.imessage.defaultChatId' ? string : K extends 'surfaces.msteams.enabled' ? boolean : K extends 'surfaces.msteams.appId' ? string : K extends 'surfaces.msteams.appPassword' ? string : K extends 'surfaces.msteams.tenantId' ? string : K extends 'surfaces.msteams.serviceUrl' ? string : K extends 'surfaces.msteams.botId' ? string : K extends 'surfaces.msteams.defaultConversationId' ? string : K extends 'surfaces.msteams.defaultChannelId' ? string : K extends 'surfaces.bluebubbles.enabled' ? boolean : K extends 'surfaces.bluebubbles.serverUrl' ? string : K extends 'surfaces.bluebubbles.password' ? string : K extends 'surfaces.bluebubbles.account' ? string : K extends 'surfaces.bluebubbles.defaultChatGuid' ? string : K extends 'surfaces.mattermost.enabled' ? boolean : K extends 'surfaces.mattermost.baseUrl' ? string : K extends 'surfaces.mattermost.botToken' ? string : K extends 'surfaces.mattermost.teamId' ? string : K extends 'surfaces.mattermost.defaultChannelId' ? string : K extends 'surfaces.matrix.enabled' ? boolean : K extends 'surfaces.matrix.homeserverUrl' ? string : K extends 'surfaces.matrix.accessToken' ? string : K extends 'surfaces.matrix.userId' ? string : K extends 'surfaces.matrix.defaultRoomId' ? string : K extends 'watchers.enabled' ? boolean : K extends 'watchers.pollIntervalMs' ? number : K extends 'watchers.heartbeatIntervalMs' ? number : K extends 'watchers.recoveryWindowMinutes' ? number : K extends 'service.enabled' ? boolean : K extends 'service.autostart' ? boolean : K extends 'service.restartOnFailure' ? boolean : K extends 'service.platform' ? 'auto' | 'systemd' | 'launchd' | 'windows' | 'manual' : K extends 'service.serviceName' ? string : K extends 'service.logPath' ? string : K extends 'network.outboundTls.mode' ? 'bundled' | 'bundled+custom' | 'custom' : K extends 'network.outboundTls.customCaFile' ? string : K extends 'network.outboundTls.customCaDir' ? string : K extends 'network.outboundTls.allowInsecureLocalhost' ? boolean : K extends 'network.remoteFetch.allowPrivateHosts' ? boolean : K extends 'runtime.companionChatLimiter.perSessionLimit' ? number : K extends 'runtime.eventBus.maxListeners' ? number : K extends 'telemetry.includeRawPrompts' ? boolean : K extends 'batch.mode' ? BatchMode : K extends 'batch.fallback' ? BatchFallbackMode : K extends 'batch.queueBackend' ? BatchQueueBackend : K extends 'batch.tickIntervalMs' ? number : K extends 'batch.maxDelayMs' ? number : K extends 'batch.maxJobsPerProviderBatch' ? number : K extends 'batch.maxQueuePayloadBytes' ? number : K extends 'batch.maxQueueMessagesPerDay' ? number : K extends 'cloudflare.enabled' ? boolean : K extends 'cloudflare.freeTierMode' ? boolean : K extends 'cloudflare.accountId' ? string : K extends 'cloudflare.apiTokenRef' ? string : K extends 'cloudflare.zoneId' ? string : K extends 'cloudflare.zoneName' ? string : K extends 'cloudflare.workerName' ? string : K extends 'cloudflare.workerSubdomain' ? string : K extends 'cloudflare.workerHostname' ? string : K extends 'cloudflare.workerBaseUrl' ? string : K extends 'cloudflare.daemonBaseUrl' ? string : K extends 'cloudflare.daemonHostname' ? string : K extends 'cloudflare.workerTokenRef' ? string : K extends 'cloudflare.workerClientTokenRef' ? string : K extends 'cloudflare.workerCron' ? string : K extends 'cloudflare.queueName' ? string : K extends 'cloudflare.deadLetterQueueName' ? string : K extends 'cloudflare.tunnelName' ? string : K extends 'cloudflare.tunnelId' ? string : K extends 'cloudflare.tunnelTokenRef' ? string : K extends 'cloudflare.accessAppId' ? string : K extends 'cloudflare.accessServiceTokenId' ? string : K extends 'cloudflare.accessServiceTokenRef' ? string : K extends 'cloudflare.kvNamespaceName' ? string : K extends 'cloudflare.kvNamespaceId' ? string : K extends 'cloudflare.durableObjectNamespaceName' ? string : K extends 'cloudflare.durableObjectNamespaceId' ? string : K extends 'cloudflare.r2BucketName' ? string : K extends 'cloudflare.secretsStoreName' ? string : K extends 'cloudflare.secretsStoreId' ? string : K extends 'cloudflare.maxQueueOpsPerDay' ? number : never;
463
+ export type ConfigValue<K extends ConfigKey> = K extends 'display.stream' ? boolean : K extends 'display.lineNumbers' ? LineNumberMode : K extends 'display.collapseThreshold' ? number : K extends 'display.theme' ? string : K extends 'display.showThinking' ? boolean : K extends 'display.showReasoningSummary' ? boolean : K extends 'display.showTokenSpeed' ? boolean : K extends 'display.showToolPreview' ? boolean : K extends 'provider.reasoningEffort' ? 'instant' | 'low' | 'medium' | 'high' : K extends 'provider.model' ? string : K extends 'provider.embeddingProvider' ? string : K extends 'provider.systemPromptFile' ? string : K extends 'behavior.autoApprove' ? boolean : K extends 'behavior.autoCompactThreshold' ? number : K extends 'behavior.staleContextWarnings' ? boolean : K extends 'behavior.saveHistory' ? boolean : K extends 'behavior.notifyOnComplete' ? boolean : K extends 'behavior.suggestAlternativeOnProviderFail' ? boolean : K extends 'behavior.hitlMode' ? 'quiet' | 'balanced' | 'operator' : K extends 'behavior.returnContextMode' ? 'off' | 'local' | 'assisted' : K extends 'behavior.guidanceMode' ? 'off' | 'minimal' | 'guided' : K extends 'storage.secretPolicy' ? 'plaintext_allowed' | 'preferred_secure' | 'require_secure' : K extends 'storage.artifacts.maxBytes' ? number : K extends 'permissions.mode' ? PermissionMode : K extends 'permissions.tools.read' ? PermissionAction : K extends 'permissions.tools.write' ? PermissionAction : K extends 'permissions.tools.edit' ? PermissionAction : K extends 'permissions.tools.exec' ? PermissionAction : K extends 'permissions.tools.find' ? PermissionAction : K extends 'permissions.tools.fetch' ? PermissionAction : K extends 'permissions.tools.analyze' ? PermissionAction : K extends 'permissions.tools.inspect' ? PermissionAction : K extends 'permissions.tools.agent' ? PermissionAction : K extends 'permissions.tools.state' ? PermissionAction : K extends 'permissions.tools.workflow' ? PermissionAction : K extends 'permissions.tools.registry' ? PermissionAction : K extends 'permissions.tools.delegate' ? PermissionAction : K extends 'permissions.tools.mcp' ? PermissionAction : K extends 'orchestration.recursionEnabled' ? boolean : K extends 'orchestration.maxActiveAgents' ? number : K extends 'orchestration.maxDepth' ? number : K extends 'sandbox.replIsolation' ? 'shared-vm' | 'per-runtime-vm' : K extends 'sandbox.mcpIsolation' ? 'disabled' | 'shared-vm' | 'hybrid' | 'per-server-vm' : K extends 'sandbox.windowsMode' ? 'native-basic' | 'require-wsl' : K extends 'sandbox.vmBackend' ? 'local' | 'qemu' : K extends 'sandbox.qemuBinary' ? string : K extends 'sandbox.qemuImagePath' ? string : K extends 'sandbox.qemuExecWrapper' ? string : K extends 'sandbox.qemuGuestHost' ? string : K extends 'sandbox.qemuGuestPort' ? number : K extends 'sandbox.qemuGuestUser' ? string : K extends 'sandbox.qemuWorkspacePath' ? string : K extends 'sandbox.qemuSessionMode' ? 'attach' | 'launch-per-command' : K extends 'sandbox.replJavaScriptCommand' ? string : K extends 'ui.voiceEnabled' ? boolean : K extends 'ui.systemMessages' ? 'panel' | 'conversation' | 'both' : K extends 'ui.operationalMessages' ? 'panel' | 'conversation' | 'both' : K extends 'ui.wrfcMessages' ? 'panel' | 'conversation' | 'both' : K extends 'tts.provider' ? string : K extends 'tts.voice' ? string : K extends 'tts.llmProvider' ? string : K extends 'tts.llmModel' ? string : K extends 'tts.speed' ? number : K extends 'release.channel' ? 'stable' | 'preview' : K extends 'danger.daemon' ? boolean : K extends 'danger.httpListener' ? boolean : K extends 'tools.llmEnabled' ? boolean : K extends 'tools.llmProvider' ? string : K extends 'tools.llmModel' ? string : K extends 'tools.autoHeal' ? boolean : K extends 'tools.defaultTokenBudget' ? number : K extends 'tools.hooksFile' ? string : K extends 'wrfc.scoreThreshold' ? number : K extends 'wrfc.maxFixAttempts' ? number : K extends 'wrfc.autoCommit' ? boolean : K extends 'wrfc.agentHeartbeatTimeoutMs' ? number : K extends 'cache.enabled' ? boolean : K extends 'cache.stableTtl' ? '5m' | '1h' : K extends 'cache.monitorHitRate' ? boolean : K extends 'cache.hitRateWarningThreshold' ? number : K extends 'helper.enabled' ? boolean : K extends 'helper.globalProvider' ? string : K extends 'helper.globalModel' ? string : K extends 'automation.enabled' ? boolean : K extends 'automation.maxConcurrentRuns' ? number : K extends 'automation.runHistoryLimit' ? number : K extends 'automation.defaultTimeoutMs' ? number : K extends 'automation.catchUpWindowMinutes' ? number : K extends 'automation.failureCooldownMs' ? number : K extends 'automation.deleteAfterRun' ? boolean : K extends 'controlPlane.enabled' ? boolean : K extends 'controlPlane.hostMode' ? 'local' | 'network' | 'custom' : K extends 'controlPlane.host' ? string : K extends 'controlPlane.port' ? number : K extends 'controlPlane.baseUrl' ? string : K extends 'controlPlane.streamMode' ? 'sse' | 'websocket' | 'both' : K extends 'controlPlane.allowRemote' ? boolean : K extends 'controlPlane.trustProxy' ? boolean : K extends 'controlPlane.openaiCompatible.enabled' ? boolean : K extends 'controlPlane.openaiCompatible.pathPrefix' ? string : K extends 'controlPlane.tls.mode' ? 'off' | 'proxy' | 'direct' : K extends 'controlPlane.tls.certFile' ? string : K extends 'controlPlane.tls.keyFile' ? string : K extends 'httpListener.hostMode' ? 'local' | 'network' | 'custom' : K extends 'httpListener.host' ? string : K extends 'httpListener.port' ? number : K extends 'httpListener.trustProxy' ? boolean : K extends 'httpListener.tls.mode' ? 'off' | 'proxy' | 'direct' : K extends 'httpListener.tls.certFile' ? string : K extends 'httpListener.tls.keyFile' ? string : K extends 'web.enabled' ? boolean : K extends 'web.hostMode' ? 'local' | 'network' | 'custom' : K extends 'web.host' ? string : K extends 'web.port' ? number : K extends 'web.publicBaseUrl' ? string : K extends 'web.staticAssetsDir' ? string : K extends 'surfaces.slack.enabled' ? boolean : K extends 'surfaces.slack.signingSecret' ? string : K extends 'surfaces.slack.botToken' ? string : K extends 'surfaces.slack.appToken' ? string : K extends 'surfaces.slack.defaultChannel' ? string : K extends 'surfaces.slack.workspaceId' ? string : K extends 'surfaces.discord.enabled' ? boolean : K extends 'surfaces.discord.publicKey' ? string : K extends 'surfaces.discord.botToken' ? string : K extends 'surfaces.discord.applicationId' ? string : K extends 'surfaces.discord.defaultChannelId' ? string : K extends 'surfaces.discord.guildId' ? string : K extends 'surfaces.ntfy.enabled' ? boolean : K extends 'surfaces.ntfy.baseUrl' ? string : K extends 'surfaces.ntfy.topic' ? string : K extends 'surfaces.ntfy.chatTopic' ? string : K extends 'surfaces.ntfy.agentTopic' ? string : K extends 'surfaces.ntfy.remoteTopic' ? string : K extends 'surfaces.ntfy.token' ? string : K extends 'surfaces.ntfy.defaultPriority' ? number : K extends 'surfaces.webhook.enabled' ? boolean : K extends 'surfaces.webhook.defaultTarget' ? string : K extends 'surfaces.webhook.timeoutMs' ? number : K extends 'surfaces.webhook.secret' ? string : K extends 'surfaces.homeassistant.enabled' ? boolean : K extends 'surfaces.homeassistant.instanceUrl' ? string : K extends 'surfaces.homeassistant.accessToken' ? string : K extends 'surfaces.homeassistant.webhookSecret' ? string : K extends 'surfaces.homeassistant.defaultConversationId' ? string : K extends 'surfaces.homeassistant.deviceId' ? string : K extends 'surfaces.homeassistant.deviceName' ? string : K extends 'surfaces.homeassistant.eventType' ? string : K extends 'surfaces.homeassistant.remoteSessionTtlMs' ? number : K extends 'surfaces.telegram.enabled' ? boolean : K extends 'surfaces.telegram.botToken' ? string : K extends 'surfaces.telegram.webhookSecret' ? string : K extends 'surfaces.telegram.defaultChatId' ? string : K extends 'surfaces.telegram.botUsername' ? string : K extends 'surfaces.telegram.mode' ? 'webhook' | 'polling' : K extends 'surfaces.googleChat.enabled' ? boolean : K extends 'surfaces.googleChat.webhookUrl' ? string : K extends 'surfaces.googleChat.verificationToken' ? string : K extends 'surfaces.googleChat.appId' ? string : K extends 'surfaces.googleChat.spaceId' ? string : K extends 'surfaces.signal.enabled' ? boolean : K extends 'surfaces.signal.bridgeUrl' ? string : K extends 'surfaces.signal.account' ? string : K extends 'surfaces.signal.token' ? string : K extends 'surfaces.signal.defaultRecipient' ? string : K extends 'surfaces.whatsapp.enabled' ? boolean : K extends 'surfaces.whatsapp.provider' ? 'meta-cloud' | 'bridge' : K extends 'surfaces.whatsapp.accessToken' ? string : K extends 'surfaces.whatsapp.verifyToken' ? string : K extends 'surfaces.whatsapp.signingSecret' ? string : K extends 'surfaces.whatsapp.phoneNumberId' ? string : K extends 'surfaces.whatsapp.businessAccountId' ? string : K extends 'surfaces.whatsapp.defaultRecipient' ? string : K extends 'surfaces.telephony.enabled' ? boolean : K extends 'surfaces.telephony.provider' ? 'twilio' | 'bridge' : K extends 'surfaces.telephony.mode' ? 'sms' | 'voice' | 'bridge' : K extends 'surfaces.telephony.bridgeUrl' ? string : K extends 'surfaces.telephony.token' ? string : K extends 'surfaces.telephony.accountSid' ? string : K extends 'surfaces.telephony.authToken' ? string : K extends 'surfaces.telephony.fromNumber' ? string : K extends 'surfaces.telephony.defaultRecipient' ? string : K extends 'surfaces.telephony.webhookSecret' ? string : K extends 'surfaces.telephony.voiceLanguage' ? string : K extends 'surfaces.imessage.enabled' ? boolean : K extends 'surfaces.imessage.bridgeUrl' ? string : K extends 'surfaces.imessage.account' ? string : K extends 'surfaces.imessage.token' ? string : K extends 'surfaces.imessage.defaultChatId' ? string : K extends 'surfaces.msteams.enabled' ? boolean : K extends 'surfaces.msteams.appId' ? string : K extends 'surfaces.msteams.appPassword' ? string : K extends 'surfaces.msteams.tenantId' ? string : K extends 'surfaces.msteams.serviceUrl' ? string : K extends 'surfaces.msteams.botId' ? string : K extends 'surfaces.msteams.defaultConversationId' ? string : K extends 'surfaces.msteams.defaultChannelId' ? string : K extends 'surfaces.bluebubbles.enabled' ? boolean : K extends 'surfaces.bluebubbles.serverUrl' ? string : K extends 'surfaces.bluebubbles.password' ? string : K extends 'surfaces.bluebubbles.account' ? string : K extends 'surfaces.bluebubbles.defaultChatGuid' ? string : K extends 'surfaces.mattermost.enabled' ? boolean : K extends 'surfaces.mattermost.baseUrl' ? string : K extends 'surfaces.mattermost.botToken' ? string : K extends 'surfaces.mattermost.teamId' ? string : K extends 'surfaces.mattermost.defaultChannelId' ? string : K extends 'surfaces.matrix.enabled' ? boolean : K extends 'surfaces.matrix.homeserverUrl' ? string : K extends 'surfaces.matrix.accessToken' ? string : K extends 'surfaces.matrix.userId' ? string : K extends 'surfaces.matrix.defaultRoomId' ? string : K extends 'watchers.enabled' ? boolean : K extends 'watchers.pollIntervalMs' ? number : K extends 'watchers.heartbeatIntervalMs' ? number : K extends 'watchers.recoveryWindowMinutes' ? number : K extends 'service.enabled' ? boolean : K extends 'service.autostart' ? boolean : K extends 'service.restartOnFailure' ? boolean : K extends 'service.platform' ? 'auto' | 'systemd' | 'launchd' | 'windows' | 'manual' : K extends 'service.serviceName' ? string : K extends 'service.logPath' ? string : K extends 'network.outboundTls.mode' ? 'bundled' | 'bundled+custom' | 'custom' : K extends 'network.outboundTls.customCaFile' ? string : K extends 'network.outboundTls.customCaDir' ? string : K extends 'network.outboundTls.allowInsecureLocalhost' ? boolean : K extends 'network.remoteFetch.allowPrivateHosts' ? boolean : K extends 'runtime.companionChatLimiter.perSessionLimit' ? number : K extends 'runtime.eventBus.maxListeners' ? number : K extends 'telemetry.includeRawPrompts' ? boolean : K extends 'batch.mode' ? BatchMode : K extends 'batch.fallback' ? BatchFallbackMode : K extends 'batch.queueBackend' ? BatchQueueBackend : K extends 'batch.tickIntervalMs' ? number : K extends 'batch.maxDelayMs' ? number : K extends 'batch.maxJobsPerProviderBatch' ? number : K extends 'batch.maxQueuePayloadBytes' ? number : K extends 'batch.maxQueueMessagesPerDay' ? number : K extends 'cloudflare.enabled' ? boolean : K extends 'cloudflare.freeTierMode' ? boolean : K extends 'cloudflare.accountId' ? string : K extends 'cloudflare.apiTokenRef' ? string : K extends 'cloudflare.zoneId' ? string : K extends 'cloudflare.zoneName' ? string : K extends 'cloudflare.workerName' ? string : K extends 'cloudflare.workerSubdomain' ? string : K extends 'cloudflare.workerHostname' ? string : K extends 'cloudflare.workerBaseUrl' ? string : K extends 'cloudflare.daemonBaseUrl' ? string : K extends 'cloudflare.daemonHostname' ? string : K extends 'cloudflare.workerTokenRef' ? string : K extends 'cloudflare.workerClientTokenRef' ? string : K extends 'cloudflare.workerCron' ? string : K extends 'cloudflare.queueName' ? string : K extends 'cloudflare.deadLetterQueueName' ? string : K extends 'cloudflare.tunnelName' ? string : K extends 'cloudflare.tunnelId' ? string : K extends 'cloudflare.tunnelTokenRef' ? string : K extends 'cloudflare.accessAppId' ? string : K extends 'cloudflare.accessServiceTokenId' ? string : K extends 'cloudflare.accessServiceTokenRef' ? string : K extends 'cloudflare.kvNamespaceName' ? string : K extends 'cloudflare.kvNamespaceId' ? string : K extends 'cloudflare.durableObjectNamespaceName' ? string : K extends 'cloudflare.durableObjectNamespaceId' ? string : K extends 'cloudflare.r2BucketName' ? string : K extends 'cloudflare.secretsStoreName' ? string : K extends 'cloudflare.secretsStoreId' ? string : K extends 'cloudflare.maxQueueOpsPerDay' ? number : never;
457
464
  //# sourceMappingURL=schema-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-types.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-types.d.ts","sourceRoot":"","sources":["../../../src/platform/config/schema-types.ts"],"names":[],"mappings":"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"}