paperclipai/paperclip · error · Error
unsupported workflow eval schedule mode: ${mode}
Error message
unsupported workflow eval schedule mode: ${mode} What it means
run-runner-live-eval-schedule.mjs accepts --mode with exactly two values: `nightly` (default) or `chaos`. Any other value throws this error before generating the schedule. This is a strict two-value enum check on the CLI mode flag.
Source
Thrown at packages/paperclip-runner/scripts/run-runner-live-eval-schedule.mjs:23
readdir,
rm,
stat,
writeFile,
} from "node:fs/promises";
import { resolve } from "node:path";
import { renderRunnerWorkflowWithCanonicalEvalbook } from "./render-runner-workflow-evalbook.mjs";
const packageRoot = resolve(import.meta.dirname, "..");
const evals = await import(resolve(packageRoot, "dist/eval/index.js"));
const packageManifest = JSON.parse(
await readFile(resolve(packageRoot, "package.json"), "utf8"),
);
const modeIndex = process.argv.indexOf("--mode");
const mode = modeIndex < 0 ? "nightly" : process.argv[modeIndex + 1];
const execute = process.argv.includes("--execute");
if (mode !== "nightly" && mode !== "chaos")
throw new Error(`unsupported workflow eval schedule mode: ${mode}`);
const now = process.env.PAPERCLIP_EVAL_GENERATED_AT ?? new Date().toISOString();
const rotationDay = Number(
process.env.PAPERCLIP_EVAL_ROTATION_DAY ?? evals.runnerLiveRotationWeek(now),
);
const seed =
process.env.PAPERCLIP_EVAL_SCHEDULE_SEED ?? "runner-live-seven-week-v1";
const outputDirectory = resolve(
packageRoot,
".paperclip-local/evals/workflows",
);
const historyDirectory = resolve(
process.env.PAPERCLIP_EVAL_HISTORY_DIR ?? resolve(outputDirectory, "history"),
);
await mkdir(outputDirectory, { recursive: true });
function selectorValues(flag, environmentName) {
const values = [];
for (let index = 0; index < process.argv.length; index += 1) {View on GitHub (pinned to 01ad858492)
Solutions
- Use `--mode nightly` or `--mode chaos` exactly.
- Omit --mode entirely to get the default `nightly`.
- Check the script source for any newly added modes before using them.
Example fix
// before node scripts/run-runner-live-eval-schedule.mjs --mode weekly // after node scripts/run-runner-live-eval-schedule.mjs --mode chaos
Defensive patterns
Strategy: validation
Validate before calling
const mode = args.mode ?? 'nightly';
if (mode !== 'nightly' && mode !== 'chaos') throw new Error('mode must be nightly|chaos'); Prevention
- Only use nightly or chaos
- Omit --mode for the default
- Check exact lowercase spelling
When it happens
Trigger: `node run-runner-live-eval-schedule.mjs --mode weekly` or any misspelled mode, or passing --mode with a value that includes trailing whitespace/case variation (`Nightly`).
Common situations: Guessing schedule modes, copying flags from another eval script with more modes, typos or wrong casing.
Understand the failure class
Background: Invalid enum value errors: "Unknown type", "Invalid scope", "must be one of" — when a string is not on the library's allowed list — this error's family across 23 libraries.
Related errors
- Unsupported local provider smoke profile: ${profile}
- ${flag} requires a comma-separated value
- --limit must be a positive integer
- Managed installs require Node.js ${MINIMUM_NODE_VERSION} or
- Import cancelled.
AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-10).
Data as JSON: /api/errors/8c1d631798c97c65.
Report an issue: GitHub.