本 board 陈述两类事实:
- 实现事实 — 在文档编写时对
ArcBlock/arc树及其测试成立。 - 操作事实 — 在指定
arcCLI release 上、于隔离目录实际跑过命令后成立。
不要在未重跑的情况下,把实现事实升级成操作配方。
本修订基线
| 轴 | 值 |
|---|---|
| Site board | docs/identity-data-spaces |
| 已验证 CLI | 本 board 的实现性事实对应 arc 2.0.0-beta.28(arc --version);操作性配方已在 2.0.0-beta.42 上重新捕获,那个版本的 arc space 命令面与之不同 |
| 操作捕获 | 隔离 --root-path + 夹具 --user-did(见 检查本地空间,已在 2.0.0-beta.42 上重跑) |
| 源码树 | ArcBlock/arc(文档编写时只读参考) |
| 主要源码区域 | providers/basic/did-space/、providers/basic/members/、services/shared/src/caller.ts、runtimes/node/src/daemon/auth/、packages/aos/src/session/ |
证据层级
| 级别 | 来源 | 可支撑 |
|---|---|---|
| 1 | 当前源码 + 目标版本测试 + 真实本地运行 | 「现在支持」 |
| 2 | 同一包的 package README | 范围说明;命令仍需重跑 |
| 3 | 已合并 PR | 某次变更曾落地;需复查后续漂移 |
| 4 | 架构草稿 / planning / 历史产品页 | 仅意图与沿革 |
复验清单
当 CLI 版本、provider 包或 session 叠加行为变化时,执行以下步骤。
A. CLI 身份
arc --version
arc space --help
arc did --help刷新任何操作页时,记录版本字符串。
B. 隔离 space 配方
用全新空 --root-path 重跑 检查本地空间 中的配方:
- 空 root 上的
list - 向
system与user两个片段目录执行sync(先用path把目标读回来——作用域目录是由 user DID 推导的) - 两个 scope 的
tree与path rm后再tree- 失败情形:缺失 app、
tree上无效 scope、缺失path参数
用新捕获替换粘贴输出。若耗时或字节数变化,不要保留旧数字。
C. 源码锚点(只读)
确认下列位置仍与正文一致:
| 主张 | 查看 |
|---|---|
| 调用者映射 + membership 标志 | services/shared/src/caller.ts |
| Node auth 设置 | runtimes/node/src/daemon/auth/index.ts |
| 角色失败关闭 | packages/aos/src/session/role-level.ts |
| Session 叠加 | packages/aos/src/session/session-user-afs.ts |
| DID Space 角色 + 本地 provider | providers/basic/did-space/src/local.ts |
| Transport 操作剥离 | providers/basic/did-space/src/client.ts |
| 隔离测试 | runtimes/node/test/daemon/two-user-space-isolation.test.ts、scope-user-space-overlay.test.ts |
D. 无新 E2E 时不要重申
- 完整 instance DID 开通生命周期
- 作为默认公开合同的 VC trust 门
- 针对特定生产服务器的远端
sync(一端是https://<host>) - 历史 DID Connect admin UI 作为 ARC 稳定表面
- 默认匿名公开分享的数据面
漂移处理
| 症状 | 动作 |
|---|---|
| CLI 输出仅耗时/大小不同 | 更新粘贴;保留步骤 |
| 子命令标志变化 | 更新 local-inspection,并链到 arc-cli 参考 |
| Session 叠加语义变化 | 更新 session-views 与隔离表;引用新测试 |
| 包重命名 | 更新 did-space 页导入与证据表 |
| 架构草稿与代码冲突 | 以代码为准;草稿仅作考古 |