{"record":{"id":"f922391aea864149","repo":"deepseek-ai/deepseek-harness","slug":"method-unavailable","errorCode":"method-unavailable","errorMessage":"active Service ${JSON.stringify(descriptor.service)} has no callable method ${JSON.stringify(implementation)}","messagePattern":"active Service (.+?) has no callable method (.+?)","errorType":"error_code","errorClass":"TypertGatewayError","httpStatus":null,"severity":"error","filePath":"packages/api/gateway/src/index.ts","lineNumber":165,"sourceCode":"    const descriptor = this.resolveDescriptor(request.namespace, request.method, endpoint)\n    assertExactArguments(request.args, descriptor, endpoint)\n    const receiverContext = await this.resolveReceiverContext(descriptor, request.args, endpoint)\n    const receiver = receiverContext.get(descriptor.service) as unknown\n    if (!isObject(receiver)) {\n      throw new TypertGatewayError(\n        'service-unavailable',\n        endpoint,\n        `active Service ${JSON.stringify(descriptor.service)} is unavailable`,\n      )\n    }\n    validateBinding(receiver, descriptor.service, descriptor.namespace, endpoint)\n    const args = await Promise.all(descriptor.parameters.map(parameter =>\n      this.resolveParameter(parameter, request.args, endpoint)))\n    if (descriptor.cancellation !== undefined) args.push(request.signal ?? NEVER_ABORTED_SIGNAL)\n    const implementation = descriptor.implementation ?? descriptor.method\n    const method = Reflect.get(receiver, implementation) as unknown\n    if (typeof method !== 'function') {\n      throw new TypertGatewayError(\n        'method-unavailable',\n        endpoint,\n        `active Service ${JSON.stringify(descriptor.service)} has no callable method ${JSON.stringify(implementation)}`,\n      )\n    }\n\n    let result: unknown\n    try {\n      result = await Reflect.apply(method, receiver, args) as unknown\n    } catch (error) {\n      if (request.signal?.aborted === true) throw new RemoteInvocationCancelled(endpoint, error)\n      throw error\n    }\n    // A weak descriptor declares no return type, so nothing returned is a void\n    // result and rides the wire as an absent value field. A strict descriptor\n    // keeps its schema: there, undefined has to be a declared result.\n    if (result === undefined && descriptor.result.mode !== 'strict') return result\n    return decode(descriptor.result, result, 'result-invalid', endpoint, 'result')","sourceCodeStart":147,"sourceCodeEnd":183,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/api/gateway/src/index.ts#L147-L183","documentation":"Error \"active Service ${JSON.stringify(descriptor.service)} has no callable method ${JSON.stringify(implementation)}\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/api/gateway/src/index.ts:165 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Export a callable implementation for the method on the active Service."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b150a551b8d465e31e418e1b2eaf5e79bbb7d28e","analyzedAt":"2026-08-24T18:12:29.105Z","schemaVersion":2},"datasetVersion":"2026-08-24T22:17:12.610Z"}