docs: 目录布局改为扁平结构,与 chis_upload 对齐

按团队 AGENTS.md 的扁平偏好,弃用 internal/+cmd/,改为顶层平铺包 +
单 main.go(-mode server|deliver)。同步更新 docs/03 目录结构图与 §4.4、
docs/05 路线图措辞、CLAUDE.md 目录职责表。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ila
2026-05-30 13:10:18 +08:00
co-authored by Claude Opus 4.8
parent e1fe1a92e6
commit 6204da871e
3 changed files with 50 additions and 48 deletions
+10 -8
View File
@@ -24,7 +24,7 @@
把上游 PHIS(公卫系统)数据转换并投递到省基卫平台。
- **当前阶段**:设计完成、待编码(脚手架尚未建立,见路线图阶段 0)
- **语言/运行**:Go 1.24,单二进制双子命令(`cmd/server` 同步 API、`cmd/deliver` 投递 worker)
- **语言/运行**:Go 1.24,单二进制 + 子命令(`main.go -mode server|deliver`,沿用 chis_upload 风格)
- **团队定位**:默认由初级程序员维护,所有改动优先保证可读、可理解、可接手,避免过度抽象
- **核心链路**:PHIS(拉取)→ 字段映射 → MD5 签名 + 统一信封 → CHIS OSI(POST `/osi/api/...`)→ 状态回写
@@ -41,15 +41,17 @@ OSI 是**无状态服务端接口**,鉴权 = 请求头 MD5 签名(`password=
> 以下为**目标**结构(见 `docs/03-目标架构设计.md` 第 3 节),多数目录尚未创建,按路线图阶段逐步建立。
> 采用**扁平布局**(顶层平铺包,不用 `internal/`/`cmd/`),与 `chis_upload` 同款形状。
| 目录 | 说明 |
|------|------|
| `cmd/server/` `cmd/deliver/` | 双入口:同步投递 API / 定时投递 worker |
| `internal/osi/` | ★ 薄客户端:签名、传输、`Call`、各业务域调用方法 |
| `internal/contract/` | ★ 校验后的接口契约(结构体 + serviceId 常量),docx 坑点的唯一修正点 |
| `internal/mapping/` | ★ PHIS→OSI 字段/字典映射 + checkId 生成(本项目核心) |
| `internal/source/phis/` | PHIS 拉取客户端 + 任务模型 + 状态回写 |
| `internal/pipeline/` | 投递编排:校验→映射→调用→分类重试→幂等→熔断→报告 |
| `internal/observ/` `internal/store/` | report log(redis 优先、文件降级)/ redis(可选)+文件存储 |
| `main.go` | 单入口:`-mode server\|deliver`(同步投递 API / 定时投递 worker) |
| `osi/` | ★ 薄客户端:签名、传输、`Call`、各业务域调用方法 |
| `contract/` | ★ 校验后的接口契约(结构体 + serviceId 常量),docx 坑点的唯一修正点 |
| `mapping/` | ★ PHIS→OSI 字段/字典映射 + checkId 生成(本项目核心) |
| `source/` | PHIS 拉取客户端 + 任务模型 + 状态回写 |
| `pipeline/` | 投递编排:校验→映射→调用→分类重试→幂等→熔断→报告 |
| `observ/` `store/` | report log(redis 优先、文件降级)/ redis(可选)+文件存储 |
| `handler/` `router/` | server 模式对外 HTTP 接口与路由 |
| `config/` | viper 读取配置(osi / phis / redis / proxy) |
| `docs/` | 所有设计文档,与代码同等重要 |