{"record":{"id":"b31af4f40b086c69","repo":"paperclipai/paperclip","slug":"http-adapter-missing-url","errorCode":null,"errorMessage":"HTTP adapter missing url","messagePattern":"HTTP adapter missing url","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/src/adapters/http/execute.ts","lineNumber":8,"sourceCode":"import type { AdapterExecutionContext, AdapterExecutionResult } from \"../types.js\";\nimport { asString, asNumber, parseObject } from \"../utils.js\";\nimport { guardedHttpAdapterFetch } from \"./remote-fetch.js\";\n\nexport async function execute(ctx: AdapterExecutionContext): Promise<AdapterExecutionResult> {\n  const { config, runId, agent, context } = ctx;\n  const url = asString(config.url, \"\");\n  if (!url) throw new Error(\"HTTP adapter missing url\");\n\n  const method = asString(config.method, \"POST\");\n  const timeoutMs = asNumber(config.timeoutMs, 0);\n  const headers = parseObject(config.headers) as Record<string, string>;\n  const payloadTemplate = parseObject(config.payloadTemplate);\n  const body = {\n    ...payloadTemplate,\n    agentId: agent.id,\n    runId,\n    context,\n    ...(ctx.runtimeTools ? { paperclipRuntimeTools: ctx.runtimeTools } : {}),\n  };\n\n  const controller = new AbortController();\n  const timer = timeoutMs > 0 ? setTimeout(() => controller.abort(), timeoutMs) : null;\n\n  try {\n    // HTTP adapters have no child-process spawn event. Signal immediately","sourceCodeStart":1,"sourceCodeEnd":26,"githubUrl":"https://github.com/paperclipai/paperclip/blob/01ad8584922b5d85292b1723cae71fa0d9b07a19/server/src/adapters/http/execute.ts#L1-L26","documentation":"Config guard in the HTTP adapter's execute: the adapter config's `url` resolved to an empty string via asString(config.url, \"\"). The adapter has no endpoint to invoke, so it fails fast before building the request payload.","triggerScenarios":"Thrown at server/src/adapters/http/execute.ts:7 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set the url in the HTTP adapter configuration before executing."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"01ad8584922b5d85292b1723cae71fa0d9b07a19","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}