当前版本提供追加日志公共 trait、默认 V1 块 codec、固定八位文件 Layout 和文件存储实现;网络与对象存储后端尚未实现。文件 segment 使用无后缀的八位编号,最大编号是 active,其余编号是 closed;允许结构编号缺号,rotate 保留旧 segment 并创建下一个编号。archive 使用同一 namespace 内的 rename,暂不支持跨磁盘 copy。
文件后端基于 `pi_async_fs`,公共错误使用 `pi_result`。`append` 接受任意 `DetachableWriteBuffer`,`append_stream` 支持把异步 chunk 流作为一个连续逻辑 block 写入。首个非空 chunk 的首次底层 append 开始前取消或 stream 错误不使 namespace 失效;开始写入后发生错误或取消会保留已写前缀并使共享 namespace 进入 `InvalidState`,调用方必须重建。测试使用 Tokio,库本身不绑定具体异步运行时。
本库只发出 `tracing` 事件;应用可通过 `pi_append_log::observability::init_observability` 初始化 `pi_logger` 日志 subscriber。
接口契约、设计取舍及默认 V1 格式提案见 [追加日志技术设计提案](docs/append-log-design.md)。
0.2 是破坏性升级:
- --