Nexora Code Lineage Audit
Step 2 · Read-only Code Evidence

真实代码怎么合:主来源正确,但执行并未完全按方案收口

本页逐仓检查 Git root、默认分支共同提交、导入提交、当前 blob 指纹和关键调用链。结论只针对仓库内容,不修改仓库,也不把部署回执或文档自述当作代码事实。

总判断:部分符合。 商城、小程序、珠宝主干等来源正确;但 App 实际吸收了方案未写的妈祖 App 与 Kotlin 后端,原料三前端二次合仓后没有形成完整并集,且老仓近期业务代码没有全部进入 Version 1.0。
Git / 代码证据静态接口矩阵部署配置已读运行态未复核数据库未审计
14Nexora 组全部项目均纳入
8Version 1.0 部署配置指向的业务仓
2高风险合并偏差:统一前端与认证链
3仍在分叉的老仓代码链
01

先看最重要的结论

HIGH · MERGE REGRESSIONserp / eperp 合回统一仓时丢了统一认证代码

独立 Store/Customer 仓有 Cookie、CSRF、PlatformAuthGate;Version 1.0 构建的统一仓子目录仍走 Legacy Token + aid/bid。构建参数设置 cookie 也不会生效,因为源码没有读取。

HIGH · RECENT DRIFT7 月 12–15 日老仓新代码没有全部进基线

原料后端 13 个、原料前端 9 个、老 App 2 个默认分支提交未进入目标;驳回原因、主副销售员、ERP 发货状态、AI 客服和商品追溯等语义可在目标中确认缺失。

MEDIUM · PLAN INCOMPLETEApp 真实来源不是单一老仓

前端主历史来自 app_xiao_shou_kotlin;妈祖 pyerp_app 的 serp/jerp 又被整包搬入;137 个后端接口参考 sprin-boot-kotlin219 重写进 nexora-erp。

02

部署配置指向的 8 个业务仓:真实来源

绿色为基本符合;蓝色为来源扩张;黄色为当前内容已漂移

nexora-platform

HEAD f7e2fb23
来源漏写
Platform MVP+nexora-platform-adminnexora-platform

Platform Admin 5/5 默认提交完整进入目标;随后 cd5c270 将管理 UI 重构进 Platform 单仓。目标方案对,但第一步文档漏写了真实来源。

nexora-erp

HEAD 22e2aeff
主干正确 · 来源扩张
xylferp_php+baijian/xipu 增量+Kotlin mobile APInexora-erp

龙凤 113 个默认提交完整继承;摆件/囍铺按模块选择性迁入,不是整仓合并;手机接口参考 sprin-boot-kotlin219 跨语言迁入。

nexora-erp-web

HEAD 9d468814
主干符合
xylferp_web+baijian/xipu 增量nexora-erp-web

龙凤 150 个默认提交完整继承;囍铺打印、AI 客服等按功能抽取。多个打印文件与囍铺源逐字一致,AI/图片模块在目标中做了租户开关和安全改造。

nexora-metal-erp

HEAD eaf4929e
来源对 · 内容漂移
pyerp_phpnexora-metal-erp

共享 123 个默认提交后分叉。老仓另有 13 个 7 月 12–14 日提交;目标中找不到 reject_reason、salesperson_vice、erp_state、ship_status 等新语义。

nexora-metal-erp-web

HEAD 405661c9
实质偏差
pyerp_web+Store split+Customer split+lferp统一仓

不是计划中的三仓终态;实际一仓保留四套源码。合回后未吸收独立仓全部增量,serp/eperp 的统一认证链发生回退。

nexora-app

HEAD 5a1da09d
多来源 · 仍漂移
app_xiao_shou_kotlin+pyerp_app/serp+jerpnexora-app

与主源共享 602 个默认提交;pyerp_app 的 serp 63/63、jerp 24/25 文件逐路径同 blob。老主源最近 2 个提交仍未进入目标。

nexora-metal-mall

HEAD 3fc4f265
符合
pyerp_shop_phpnexora-metal-mall

老仓默认 HEAD 是目标祖先,39 个提交完整继承;目标再增加 21 个提交。该链路与原方案一致。

nexora-metal-miniprogram

HEAD 1c913da8
符合
pyerp_shop_wxnexora-metal-miniprogram

