v0.7.0 — M2 Organization Scale
Kingdom 从一条治理链升级为可横向扩展的 Agent 组织(v0.7.0 命题:过去发生的事情仍可解释,当前权力只有一个确定答案)。
New
- Role cardinality: SUPERVISOR ×N / WORKER ×N(OWNER/CHANCELLOR 保持 singleton 为 Domain Policy);
getBindingsByRole()/ explicitworker_binding_id; 多 Worker 派发(0/1/N 规则,WORKER_AMBIGUOUS)。 - Assignment Ledger: 权威派遣历史
task_assignments(previous 链表 + DB 层
one_active_assignment_per_task唯一索引——一个任务永远只有一个当前派遣);
tasks.assigned_binding_id只是当前投影。 - Handoff:
reviewTask(decision=HANDOFF, to_binding_id, reason)——原子治理事件
(关旧派遣 + 建新派遣 + 状态转移 +TASK_HANDED_OFF事件,任一步失败整体回滚);
新 Worker 上下文含原任务/验收/上一 Claim/artifacts/risks/handoff reason。 - Territory Scope:
kingdom_set_territory_supervisor(主理关系);未指派领地
fail-closed(TERRITORY_SUPERVISOR_MISSING);跨领地治理 DENY(TASK_OUT_OF_SCOPE,
session-bound 下强制);v2→v3 迁移自动 backfill(单 Supervisor 接管 NULL scope)。
Governance
- Binding tombstone: unbind = ACTIVE→RETIRED(+ retired_at/reason)——历史引用
(派遣/执行/事件 actor/领地主理)永远可解析,不再物理删除。 - Territory tombstone: delete = ACTIVE→DELETED(+ deleted_at/reason)——历史任务归属可解析。
- Topology Administration Plane: territory.create / territory.delete /
territory.set_supervisor 与 binding.* / execution_profile 一样,session-bound 下仅真实 OWNER。 - Schema v3: versioned transactional idempotent migration(role_bindings/territories
tombstone 列 + task_assignments + backfill +SCHEMA_VERSION=3)。
Assets
- dsh-kingdom-0.7.0.tgz (npm
dsh-kingdom@0.7.0, latest) - dsh-kingdom-gui-0.7.0.zip (multi-worker assign selector; execution-profile display)
Quality
- Plugin tests 33/33(M2 Gate: topology/scope/ledger/history/compat + M1 全量回归)
- GUI tests 43/43
- M2-F Scale Gate PASSED (live): 2 territories × 2 supervisors × 2 workers (different
ExecutionProfiles) — independent executions with distinct evidence columns; real HANDOFF
(Worker-A attempt 1 → Worker-B attempt 2) with full ledger chain andTASK_HANDED_OFFevent;
zero double-active assignments; retired bindings and deleted territories remain resolvable. - Design:
docs/M2-ORGANIZATION-SCALE-DESIGN.md(frozen v2)