50 lines
1.8 KiB
Markdown
50 lines
1.8 KiB
Markdown
# server-rs 工作区占位说明
|
||
|
||
日期:`2026-04-20`
|
||
|
||
## 1. 目录用途
|
||
|
||
`server-rs/` 是本项目新 Rust 后端的固定根目录,用于承载以下重写目标:
|
||
|
||
1. `Axum` HTTP / SSE 边界层
|
||
2. `SpacetimeDB` 状态机模块
|
||
3. `阿里云 OSS` 资产接入与应用层编排
|
||
|
||
该目录固定放在仓库根目录,与 `server-node/`、`src/`、`docs/` 同级。
|
||
|
||
## 2. 当前阶段说明
|
||
|
||
当前目录已经完成以下两项初始化:
|
||
|
||
1. 为新后端预留正式目录并把路径固定到仓库结构中。
|
||
2. 创建虚拟 workspace `Cargo.toml`,后续 crate 会逐项挂入。
|
||
3. 创建 `crates/api-server/` 目录占位,固定 Axum 入口 crate 落位。
|
||
|
||
后续任务会继续在本目录内按顺序补齐:
|
||
|
||
1. `crates/spacetime-module`
|
||
2. `crates/application`
|
||
3. `crates/domain`
|
||
4. `crates/contracts`
|
||
5. `crates/auth-service`
|
||
6. `crates/oss-service`
|
||
7. `crates/llm-service`
|
||
8. `crates/spacetime-client`
|
||
9. `crates/tests`
|
||
10. `scripts/*`
|
||
|
||
## 3. 已冻结边界
|
||
|
||
本目录后续落地时必须继续遵守 `M0` 已冻结的边界:
|
||
|
||
1. 迁移期保留 `server-node/`,不提前删除。
|
||
2. 前端在 `M0 ~ M6` 期间只访问 Axum,不直连 SpacetimeDB。
|
||
3. 外部副作用统一收口在 Axum / application / infra。
|
||
4. `spacetime-module` 只负责状态、规则、reducer、view 与读模型。
|
||
|
||
## 4. 关联文档
|
||
|
||
1. [../docs/technical/SPACETIMEDB_AXUM_OSS_BACKEND_REWRITE_DESIGN_2026-04-20.md](../docs/technical/SPACETIMEDB_AXUM_OSS_BACKEND_REWRITE_DESIGN_2026-04-20.md)
|
||
2. [../backend-rewrite-tasklist/M0_REPOSITORY_BOUNDARY_DECISIONS_2026-04-20.md](../backend-rewrite-tasklist/M0_REPOSITORY_BOUNDARY_DECISIONS_2026-04-20.md)
|
||
3. [../backend-rewrite-tasklist/01_M0_M2_FOUNDATION_AND_AUTH.md](../backend-rewrite-tasklist/01_M0_M2_FOUNDATION_AND_AUTH.md)
|