老仓默认 HEAD 是目标祖先,8 个提交完整继承;目标再增加 3 个提交。当前只验证 H5 构建,不代表微信原生发布。

03

其余 6 个 Nexora 仓

它们仍需纳入血缘解释,但不属于 Version 1.0 八仓构建

仓库真实来源当前角色结论
nexora-store-erp-webpyerp_web/serp filter/split35/38 提交日期+标题对应;有完整 Platform Cookie 认证拆仓曾完成,现已被统一仓取代
nexora-customer-service-adminpyerp_web/eperp filter/split35/38 提交日期+标题对应;保留报表、销售工具和认证增量部分增量未回收到统一仓
nexora-platform-admin两文件管理原型完整历史已合入 Platform;保留参考仓符合当前退出定位
nexora-commerce-opsGreenfield1 个初始提交;与候选老仓 0 非通用 blob当前不部署
nexora-commerce-ops-adminGreenfield1 个初始提交;与候选老仓 0 非通用 blob当前不部署
nexora-evolutionGreenfield control repo战略、Deploy、验证和证据控制面符合
04

原料前端:方案与真实执行的关键差异

原方案:三个目录拆成三个仓

目标是独立源码归口,继续共用同一后端。

pyerp_web/serpnexora-store-erp-web
pyerp_web/eperpnexora-customer-service-admin
pyerp_web/merpnexora-metal-erp-web
实际
二次改线

真实执行:一仓四套源码

Version 1.0 从统一仓构建 serp、eperp、merp;仓内还保留 lferp。

serp / eperp未完整吸收独立仓增量,认证链回退
merp保留 Platform Cookie 认证
lferp龙凤/摆件/洪星历史构建源码,未在三端方案中说明
05

最近几天仍在变化的代码

这里是用户担心的“基线之后老仓还在改”

pyerp_php › Metal 后端

13 source-only commits7/12–7/14

驳回原因、主副销售员、ERP 状态/发货标识等字段和 SQL 未进入目标;目标代码中对应语义为 0 命中。

pyerp_web › Metal 前端

9 source-only commits8 missing files

销售员、报表、AI 配置、收款账号、图片粘贴/预览等增量没有形成当前并集;另有 5 个同路径文件内容不同。

app_xiao › Nexora App

2 source-only commits21 missing files

AI 客服、商品追溯、部分出库、版本更新和语音能力未进入目标;其中多项是有意减法还是漏合,需要业务口径确认。

06

手机接口与数据边界

对象真实证据能证明什么不能证明什么
137 个手机接口mobile-api-matrix.json:implemented 137,501/missing/mismatch 均为 0路由与非 501 方法已经落入 PHP没有证明 137 条都完成真实数据库业务 E2E
Kotlin 来源矩阵逐项指向 sprin-boot-kotlin219/api/src/main/kotlin确认实际跨语言参考源不能用 blob 相同证明语义完全等价
业务数据新旧本次未连接业务数据库;只读仓库能看到 schema/同步代码是否纳入不能证明 235 或生产数据行是最新
数据层结论:本次不能回答“最近几天业务数据有没有同步”,但可以确认近期 schema 与同步逻辑没有全部进入 Version 1.0,所以不能把“代码基线已固化”外推成“数据也已经最新”。
07

证据索引

关键提交

  • 8b22fe1:摆件/囍铺珠宝后端能力选择性迁入
  • 75f2f04:摆件/囍铺珠宝前端能力选择性迁入
  • afa3bca:Kotlin 手机 API 迁入 PHP
  • 223d89f:pyerp_app serp/jerp 整包搬入 Nexora App
  • 9ec03fb + e1d57da:原料前端重新合仓与恢复源码树
  • cd5c270:Platform Admin 收入 Platform 单仓

关键文件

  • nexora-erp/docs/SOURCE-MERGE-AUDIT.md
  • nexora-erp-web/docs/SOURCE-MERGE-AUDIT.md
  • nexora-erp/docs/phases/mobile-api-matrix.json
  • nexora-metal-erp-web/serp/src/config/axios.js
  • nexora-metal-erp-web/eperp/src/config/axios.js
  • nexora-evolution/deploy/environments/version-1.0.yaml
  • deploy/stack/docker/Dockerfile.frontends