{"record":{"id":"e1eca1241aa8d8ab","repo":"sveltejs/kit","slug":"skipping-name-payload","errorCode":null,"errorMessage":"Skipping ${__.name}(${payload})","messagePattern":"Skipping (.+?)\\((.+?)\\)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/kit/src/runtime/app/server/remote/requested.js","lineNumber":204,"sourceCode":"\t\t\t\t\trecord_failure(payload, error);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tasync *[Symbol.asyncIterator]() {\n\t\t\tyield* race_all(selected, async (payload) => {\n\t\t\t\tconsume(payload);\n\t\t\t\ttry {\n\t\t\t\t\tconst parsed = parse_remote_arg(payload);\n\t\t\t\t\tconst validated = await __.validate(parsed);\n\t\t\t\t\treturn {\n\t\t\t\t\t\targ: validated,\n\t\t\t\t\t\tquery: __.bind(payload, validated),\n\t\t\t\t\t\tignore: create_ignore(payload)\n\t\t\t\t\t};\n\t\t\t\t} catch (error) {\n\t\t\t\t\trecord_failure(payload, error);\n\t\t\t\t\tthrow new Error(`Skipping ${__.name}(${payload})`, { cause: error });\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tasync refreshAll() {\n\t\t\tif (__.type === 'query_live') {\n\t\t\t\tthrow new Error('refreshAll() is invalid for live queries. Use reconnectAll() instead.');\n\t\t\t}\n\n\t\t\tfor await (const { query } of result) {\n\t\t\t\tvoid (/** @type {RemoteQuery<Output>} */ (query).refresh());\n\t\t\t}\n\t\t},\n\t\tasync reconnectAll() {\n\t\t\tif (__.type !== 'query_live') {\n\t\t\t\tthrow new Error('reconnectAll() is invalid for regular queries. Use refreshAll() instead.');\n\t\t\t}\n\n\t\t\tfor await (const { query } of result) {","sourceCodeStart":186,"sourceCodeEnd":222,"githubUrl":"https://github.com/sveltejs/kit/blob/03f1687fe612ce3d2d9131139b5b188d9cf90c64/packages/kit/src/runtime/app/server/remote/requested.js#L186-L222","documentation":"Inside a `requested()` batch's async iteration, a remote function failed while its argument was being parsed or validated. SvelteKit records the failure in the query cache (so retries with the same payload reject) and throws this wrapper error naming the function and its serialized payload, with the original error as `cause`. It surfaces as an unhandled rejection because `race_all` swallows the rejection by skipping that entry — check the cause for the real problem.","triggerScenarios":"Iterating `requested(myQuery, ...)` with `for await...of` when a queued payload fails `parse_remote_arg` or async `__.validate` (e.g. a Standard Schema validator throws `ValidationError` on bad input), while racing all payloads via `race_all`.","commonSituations":"A user mutated/corrupted the serialized argument; a validator schema was tightened between deploy and a client with cached payloads; a client sends payloads an updated server no longer accepts.","solutions":["Inspect `error.cause` to find the actual parse/validation failure.","Fix the client so it only sends arguments matching the current validator schema.","Guard the remote function's input with a tolerant schema or a 'unchecked' validator if the raw arg is intended.","Version or shape-check payloads on the client before enqueueing them into requested()."],"exampleFix":"// before: iterating a batch whose payload no longer validates\nfor await (const { arg, query } of requested(searchQuery, 10)) { ... }\n// after: validate the shape of arguments before queueing them\nconst args = items.filter((i) => schema.safeParse(i).success);\nfor await (const { arg, query } of requested(searchQuery.bind(args), 10)) { ... }","handlingStrategy":"try-catch","validationCode":"const ok = items.every((i) => schema.safeParse(i).success); // before calling requested()","typeGuard":"function isValidArg(a) { return schema['~standard'].validate; } // or use safeParse success as the guard","tryCatchPattern":"try {\n  for await (const { arg, query } of requested(myQuery, 10)) {\n    void query.refresh();\n  }\n} catch (e) {\n  console.error('batch item skipped:', e.cause ?? e);\n}","preventionTips":["Mirror the server validator client-side before queueing payloads.","Check `error.cause` — the wrapper hides the real parse/validation error.","Avoid queueing hand-built payload strings; bind typed arguments instead."],"tags":["remote-functions","validation","batching","requested"],"backgroundTag":"query-argument-validation-failed","analyzedSha":"03f1687fe612ce3d2d9131139b5b188d9cf90c64","analyzedAt":"2026-09-02T02:01:50.504Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-09T06:17:21.866Z"}