dsh-kingdom 3.1.0 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +252 -244
  2. package/docs/DISPATCH-IDENTITY-PROBE.md +79 -0
  3. package/docs/DSH-KINGDOM-3.0-ANNOUNCEMENT.md +13 -13
  4. package/docs/V3.0-RELEASE-NOTES.md +21 -21
  5. package/docs/V3.0-USER-GUIDE.md +33 -33
  6. package/docs/V3.1-RELEASE-NOTES.md +76 -72
  7. package/docs/V3.2-RELEASE-NOTES.md +108 -0
  8. package/docs/V3.2.1-RELEASE-NOTES.md +39 -0
  9. package/lib/adapter/dsh-backend.js +189 -11
  10. package/lib/adapter/dsh-backend.js.map +1 -1
  11. package/lib/adapter/dsh-session-events.js +51 -7
  12. package/lib/adapter/dsh-session-events.js.map +1 -1
  13. package/lib/core/binding.js +166 -61
  14. package/lib/core/binding.js.map +1 -1
  15. package/lib/core/db.js +593 -546
  16. package/lib/core/db.js.map +1 -1
  17. package/lib/core/governed.js +20 -6
  18. package/lib/core/governed.js.map +1 -1
  19. package/lib/core/owner-binding-intent.js +14 -25
  20. package/lib/core/owner-binding-intent.js.map +1 -1
  21. package/lib/core/owner-window.js +106 -12
  22. package/lib/core/owner-window.js.map +1 -1
  23. package/lib/core/task-service.js +4 -1
  24. package/lib/core/task-service.js.map +1 -1
  25. package/lib/core/territory.js +43 -9
  26. package/lib/core/territory.js.map +1 -1
  27. package/lib/core/usage.js +10 -6
  28. package/lib/core/usage.js.map +1 -1
  29. package/lib/core/workspace-admission.js +31 -7
  30. package/lib/core/workspace-admission.js.map +1 -1
  31. package/lib/dispatch/service.js +141 -7
  32. package/lib/dispatch/service.js.map +1 -1
  33. package/lib/gui/contract.js.map +1 -1
  34. package/lib/gui/control-contract.js +3 -2
  35. package/lib/gui/control-contract.js.map +1 -1
  36. package/lib/gui/owner-ui.js +43 -2
  37. package/lib/gui/owner-ui.js.map +1 -1
  38. package/lib/gui/workbench-ui.js +15 -3
  39. package/lib/gui/workbench-ui.js.map +1 -1
  40. package/lib/gui/workbench.js +10 -0
  41. package/lib/gui/workbench.js.map +1 -1
  42. package/lib/index.js +78 -20
  43. package/lib/index.js.map +1 -1
  44. package/lib/types/adapter/contract.d.ts +20 -0
  45. package/lib/types/adapter/dsh-backend.d.ts +5 -1
  46. package/lib/types/adapter/dsh-session-events.d.ts +10 -1
  47. package/lib/types/core/binding.d.ts +14 -0
  48. package/lib/types/core/db.d.ts +16 -0
  49. package/lib/types/core/governed.d.ts +5 -0
  50. package/lib/types/core/owner-binding-intent.d.ts +9 -1
  51. package/lib/types/core/owner-window.d.ts +2 -1
  52. package/lib/types/core/territory.d.ts +18 -3
  53. package/lib/types/core/workspace-admission.d.ts +13 -1
  54. package/lib/types/dispatch/service.d.ts +18 -14
  55. package/lib/types/gui/contract.d.ts +9 -0
  56. package/lib/types/index.d.ts +11 -1
  57. package/lib/worker/governed-executor.js +18 -0
  58. package/lib/worker/governed-executor.js.map +1 -1
  59. package/package.json +84 -79
@@ -17,6 +17,7 @@
17
17
  * 配合 `authMode: 'session-bound'`,`requireRole` 会按调用方 session 校验。
18
18
  */
19
19
  import { randomUUID } from 'node:crypto';
20
+ import { applyTerritorySupervisor } from './territory.js';
20
21
  import { requireOwnerControl } from './owner-control.js';
