diff --git a/docs/architecture/gdd-concept-map.architecture.json b/docs/architecture/gdd-concept-map.architecture.json new file mode 100644 index 00000000..f9400f15 --- /dev/null +++ b/docs/architecture/gdd-concept-map.architecture.json @@ -0,0 +1,413 @@ +{ + "schema_version": 1, + "diagram_type": "architecture", + "meta": { + "title": "Dungeon Sweeper · GDD 概念结构图", + "output": "docs/architecture/gdd-concept-map.html", + "quality_profile": "showcase", + "locale": "zh-CN", + "viewBox": [ + 1364, + 660 + ], + "views": [ + { + "id": "core-loop", + "label": "核心循环主链", + "focus": [ + "board-gen", + "minesweeper", + "action-economy", + "settlement", + "adventure", + "difficulty" + ], + "note": "主路径:新雷图 → 挖掘计费 → 轮末结算 → 关卡推进 → 难度抬升。" + }, + { + "id": "settlement-hub", + "label": "结算枢纽与红线", + "focus": [ + "settlement", + "enemy", + "status", + "rewards", + "hud" + ], + "note": "战斗结算是战斗域唯一调用方;呈现层只订阅结算步骤流。" + }, + { + "id": "foundation", + "label": "支撑底座", + "focus": [ + "data-config", + "board-gen", + "settlement", + "hud" + ], + "note": "ConfigDB 单点 + RngService 四流,被全部系统取用。" + } + ] + }, + "components": [ + { + "id": "board-gen", + "type": "backend", + "label": "棋盘生成", + "sublabel": "可推理·可通关", + "pos": [ + 50, + 300 + ], + "size": [ + 130, + 64 + ] + }, + { + "id": "minesweeper", + "type": "backend", + "label": "排雷玩法", + "sublabel": "挖格·插旗·连锁", + "pos": [ + 240, + 300 + ], + "size": [ + 136, + 64 + ] + }, + { + "id": "action-economy", + "type": "backend", + "label": "行动经济", + "sublabel": "AP 账本·停手/刷新", + "pos": [ + 436, + 300 + ], + "size": [ + 140, + 64 + ] + }, + { + "id": "settlement", + "type": "backend", + "label": "战斗结算", + "sublabel": "轮末编排·逐行兑现", + "pos": [ + 648, + 300 + ], + "size": [ + 156, + 72 + ] + }, + { + "id": "adventure", + "type": "backend", + "label": "冒险结构", + "sublabel": "关卡序列·大奖励", + "pos": [ + 952, + 300 + ], + "size": [ + 136, + 64 + ] + }, + { + "id": "difficulty", + "type": "backend", + "label": "难度曲线与Boss", + "sublabel": "期望值带·Dmax", + "pos": [ + 1152, + 300 + ], + "size": [ + 150, + 64 + ] + }, + { + "id": "aux-items", + "type": "backend", + "label": "魔法道具", + "sublabel": "显影·探测类", + "pos": [ + 240, + 140 + ], + "size": [ + 136, + 64 + ] + }, + { + "id": "enemy", + "type": "backend", + "label": "敌人系统", + "sublabel": "敌人数据·意图", + "pos": [ + 651, + 140 + ], + "size": [ + 150, + 64 + ] + }, + { + "id": "hud", + "type": "frontend", + "label": "HUD框架", + "sublabel": "呈现契约·布局", + "pos": [ + 244, + 470 + ], + "size": [ + 136, + 64 + ] + }, + { + "id": "data-config", + "type": "database", + "label": "数据配置", + "sublabel": "ConfigDB·RngService", + "pos": [ + 37, + 470 + ], + "size": [ + 156, + 64 + ] + }, + { + "id": "status", + "type": "backend", + "label": "增益状态", + "sublabel": "容器·叠层·衰减", + "pos": [ + 614, + 470 + ], + "size": [ + 130, + 64 + ] + }, + { + "id": "rewards", + "type": "backend", + "label": "地图战斗资源", + "sublabel": "格面资源·清图奖励", + "pos": [ + 776, + 470 + ], + "size": [ + 136, + 64 + ] + } + ], + "boundaries": [ + { + "kind": "region", + "label": "排雷循环", + "wraps": [ + "board-gen", + "minesweeper", + "action-economy", + "aux-items" + ] + }, + { + "kind": "region", + "label": "战斗循环", + "wraps": [ + "settlement", + "enemy", + "status", + "rewards" + ] + }, + { + "kind": "region", + "label": "冒险循环", + "wraps": [ + "adventure", + "difficulty" + ] + }, + { + "kind": "region", + "label": "表现与支撑", + "wraps": [ + "data-config", + "hud" + ] + } + ], + "connections": [ + { + "id": "gen-to-mines", + "from": "board-gen", + "to": "minesweeper", + "label": "生成雷图", + "variant": "emphasis" + }, + { + "id": "mines-to-ap", + "from": "minesweeper", + "to": "action-economy", + "label": "挖掘花费 AP", + "variant": "emphasis" + }, + { + "id": "ap-to-settle", + "from": "action-economy", + "to": "settlement", + "label": "round_end", + "variant": "emphasis" + }, + { + "id": "settle-to-enemy", + "from": "settlement", + "to": "enemy", + "label": "兑现敌人行动" + }, + { + "id": "settle-to-status", + "from": "settlement", + "to": "status", + "label": "兑现增益减益", + "fromSide": "bottom", + "toSide": "top", + "labelAt": [ + 679, + 447 + ] + }, + { + "id": "settle-to-rewards", + "from": "settlement", + "to": "rewards", + "label": "兑现格面奖励", + "fromSide": "bottom", + "toSide": "top" + }, + { + "id": "settle-to-adv", + "from": "settlement", + "to": "adventure", + "label": "结果推进关卡", + "variant": "emphasis" + }, + { + "id": "adv-to-diff", + "from": "adventure", + "to": "difficulty", + "label": "关卡定级", + "variant": "emphasis", + "labelDy": 14 + }, + { + "id": "diff-to-enemy", + "from": "difficulty", + "to": "enemy", + "label": "数值与 Boss Dmax" + }, + { + "id": "mines-to-aux", + "from": "minesweeper", + "to": "aux-items", + "label": "挖掘期使用" + }, + { + "id": "base-to-gen", + "from": "data-config", + "to": "board-gen", + "label": "种子与表值", + "labelAt": [ + 115, + 395 + ] + }, + { + "id": "base-to-settle", + "from": "data-config", + "to": "settlement", + "label": "RNG 流·表值", + "fromSide": "top", + "toSide": "bottom" + }, + { + "id": "settle-to-hud", + "from": "settlement", + "to": "hud", + "label": "结算步骤流", + "variant": "dashed", + "fromSide": "left", + "toSide": "top" + }, + { + "id": "adv-to-gen", + "from": "adventure", + "to": "board-gen", + "label": "推进下一关", + "variant": "dashed", + "fromSide": "bottom", + "toSide": "left", + "via": [ + [ + 1020, + 618 + ], + [ + 15, + 618 + ], + [ + 15, + 332 + ] + ] + } + ], + "cards": [ + { + "dot": "cyan", + "title": "核心循环", + "items": [ + "主路径:棋盘生成 → 挖掘计费 → 轮末结算 → 关卡推进 → 难度抬升", + "难度参数流入下一关雷图,虚线「推进下一关」闭合整局循环" + ] + }, + { + "dot": "emerald", + "title": "结算枢纽与架构红线", + "items": [ + "战斗结算是敌人系统、增益状态、地图战斗资源的唯一调用方", + "呈现层只订阅战斗结算步骤流,不直订排雷玩法事件" + ] + }, + { + "dot": "amber", + "title": "支撑底座与未上图", + "items": [ + "数据配置(ConfigDB + RngService 四流)被全部系统引用,图中只画主干两笔", + "未上图(已定稿):地形变异、存档序列化、战斗表现、音频、教学引导、设置与本地化", + "范围草案:关卡节点地图、元进度" + ] + } + ] +} diff --git a/docs/architecture/gdd-concept-map.html b/docs/architecture/gdd-concept-map.html new file mode 100644 index 00000000..d5897a40 --- /dev/null +++ b/docs/architecture/gdd-concept-map.html @@ -0,0 +1,15051 @@ + + + + + + + Dungeon Sweeper · GDD 概念结构图 + + + + + + + + +
+ +
+
+
+

