Files
cmroubao/docs/tasks/T-228.md
T

4.1 KiB
Raw Blame History

id, title, phase, deps, status, created, context_ref, work_branch, write_paths
id title phase deps status created context_ref work_branch write_paths
T-228 移除 Python ERP Connector 并完成 Go 切换 2
T-227
DONE 2026-07-29 d62a4af null
docs/tasks/T-228.md
docs/00-ai-start-here.md
docs/03-tech-stack.md
docs/04-architecture.md
docs/05-coding-rules.md
docs/06-tasks.md
docs/api.md
docs/current-state.md
docs/integrations/**
.gitignore
README.md
backend-api/README.md
backend-api/cmd/api/**
backend-api/internal/config/**
backend-api/internal/platform/erpconnector/**
backend-api/internal/repository/sqlite/**
erp-connector/**
scripts/start-erp-connector.bat
start-backend.bat
init.ps1

问题 / 背景

Go 直连 source 经 T-227 验证后,保留 Python Connector、8091 loopback 端口、服务密钥、 启动脚本和双份协议实现只会造成漂移与错误配置。需要受控删除旧路径,并把启动、文档和 验证统一为单一 Go 后端。

关联需求与交互

  • 功能:F-011、F-012。
  • 用户故事:US-011、US-012。
  • 交互:IX-012、IX-013;页面入口保持不变。
  • 架构:运行时只保留 Go API 进程直接访问 ERP;外部 ERP 仍是受控边界。

方案

  1. 删除仓库内 erp-connector/、Connector 启动脚本、HTTP client、CMROUBAO_ERP_CONNECTOR_* 配置和共享 API Key 文档。
  2. 保留外部原始研究脚本 D:\chengma\shunyunbaoerp\shunyunbaoerp_single.py 不受仓库 删除影响;它不是运行时依赖。
  3. 统一启动脚本为 Go 后端环境校验和启动;ERP 未配置或会话失效时 Admin 提供可修复 会话状态,而不是在输入单号后才暴露 Connector 配置错误。
  4. 删除前运行全仓引用扫描、Go 测试/race/vet、根验证和隔离 SQLite/Gin smoke;保留 脱敏 fixture,不保留真实 Cookie、订单号或 HAR。

验收要点

  • 仓库不再包含 Python Connector、8091 监听、Connector API Key 或其启动命令。
  • Go 后端在 ERP 凭证缺失、未登录和伪 ERP 成功路径下均返回稳定、可操作状态。
  • rg 证明已跟踪文件无 Connector 运行时引用、真实凭证、Cookie、JWT 或订单样本。
  • go test ./...、go test -race ./...、go vet ./... 和根验证通过。
  • 文档只说明单 Go 后端、人工验证码和外部 ERP 风险;真实线上 smoke 结果明确记录。

边界

  • 不删除工作区外的原始 Python 研究脚本或用户私有 HAR。
  • 不自动登录、自动 OCR 或无人值守定时同步。
  • 不改变 Admin/采购任务的授权、下单和付款边界。

执行记录

  • 2026-07-29:由 T-227 依赖创建,等待 Go 查询链路验收后进行删除。
  • 2026-07-29:开始实施;T-227 已由 a822edd 完成。确认外部原始研究脚本不在本次 删除范围内,清理仅作用于仓库内旧 Connector、端口、共享服务密钥及其文档。
  • 2026-07-29:删除 erp-connector/、internal/platform/erpconnector/ 和 scripts/start-erp-connector.bat,同时移除 CMROUBAO_ERP_CONNECTOR_*、8091 默认值、 共享 API Key 兼容和旧错误码。外部 D:\chengma\shunyunbaoerp\shunyunbaoerp_single.py 未读取、未修改、未删除。
  • 2026-07-29:start-backend.bat 只启动 Go 后端;ERP 未配置时 /erp 给出可修复状态, 同步 run 使用 ERP_NOT_CONFIGURED 或 ERP_SESSION_REQUIRED,不再依赖第二进程。
  • 验证:在 backend-api/ 执行 $env:GOTOOLCHAIN='local'; go test ./...; go test -race ./...; go vet ./...; go build ./cmd/api; go build ./cmd/migrate; go build ./cmd/authctl,全部通过。 根目录执行 ./init.ps1,Android 测试/Debug APK 和 Go 标准验证全部通过。
  • 扫描:排除历史任务执行记录后,rg 未找到 Connector 运行时引用、8091、共享 API Key、 真实凭证、Cookie、JWT 或订单样本;工作区内 erp-connector/ 已不存在。
  • 未运行:未配置真实 ERP 凭证,未执行线上验证码/受控单号 smoke;上线前仍需人员完成 /erp 人工验证码登录,并确认厂商开放 API、数据使用和个人信息处理授权。