{"record":{"id":"4e1d507e6a8cb7dd","repo":"cline/cline","slug":"expiresat-must-be-a-valid-iso-8601-timestamp","errorCode":null,"errorMessage":"expiresAt must be a valid ISO-8601 timestamp","messagePattern":"expiresAt must be a valid ISO-8601 timestamp","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"sdk/packages/core/src/tasks/agenda-task-manager.ts","lineNumber":114,"sourceCode":"\ntype WatchedScope = {\n\tstore: AgendaTaskSpecFileStore;\n\twatcher?: FSWatcher;\n\ttimer?: ReturnType<typeof setTimeout>;\n};\n\nfunction nowIso(): string {\n\treturn new Date().toISOString();\n}\n\nfunction optionalTrimmed(value: string | null | undefined): string | undefined {\n\treturn typeof value === \"string\" && value.trim() ? value.trim() : undefined;\n}\n\nfunction assertFutureExpiry(expiresAt: string): void {\n\tconst timestamp = Date.parse(expiresAt);\n\tif (!Number.isFinite(timestamp)) {\n\t\tthrow new Error(\"expiresAt must be a valid ISO-8601 timestamp\");\n\t}\n\tif (timestamp <= Date.now()) {\n\t\tthrow new Error(\"expiresAt must be in the future\");\n\t}\n}\n\nfunction isPathInside(parent: string, child: string): boolean {\n\tconst rel = relative(parent, child);\n\treturn rel !== \"\" && !rel.startsWith(\"..\") && !rel.startsWith(\"/\");\n}\n\nfunction isExistingDirectory(path: string | undefined): path is string {\n\tif (!path || !existsSync(path)) return false;\n\ttry {\n\t\treturn statSync(path).isDirectory();\n\t} catch {\n\t\treturn false;\n\t}","sourceCodeStart":96,"sourceCodeEnd":132,"githubUrl":"https://github.com/cline/cline/blob/491b30b806fdb8c93513f821f2b87d63a61542f5/sdk/packages/core/src/tasks/agenda-task-manager.ts#L96-L132","documentation":"Error \"expiresAt must be a valid ISO-8601 timestamp\" thrown in cline/cline.","triggerScenarios":"Thrown at sdk/packages/core/src/tasks/agenda-task-manager.ts:114 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"491b30b806fdb8c93513f821f2b87d63a61542f5","analyzedAt":"2026-08-25T13:45:22.367Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}