Dungeon Sweeper · GDD 概念结构图

+
+
+ + + + + + + +
+ + Dungeon Sweeper · GDD 概念结构图 + 由 Archify 生成的架构图。 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 棋盘生成 · 可推理·可通关 · 排雷循环 + + + + 棋盘生成 + 可推理·可通关 + + + + 排雷玩法 · 挖格·插旗·连锁 · 排雷循环 + + + + 排雷玩法 + 挖格·插旗·连锁 + + + + 行动经济 · AP 账本·停手/刷新 · 排雷循环 + + + + 行动经济 + AP 账本·停手/刷新 + + + + 战斗结算 · 轮末编排·逐行兑现 · 战斗循环 + + + + 战斗结算 + 轮末编排·逐行兑现 + + + + 冒险结构 · 关卡序列·大奖励 · 冒险循环 + + + + 冒险结构 + 关卡序列·大奖励 + + + + 难度曲线与Boss · 期望值带·Dmax · 冒险循环 + + + + 难度曲线与Boss + 期望值带·Dmax + + + + 魔法道具 · 显影·探测类 · 排雷循环 + + + + 魔法道具 + 显影·探测类 + + + + 敌人系统 · 敌人数据·意图 · 战斗循环 + + + + 敌人系统 + 敌人数据·意图 + + + + HUD框架 · 呈现契约·布局 · 表现与支撑 + + + + HUD框架 + 呈现契约·布局 + + + + 数据配置 · ConfigDB·RngService · 表现与支撑 + + + + 数据配置 + ConfigDB·RngService + + + + 增益状态 · 容器·叠层·衰减 · 战斗循环 + + + + 增益状态 + 容器·叠层·衰减 + + + + 地图战斗资源 · 格面资源·清图奖励 · 战斗循环 + + + + 地图战斗资源 + 格面资源·清图奖励 + + + + + + 生成雷图 + + + + 挖掘花费 AP + + + + round_end + + + + 兑现敌人行动 + + + + 兑现增益减益 + + + + 兑现格面奖励 + + + + 结果推进关卡 + + + + 关卡定级 + + + + 数值与 Boss Dmax + + + + 挖掘期使用 + + + + 种子与表值 + + + + RNG 流·表值 + + + + 结算步骤流 + + + + 推进下一关 + + + + + + 排雷循环 + + + + + 战斗循环 + + + + + 冒险循环 + + + + + 表现与支撑 + + + + + +

