5.7 KiB
BlueArchiveToolkit 当前工作区状态
更新时间:2026-06-29
状态来源:本地工作区盘点与命令验证
状态分支:experiment
权威计划:PROJECT_PLAN.md
1. 总体判断
当前项目处于 稳定基线完成、CAS V1 已落地、官方资源链路验证完成、资源同步与解析待实装 阶段。
旧文档中存在 Week 3 “完成”和“回滚”两类互相冲突的报告。以当前代码为准,历史 Week 3 不再作为状态依据;当前 CAS V1 已由新实现接管,AssetBundle、Patch、Go CLI/API/Web 仍有明显占位或未实现部分。
2. 工作区整理结果
根目录保留
根目录现在主要保留入口文件和工程配置:
README.mdPROJECT_PLAN.mdCURRENT_STATUS.mdDOCS_INDEX.mdCHANGELOG.mdCLAUDE.mdCargo.tomlCargo.lockgo.modMakefileLICENSE
已归档
历史阶段报告已移动到:
docs/reports/historical/root/docs/reports/historical/week2/docs/reports/historical/week3/docs/reports/historical/build-logs/docs/reports/historical/quality/docs/reports/historical/nested-docs/
原先误嵌套的 docs/docs/archive 已合并到:
docs/archive/
原先空的重复目录 docs/docs 和 docs/adapters 已删除。
3. 当前模块状态
Rust workspace
已显式纳入 workspace:
coreadaptersinfrastructurecrates/bat-assetbundlecrates/bat-cas-enginecrates/bat-fficrates/bat-patch
bat-core
状态:接口和领域骨架基本完成
已包含:
GameClientGameVersionResourceTranslationCasRepositoryResourceRepositoryTranslationRepository
待完成:
- 领域服务模块仍为空。
- Glossary、Provider、Patch、Manifest 等后续仓储/服务接口需要补齐。
- 公共错误模型需要与 CLI/API 错误码统一。
bat-adapters
状态:适配器框架可用,真实解析能力不足
已包含:
- Unity adapter trait、注册表、Unity 2021.3 adapter 骨架。
- Manifest driver trait、Addressables driver、注册表。
- Client integration、backup、discovery trait。
待完成:
- Unity bundle parse/serialize 仍是后续阶段能力。
- Addressables Catalog 复杂字段解析未完成。
- 客户端发现、备份、应用补丁流程尚未连接真实实现。
- 官方 launcher bootstrap、GameMainConfig bootstrap、官方 pull plan 的用户级文档已补齐。
- 官方 bootstrap / pull 测试夹具已收敛到
experiment分支语义下,并通过了官方链路回归。
bat-cas-engine
状态:CAS V1 已完成
已包含:
- BLAKE3 Hash。
- 原子文件写入:临时文件、fsync、rename、目录 sync。
- 文件系统对象存储:put/get/exists/delete/list/stats。
- SQLite 对象元数据和引用计数。
- 引用计数增加、减少、查询。
- GC 候选查询和 GC 删除。
- 并发写入相同内容测试。
- 损坏对象 Hash mismatch 检测。
- infrastructure 仓储适配层。
待完成:
- 更复杂的跨进程压力测试。
- 未来需要时扩展流式大文件写入。
- 未来需要时扩展非 SQLite 元数据后端。
bat-assetbundle
状态:占位
当前只有:
- Parser trait 占位。
- AssetType 占位。
- 错误类型骨架。
待完成:
- UnityFS header、block、directory、metadata、object table。
- LZ4/LZMA 解压。
- TypeTree 解析。
- TextAsset、MonoBehaviour、ScriptableObject 解析入口。
bat-patch
状态:占位
当前 Binary Patch 和 JSON Patch 函数返回空结果,不具备真实补丁能力。
待完成:
- Binary diff/apply。
- JSON Patch apply/validate。
- Patch manifest。
- Integrity check。
- Rollback。
bat-ffi
状态:骨架
已能编译并引用 Rust 引擎 crate,但尚未提供完整稳定 FFI API。
Go / API / Web
状态:目录存在,功能未实现
当前 cmd/、internal/、pkg/、api/、web/ 多数为空目录或只有目录结构,没有 Go package 可测试。
Makefile 已调整:在 Go package 尚未实现时,Go build/test/check/fmt/lint 会明确跳过,避免误报失败。
4. 本次验证结果
已运行:
cargo test --workspace
结果:通过。
已运行:
cargo test -p bat-infrastructure --test official_game_main_config_bootstrap -- --nocapture
cargo test -p bat-infrastructure
cargo test -p bat-adapters
结果:通过。
已运行:
go test ./...
结果:当前没有 Go package,因此无测试可运行。Makefile 已修正为跳过该状态。
5. 当前阻塞项
Git 元数据
原 .git/ 是空目录,无法恢复原历史。本轮已新初始化 Git 仓库,并完成当前工作分支的整理。
当前状态:
git status --short --branch可用。- 原历史未恢复。
- 当前分支已切到
experiment,用于承载实验性 fixture 调整。 - 当前分支已切到
experiment,用于承载实验性 fixture 调整。
核心能力未实装
下一阶段必须优先完成:
- Manifest 真实解析。
- Go CLI 基础入口。
- AssetBundle 解析。
- 文本提取中间格式。
不建议在这些完成前优先推进 Web UI。
6. 下一步建议
立即任务:
- 完成 Manifest 真实字段解析和资源模型映射。
- 落地 Go CLI 的
doctor和基础命令框架。 - 设计 Resource Repository 的持久化 schema。
- 决定哪些 experiment 改动需要回流到
dev。
当前总体完成度:约 18%
当前基线状态:已建立可继续开发的 Git 基线。
下一工程里程碑:Manifest 真实解析与 Go CLI 基础入口。
当前阶段文档:docs/reports/current-stage-prepush.md