paperclipai/paperclip · error
PAPERCLIP_K8S_RPC_TIMEOUT_MS must be a positive integer of m
Error message
PAPERCLIP_K8S_RPC_TIMEOUT_MS must be a positive integer of milliseconds (got "${value}"). What it means
parsePositiveIntMs guard for PAPERCLIP_K8S_RPC_TIMEOUT_MS: the value is set but not a positive integer of milliseconds (non-numeric, zero, negative, or fractional). Startup fails so a bad timeout never silently degrades Kubernetes RPC behavior.
Source
Thrown at server/src/services/execution-policy-bootstrap.ts:48
executionMode: Extract<InstanceExecutionMode, "kubernetes">;
kubernetesConfig: KubernetesEnvironmentConfigInput;
}
function parseBool(value: string | undefined): boolean | undefined {
if (value === undefined) return undefined;
const v = value.trim().toLowerCase();
if (v === "true" || v === "1" || v === "yes") return true;
if (v === "false" || v === "0" || v === "no") return false;
return undefined;
}
function parsePositiveIntMs(value: string | undefined): number | undefined {
if (value === undefined) return undefined;
const trimmed = value.trim();
if (trimmed.length === 0) return undefined;
const parsed = Number(trimmed);
if (!Number.isFinite(parsed) || !Number.isInteger(parsed) || parsed <= 0) {
throw new Error(
`PAPERCLIP_K8S_RPC_TIMEOUT_MS must be a positive integer of milliseconds (got "${value}").`,
);
}
return parsed;
}
function parseList(value: string | undefined): string[] | undefined {
if (value === undefined) return undefined;
const items = value
.split(",")
.map((s) => s.trim())
.filter((s) => s.length > 0);
return items.length > 0 ? items : undefined;
}
/**
* Parse the forced-execution-mode env config. Returns null when execution is
* unrestricted (no env, or `PAPERCLIP_EXECUTION_MODE=any`). Throws on anView on GitHub (pinned to 120ae5428f)
Solutions
- Set PAPERCLIP_K8S_RPC_TIMEOUT_MS to a positive integer number of milliseconds.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at server/src/services/execution-policy-bootstrap.ts:48 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Timeouts: ETIMEDOUT, deadlines, and hung requests — what actually expires when a request times out.
AI-assisted analysis of paperclipai/paperclip@120ae5428f (2026-08-18).
Data as JSON: /api/errors/821df27ae33aeecc.
Report an issue: GitHub.