+ + + + + + + + + +
+ + +
+
+
+
+

核心循环

+
+
    +
  • • 主路径:棋盘生成 → 挖掘计费 → 轮末结算 → 关卡推进 → 难度抬升
  • +
  • • 难度参数流入下一关雷图,虚线「推进下一关」闭合整局循环
  • +
+
+ +
+
+
+

结算枢纽与架构红线

+
+
    +
  • • 战斗结算是敌人系统、增益状态、地图战斗资源的唯一调用方
  • +
  • • 呈现层只订阅战斗结算步骤流,不直订排雷玩法事件
  • +
+
+ +
+
+
+

支撑底座与未上图

+
+
    +
  • • 数据配置(ConfigDB + RngService 四流)被全部系统引用,图中只画主干两笔
  • +
  • • 未上图(已定稿):地形变异、存档序列化、战斗表现、音频、教学引导、设置与本地化
  • +
  • • 范围草案:关卡节点地图、元进度
  • +
+
+
+ +
+ + + + diff --git a/docs/architecture/gdd-concept-map.visual-check.1440x900.dark.png b/docs/architecture/gdd-concept-map.visual-check.1440x900.dark.png new file mode 100644 index 00000000..c4640412 Binary files /dev/null and b/docs/architecture/gdd-concept-map.visual-check.1440x900.dark.png differ diff --git a/docs/architecture/gdd-concept-map.visual-check.1440x900.light.png b/docs/architecture/gdd-concept-map.visual-check.1440x900.light.png new file mode 100644 index 00000000..aaa90e28 Binary files /dev/null and b/docs/architecture/gdd-concept-map.visual-check.1440x900.light.png differ diff --git a/docs/architecture/gdd-concept-map.visual-check.2048x1320.dark.png b/docs/architecture/gdd-concept-map.visual-check.2048x1320.dark.png new file mode 100644 index 00000000..ecd727c5 Binary files /dev/null and b/docs/architecture/gdd-concept-map.visual-check.2048x1320.dark.png differ diff --git a/docs/architecture/gdd-concept-map.visual-check.2048x1320.light.png b/docs/architecture/gdd-concept-map.visual-check.2048x1320.light.png new file mode 100644 index 00000000..80d60248 Binary files /dev/null and b/docs/architecture/gdd-concept-map.visual-check.2048x1320.light.png differ diff --git a/docs/architecture/gdd-concept-map.visual-check.html b/docs/architecture/gdd-concept-map.visual-check.html new file mode 100644 index 00000000..4a3f7b26 --- /dev/null +++ b/docs/architecture/gdd-concept-map.visual-check.html @@ -0,0 +1,32 @@ + + + + + +Archify automated browser evidence · gdd-concept-map.html + + + +

