维护者确认:#4013 移动端区域清单构建门禁与 Metro 缓存隔离
- Dominant language
- TypeScript
- Stars
- 2.7k
- Forks
- 401
- Avg merge
- 21h 48m
- Merged PRs (30d)
- 776
Description
PR https://github.com/makecindy/cindy/pull/4013 触发了维护者确认门,需要维护者确认后再合并。
当前在拦的触发(按优先级):
1. **product**:命中 UI 路径 `apps/mobile/metro.config.js`(构建期 Metro 配置,作者说明无用户可见 UI 变化)。
2. **security**:测试文件中有 2 处 `dynamic-eval`(`apps/mobile/src/__tests__/mobileManifestBuildGuard.test.ts` 对 Transformer 的 `require`)。
3. **rules**:改到审查规则文档 `docs/dev-rules/mobile-development.md`。
改动摘要(来自 PR 描述,供确认):
- 为 CN / Global 移动端清单自举配置增加构建期校验,避免本区与对端指向同一区域、或残留环境变量打进生产 bundle。
- Metro 转换缓存按构建区域及两区清单地址摘要隔离,防止跨区域复用旧 Babel 内联结果。
- 作者称未改原生指纹 / 无冷更;错误消息不回显环境变量值。
- 构建契约收紧:生产包不再接受与仓内清单不一致的 shell / `.env` 地址覆盖。
请维护者确认:
- 构建契约收紧是否符合产品与发版预期;
- 规则文档改动是否只是把已有约定写清楚,还是改变了审查判据;
- 测试里的动态 `require` 是否可接受。
确认方式:直接在 PR 上 **Approve**;若需要修改请 **Request Changes**,作者改完后再 Approve 即放行。
---
关联 PR:#4013(作者 @elfcv);本 issue 由 review-pr 流程自动创建,用于先讨论该 PR 涉及的产品 / UI 变更,维护者确认后 PR 会恢复推进。
Contributor guide
Research direction
Start by reviewing PR #4013, especially apps/mobile/metro.config.js, apps/mobile/src/__tests__/mobileManifestBuildGuard.test.ts, and docs/dev-rules/mobile-development.md. Check the stated manifest validation, Metro cache isolation, tightened production contract, and dynamic requires against project expectations. Done means a maintainer decides whether to Approve or Request Changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react-native, typescript
- Domain
- build-system, documentation, mobile, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100