21
22
  export const ROLE_TYPES = ['OWNER', 'CHANCELLOR', 'SUPERVISOR', 'WORKER'];
22
23
  /**
@@ -133,41 +134,23 @@ export function requireAdmin(store, kingdomId, auth, operation) {
133
134
  message: 'OWNER_CONTROL_REQUIRED: 该 Owner-only 写操作只能通过 direct /kingdom Slash 的 Owner Control Plane 执行。',
134
135
  };
135
136
  }
136
- export function bindRole(store, input, auth) {
137
- const admin = requireAdmin(store, input.kingdomId, auth, { operation: 'role.bind', input });
138
- if (!admin.ok)
139
- return admin.message;
140
- const roleType = input.roleType.trim().toUpperCase();
141
- if (!ROLE_TYPES.includes(roleType)) {
142
- return `错误:role_type 必须是 ${ROLE_TYPES.join(' / ')} 之一。`;
143
- }
144
- const roleName = input.roleName?.trim() || `${roleType}-${randomUUID().slice(0, 8)}`;
145
- const sessionId = input.sessionId?.trim() || null;
146
- const modelName = input.modelName?.trim() || null;
147
- const agentName = input.agentName?.trim() || null;
148
- const sessionMeta = normalizeSessionMeta(input.sessionMeta);
149
- // Singleton 是 Domain Policy(v0.7.0 M2):OWNER/CHANCELLOR 拒绝第二个 ACTIVE;
150
- // SUPERVISOR/WORKER 允许多绑定(getBindingsByRole 供派发/scope 使用)。
151
- const existing = store.getBindingByRole(input.kingdomId, roleType);
152
- if (existing && SINGLETON_ROLES.includes(roleType)) {
153
- return `角色 ${roleType} 已有绑定(${existing.role_name},session=${existing.session_id ?? '未绑定 session'}` +
154
- `${existing.model_name ? `,model=${existing.model_name}` : ''}` +
155
- `${existing.agent_name ? `,agent=${existing.agent_name}` : ''})。` +
156
- `(${roleType} 是单席位角色,同一时间只允许一个 ACTIVE 绑定。` +
157
- `如需更换会话/身份,用 kingdom_bind_session;如需换届,用 kingdom_unbind_role 退任后重绑。)`;
158
- }
137
+ /**
138
+ * 授权无关的「插入席位 + 写 ROLE_BOUND」。调用方负责鉴权、单席位策略与事务边界。
139
+ * 3.2.0 抽出,供 `bindRole` 与 `bindSupervisorForTerritory`(原子"席位+领地")共用。
140
+ */
141
+ function insertRoleBindingRecord(store, fields) {
159
142
  const now = new Date().toISOString();
160
143
  const bindingId = randomUUID();
161
144
  store.insertBinding({
162
145
  binding_id: bindingId,
163
- kingdom_id: input.kingdomId,
164
- role_type: roleType,
165
- role_name: roleName,
146
+ kingdom_id: fields.kingdomId,
147
+ role_type: fields.roleType,
148
+ role_name: fields.roleName,
166
149
  runtime_type: 'dsh',
167
- session_id: sessionId,
168
- model_name: modelName,
169
- agent_name: agentName,
170
- session_meta: sessionMeta,
150
+ session_id: fields.sessionId,
151
+ model_name: fields.modelName,
152
+ agent_name: fields.agentName,
153
+ session_meta: fields.sessionMeta,
171
154
  execution_profile_json: null,
172
155
  status: 'ACTIVE',
173
156
  retired_at: null,
@@ -178,26 +161,63 @@ export function bindRole(store, input, auth) {
178
161
  });
179
162
  store.appendEvent({
180
163
  event_id: randomUUID(),
181
- kingdom_id: input.kingdomId,
164
+ kingdom_id: fields.kingdomId,
182
165
  event_type: 'ROLE_BOUND',
183
166
  // v0.5.2 审计修正:actor = 实际操作者(session-bound 下为可信 OWNER);
184
167
  // declarative 演示模式无可信 principal,保留被操作角色作兼容标注。
185
168
  actor_role: 'OWNER',
186
- actor_id: admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null,
169
+ actor_id: fields.actorId,
187
170
  target_type: 'binding',
188
171
  target_id: bindingId,
189
172
  payload_json: JSON.stringify({
190
- role_name: roleName,
191
- role_type: roleType,
192
- session_id: sessionId,
193
- model_name: modelName,
194
- agent_name: agentName,
195
- session_meta: sessionMeta ? JSON.parse(sessionMeta) : null,
196
- session_evidence: input.sessionEvidence ?? null,
197
- ...admin.eventSource,
173
+ role_name: fields.roleName,
174
+ role_type: fields.roleType,
175
+ session_id: fields.sessionId,
176
+ model_name: fields.modelName,
177
+ agent_name: fields.agentName,
178
+ session_meta: fields.sessionMeta ? JSON.parse(fields.sessionMeta) : null,
179
+ session_evidence: fields.sessionEvidence,
180
+ ...fields.eventSource,
198
181
  }),
199
182
  created_at: now,
200
183
  });
184
+ return bindingId;
185
+ }
186
+ export function bindRole(store, input, auth) {
187
+ const admin = requireAdmin(store, input.kingdomId, auth, { operation: 'role.bind', input });
188
+ if (!admin.ok)
189
+ return admin.message;
190
+ const roleType = input.roleType.trim().toUpperCase();
191
+ if (!ROLE_TYPES.includes(roleType)) {
192
+ return `错误:role_type 必须是 ${ROLE_TYPES.join(' / ')} 之一。`;
193
+ }
194
+ const roleName = input.roleName?.trim() || `${roleType}-${randomUUID().slice(0, 8)}`;
195
+ const sessionId = input.sessionId?.trim() || null;
196
+ const modelName = input.modelName?.trim() || null;
197
+ const agentName = input.agentName?.trim() || null;
198
+ const sessionMeta = normalizeSessionMeta(input.sessionMeta);
199
+ // Singleton 是 Domain Policy(v0.7.0 M2):OWNER/CHANCELLOR 拒绝第二个 ACTIVE;
200
+ // SUPERVISOR/WORKER 允许多绑定(getBindingsByRole 供派发/scope 使用)。
201
+ const existing = store.getBindingByRole(input.kingdomId, roleType);
202
+ if (existing && SINGLETON_ROLES.includes(roleType)) {
203
+ return `角色 ${roleType} 已有绑定(${existing.role_name},session=${existing.session_id ?? '未绑定 session'}` +
204
+ `${existing.model_name ? `,model=${existing.model_name}` : ''}` +
205
+ `${existing.agent_name ? `,agent=${existing.agent_name}` : ''})。` +
206
+ `(${roleType} 是单席位角色,同一时间只允许一个 ACTIVE 绑定。` +
207
+ `如需更换会话/身份,用 kingdom_bind_session;如需换届,用 kingdom_unbind_role 退任后重绑。)`;
208
+ }
209
+ insertRoleBindingRecord(store, {
210
+ kingdomId: input.kingdomId,
211
+ roleType,
212
+ roleName,
213
+ sessionId,
214
+ modelName,
215
+ agentName,
216
+ sessionMeta,
217
+ sessionEvidence: input.sessionEvidence ?? null,
218
+ actorId: admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null,
219
+ eventSource: admin.eventSource,
220
+ });
201
221
  const identity = [
202
222
  sessionId ? `session=${sessionId}` : null,
203
223
  modelName ? `model=${modelName}` : null,
@@ -205,6 +225,71 @@ export function bindRole(store, input, auth) {
205
225
  ].filter(Boolean).join(',');
206
226
  return `已绑定角色 ${roleType}(${roleName}${identity ? `,${identity}` : ',未指定会话身份'})。`;
207
227
  }
228
+ /** 事务(子事务)内信号:把「领地侧拒绝」带出内层作用域,从而回滚已插入的席位。 */
229
+ class SupervisorAttachRejected extends Error {
230
+ constructor(message) {
231
+ super(message);
232
+ this.name = 'SupervisorAttachRejected';
233
+ }
234
+ }
235
+ /**
236
+ * 3.2.0:**原子**地「建立主管席位 + 设为指定领地的主理」。
237
+ *
238
+ * Owner 口径(2026-09-28 + 2026-09-29 裁定):领地与主管完全绑定,不存在"没有领地的主管",
239
+ * 并且一个主管席位只主理一个领地。
240
+ * 两条事实在同一(子)事务内写入:领地侧不合法 → 内层回滚,绝不留下"席位已建、主理未设"的中间态。
241
+ * 冲突规则(由 `applyTerritorySupervisor` 统一执行):目标领地已有**在任 ACTIVE** 主理 → 拒绝
242
+ * (先解除再指派,不静默覆盖)。新建席位此刻尚未隶属任何领地,因此不会触发 1:1 的反向拒绝。
243
+ */
244
+ export function bindSupervisorForTerritory(store, input, auth) {
245
+ const admin = requireAdmin(store, input.kingdomId, auth, { operation: 'role.bind', input });
246
+ if (!admin.ok)
247
+ return admin.message;
248
+ const roleType = input.roleType.trim().toUpperCase();
249
+ if (roleType !== 'SUPERVISOR') {
250
+ return `错误:只有 SUPERVISOR 在任命时指定领地(收到 ${roleType || '空'})。`;
251
+ }
252
+ const territoryId = input.territoryId?.trim();
253
+ if (!territoryId) {
254
+ return '错误:任命主管必须同时指定领地(territory_id);主管席位不能没有领地。';
255
+ }
256
+ const roleName = input.roleName?.trim() || `SUPERVISOR-${randomUUID().slice(0, 8)}`;
257
+ const sessionId = input.sessionId?.trim() || null;
258
+ const modelName = input.modelName?.trim() || null;
259
+ const agentName = input.agentName?.trim() || null;
260
+ const sessionMeta = normalizeSessionMeta(input.sessionMeta);
261
+ const actorId = admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null;
262
+ try {
263
+ return store.withImmediateTransaction(() => {
264
+ const bindingId = insertRoleBindingRecord(store, {
265
+ kingdomId: input.kingdomId,
266
+ roleType,
267
+ roleName,
268
+ sessionId,
269
+ modelName,
270
+ agentName,
271
+ sessionMeta,
272
+ sessionEvidence: input.sessionEvidence ?? null,
273
+ actorId,
274
+ eventSource: admin.eventSource,
275
+ });
276
+ const attached = applyTerritorySupervisor(store, { kingdomId: input.kingdomId, territoryId, supervisorBindingId: bindingId }, { actorId, eventSource: admin.eventSource });
277
+ if (!attached.startsWith('领地「'))
278
+ throw new SupervisorAttachRejected(attached);
279
+ const identity = [
280
+ sessionId ? `session=${sessionId}` : '未绑定 session',
281
+ modelName ? `model=${modelName}` : null,
282
+ agentName ? `agent=${agentName}` : null,
283
+ ].filter(Boolean).join(',');
284
+ return `已任命主管 ${roleName}(${identity}):${attached}`;
285
+ });
286
+ }
287
+ catch (error) {
288
+ if (error instanceof SupervisorAttachRejected)
289
+ return error.message;
290
+ throw error;
291
+ }
292
+ }
208
293
  /**
209
294
  * v0.4:解绑(换届通道);v0.7.0(M2):**tombstone 退任**(不再物理删除)。
210
295
  * - OWNER 受保护:王国需要常驻 Owner,退任直接拒绝。
@@ -231,28 +316,48 @@ export function unbindRole(store, input, auth) {
231
316
  return `角色 ${binding.role_type}(${binding.role_name})已处于 RETIRED 状态,无需重复退任。`;
232
317
  }
233
318
  const reason = input.reason?.trim() ?? null;
234
- store.retireBinding(binding.binding_id, reason);
235
- store.appendEvent({
236
- event_id: randomUUID(),
237
- kingdom_id: input.kingdomId,
238
- event_type: 'ROLE_UNBOUND',
239
- // v0.5.2 审计修正:actor = 实际操作者(OWNER),target = 被退任的绑定。
240
- actor_role: 'OWNER',
241
- actor_id: admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null,
242
- target_type: 'binding',
243
- target_id: binding.binding_id,
244
- payload_json: JSON.stringify({
245
- role_type: binding.role_type,
246
- role_name: binding.role_name,
247
- session_id: binding.session_id,
248
- reason,
249
- status: 'RETIRED',
250
- ...admin.eventSource,
251
- }),
252
- created_at: new Date().toISOString(),
319
+ const actorId = admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null;
320
+ // v3.2.0(Owner D1,2026-09-28):退任与「解除该席位的主理关系」必须**同一事务**。
321
+ // 否则会留下「席位已 RETIRED、领地仍指向它」的悬挂责任:后续治理操作一律 fail-closed,
322
+ // 而领地状态自相矛盾。主管席位的领地归属是它的一部分,不能退任后残留。
323
+ return store.withImmediateTransaction(() => {
324
+ // 在写锁内重读归属,避免"读在事务外、潜在已被改绑"的窗口。
325
+ const linked = store.listTerritories(input.kingdomId)
326
+ .filter(territory => territory.status !== 'DELETED' && territory.supervisor_binding_id === binding.binding_id);
327
+ store.retireBinding(binding.binding_id, reason);
328
+ store.appendEvent({
329
+ event_id: randomUUID(),
330
+ kingdom_id: input.kingdomId,
331
+ event_type: 'ROLE_UNBOUND',
332
+ // v0.5.2 审计修正:actor = 实际操作者(OWNER),target = 被退任的绑定。
333
+ actor_role: 'OWNER',
334
+ actor_id: actorId,
335
+ target_type: 'binding',
336
+ target_id: binding.binding_id,
337
+ payload_json: JSON.stringify({
338
+ role_type: binding.role_type,
339
+ role_name: binding.role_name,
340
+ session_id: binding.session_id,
341
+ reason,
342
+ status: 'RETIRED',
343
+ ...admin.eventSource,
344
+ }),
345
+ created_at: new Date().toISOString(),
346
+ });
347
+ const released = [];
348
+ for (const territory of linked) {
349
+ const detail = applyTerritorySupervisor(store, { kingdomId: input.kingdomId, territoryId: territory.territory_id, supervisorBindingId: null }, { actorId, eventSource: admin.eventSource });
350
+ // 领地侧拒绝(例如已被并发改成别的 ACTIVE 主理)→ 抛出,整体回滚退任。
351
+ if (!detail.startsWith('领地「'))
352
+ throw new Error(`SUPERVISOR_RELEASE_REJECTED: ${detail}`);
353
+ released.push(territory.name);
354
+ }
355
+ return `角色 ${binding.role_type}(${binding.role_name},session=${binding.session_id ?? '未绑定'})已退任(RETIRED)` +
356
+ `${reason ? `,原因:${reason}` : ''}。历史记录仍可追溯;该角色席位现在空缺,可重新 kingdom_bind_role。` +
357
+ (released.length
358
+ ? `已同时解除其领地主理:${released.join('、')}(该领地现无主理,fail-closed 直到指派新的)。`
359
+ : '');
253
360
  });
254
- return `角色 ${binding.role_type}(${binding.role_name},session=${binding.session_id ?? '未绑定'})已退任(RETIRED)` +
255
- `${reason ? `,原因:${reason}` : ''}。历史记录仍可追溯;该角色席位现在空缺,可重新 kingdom_bind_role。`;
256
361
  }
257
362
  /**
258
363
  * v0.4:把角色绑定到(或改绑到)某个独立会话,并更新身份预留字段。
@@ -1 +1 @@
1
- {"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/core/binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.js","sourceRoot":"","sources":["../../src/core/binding.ts"],"names":[],"mappings":"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"}