Files
BlueArchiveToolkit/docs/guides/baseline.md
T
nyaKazuha d76f6f1c88 ci(rust): 添加 Gitea host runner 工作流
补充自托管 Gitea host-runner workflow,并将项目状态、缺口、开发指南与路线图同步到当前实际情况。
2026-07-21 10:39:11 +08:00

108 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 稳定工程基线指南
- **更新时间**2026-07-20
- **目标**:让工作区处于可继续开发核心功能的可信状态。
---
## 1. 基线定义
当前阶段的稳定基线不是完整产品完成,而是满足以下条件:
1. Git 仓库可用,`git status --short --branch` 能正常执行。
2. 根目录只保留入口文档和工程配置。
3. 旧报告归档,且不再和当前状态混淆。
4. Rust workspace 成员显式列出。
5. Go 产品入口尚未完成时,Makefile 不把骨架包误报为完整产品。
6. 当前缺口有集中清单和关闭顺序。
7. 架构边界有 ADR 记录。
8. 基础验证命令通过。
9. Rust 官方资源同步入口有明确运行文档和生产边界。
---
## 2. 当前验证命令
必须通过:
```bash
make test
make check
make lint
```
等价底层命令:
```bash
cargo test --workspace
cargo check --workspace
cargo clippy --workspace --all-targets -- -D warnings
go test ./...
go vet ./...
```
说明:
1. 当前已有 `cmd/bat``internal/ffi` 骨架,但没有 Go 产品级测试覆盖;`go test ./...` 出现 `[no test files]` 不代表 CLI/API 已完成。
2. 如果后续新增 Go 产品 package,必须让 `go test ./...``go vet ./...` 纳入硬性验证。
3. 当前 `golangci-lint` 可选;当 Go 代码进入主要开发阶段后,应纳入本地门禁。
4. 官方同步相关修改必须额外运行 `cargo test -p bat-infrastructure --bin bat -- --nocapture`
---
## 3. Git 基线
当前工作区原 `.git/` 是空目录,无法恢复原历史。本基线采用新初始化仓库,并以首次提交作为后续开发起点。
首次提交信息:
```text
chore: establish development baseline
```
提交前检查:
```bash
git status --short --branch
git check-ignore -v Cargo.lock CLAUDE.md AGENTS.md CONTRIBUTING.md
```
`Cargo.lock``CLAUDE.md``AGENTS.md``CONTRIBUTING.md` 必须纳入版本控制。
---
## 4. 不纳入基线的内容
以下内容应继续忽略:
1. `target/`
2. `.env`
3. `*.db`
4. `*.sqlite`
5. `logs/`
6. `node_modules/`
7. 构建压缩包
8. 本地 CAS 数据目录
---
## 5. 下一阶段入口
CAS V1 和 Rust 官方同步闭环完成后,下一阶段优先推进:
1. 收敛 Go 产品入口:当前 `cmd/bat` 仅是试验骨架,不能视为完成。
2.`docs/guides/official-full-pull-smoke.md` 执行真实官方网络全量下载 smoke,并保留隔离目录报告。
3. 官方同步结果接入 CAS + ResourceRepository。
4. AssetBundle UnityFS 引擎级解析。
优先阅读:
1. `PROJECT_PLAN.md`
2. `CURRENT_STATUS.md`
3. `docs/reports/CURRENT_GAPS.md`
4. `docs/guides/official-resource-test-pull.md`
5. `docs/guides/official-full-pull-smoke.md`
6. `docs/architecture/official-resource-backend.md`
7. `docs/architecture/adr/0001-engine-and-application-boundaries.md`
8. `docs/architecture/adr/0002-cas-v1-design-boundary.md`