refactor: centralize strict numeric parsing

This commit is contained in:
Peter Steinberger
2026-03-08 02:52:44 +00:00
parent 3087893ef9
commit 2646739d23
11 changed files with 128 additions and 30 deletions

View File

@@ -27,6 +27,7 @@ import {
} from "../../gateway/credentials.js";
import { resolveGatewayBindHost } from "../../gateway/net.js";
import { resolveRequiredConfiguredSecretRefInputString } from "../../gateway/resolve-configured-secret-input-string.js";
import { parseStrictPositiveInteger } from "../../infra/parse-finite-number.js";
import {
formatPortDiagnostics,
inspectPortUsage,
@@ -308,8 +309,7 @@ export async function gatherDaemonStatus(
{ deep: Boolean(opts.deep) },
).catch(() => []);
const timeoutMsRaw = Number.parseInt(String(opts.rpc.timeout ?? "10000"), 10);
const timeoutMs = Number.isFinite(timeoutMsRaw) && timeoutMsRaw > 0 ? timeoutMsRaw : 10_000;
const timeoutMs = parseStrictPositiveInteger(opts.rpc.timeout ?? "10000") ?? 10_000;
const tlsEnabled = daemonCfg.gateway?.tls?.enabled === true;
const shouldUseLocalTlsRuntime = opts.probe && !probeUrlOverride && tlsEnabled;