# 依赖包审计报告

> 扫描时间：2026-04-16
> 工具：yarn-deduplicate --list
> yarn.lock 中共发现 **32 个包** 存在可去重版本，涉及 **80 处引用**。

---

## 高优先级（安全漏洞）

| 包名 | 当前版本 | 可升级到 | 引用次数 | 说明 |
|------|---------|---------|---------|------|
| lodash | 4.17.15 | 4.17.21 | 10 | CVE-2020-28500 / CVE-2021-23337 原型污染 |
| minimist | 1.2.5 | 1.2.8 | 3 | CVE-2021-44906 原型污染 |
| json5 | 2.1.3 | 2.2.3 | 1 | CVE-2022-46175 原型污染 |

**建议**：立即升级，均为 patch 级别，无破坏性变更。

---

## 中优先级（多处引用，去重可减小 bundle）

| 包名 | 当前版本 | 可升级到 | 引用次数 | 说明 |
|------|---------|---------|---------|------|
| graceful-fs | 4.2.3 | 4.2.4 | 9 | patch 修复 |
| resolve | 1.15.1 | 1.22.11 | 9 | minor 升级，路径解析增强 |
| semver | 5.7.1 | 5.7.2 | 8 | patch 修复 |
| @babel/runtime | 7.8.7 | 7.28.4 | 4 | 跨 major minor，仅运行时 helper |
| @babel/core | 7.9.0 | 7.28.5 | 4 | ⚠️ 跨大版本，需单独评估 |
| @babel/plugin-syntax-flow | 7.8.3 | 7.27.1 | 3 | babel 插件 |
| safe-buffer | 5.1.2 | 5.2.1 | 3 | minor 升级 |
| @babel/helper-module-transforms | 7.8.6 | 7.28.3 | 2 | babel 内部 |
| mime-types | 2.1.26 | 2.1.35 | 2 | patch 修复 |
| import-fresh | 3.2.1 | 3.3.1 | 2 | minor 升级 |
| source-map-support | 0.5.16 | 0.5.19 | 2 | patch 修复 |

---

## 低优先级（单次引用 / 小版本差异）

| 包名 | 当前版本 | 可升级到 | 引用次数 |
|------|---------|---------|---------|
| @babel/helper-member-expression-to-functions | 7.8.3 | 7.28.5 | 1 |
| @babel/helper-optimise-call-expression | 7.8.3 | 7.27.1 | 1 |
| @babel/helper-replace-supers | 7.8.6 | 7.27.1 | 1 |
| @babel/helpers | 7.9.2 | 7.28.4 | 1 |
| @babel/plugin-transform-flow-strip-types | 7.8.3 | 7.27.1 | 1 |
| ansi-regex | 4.1.0 | 4.1.1 | 1 |
| camelcase | 6.0.0 | 6.3.0 | 1 |
| conventional-commits-filter | 2.0.2 | 2.0.6 | 1 |
| cross-spawn | 7.0.3 | 7.0.6 | 1 |
| cz-conventional-changelog | 3.1.0 | 3.2.0 | 1 |
| debug | 4.1.1 | 4.4.3 | 1 |
| deepmerge | 4.2.2 | 4.3.1 | 1 |
| gensync | 1.0.0-beta.1 | 1.0.0-beta.2 | 1 |
| mime-db | 1.43.0 | 1.52.0 | 1 |
| parse-json | 5.0.0 | 5.2.0 | 1 |
| readable-stream | 2.3.7 | 3.6.0 | 1 |
| regenerator-runtime | 0.13.4 | 0.13.11 | 1 |
| strip-ansi | 6.0.0 | 6.0.1 | 1 |

---

## 操作建议

### 1. 一键去重（推荐先执行）

```bash
npx yarn-deduplicate yarn.lock
yarn install
```

去重后自动将同一包的多个版本合并为最高兼容版本，不修改 package.json。

### 2. 安全漏洞修复

```bash
yarn add lodash@^4.17.21
# minimist 和 json5 是间接依赖，通过 resolutions 锁定：
```

在 `package.json` 中添加：

```json
"resolutions": {
  "minimist": "^1.2.8",
  "json5": "^2.2.3"
}
```

### 3. @babel/core 升级评估

当前 `@babel/core` 锁定在 7.9.0（RN 0.61 依赖），升级到 7.22+ 可以：
- 解决 `babel-preset-current-node-syntax` 兼容问题（不再需要 resolutions 锁版本）
- 支持更多 ES 语法

风险：Metro bundler 0.58 可能与新版 babel 不完全兼容，需在 CI 上验证 build + bundle。

### 4. 不建议升级的包

| 包名 | 原因 |
|------|------|
| readable-stream 2.x → 3.x | major 版本，API 有破坏性变更 |
| @babel/core 7.9 → 7.28 | 跨多个 major minor，需充分测试 |
