Merge branch 'main' into feature/pangolin-ios
ci-pangolin / Lint — shellcheck (push) Has been cancelled
ci-pangolin / OpenAPI Sync Check (push) Has been cancelled
ci-pangolin / Redline Scan — 脱敏 (UI 文案) (push) Has been cancelled
ci-pangolin / Flutter — analyze + test (push) Has been cancelled

# Conflicts:
#	client/lib/bridge/vpn_bridge_provider.dart
#	docs/index.html
This commit is contained in:
wangjia
2026-06-23 10:05:20 +08:00
23 changed files with 2208 additions and 459 deletions
+92 -70
View File
@@ -16,93 +16,115 @@
.wrap{max-width:920px;margin:0 auto;padding:48px 24px 96px}
h1{font-size:30px;line-height:1.3;margin:0 0 8px;letter-spacing:-.01em}
.sub{color:var(--fg2);font-size:15px;margin:0 0 32px}
h2{font-size:21px;margin:44px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--border)}
h2{font-size:21px;margin:40px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--border)}
p{margin:10px 0}
code{font-family:var(--mono);font-size:.88em;background:var(--panel2);padding:1px 6px;border-radius:5px;color:#f0d9c4}
a{color:var(--accent2);text-decoration:none}
a:hover{text-decoration:underline}
.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:6px 20px;margin:16px 0}
ul{padding-left:0;margin:10px 0;list-style:none}
li{margin:12px 0;padding-left:0}
.doc-title{font-size:15px;font-weight:600}
.desc{color:var(--fg2);font-size:13px;margin:2px 0 0}
.tag{display:inline-block;font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;vertical-align:middle;margin-left:6px}
.tag.html{background:rgba(95,176,201,.16);color:var(--accent2)}
.tag.md{background:rgba(168,175,189,.14);color:var(--fg2)}
.lead{background:linear-gradient(180deg,rgba(224,136,79,.10),transparent);border:1px solid var(--border);border-radius:12px;padding:18px 20px;margin:0 0 8px}
.small{color:var(--fg2);font-size:13px}
.tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;vertical-align:middle;margin-left:6px}
.tag.html{background:rgba(94,194,122,.16);color:var(--ok)}
.tag.md{background:rgba(168,175,189,.16);color:var(--fg2)}
.doc{display:block;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin:10px 0;transition:border-color .15s}
.doc:hover{border-color:var(--accent2);text-decoration:none}
.doc .t{font-size:16px;font-weight:600;color:var(--fg)}
.doc .d{color:var(--fg2);font-size:13px;margin-top:3px}
.doc .path{font-family:var(--mono);font-size:11px;color:#6b7385;margin-top:4px}
</style>
</head>
<body>
<div class="wrap">
<h1>Pangolin 文档索引</h1>
<p class="sub">单一入口:本项目所有设计 / 计划 / 调研 / 排障文档汇总。新增文档须登记于此。</p>
<p class="sub">全部设计 / 调研 / 排障文档汇总 · 单一入口</p>
<div class="lead">
<p style="margin:0">家族规范:设计/调研类新文档一律 <strong>HTML</strong>(深色主题、自包含);README / plan / CLAUDE.md / 代码内文档仍按既有形式。历史 <code>.md</code> 保留原状、逐步迁移。</p>
<strong>约定:</strong>新的<b>设计文档 / 调研文档</b>统一以 <b>HTML</b> 形式输出(深色家族风格,可直接 <code>file://</code> 打开),并登记到本索引。历史 <code>.md</code> 文档保留原状、逐步迁移。
</div>
<h2>设计方案</h2>
<div class="card">
<ul>
<li>
<a class="doc-title" href="ios-ipad-support-design.html">iOS + iPad 支持设计方案</a><span class="tag html">HTML</span>
<p class="desc">iOS 隧道从 PoC 桩推到真机连通 + TestFlight;五条工作线 + NE 50MB 内存闸门;iPad 布局适配(分支 <code>feature/pangolin-ios</code></p>
</li>
<li>
<a class="doc-title" href="技术方案.md">技术方案</a><span class="tag md">MD</span>
<p class="desc">总体技术选型与架构</p>
</li>
<li>
<a class="doc-title" href="vpn-core-embedding.md">VPN 核心嵌入(方案B</a><span class="tag md">MD</span>
<p class="desc">嵌入 libbox + 系统 VPN API 替换 sudo sing-box 的完整设计</p>
</li>
</ul>
</div>
<h2>设计方案 / Specs</h2>
<a class="doc" href="android-client-design.html">
<div class="t">Pangolin Android 客户端设计方案 <span class="tag html">HTML</span></div>
<div class="d">把 M2 纸面 PoC 推到真机端到端连通 + 切节点 + KillSwitch(清 TODO 11G)。里程碑 A–F、三处定调。</div>
<div class="path">docs/android-client-design.html</div>
</a>
<a class="doc" href="ios-ipad-support-design.html">
<div class="t">iOS + iPad 支持设计方案 <span class="tag html">HTML</span></div>
<div class="d">iOS 隧道从 PoC 桩推到真机连通 + TestFlight;五条工作线 + NE 50MB 内存闸门;iPad 横屏侧栏布局适配。</div>
<div class="path">docs/ios-ipad-support-design.html</div>
</a>
<a class="doc" href="superpowers/specs/2026-06-21-windows-client-design.md">
<div class="t">Windows 客户端设计 <span class="tag md">MD</span></div>
<div class="d">Windows 端 sing-box 子进程 + wintun 隧道客户端设计</div>
<div class="path">docs/superpowers/specs/2026-06-21-windows-client-design.md</div>
</a>
<h2>实现计划</h2>
<div class="card">
<ul>
<li>
<a class="doc-title" href="ios-ipad-support-plan.html">iOS + iPad 支持 实施计划</a><span class="tag html">HTML</span>
<p class="desc">阅读版;执行真相源为 <code>docs/superpowers/plans/2026-06-22-ios-ipad-support.md</code>(含 checkbox)。6 阶段 12 任务</p>
</li>
<li>
<a class="doc-title" href="p1-macos-system-extension.md">P1 macOS 系统扩展</a><span class="tag md">MD</span>
<p class="desc">macOS PacketTunnel 系统扩展实现计划</p>
</li>
<li>
<a class="doc-title" href="node-rebuild-checklist.md">节点重建清单</a><span class="tag md">MD</span>
<p class="desc">节点重建步骤清单</p>
</li>
</ul>
</div>
<h2>实现计划 / Plans</h2>
<a class="doc" href="superpowers/plans/2026-06-22-android-client.md">
<div class="t">Android 客户端实现计划 <span class="tag md">MD</span></div>
<div class="d">11 个任务:Go 1.24.3 工具链 → 构建 libbox.aar → 解析真实 API → Dart 接线 → 修原生编译 → 模拟器端到端 → 统计 → 切节点 → KillSwitch → 真机验证。</div>
<div class="path">docs/superpowers/plans/2026-06-22-android-client.md</div>
</a>
<a class="doc" href="ios-ipad-support-plan.html">
<div class="t">iOS + iPad 支持 实现计划 <span class="tag html">HTML</span></div>
<div class="d">阅读版;执行真相源为 <code>docs/superpowers/plans/2026-06-22-ios-ipad-support.md</code>(含 checkbox)。6 阶段 12 任务。</div>
<div class="path">docs/ios-ipad-support-plan.html</div>
</a>
<a class="doc" href="superpowers/plans/2026-06-21-windows-client.md">
<div class="t">Windows 客户端实现计划 <span class="tag md">MD</span></div>
<div class="d">Windows 客户端的分步实现计划。</div>
<div class="path">docs/superpowers/plans/2026-06-21-windows-client.md</div>
</a>
<h2>知识库 / 调研</h2>
<div class="card">
<ul>
<li>
<a class="doc-title" href="vpn-testing-research.md">VPN 测试调研</a><span class="tag md">MD</span>
<p class="desc">黑盒测试方法调研</p>
</li>
<li>
<a class="doc-title" href="vpn-test-plan.md">VPN 测试计划</a><span class="tag md">MD</span>
<p class="desc">国内外站点矩阵 + 延迟口径</p>
</li>
</ul>
</div>
<a class="doc" href="killswitch-design.html">
<div class="t">KillSwitch 设计与跨平台能力矩阵 <span class="tag html">HTML</span></div>
<div class="d">断网保护 L0–L3 分级模型 + 各平台能力天花板 / 当前实现矩阵。KillSwitch 决策依据。</div>
<div class="path">docs/killswitch-design.html</div>
</a>
<a class="doc" href="技术方案.md">
<div class="t">技术方案(总) <span class="tag md">MD</span></div>
<div class="d">Pangolin 整体技术选型与架构方案。</div>
<div class="path">docs/技术方案.md</div>
</a>
<a class="doc" href="vpn-core-embedding.md">
<div class="t">VPN 内核内嵌 <span class="tag md">MD</span></div>
<div class="d">sing-box 内核在各端的内嵌方式调研。</div>
<div class="path">docs/vpn-core-embedding.md</div>
</a>
<a class="doc" href="vpn-testing-research.md">
<div class="t">VPN 测试调研 <span class="tag md">MD</span></div>
<div class="d">VPN 黑盒测试方法与口径调研。</div>
<div class="path">docs/vpn-testing-research.md</div>
</a>
<a class="doc" href="vpn-test-plan.md">
<div class="t">VPN 测试计划 <span class="tag md">MD</span></div>
<div class="d">国内外站点矩阵 + 延迟/连通性测试计划。</div>
<div class="path">docs/vpn-test-plan.md</div>
</a>
<h2>排障 Runbook</h2>
<div class="card">
<ul>
<li>
<a class="doc-title" href="macos-sysext-realize-troubleshooting.html">macOS 系统扩展 realize 失败排障</a><span class="tag html">HTML</span>
<p class="desc"><code>OSSystemExtensionErrorDomain code=4</code> 踩坑复盘 —— 改 macOS 隧道前必读</p>
</li>
<li>
<a class="doc-title" href="runbook-scheduler.md">调度器 Runbook</a><span class="tag md">MD</span>
<p class="desc">调度器运维手册</p>
</li>
</ul>
</div>
<h2>排障 / Runbook</h2>
<a class="doc" href="macos-sysext-realize-troubleshooting.html">
<div class="t">macOS 系统扩展 realize 失败(code=4)踩坑复盘 <span class="tag html">HTML</span></div>
<div class="d">PacketTunnel 系统扩展无法激活的三个叠加配置 bug 排查与修复。</div>
<div class="path">docs/macos-sysext-realize-troubleshooting.html</div>
</a>
<a class="doc" href="p1-macos-system-extension.md">
<div class="t">P1 macOS 系统扩展 <span class="tag md">MD</span></div>
<div class="d">macOS 原生 System Extension 隧道方案说明。</div>
<div class="path">docs/p1-macos-system-extension.md</div>
</a>
<a class="doc" href="node-rebuild-checklist.md">
<div class="t">节点重建检查单 <span class="tag md">MD</span></div>
<div class="d">节点重装/重建的操作检查清单。</div>
<div class="path">docs/node-rebuild-checklist.md</div>
</a>
<a class="doc" href="runbook-scheduler.md">
<div class="t">Scheduler Runbook <span class="tag md">MD</span></div>
<div class="d">调度器运维手册。</div>
<div class="path">docs/runbook-scheduler.md</div>
</a>
</div>
</body>