{"record":{"id":"f690f9f5364c635f","repo":"deepseek-ai/deepseek-harness","slug":"agent-presets-preset-presetid-failed-to-moun","errorCode":null,"errorMessage":"agent-presets: preset \"${presetId}\" failed to mount: ${preset.broken}","messagePattern":"agent-presets: preset \"(.+?)\" failed to mount: (.+?)","errorType":"exception","errorClass":"PresetMountError","httpStatus":null,"severity":"error","filePath":"packages/preset/agent-presets/src/index.ts","lineNumber":236,"sourceCode":"      throw new UnknownPresetError(wanted, presets.map(preset => preset.id))\n    }\n    return found\n  }\n\n  /**\n   * Resolve one preset that is about to compose an agent, refusing a broken\n   * one with its discovery-reported reason. Failing here rather than inside\n   * the loader keeps the answer the same for every unloadable shape — ghost\n   * directory, unparsable YAML, rowless list — and spends no mount attempt\n   * on a composition discovery already read as unusable.\n   * @param id - the preset id, or `undefined` for {@link defaultId}.\n   * @returns the resolved, mountable preset.\n   * @throws when the preset is unknown or discovery reports it broken.\n   */\n  private async resolveMountable(id?: string): Promise<AgentPreset> {\n    const preset = await this.resolve(id)\n    if (preset.broken !== undefined) {\n      throw new PresetMountError(preset.id, preset.broken)\n    }\n    return preset\n  }\n\n  /**\n   * Standing mounts by preset id, single-flight so two agents racing the\n   * first use of one preset share one composition. A settled failure is\n   * removed so a later session retries a preset whose file has been fixed; a\n   * settled success serves until the composition FILE visibly changes — each\n   * generation records its file stamp, and a stale stamp starts the next\n   * generation for sessions created afterwards. Sessions already joined keep\n   * the generation they run on; a superseded one is never disposed while the\n   * process lives (reclaimed only by whole-tree teardown), so editing files\n   * is bounded by how often compositions change, not by session count.\n   */\n  private readonly standing = new Map<string, Promise<StandingMount>>()\n\n  /**","sourceCodeStart":218,"sourceCodeEnd":254,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/preset/agent-presets/src/index.ts#L218-L254","documentation":"Error \"agent-presets: preset \"${presetId}\" failed to mount: ${preset.broken}\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/preset/agent-presets/src/index.ts:236 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the preset per the recorded breakage detail, then mount again."],"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"}