{
  "schema_version": 1,
  "title": "卡点产业地图 JSON 字段说明",
  "updated": "2026-10-29",
  "encoding": "UTF-8 JSON",
  "files": {
    "meta.json": {
      "type": "object",
      "fields": {
        "title": "string · 站名",
        "updated": "string · YYYY-MM-DD",
        "disclaimer": "string · 免责声明",
        "counts": "object · industries/companies/events/red_nodes/orange_nodes 计数"
      }
    },
    "industries.json": {
      "type": "array<object>",
      "fields": {
        "id": "string · 稳定短 id（eq/parts/litho/…），作锚点与跨文件键",
        "name": "string · 中文产业名",
        "notion_id": "string|null · Notion 页 id，可空",
        "file": "string · 源 markdown 文件名",
        "summary": "string · 一句话产业结论",
        "red": "string[] · 🔴 卡点环节摘要",
        "orange": "string[] · 🟠 次级瓶颈摘要",
        "companies_short": "string[] · 代表公司短名（不一定有代码）",
        "segments": "array · 环节表，见 segment"
      },
      "segment": {
        "name": "环节名",
        "tier": "red | orange | none",
        "bottleneck": "卡点/瓶颈说明",
        "localization": "国产化/格局口径（自由文本）",
        "companies": "A股相关公司自由文本（可含代码）",
        "overseas": "海外玩家自由文本",
        "feeds": "string[] · 可选，下游环节名（同产业 segments[].name），表示供给/工序上下游；仅收公认关系",
        "terms": "[{term, explain}] · 可选，该环节术语与白话解释",
        "aggregate": "boolean · 可选，true=汇总节点（如设备整机/机器人本体），仅作 feeds 汇聚点，无卡点/公司，不计入 segment_count"
      }
    },
    "companies.json": {
      "type": "array<object>",
      "fields": {
        "name": "公司中文名",
        "code": "A股代码 6 位字符串",
        "segment": "所在卡点环节",
        "logic": "一句话投资/卡点逻辑",
        "signal": "圈内最新信号摘录（带日期标签）",
        "industry": "所属产业中文名（与 industries.name 对齐）",
        "notion_id": "Notion 个股页 id"
      }
    },
    "events.json": {
      "type": "array<object>",
      "fields": {
        "id": "稳定事件 id（evt-…）",
        "title": "标题",
        "summary": "摘要",
        "published_at": "YYYY-MM-DD",
        "industries": "string[] · 产业中文名",
        "segments": "string[] · 环节名",
        "segment_refs": "[{industry_id, segment|null, anchor}] · 规范化到地图环节（segment 与 industries[].segments[].name 精确对齐；null=只挂产业级），anchor=/maps/{industry_id}#seg-{industry_id}-{encodeURIComponent(segment)}（单产业页环节行锚点，null 时为 /maps/{industry_id}；旧 /maps/maps.html#… 仍会转发），由 scripts/recount-maps.py 生成",
        "tickers": "[{name, code?, role?}]",
        "chokepoint_tier": "red | orange | none",
        "status": "signal | confirmed | conflict | outdated",
        "axes_hit": "卡点轴标签（concentration/cycle/qualification/price/design-lock 等）",
        "conflict_note": "冲突说明，可空字符串",
        "sources": "[{type, date, …}]"
      }
    },
    "index.json": {
      "type": "object",
      "description": "目录、industry↔category 对照、公司锚点与站内搜索链接；Agent 应先读它。"
    }
  },
  "stability": {
    "stable_keys": [
      "industries[].id",
      "companies[].code",
      "events[].id"
    ],
    "do_not_guess": "不要臆造未列出的产业 id 或公司代码；缺则如实说。"
  }
}