Automated browser evidence

gdd-concept-map.html · visual-check containment pass · perceptual visual review pending

+
+
+ light 1440 by 900 +
LIGHT · 1440×900 · containment pass
+
+
+ dark 1440 by 900 +
DARK · 1440×900 · containment pass
+
+
+ light 2048 by 1320 +
LIGHT · 2048×1320 · containment pass
+
+
+ dark 2048 by 1320 +
DARK · 2048×1320 · containment pass
+
+
+ + diff --git a/docs/architecture/gdd-concept-map.visual-check.json b/docs/architecture/gdd-concept-map.visual-check.json new file mode 100644 index 00000000..a5595edc --- /dev/null +++ b/docs/architecture/gdd-concept-map.visual-check.json @@ -0,0 +1,548 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "visual-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "pending", + "artifact": { + "path": "D:\\code\\g-plan2\\docs\\architecture\\gdd-concept-map.html", + "sha256": "aa7ea12deda2e43cc4d95e8550057f0e4e4d9dc617a968410cd55a0f454dc295", + "bytes": 817914 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1117, + "diagramWidth": 1087, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.172287390029325, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1154, + "diagramWidth": 1124, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.41642228739003, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1320, + "diagramWidth": 1290, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 8.511730205278592, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1819, + "diagramWidth": 1769, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 9, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 41, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1117, + "diagramWidth": 1087, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.172287390029325, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1154, + "diagramWidth": 1124, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.41642228739003, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1320, + "diagramWidth": 1290, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 8.511730205278592, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1819, + "diagramWidth": 1769, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 9, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 41, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1117, + "diagramWidth": 1087, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.172287390029325, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1154, + "diagramWidth": 1124, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.41642228739003, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1320, + "diagramWidth": 1290, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 8.511730205278592, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1819, + "diagramWidth": 1769, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 9, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 41, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "pass", + "screenshots": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1117, + "diagramWidth": 1087, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.172287390029325, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light", + "file": "gdd-concept-map.visual-check.1440x900.light.png" + }, + { + "width": 1440, + "height": 900, + "theme": "dark", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1117, + "diagramWidth": 1087, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 7.172287390029325, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 51, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "dark", + "file": "gdd-concept-map.visual-check.1440x900.dark.png" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1819, + "diagramWidth": 1769, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 9, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 41, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light", + "file": "gdd-concept-map.visual-check.2048x1320.light.png" + }, + { + "width": 2048, + "height": 1320, + "theme": "dark", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "ok": true, + "readerWidth": 1819, + "diagramWidth": 1769, + "viewBoxWidth": 1364, + "minimumProjectedNodeTextPx": 9, + "minimumProjectedNodeText": "可推理·可通关", + "minimumProjectedNodeTextDetail": "context", + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": false, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10.21875, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 41, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "dark", + "file": "gdd-concept-map.visual-check.2048x1320.dark.png" + } + ], + "contactSheet": "gdd-concept-map.visual-check.html" + }, + "sidecars": { + "receipt": "gdd-concept-map.visual-check.json", + "contactSheet": "gdd-concept-map.visual-check.html" + } +}