@telora/daemon 0.19.82 → 0.19.91
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/dist/cli/session-state.d.ts +26 -0
- package/dist/cli/session-state.d.ts.map +1 -1
- package/dist/cli/session-state.js +53 -2
- package/dist/cli/session-state.js.map +1 -1
- package/dist/cli/verify-setup-config.d.ts +58 -0
- package/dist/cli/verify-setup-config.d.ts.map +1 -0
- package/dist/cli/verify-setup-config.js +105 -0
- package/dist/cli/verify-setup-config.js.map +1 -0
- package/dist/cli/verify-setup.d.ts +96 -0
- package/dist/cli/verify-setup.d.ts.map +1 -0
- package/dist/cli/verify-setup.js +175 -0
- package/dist/cli/verify-setup.js.map +1 -0
- package/dist/config.d.ts +29 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +79 -23
- package/dist/config.js.map +1 -1
- package/dist/heartbeat.d.ts.map +1 -1
- package/dist/heartbeat.js +6 -0
- package/dist/heartbeat.js.map +1 -1
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -1
- package/dist/types/config.d.ts +35 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/unified-engine-lifecycle.d.ts.map +1 -1
- package/dist/unified-engine-lifecycle.js +14 -2
- package/dist/unified-engine-lifecycle.js.map +1 -1
- package/dist/unified-init.d.ts.map +1 -1
- package/dist/unified-init.js +21 -1
- package/dist/unified-init.js.map +1 -1
- package/dist/unified-shell-status.d.ts +11 -0
- package/dist/unified-shell-status.d.ts.map +1 -1
- package/dist/unified-shell-status.js +30 -0
- package/dist/unified-shell-status.js.map +1 -1
- package/dist/unified-shell.d.ts.map +1 -1
- package/dist/unified-shell.js +13 -1
- package/dist/unified-shell.js.map +1 -1
- package/dist/verification-config.d.ts +45 -1
- package/dist/verification-config.d.ts.map +1 -1
- package/dist/verification-config.js +41 -0
- package/dist/verification-config.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `telora-daemon verify-setup`: a guided, per-repo path to configure the
|
|
3
|
+
* default-on deterministic verification command for existing installs.
|
|
4
|
+
*
|
|
5
|
+
* Per configured product it detects a candidate command, offers a validation
|
|
6
|
+
* run (execute once, report exit code + runtime to size the timeout), and
|
|
7
|
+
* writes `products[].defaultVerification` -- or records an explicit review-only
|
|
8
|
+
* decline. Detection PROPOSES; nothing is auto-adopted: every write path
|
|
9
|
+
* requires an explicit operator confirmation (a vacuous pass would stamp a
|
|
10
|
+
* false "verified" signal).
|
|
11
|
+
*
|
|
12
|
+
* The per-product driver (`runVerifySetupForProduct`) is dependency-injected
|
|
13
|
+
* (ask / runCommand / write / out) so it is unit-testable without a TTY or a
|
|
14
|
+
* real subprocess. `runVerifySetupCommand` wires the real readline + child
|
|
15
|
+
* process + config writer for the CLI.
|
|
16
|
+
*
|
|
17
|
+
* @module cli/verify-setup
|
|
18
|
+
*/
|
|
19
|
+
import { createInterface } from 'node:readline';
|
|
20
|
+
import { spawn } from 'node:child_process';
|
|
21
|
+
import { basename, resolve } from 'node:path';
|
|
22
|
+
import { homedir } from 'node:os';
|
|
23
|
+
import { loadConfig } from '../config.js';
|
|
24
|
+
import { detectVerifyCommand, writeVerifyConfig, } from './verify-setup-config.js';
|
|
25
|
+
/** Minimum timeout floor for a sized default-on run: 5 minutes. */
|
|
26
|
+
export const VERIFY_SETUP_MIN_TIMEOUT_MS = 5 * 60_000;
|
|
27
|
+
function isYes(answer) {
|
|
28
|
+
return answer.trim().toLowerCase().startsWith('y');
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Size a timeout from an observed validation runtime: at least 2x the run, with
|
|
32
|
+
* a 5-minute floor, rounded up to whole seconds.
|
|
33
|
+
*/
|
|
34
|
+
export function sizeTimeoutFromRuntime(durationMs) {
|
|
35
|
+
return Math.max(VERIFY_SETUP_MIN_TIMEOUT_MS, Math.ceil((durationMs * 2) / 1000) * 1000);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Prompt the operator for one product's verification entry: show a detected
|
|
39
|
+
* candidate, accept confirm/edit/skip/decline, optionally validate. Emits
|
|
40
|
+
* informational lines via io.out but performs NO write -- it returns the
|
|
41
|
+
* decision. Nothing is auto-adopted: a skip/empty answer returns `skip`; a
|
|
42
|
+
* non-zero validation exit returns `skip` unless the operator overrides.
|
|
43
|
+
*/
|
|
44
|
+
export async function promptVerifyEntry(product, io) {
|
|
45
|
+
io.out(`\n=== ${basename(product.repoPath) || product.id} (${product.repoPath}) ===`);
|
|
46
|
+
const detected = detectVerifyCommand(product.repoPath);
|
|
47
|
+
if (detected) {
|
|
48
|
+
io.out(`Detected candidate: ${detected.command} [${detected.reason}]`);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
io.out('No verification command auto-detected for this repo.');
|
|
52
|
+
}
|
|
53
|
+
const menu = detected
|
|
54
|
+
? '[c]onfirm detected / [e]dit / [s]kip / [d]ecline (review-only)'
|
|
55
|
+
: '[e]nter command / [s]kip / [d]ecline (review-only)';
|
|
56
|
+
const action = (await io.ask(`Action ${menu}`)).trim().toLowerCase();
|
|
57
|
+
// Skip / empty -> nothing configured.
|
|
58
|
+
if (action === '' || action.startsWith('s')) {
|
|
59
|
+
io.out('Skipped -- no config written.');
|
|
60
|
+
return { kind: 'skip' };
|
|
61
|
+
}
|
|
62
|
+
// Explicit review-only decline (a recorded decision).
|
|
63
|
+
if (action.startsWith('d')) {
|
|
64
|
+
return { kind: 'decline' };
|
|
65
|
+
}
|
|
66
|
+
// Resolve the command to configure.
|
|
67
|
+
let command;
|
|
68
|
+
if (action.startsWith('c') && detected) {
|
|
69
|
+
command = detected.command;
|
|
70
|
+
}
|
|
71
|
+
else if (action.startsWith('e')) {
|
|
72
|
+
command = (await io.ask('Verification command')).trim();
|
|
73
|
+
if (command === '') {
|
|
74
|
+
io.out('Empty command -- nothing written.');
|
|
75
|
+
return { kind: 'skip' };
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
io.out('Unrecognized action -- nothing written.');
|
|
80
|
+
return { kind: 'skip' };
|
|
81
|
+
}
|
|
82
|
+
// Optional validation run: execute once, report exit + runtime, size timeout.
|
|
83
|
+
let timeoutMs;
|
|
84
|
+
if (isYes(await io.ask(`Run "${command}" once to validate?`))) {
|
|
85
|
+
io.out(`Running: ${command}`);
|
|
86
|
+
const { exitCode, durationMs } = await io.runCommand(command, product.repoPath);
|
|
87
|
+
io.out(`Exit code ${exitCode} in ${(durationMs / 1000).toFixed(1)}s`);
|
|
88
|
+
timeoutMs = sizeTimeoutFromRuntime(durationMs);
|
|
89
|
+
if (exitCode !== 0) {
|
|
90
|
+
if (!isYes(await io.ask('Command failed. Write config anyway?'))) {
|
|
91
|
+
io.out('Not written (non-zero exit, no override).');
|
|
92
|
+
return { kind: 'skip' };
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return { kind: 'configure', entry: timeoutMs ? { command, timeoutMs } : { command } };
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Drive the guided setup for ONE product and PERSIST the decision. Returns what
|
|
100
|
+
* was decided. Never writes config without an explicit confirm/edit/decline; a
|
|
101
|
+
* skip (or empty answer) writes nothing.
|
|
102
|
+
*/
|
|
103
|
+
export async function runVerifySetupForProduct(product, io) {
|
|
104
|
+
const result = await promptVerifyEntry(product, io);
|
|
105
|
+
if (result.kind === 'skip')
|
|
106
|
+
return 'skipped';
|
|
107
|
+
if (result.kind === 'decline') {
|
|
108
|
+
io.write(product.id, { declined: true });
|
|
109
|
+
io.out('Recorded review-only decline.');
|
|
110
|
+
return 'declined';
|
|
111
|
+
}
|
|
112
|
+
io.write(product.id, result.entry);
|
|
113
|
+
io.out(`Configured: ${result.entry.command}`);
|
|
114
|
+
return 'configured';
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Walk every product through the guided setup. Returns the per-product outcomes
|
|
118
|
+
* in order.
|
|
119
|
+
*/
|
|
120
|
+
export async function runVerifySetup(products, io) {
|
|
121
|
+
const outcomes = [];
|
|
122
|
+
for (const product of products) {
|
|
123
|
+
outcomes.push(await runVerifySetupForProduct(product, io));
|
|
124
|
+
}
|
|
125
|
+
return outcomes;
|
|
126
|
+
}
|
|
127
|
+
// ── CLI wiring (real IO) ──
|
|
128
|
+
function makeReadlineAsk() {
|
|
129
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
130
|
+
const ask = (question) => new Promise((res) => rl.question(`${question}: `, (a) => res(a.trim())));
|
|
131
|
+
return { ask, close: () => rl.close() };
|
|
132
|
+
}
|
|
133
|
+
/** Run a verification command once in a repo, reporting exit code + runtime.
|
|
134
|
+
* Shared by the verify-setup CLI and the init wizard's validation step. */
|
|
135
|
+
export function runVerifyCommandOnce(command, repoPath) {
|
|
136
|
+
const startedAt = Date.now();
|
|
137
|
+
return new Promise((res) => {
|
|
138
|
+
const child = spawn(command, { cwd: repoPath, shell: true, stdio: 'inherit' });
|
|
139
|
+
child.on('close', (code) => res({ exitCode: code ?? 1, durationMs: Date.now() - startedAt }));
|
|
140
|
+
child.on('error', () => res({ exitCode: 1, durationMs: Date.now() - startedAt }));
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* CLI entry: load config, resolve its path, and walk each product through the
|
|
145
|
+
* guided setup with real readline + subprocess + config writer.
|
|
146
|
+
*/
|
|
147
|
+
export async function runVerifySetupCommand(opts = {}) {
|
|
148
|
+
const config = loadConfig(opts.config);
|
|
149
|
+
const configPath = opts.config ?? resolve(homedir(), '.telora', 'daemon.json');
|
|
150
|
+
const products = config.products.map((p) => ({ id: p.id, repoPath: p.repoPath }));
|
|
151
|
+
if (products.length === 0) {
|
|
152
|
+
console.log('No products configured. Run `telora-daemon init` first.');
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
const { ask, close } = makeReadlineAsk();
|
|
156
|
+
const io = {
|
|
157
|
+
ask,
|
|
158
|
+
runCommand: runVerifyCommandOnce,
|
|
159
|
+
write: (productId, entry) => writeVerifyConfig(configPath, productId, entry),
|
|
160
|
+
out: (line) => console.log(line),
|
|
161
|
+
};
|
|
162
|
+
try {
|
|
163
|
+
console.log(`Guided verification setup for ${products.length} product(s).`);
|
|
164
|
+
const outcomes = await runVerifySetup(products, io);
|
|
165
|
+
const counts = outcomes.reduce((acc, o) => {
|
|
166
|
+
acc[o] = (acc[o] ?? 0) + 1;
|
|
167
|
+
return acc;
|
|
168
|
+
}, {});
|
|
169
|
+
console.log(`\nDone. configured: ${counts.configured ?? 0}, declined: ${counts.declined ?? 0}, skipped: ${counts.skipped ?? 0}.`);
|
|
170
|
+
}
|
|
171
|
+
finally {
|
|
172
|
+
close();
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=verify-setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-setup.js","sourceRoot":"","sources":["../../src/cli/verify-setup.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -13,8 +13,29 @@
|
|
|
13
13
|
* config file (the connect flow persists it to ~/.telora/daemon.json, mode 0600,
|
|
14
14
|
* matching the security profile of .mcp.json which already stores the same secret).
|
|
15
15
|
*/
|
|
16
|
-
import type { DaemonConfig } from './types.js';
|
|
16
|
+
import type { DaemonConfig, DefaultVerificationConfig, DaemonProductEntry } from './types.js';
|
|
17
17
|
import type { ProductEntry } from '@telora/daemon-core';
|
|
18
|
+
/**
|
|
19
|
+
* Resolve default-on verification carriage from the raw config file: the
|
|
20
|
+
* top-level global `defaultVerification` block and each product's per-product
|
|
21
|
+
* override (`products[].defaultVerification`), enriched onto the normalized
|
|
22
|
+
* products array.
|
|
23
|
+
*
|
|
24
|
+
* This is the SINGLE source of the file-level verification carriage. Both
|
|
25
|
+
* daemon-side entry points use it so they cannot drift:
|
|
26
|
+
* - `loadConfig` (this module) -- the CLI / subcommand config path.
|
|
27
|
+
* - `buildEngineRuntimeConfig` (unified-engine-lifecycle) -- the RUNNING focus
|
|
28
|
+
* engine's config path, which is built from `buildFocusConfig` (that omits
|
|
29
|
+
* defaultVerification) and must be enriched here or the file block never
|
|
30
|
+
* reaches the verification engine at all.
|
|
31
|
+
*
|
|
32
|
+
* Env overrides (TELORA_DEFAULT_VERIFY_*) are NOT applied here -- they stay
|
|
33
|
+
* global and are layered on at read time by `resolveDefaultVerification`.
|
|
34
|
+
*/
|
|
35
|
+
export declare function resolveVerificationCarriage(fileConfig: Record<string, unknown>, baseProducts: readonly ProductEntry[]): {
|
|
36
|
+
defaultVerification?: DefaultVerificationConfig;
|
|
37
|
+
products: DaemonProductEntry[];
|
|
38
|
+
};
|
|
18
39
|
/**
|
|
19
40
|
* Load and validate daemon configuration.
|
|
20
41
|
*
|
|
@@ -36,6 +57,13 @@ export declare function loadConfig(configPath?: string): DaemonConfig;
|
|
|
36
57
|
* Per-product local-model fields (codexHome, defaultCodingEngine, codexModel)
|
|
37
58
|
* are copied from the product entry; absent on the entry => undefined on the
|
|
38
59
|
* config (cloud parity).
|
|
60
|
+
*
|
|
61
|
+
* The per-product `defaultVerification` override is resolved from the matching
|
|
62
|
+
* entry in `config.products` (the enriched DaemonProductEntry list) so a caller
|
|
63
|
+
* passing a plain ProductEntry still gets the override. When the product
|
|
64
|
+
* declares no override, the spread carries the top-level global block through
|
|
65
|
+
* (global fallback); env overrides are applied above both at read time by
|
|
66
|
+
* resolveDefaultVerification.
|
|
39
67
|
*/
|
|
40
68
|
export declare function configForProduct(config: DaemonConfig, product: ProductEntry): DaemonConfig;
|
|
41
69
|
/**
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,OAAO,KAAK,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,OAAO,KAAK,EAAE,YAAY,EAAoD,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAoExD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,YAAY,EAAE,SAAS,YAAY,EAAE,GACpC;IAAE,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAA;CAAE,CAYrF;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CA2L5D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,GAAG,YAAY,CAkB1F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAE7F;AAqBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAuEzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAiCtD"}
|
package/dist/config.js
CHANGED
|
@@ -48,6 +48,60 @@ function resolveNum(name, envConfigVal, fileVal) {
|
|
|
48
48
|
}
|
|
49
49
|
return envDefault(name);
|
|
50
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Parse a raw `defaultVerification` block (from daemon.json -- either the
|
|
53
|
+
* top-level global slot or a per-product `products[].defaultVerification`
|
|
54
|
+
* override) into a typed DefaultVerificationConfig. Returns undefined when the
|
|
55
|
+
* raw value is not an object, so the caller falls through to the next
|
|
56
|
+
* precedence source (per-product => global => env/default). Applies the same
|
|
57
|
+
* field defaults at both levels so per-product and global blocks behave
|
|
58
|
+
* identically. Env overrides (TELORA_DEFAULT_VERIFY_*) are applied later, at
|
|
59
|
+
* read time, by resolveDefaultVerification -- they stay global and win over
|
|
60
|
+
* whichever file value configForProduct selects.
|
|
61
|
+
*/
|
|
62
|
+
function parseVerifyBlock(raw) {
|
|
63
|
+
if (typeof raw !== 'object' || raw === null)
|
|
64
|
+
return undefined;
|
|
65
|
+
const v = raw;
|
|
66
|
+
return {
|
|
67
|
+
command: typeof v.command === 'string' ? v.command : '',
|
|
68
|
+
timeoutMs: typeof v.timeoutMs === 'number' && v.timeoutMs > 0
|
|
69
|
+
? v.timeoutMs
|
|
70
|
+
: DEFAULT_VERIFY_TIMEOUT_MS,
|
|
71
|
+
maxConcurrent: typeof v.maxConcurrent === 'number' && v.maxConcurrent > 0
|
|
72
|
+
? v.maxConcurrent
|
|
73
|
+
: DEFAULT_VERIFY_MAX_CONCURRENT,
|
|
74
|
+
// Explicit review-only decline marker (records a deliberate decision).
|
|
75
|
+
...(v.declined === true ? { declined: true } : {}),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Resolve default-on verification carriage from the raw config file: the
|
|
80
|
+
* top-level global `defaultVerification` block and each product's per-product
|
|
81
|
+
* override (`products[].defaultVerification`), enriched onto the normalized
|
|
82
|
+
* products array.
|
|
83
|
+
*
|
|
84
|
+
* This is the SINGLE source of the file-level verification carriage. Both
|
|
85
|
+
* daemon-side entry points use it so they cannot drift:
|
|
86
|
+
* - `loadConfig` (this module) -- the CLI / subcommand config path.
|
|
87
|
+
* - `buildEngineRuntimeConfig` (unified-engine-lifecycle) -- the RUNNING focus
|
|
88
|
+
* engine's config path, which is built from `buildFocusConfig` (that omits
|
|
89
|
+
* defaultVerification) and must be enriched here or the file block never
|
|
90
|
+
* reaches the verification engine at all.
|
|
91
|
+
*
|
|
92
|
+
* Env overrides (TELORA_DEFAULT_VERIFY_*) are NOT applied here -- they stay
|
|
93
|
+
* global and are layered on at read time by `resolveDefaultVerification`.
|
|
94
|
+
*/
|
|
95
|
+
export function resolveVerificationCarriage(fileConfig, baseProducts) {
|
|
96
|
+
const global = parseVerifyBlock(fileConfig.defaultVerification);
|
|
97
|
+
const rawProducts = Array.isArray(fileConfig.products) ? fileConfig.products : [];
|
|
98
|
+
const products = baseProducts.map((p) => {
|
|
99
|
+
const rawEntry = rawProducts.find((r) => typeof r === 'object' && r !== null && r.id === p.id);
|
|
100
|
+
const perProduct = parseVerifyBlock(rawEntry?.defaultVerification);
|
|
101
|
+
return perProduct ? { ...p, defaultVerification: perProduct } : { ...p };
|
|
102
|
+
});
|
|
103
|
+
return global ? { defaultVerification: global, products } : { products };
|
|
104
|
+
}
|
|
51
105
|
/**
|
|
52
106
|
* Load and validate daemon configuration.
|
|
53
107
|
*
|
|
@@ -73,8 +127,13 @@ export function loadConfig(configPath) {
|
|
|
73
127
|
const claudeCodePath = base.claudeCodePath || 'claude';
|
|
74
128
|
const logDir = base.logDir || resolve(repoPath, '.telora', 'logs');
|
|
75
129
|
const sessionTimeoutMs = base.sessionTimeoutMs ?? 3600000; // 1 hour
|
|
76
|
-
// Resolve products array (always populated at runtime)
|
|
77
|
-
|
|
130
|
+
// Resolve products array (always populated at runtime) plus default-on
|
|
131
|
+
// verification carriage (global block + per-product overrides) via the shared
|
|
132
|
+
// resolver -- the same one buildEngineRuntimeConfig uses for the running
|
|
133
|
+
// engine, so the two paths cannot drift. base.products is normalized by
|
|
134
|
+
// daemon-core (which cannot carry the daemon-only per-product field); the
|
|
135
|
+
// resolver matches raw entries back by id and enriches them.
|
|
136
|
+
const { defaultVerification, products } = resolveVerificationCarriage(fileConfig, base.products ?? []);
|
|
78
137
|
// Validate required base fields
|
|
79
138
|
const teloraUrl = base.teloraUrl;
|
|
80
139
|
const trackerId = base.trackerId;
|
|
@@ -189,27 +248,12 @@ export function loadConfig(configPath) {
|
|
|
189
248
|
: (typeof lacunaFile.source === 'string' && lacunaFile.source ? lacunaFile.source : envCfg.TELORA_LACUNA_SOURCE),
|
|
190
249
|
readyTimeoutMs: resolveNum('TELORA_LACUNA_READY_TIMEOUT_MS', envCfg.TELORA_LACUNA_READY_TIMEOUT_MS, lacunaFile.readyTimeoutMs),
|
|
191
250
|
};
|
|
192
|
-
// Default-on deterministic verification (coding->verify edge)
|
|
193
|
-
//
|
|
194
|
-
//
|
|
195
|
-
// precedence env > file > default holds
|
|
196
|
-
//
|
|
197
|
-
//
|
|
198
|
-
// empty command (default-on path inert) unless an env var opts in.
|
|
199
|
-
const verifyFile = (typeof fileConfig.defaultVerification === 'object' && fileConfig.defaultVerification !== null)
|
|
200
|
-
? fileConfig.defaultVerification
|
|
201
|
-
: undefined;
|
|
202
|
-
const defaultVerification = verifyFile
|
|
203
|
-
? {
|
|
204
|
-
command: typeof verifyFile.command === 'string' ? verifyFile.command : '',
|
|
205
|
-
timeoutMs: typeof verifyFile.timeoutMs === 'number' && verifyFile.timeoutMs > 0
|
|
206
|
-
? verifyFile.timeoutMs
|
|
207
|
-
: DEFAULT_VERIFY_TIMEOUT_MS,
|
|
208
|
-
maxConcurrent: typeof verifyFile.maxConcurrent === 'number' && verifyFile.maxConcurrent > 0
|
|
209
|
-
? verifyFile.maxConcurrent
|
|
210
|
-
: DEFAULT_VERIFY_MAX_CONCURRENT,
|
|
211
|
-
}
|
|
212
|
-
: undefined;
|
|
251
|
+
// Default-on deterministic verification (coding->verify edge) was resolved
|
|
252
|
+
// above via resolveVerificationCarriage (global block + per-product
|
|
253
|
+
// overrides). Env overrides (TELORA_DEFAULT_VERIFY_*) are layered on at read
|
|
254
|
+
// time by resolveDefaultVerification, so precedence env > file > default holds
|
|
255
|
+
// whether config came through here or through the buildEngineRuntimeConfig
|
|
256
|
+
// boot path (which uses the same resolver).
|
|
213
257
|
return {
|
|
214
258
|
teloraUrl,
|
|
215
259
|
trackerId,
|
|
@@ -246,8 +290,17 @@ export function loadConfig(configPath) {
|
|
|
246
290
|
* Per-product local-model fields (codexHome, defaultCodingEngine, codexModel)
|
|
247
291
|
* are copied from the product entry; absent on the entry => undefined on the
|
|
248
292
|
* config (cloud parity).
|
|
293
|
+
*
|
|
294
|
+
* The per-product `defaultVerification` override is resolved from the matching
|
|
295
|
+
* entry in `config.products` (the enriched DaemonProductEntry list) so a caller
|
|
296
|
+
* passing a plain ProductEntry still gets the override. When the product
|
|
297
|
+
* declares no override, the spread carries the top-level global block through
|
|
298
|
+
* (global fallback); env overrides are applied above both at read time by
|
|
299
|
+
* resolveDefaultVerification.
|
|
249
300
|
*/
|
|
250
301
|
export function configForProduct(config, product) {
|
|
302
|
+
const entry = config.products.find((p) => p.id === product.id);
|
|
303
|
+
const perProductVerification = entry?.defaultVerification;
|
|
251
304
|
return {
|
|
252
305
|
...config,
|
|
253
306
|
productId: product.id,
|
|
@@ -259,6 +312,9 @@ export function configForProduct(config, product) {
|
|
|
259
312
|
codexHome: product.codexHome,
|
|
260
313
|
defaultCodingEngine: product.defaultCodingEngine,
|
|
261
314
|
codexModel: product.codexModel,
|
|
315
|
+
// Per-product verification override wins; else the spread above already
|
|
316
|
+
// carried config.defaultVerification (global fallback).
|
|
317
|
+
...(perProductVerification ? { defaultVerification: perProductVerification } : {}),
|
|
262
318
|
};
|
|
263
319
|
}
|
|
264
320
|
/**
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/heartbeat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAA4D,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAA4D,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGvJ,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AA2B7D;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAEhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEpD;AAGD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;AAmB7C;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAkFD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAO7E;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAEhD;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE/D;AAGD,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,YAAY,EAAE,iBAAiB,CAAA;CAAE,GAAG,IAAI,CAGlF;AAqHD;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAcpD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAanD"}
|
package/dist/heartbeat.js
CHANGED
|
@@ -18,6 +18,7 @@ import { monitorEventLoopDelay } from 'node:perf_hooks';
|
|
|
18
18
|
import { sendHeartbeat, sendDisconnect, getCompletedSessionAggregates } from './supabase.js';
|
|
19
19
|
import { getRunningAgents, getSessionCounters, setSessionCounters, recordSessionCompleted, recordActivity, getLastActivityAt } from './agent-state.js';
|
|
20
20
|
import { safeInterval, healthEvents, getReadOnlyModeState } from '@telora/daemon-core';
|
|
21
|
+
import { buildProductPostureMap } from './verification-config.js';
|
|
21
22
|
import { computeBranchStatus } from './branch-status.js';
|
|
22
23
|
import { getProductBranchConfig } from './queries/products.js';
|
|
23
24
|
import { probeAllBackends } from './backends/index.js';
|
|
@@ -222,6 +223,11 @@ async function doHeartbeat() {
|
|
|
222
223
|
metadata.latestAvailableVersion = latestAvailableVersion;
|
|
223
224
|
}
|
|
224
225
|
metadata.maxTotalSessions = config.maxTotalSessions;
|
|
226
|
+
// Publish per-product verification posture ({ [productId]: { posture, command } })
|
|
227
|
+
// so the web app's product settings can surface how each product's deliveries
|
|
228
|
+
// are gated -- posture is local daemon.json config the app cannot otherwise see.
|
|
229
|
+
// Declarative state, derived at read time; never an escalation.
|
|
230
|
+
metadata.verificationPostures = buildProductPostureMap(config.products, config.defaultVerification);
|
|
225
231
|
// Publish which engines are installed + authenticated on this host so the
|
|
226
232
|
// app's engine picker can grey out unavailable ones (probe is cached).
|
|
227
233
|
try {
|
package/dist/heartbeat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvJ,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -51,6 +51,9 @@ import { runHarnessAdd } from './cli/harness-add.js';
|
|
|
51
51
|
import { runOpenCommand } from './cli/open.js';
|
|
52
52
|
import { runSessionState } from './cli/session-state.js';
|
|
53
53
|
import { runBackfillFrtProse } from './cli/backfill-frt-prose.js';
|
|
54
|
+
import { runVerifySetupCommand } from './cli/verify-setup.js';
|
|
55
|
+
import { loadUnifiedConfig } from '@telora/daemon-core';
|
|
56
|
+
import { formatVerificationPostureLines } from './unified-shell-status.js';
|
|
54
57
|
import { getDaemonStatus, stopDaemon, startDaemonBackground, resolveDaemonLogPath, rebuildDaemon, autoRebuildIfNeeded, waitForHealthy, cleanStalePidFile, } from './daemon-process.js';
|
|
55
58
|
import { tailFile, followFile } from './daemon-logs.js';
|
|
56
59
|
import { reapAndClearWorkerPidfile } from './worker-pidfile.js';
|
|
@@ -380,6 +383,22 @@ async function main() {
|
|
|
380
383
|
const logPath = status.logPath ?? resolveDaemonLogPath();
|
|
381
384
|
console.log(`Log file: ${logPath}`);
|
|
382
385
|
console.log(`Version: v${pkg.version}`);
|
|
386
|
+
// Per-product verification posture (configured / declined / unconfigured)
|
|
387
|
+
// so an operator sees how deliveries are gated straight from `status`.
|
|
388
|
+
// Derived from config; best-effort so a config-load hiccup never breaks
|
|
389
|
+
// the status readout.
|
|
390
|
+
try {
|
|
391
|
+
const cfg = loadUnifiedConfig();
|
|
392
|
+
const postureLines = formatVerificationPostureLines(cfg);
|
|
393
|
+
if (postureLines.length > 0) {
|
|
394
|
+
console.log('');
|
|
395
|
+
for (const line of postureLines)
|
|
396
|
+
console.log(line);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
catch {
|
|
400
|
+
// Non-fatal: skip posture when config cannot be loaded.
|
|
401
|
+
}
|
|
383
402
|
// Staleness signal: warn when the RUNNING daemon (version stamped into
|
|
384
403
|
// daemon.meta.json at its startup -- possibly a different install than
|
|
385
404
|
// this CLI) is behind the latest published release. Silent when up to
|
|
@@ -460,6 +479,20 @@ async function main() {
|
|
|
460
479
|
process.exit(1);
|
|
461
480
|
}
|
|
462
481
|
});
|
|
482
|
+
// ── verify-setup: guided per-product deterministic-verification config ──
|
|
483
|
+
program
|
|
484
|
+
.command('verify-setup')
|
|
485
|
+
.description('Guided setup of the default-on verification command per product (detect, validate, write)')
|
|
486
|
+
.option('--config <path>', 'Path to daemon.json (default: ~/.telora/daemon.json)')
|
|
487
|
+
.action(async (opts) => {
|
|
488
|
+
try {
|
|
489
|
+
await runVerifySetupCommand({ config: opts.config });
|
|
490
|
+
}
|
|
491
|
+
catch (err) {
|
|
492
|
+
console.error(err instanceof Error ? err.message : String(err));
|
|
493
|
+
process.exit(1);
|
|
494
|
+
}
|
|
495
|
+
});
|
|
463
496
|
// ── connect: redeem a Telora connect token and start the daemon ──────
|
|
464
497
|
program
|
|
465
498
|
.command('connect <token>')
|