Files
a-share-analysis/docs/features/GOV-009-application-scaffold-baseline/gitnexus/impact-plan.md
T

4.1 KiB

GitNexus 开发前影响分析

  • 功能编号:GOV-009
  • 基线提交:c04184a6111da0cfad90d1a265dc3cd3a6d90a9c
  • 分析日期:2026-08-13

查询范围

本功能会新增 Web、Server 和构建入口;这些文件在基线图谱中尚无符号,无法产生既有调用方。对已有代码的修改集中在 tools/database/schema-baseline.mjs、根工程编排、环境模板和部署配置,因此对 Schema 关键符号执行上游影响分析,并查询现有 Vue/NestJS 执行流。

结果

assertSafeDevelopmentConfiguration

  • 风险:CRITICAL。
  • 直接影响:4 个调用方。
  • 间接影响:9 个符号、5 组执行流程。
  • 直接调用方:buildMysqldumpArguments、runBaselineGeneration、assertNotApplicableMatchesDevelopmentConfiguration 和 Schema 测试。
  • 关键下游:assertCurrentReleasedBaseline、assertCurrentReleasedBaselinePublished、runCommandLine 与 governance:start。

resolveFixedDevelopmentEnv

  • 风险:HIGH。
  • 直接影响:2 个调用方。
  • 间接影响:7 个符号、3 组执行流程。
  • 关键下游:Schema 生成、当前发布基线校验和下一功能开发前门禁。

buildCapturedArtifacts

  • 风险:LOW。
  • 直接影响:Schema 测试;现有运行流程没有额外上游调用。

新增工程

GitNexus 查询未找到 Vue、NestJS、API、Scheduler 或 Worker 的既有运行符号,证明当前只有文档和治理工具。新增工程不会破坏已有应用调用方,但会建立新的构建、配置、HTTP 和进程启动流程,开发后必须重新索引并逐项核对。

直接与间接影响

  • assertSafeDevelopmentConfiguration 为 CRITICAL:4 个直接调用方、9 个间接符号和 5 组流程,影响 Schema 生成、已发布基线校验与 governance:start。
  • resolveFixedDevelopmentEnv 为 HIGH:2 个直接调用方、7 个间接符号和 3 组流程,影响开发配置解析和当前发布基线验证。
  • 新增 Web、API、Scheduler、Worker 在开发前没有既有调用方,但会新增构建、启动、OpenAPI、生命周期和部署流程;开发后必须用 detect-changes 与 compare 核对实际边界。

跨模块同步修改

  • HTTP/OpenAPI:新增 Server DTO、OpenAPI 输出、Web 生成类型和漂移门禁;Web 不直接依赖 Server 源码。
  • Web API:建立生成契约与 adapter 边界;后续 GOV-010 再统一为 Axios request 与业务域 API。
  • 消息:建立 RocketMQ 信封和禁用 Adapter,不创建 Topic 或启用真实收发。
  • 数据库与 Redis:同步 MySQL 5.7.42、字符规则、开发 Schema 安全边界和只读健康检查,不实施业务迁移或缓存写入。
  • API/Scheduler/Worker:同步三进程入口、最小配置、持续运行和优雅退出验证。
  • 部署、测试与文档:同步环境模板、systemd/Nginx、源码发布门禁、Playwright、Review、回退和架构复核;早期 Docker 方案后来由仅源码部署设计取代。

风险控制

  1. Schema 变更先写失败测试,覆盖固定远程白名单、未知远程拒绝、api.env.local 优先级、历史 N/A 基线验证和空库 captured 状态。
  2. 已发布的 v0.0.7 N/A 清单保持不可变;配置启用不得静默重写历史。GOV-009 不创建数据库对象,v0.0.8 发布后、下一功能开始前首次捕获空库或真实结构。
  3. governance:start 的严格远程分支、标签和已提交基线校验必须继续通过现有测试。
  4. Schema 密码只通过子进程环境传递;固定白名单写在代码中,不接受命令参数、动态 env 白名单或通配地址。
  5. 新增 Server 进程分别测试配置最小权限、启动和关闭;Web 通过边界测试禁止导入 Server 源码。
  6. 每个阶段运行全量 Schema 与治理回归;提交前运行 GitNexus detect_changes,若风险超出本报告则停止并重新确认。

回退

Schema 阶段可以独立回退到 GOV-009 开始提交,已发布基线目录不变。应用脚手架不执行业务迁移,回退对应提交即可移除 Web/Server 构建产物;本地 *.env.local、Redis 数据和远程开发库不随 Git 操作修改。