{"record":{"id":"23dd6b8507edd6a4","repo":"Fission-AI/OpenSpec","slug":"some-fieldname-remotes-are-not-non-empty-stri","errorCode":null,"errorMessage":"Some '${fieldName}' remotes are not non-empty strings; the ids are kept without a clone source","messagePattern":"Some '(.+?)' remotes are not non-empty strings; the ids are kept without a clone source","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/core/project-config.ts","lineNumber":239,"sourceCode":"\n    if (!declaration) {\n      droppedEntries = true;\n      continue;\n    }\n\n    const existing = byId.get(declaration.id);\n    if (!existing) {\n      byId.set(declaration.id, declaration);\n    } else if (existing.remote === undefined && declaration.remote !== undefined) {\n      existing.remote = declaration.remote;\n    }\n  }\n\n  if (droppedEntries) {\n    console.warn(`Some '${fieldName}' entries are invalid, ignoring them`);\n  }\n  if (droppedRemotes) {\n    console.warn(\n      `Some '${fieldName}' remotes are not non-empty strings; the ids are kept without a clone source`\n    );\n  }\n  return byId.size > 0 ? [...byId.values()] : undefined;\n}\n\nexport const MAX_CONTEXT_SIZE = 50 * 1024; // 50KB hard limit, shared with the references index\n\n/**\n * Read and parse openspec/config.yaml from project root.\n * Uses resilient parsing - validates each field independently using Zod safeParse.\n * Returns null if file doesn't exist.\n * Returns partial config if some fields are invalid (with warnings).\n *\n * Performance note (Jan 2025):\n * Benchmarks showed direct file reads are fast enough without caching:\n * - Typical config (1KB): ~0.5ms per read\n * - Large config (50KB): ~1.6ms per read","sourceCodeStart":221,"sourceCodeEnd":257,"githubUrl":"https://github.com/Fission-AI/OpenSpec/blob/6926ccb18afa4ff621112813e9968334576ee11a/src/core/project-config.ts#L221-L257","documentation":"Error \"Some '${fieldName}' remotes are not non-empty strings; the ids are kept without a clone source\" thrown in Fission-AI/OpenSpec.","triggerScenarios":"Thrown at src/core/project-config.ts:239 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":"6926ccb18afa4ff621112813e9968334576ee11a","analyzedAt":"2026-08-25T12:29:45.729Z","schemaVersion":2},"datasetVersion":"2026-08-25T16:17:27.014Z"}