{"record":{"id":"7457f53d71ae4647","repo":"paperclipai/paperclip","slug":"invalid-start-base-in-cron-spec-name-field","errorCode":null,"errorMessage":"Invalid start \"${base}\" in cron ${spec.name} field","messagePattern":"Invalid start \"(.+?)\" in cron (.+?) field","errorType":"validation","errorClass":"Error","httpStatus":422,"severity":"error","filePath":"server/src/services/cron.ts","lineNumber":113,"sourceCode":"      let rangeEnd = spec.max;\n\n      if (base === \"*\") {\n        // */S — every S from field min\n      } else if (base.includes(\"-\")) {\n        // N-M/S — range with step\n        const [a, b] = base.split(\"-\").map((s) => parseInt(s, 10));\n        if (isNaN(a!) || isNaN(b!)) {\n          throw new Error(\n            `Invalid range \"${base}\" in cron ${spec.name} field`,\n          );\n        }\n        rangeStart = a!;\n        rangeEnd = b!;\n      } else {\n        // N/S — start at N, step S\n        const start = parseInt(base, 10);\n        if (isNaN(start)) {\n          throw new Error(\n            `Invalid start \"${base}\" in cron ${spec.name} field`,\n          );\n        }\n        rangeStart = start;\n      }\n\n      validateBounds(rangeStart, spec);\n      validateBounds(rangeEnd, spec);\n\n      for (let i = rangeStart; i <= rangeEnd; i += step) {\n        values.add(i);\n      }\n      continue;\n    }\n\n    // Check for range syntax: \"N-M\"\n    if (trimmed.includes(\"-\")) {\n      const [aStr, bStr] = trimmed.split(\"-\");","sourceCodeStart":95,"sourceCodeEnd":131,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/server/src/services/cron.ts#L95-L131","documentation":"Thrown by parseField when parsing a step sub-expression (N/S form): the base before the '/' is neither '*' nor a range, and parseInt of it yields NaN, so the start value for the stepped sequence is not a valid integer in that cron field.","triggerScenarios":"Thrown at server/src/services/cron.ts:113 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the range start in the named cron field; it must be a valid number or name."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}