Files
BlueArchiveToolkit/CURRENT_STATUS.md
T
nyaKazuha 789402c887 feat: add official resource sync pipeline
Add the production-facing official update service and bat-official-sync watch CLI for unattended resource synchronization.

Support launcher-resource discovery without installing the launcher, remote marker snapshots, local manifest audit and repair, official seed hash validation, bootstrap caching, richer Addressables coverage, SQLite resource persistence, and FFI JSON helpers.
2026-07-05 23:49:56 +08:00

5.9 KiB
Raw Blame History

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.md
  • PROJECT_PLAN.md
  • CURRENT_STATUS.md
  • DOCS_INDEX.md
  • CHANGELOG.md
  • CLAUDE.md
  • Cargo.toml
  • Cargo.lock
  • go.mod
  • Makefile
  • LICENSE

已归档

历史阶段报告已移动到:

  • 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/docsdocs/adapters 已删除。


3. 当前模块状态

Rust workspace

已显式纳入 workspace

  • core
  • adapters
  • infrastructure
  • crates/bat-assetbundle
  • crates/bat-cas-engine
  • crates/bat-ffi
  • crates/bat-patch

bat-core

状态:接口和领域骨架基本完成

已包含:

  • GameClient
  • GameVersion
  • Resource
  • Translation
  • CasRepository
  • ResourceRepository
  • TranslationRepository

待完成:

  • 领域服务模块仍为空。
  • 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 复杂字段解析未完成。
  • 客户端发现、备份、应用补丁流程尚未连接真实实现。
  • 官方资源 pull plan / update check 已明确 Linux 生产路径:显式 --auto-discover 或已审计 metadata snapshot,不安装、不执行官方启动器。
  • 官方 launcher bootstrap、GameMainConfig bootstrap 保留为底层显式开发/审计辅助路径。
  • 官方 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 调整。

核心能力未实装

下一阶段必须优先完成:

  1. Manifest 真实解析。
  2. Go CLI 基础入口。
  3. AssetBundle 解析。
  4. 文本提取中间格式。

不建议在这些完成前优先推进 Web UI。


6. 下一步建议

立即任务:

  1. 完成 Manifest 真实字段解析和资源模型映射。
  2. 落地 Go CLI 的 doctor 和基础命令框架。
  3. 设计 Resource Repository 的持久化 schema。
  4. 决定哪些 experiment 改动需要回流到 dev

当前总体完成度:约 18%
当前基线状态:已建立可继续开发的 Git 基线。
下一工程里程碑Manifest 真实解析与 Go CLI 基础入口。
当前阶段文档docs/reports/current-stage-prepush.md