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

  1. Use `--mode nightly` or `--mode chaos` exactly.
  2. Omit --mode entirely to get the default `nightly`.
  3. 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

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


AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-10). Data as JSON: /api/errors/8c1d631798c97c65. Report an issue: GitHub.