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

2.9 KiB
Raw Blame History

稳定工程基线指南

  • 更新时间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. 当前验证命令

必须通过:

make test
make check
make lint

等价底层命令:

cargo test --workspace
cargo check --workspace
cargo clippy --workspace --all-targets -- -D warnings
go test ./...
go vet ./...

说明:

  1. 当前已有 cmd/batinternal/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/ 是空目录,无法恢复原历史。本基线采用新初始化仓库,并以首次提交作为后续开发起点。

首次提交信息:

chore: establish development baseline

提交前检查:

git status --short --branch
git check-ignore -v Cargo.lock CLAUDE.md AGENTS.md CONTRIBUTING.md

Cargo.lockCLAUDE.mdAGENTS.mdCONTRIBUTING.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