WuYongJie 7608f99b9e 生产经营分析副本库隧道端点 (#8)
## 任务占用与边界
- 任务名称:生产经营分析副本库隧道端点
- 实际开发者:WuYongJie
- 任务来源/团队分工:生产快照恢复
- 目标结果:生产环境经受限隧道读取 operations_replica;账号、密码和业务库信息仍仅来自共享系统数据库。
- 预计修改路径:config/upstreams.php;modules/EcommerceFinance/Services/UpstreamSourceRegistry.php;tests/Feature/SystemSettings/UpstreamDatabasesTest.php
- 预计页面或路由:公司、店铺、商标信息页的共享快照读取
- 预计 Controller / Repository:UpstreamSourceRegistry
- 数据源、表/视图和字段:operations_replica 固定只读查询;不新增上游写入或全表同步。
- 上游 source_key / scope:operations_replica;company-information.read、store-information.read、trademark-information.read
- 权限名、菜单键或共享组件:不变
- 明确不修改的范围:上游账号、密码、表结构、业务数据、开发机直连行为

## 开工碰撞检查
- [x] Codex 已执行 scripts/codex-task-preflight.ps1
- [x] 已检查最新 main 和所有远程任务分支
- [x] 已搜索主线既有页面、接口、Repository 和数据查询
- [x] 未发现重叠

## 实际改动
- 完成内容:为生产共享配置增加可选私有隧道端点;仅替换连接主机和端口。
- Codex 实际修改的文件:config/upstreams.php;modules/EcommerceFinance/Services/UpstreamSourceRegistry.php;tests/Feature/SystemSettings/UpstreamDatabasesTest.php
- 新增或变更的公共契约:UPSTREAM_TUNNEL_OPERATIONS_REPLICA_HOST;UPSTREAM_TUNNEL_OPERATIONS_REPLICA_PORT
- 与原计划的差异:无

## 验证证据
- 正常流程:生产 Docker 网络已验证可达既有受限隧道。
- 空数据/错误输入/无权限场景:端点缺失或无效时拒绝使用不完整隧道配置。
- 受影响旧功能:本地共享模式与显式本机覆盖模式保持原行为。
- 自动测试及结果:UpstreamDatabasesTest 18 passed,102 assertions。
- 实际页面、接口或只读业务查询结果:待合并和生产部署后执行首份快照验证。

## 风险检查
- [ ] 不涉及金额、权限、审批、数据库迁移、生产配置或数据修复
- [x] 如涉及上述高风险内容,已在下方写明影响、回滚和所需授权
- [x] 未提交 .env、密码、Token、私钥、真实财务数据、生产日志或构建产物
- [x] 前端改动符合 DESIGN.md;无前端改动则写“不适用”
高风险影响、回滚和授权状态:生产私有运行配置会新增两项仅端点变量;已存在运行配置备份与共享系统数据库备份。部署和生成快照需在合并后单独复核。

## 合并前复查
- [ ] 已重新拉取远程引用并用实际修改范围再次运行碰撞检查
- [ ] PR 不再是 WIP:,所有测试结果已经补齐
- [ ] Codex 已重新读取原始需求和验收标准,并逐文件审核 origin/main...任务分支 的完整 diff
- [ ] Codex 自审确认无越界修改、重复实现、敏感内容、未处理冲突和未验证结果
- [ ] 合并顺序不会覆盖其他未合并任务
- [x] 已授权当前任务的 Codex 执行 Squash merge、验证 main 并清理任务分支
- [ ] 如涉及生产迁移、数据修复、删除、覆盖配置或部署,已另行取得对应高风险授权

Reviewed-on: http://git.1080p.hk/WuYongJie/CaiWuXiTong/pulls/8
2026-08-04 16:15:33 +08:00
..