dsh-kingdom 1.0.0 → 2.0.0

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 (144) hide show
  1. package/ASSETS_NOTICE.md +18 -2
  2. package/LICENSE +661 -661
  3. package/NOTICE +9 -9
  4. package/README.md +26 -20
  5. package/THIRD_PARTY_NOTICES.md +84 -0
  6. package/cordis.patch.yml +6 -6
  7. package/docs/V2.0-RELEASE-NOTES.md +30 -0
  8. package/docs/V2.0-USER-GUIDE.md +74 -0
  9. package/lib/adapter/dsh-backend.js +10 -6
  10. package/lib/adapter/dsh-backend.js.map +1 -1
  11. package/lib/adapter/dsh-cost.js +68 -0
  12. package/lib/adapter/dsh-cost.js.map +1 -0
  13. package/lib/adapter/dsh-session-events.js +86 -0
  14. package/lib/adapter/dsh-session-events.js.map +1 -0
  15. package/lib/adapter/dsh-usage.js +159 -0
  16. package/lib/adapter/dsh-usage.js.map +1 -0
  17. package/lib/capability/admin.js +4 -4
  18. package/lib/capability/admin.js.map +1 -1
  19. package/lib/capability/dsh-enforcement.js +19 -4
  20. package/lib/capability/dsh-enforcement.js.map +1 -1
  21. package/lib/capability/service.js +11 -0
  22. package/lib/capability/service.js.map +1 -1
  23. package/lib/capability/tool-disclosure.js +144 -0
  24. package/lib/capability/tool-disclosure.js.map +1 -0
  25. package/lib/core/binding.js +20 -18
  26. package/lib/core/binding.js.map +1 -1
  27. package/lib/core/budget.js +304 -0
  28. package/lib/core/budget.js.map +1 -0
  29. package/lib/core/collaboration.js +422 -0
  30. package/lib/core/collaboration.js.map +1 -0
  31. package/lib/core/cost.js +212 -0
  32. package/lib/core/cost.js.map +1 -0
  33. package/lib/core/db.js +124 -0
  34. package/lib/core/db.js.map +1 -1
  35. package/lib/core/governed-claim.js +46 -0
  36. package/lib/core/governed-claim.js.map +1 -0
  37. package/lib/core/governed.js +112 -7
  38. package/lib/core/governed.js.map +1 -1
  39. package/lib/core/kingdom.js +58 -56
  40. package/lib/core/kingdom.js.map +1 -1
  41. package/lib/core/owner-control.js +48 -7
  42. package/lib/core/owner-control.js.map +1 -1
  43. package/lib/core/owner-window.js +822 -0
  44. package/lib/core/owner-window.js.map +1 -0
  45. package/lib/core/task-service.js +103 -72
  46. package/lib/core/task-service.js.map +1 -1
  47. package/lib/core/territory.js +33 -11
  48. package/lib/core/territory.js.map +1 -1
  49. package/lib/core/usage.js +39 -0
  50. package/lib/core/usage.js.map +1 -0
  51. package/lib/core/workspace-admission.js +225 -0
  52. package/lib/core/workspace-admission.js.map +1 -0
  53. package/lib/dispatch/evidence.js +5 -2
  54. package/lib/dispatch/evidence.js.map +1 -1
  55. package/lib/dispatch/service.js +136 -5
  56. package/lib/dispatch/service.js.map +1 -1
  57. package/lib/gui/assets/characters/chancellor-idle.svg +67 -221
  58. package/lib/gui/assets/characters/chancellor-sleeping.svg +67 -221
  59. package/lib/gui/assets/characters/chancellor-thinking.svg +67 -221
  60. package/lib/gui/assets/characters/chancellor-working.svg +67 -221
  61. package/lib/gui/assets/characters/knight-redraw-r1-idle.svg +67 -111
  62. package/lib/gui/assets/characters/knight-redraw-r1-sleeping.svg +67 -115
  63. package/lib/gui/assets/characters/knight-redraw-r1-thinking.svg +67 -173
  64. package/lib/gui/assets/characters/knight-redraw-r1-working.svg +67 -248
  65. package/lib/gui/assets/characters/supervisor-idle.svg +67 -266
  66. package/lib/gui/assets/characters/supervisor-sleeping.svg +67 -266
  67. package/lib/gui/assets/characters/supervisor-thinking.svg +67 -266
  68. package/lib/gui/assets/characters/supervisor-working.svg +67 -266
  69. package/lib/gui/console-app.js +1964 -1927
  70. package/lib/gui/console-app.js.map +1 -1
  71. package/lib/gui/contract.js.map +1 -1
  72. package/lib/gui/control-contract.js +2 -0
  73. package/lib/gui/control-contract.js.map +1 -1
  74. package/lib/gui/local-control.js +1 -0
  75. package/lib/gui/local-control.js.map +1 -1
  76. package/lib/gui/owner-control.js +310 -0
  77. package/lib/gui/owner-control.js.map +1 -0
  78. package/lib/gui/owner-ui.js +191 -0
  79. package/lib/gui/owner-ui.js.map +1 -0
  80. package/lib/gui/server.js +4 -0
  81. package/lib/gui/server.js.map +1 -1
  82. package/lib/gui/snapshot.js +150 -15
  83. package/lib/gui/snapshot.js.map +1 -1
  84. package/lib/gui/visual-assets.js +56 -0
  85. package/lib/gui/visual-assets.js.map +1 -0
  86. package/lib/gui/visual-system.js +272 -0
  87. package/lib/gui/visual-system.js.map +1 -0
  88. package/lib/gui/workbench-ui.js +358 -0
  89. package/lib/gui/workbench-ui.js.map +1 -0
  90. package/lib/gui/workbench.js +163 -0
  91. package/lib/gui/workbench.js.map +1 -0
  92. package/lib/index.js +269 -39
  93. package/lib/index.js.map +1 -1
  94. package/lib/runner-context-broker.js +8 -2
  95. package/lib/runner-context-broker.js.map +1 -1
  96. package/lib/runtime-cost-observer.js +145 -0
  97. package/lib/runtime-cost-observer.js.map +1 -0
  98. package/lib/types/adapter/contract.d.ts +2 -0
  99. package/lib/types/adapter/dsh-backend.d.ts +2 -6
  100. package/lib/types/adapter/dsh-cost.d.ts +13 -0
  101. package/lib/types/adapter/dsh-session-events.d.ts +16 -0
  102. package/lib/types/adapter/dsh-usage.d.ts +36 -0
  103. package/lib/types/capability/dsh-enforcement.d.ts +8 -6
  104. package/lib/types/capability/service.d.ts +1 -0
  105. package/lib/types/capability/tool-disclosure.d.ts +36 -0
  106. package/lib/types/core/binding.d.ts +4 -3
  107. package/lib/types/core/budget.d.ts +81 -0
  108. package/lib/types/core/collaboration.d.ts +110 -0
  109. package/lib/types/core/cost.d.ts +99 -0
  110. package/lib/types/core/db.d.ts +21 -0
  111. package/lib/types/core/governed-claim.d.ts +7 -0
  112. package/lib/types/core/governed.d.ts +19 -1
  113. package/lib/types/core/kingdom.d.ts +3 -0
  114. package/lib/types/core/owner-control.d.ts +19 -3
  115. package/lib/types/core/owner-window.d.ts +226 -0
  116. package/lib/types/core/task-service.d.ts +36 -0
  117. package/lib/types/core/territory.d.ts +7 -0
  118. package/lib/types/core/usage.d.ts +26 -0
  119. package/lib/types/core/workspace-admission.d.ts +43 -0
  120. package/lib/types/dispatch/evidence.d.ts +2 -5
  121. package/lib/types/dispatch/service.d.ts +18 -0
  122. package/lib/types/gui/console-app.d.ts +2 -1
  123. package/lib/types/gui/contract.d.ts +176 -2
  124. package/lib/types/gui/control-contract.d.ts +1 -1
  125. package/lib/types/gui/owner-control.d.ts +45 -0
  126. package/lib/types/gui/owner-ui.d.ts +2 -0
  127. package/lib/types/gui/server.d.ts +3 -0
  128. package/lib/types/gui/snapshot.d.ts +3 -10
  129. package/lib/types/gui/visual-assets.d.ts +27 -0
  130. package/lib/types/gui/visual-system.d.ts +2 -0
  131. package/lib/types/gui/workbench-ui.d.ts +5 -0
  132. package/lib/types/gui/workbench.d.ts +33 -0
  133. package/lib/types/index.d.ts +36 -4
  134. package/lib/types/runtime-cost-observer.d.ts +22 -0
  135. package/lib/types/worker/collaboration.d.ts +35 -0
  136. package/lib/types/worker/executor.d.ts +3 -0
  137. package/lib/types/worker/governed-executor.d.ts +2 -0
  138. package/lib/worker/collaboration.js +172 -0
  139. package/lib/worker/collaboration.js.map +1 -0
  140. package/lib/worker/executor.js +5 -1
  141. package/lib/worker/executor.js.map +1 -1
  142. package/lib/worker/governed-executor.js +161 -93
  143. package/lib/worker/governed-executor.js.map +1 -1
  144. package/package.json +19 -8
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Read the current snapshot on every call. Only absence of the modern API
3
+ * permits legacy access; a broken advertised API must not hide behind stale
4
+ * legacy evidence. null means unreadable, whereas [] is a proven empty log.
5
+ */
6
+ export function readDshSessionEvents(session) {
7
+ if (session === null || typeof session !== 'object')
8
+ return null;
9
+ try {
10
+ const source = session;
11
+ let events;
12
+ if ('snapshotEvents' in source) {
13
+ const read = source.snapshotEvents;
14
+ if (typeof read !== 'function')
15
+ return null;
16
+ events = read.call(source);
17
+ }
18
+ else {
19
+ events = source.events;
20
+ }
21
+ if (!Array.isArray(events))
22
+ return null;
23
+ for (const event of events) {
24
+ if (event === null || typeof event !== 'object' || Array.isArray(event)
25
+ || typeof event.type !== 'string' || event.type.length === 0
26
+ || (event.data !== undefined && (event.data === null || typeof event.data !== 'object' || Array.isArray(event.data))))
27
+ return null;
28
+ }
29
+ return events;
30
+ }
31
+ catch {
32
+ return null;
33
+ }
34
+ }
35
+ /** Only explicit message IDs establish correlation, never text substrings. */
36
+ export function locateDshDispatchRef(events, ref) {
37
+ if (!ref.trim())
38
+ return -1;
39
+ return events.findIndex(event => {
40
+ const nested = event.data?.message;
41
+ if (event.type === 'user/message')
42
+ return (event.data?.id ?? nested?.id) === ref;
43
+ return event.type === 'agent/inbox/spliced' && Array.isArray(event.data?.inserted)
44
+ && event.data.inserted.some(item => item !== null && typeof item === 'object' && item.id === ref);
45
+ });
46
+ }
47
+ /** Read only this dispatch's response; absent output never borrows a prior Claim. */
48
+ export function readDshDispatchSummary(session, dispatchRef) {
49
+ const events = readDshSessionEvents(session);
50
+ if (events === null)
51
+ return null;
52
+ const start = locateDshDispatchRef(events, dispatchRef);
53
+ if (start < 0)
54
+ return null;
55
+ let turn = null;
56
+ let summary = null;
57
+ for (let i = start + 1; i < events.length; i++) {
58
+ const event = events[i];
59
+ if (event.type === 'user/message') {
60
+ const id = event.data?.id ?? event.data?.message?.id;
61
+ if (id !== dispatchRef)
62
+ break;
63
+ }
64
+ if (event.type === 'turn/start') {
65
+ if (turn !== null)
66
+ break;
67
+ if (typeof event.data?.turn !== 'number')
68
+ return null;
69
+ turn = event.data.turn;
70
+ }
71
+ if (event.type !== 'assistant/message' || turn === null)
72
+ continue;
73
+ if (event.data?.turn !== undefined && event.data.turn !== turn)
74
+ return null;
75
+ const data = event.data;
76
+ const parts = Array.isArray(data?.message?.content) ? data.message.content : [];
77
+ const texts = parts.flatMap(part => part !== null && typeof part === 'object'
78
+ && part.type === 'text' && typeof part.text === 'string'
79
+ ? [part.text] : []);
80
+ const text = texts.length ? texts.join('\n') : data?.message?.text ?? data?.text;
81
+ if (typeof text === 'string' && text.trim())
82
+ summary = text;
83
+ }
84
+ return summary;
85
+ }
86
+ //# sourceMappingURL=dsh-session-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsh-session-events.js","sourceRoot":"","sources":["../../src/adapter/dsh-session-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,159 @@
1
+ import { readDshSessionEvents } from './dsh-session-events.js';
2
+ const count = (value) => typeof value === 'number' && Number.isSafeInteger(value) && value >= 0;
3
+ const record = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
4
+ const messageId = (event) => event.data?.id ?? (record(event.data?.message) ? event.data.message.id : undefined);
5
+ export function normalizeDshUsageCounts(value) {
6
+ if (!record(value) || !count(value.uncachedInputTokens) || !count(value.outputTokens) || !count(value.totalTokens))
7
+ return null;
8
+ const result = {
9
+ uncachedInputTokens: value.uncachedInputTokens, outputTokens: value.outputTokens, totalTokens: value.totalTokens,
10
+ };
11
+ for (const key of ['cacheReadTokens', 'cacheWriteTokens', 'reasoningTokens']) {
12
+ if (value[key] !== undefined) {
13
+ if (!count(value[key]))
14
+ return null;
15
+ result[key] = value[key];
16
+ }
17
+ }
18
+ const knownPrompt = result.uncachedInputTokens + (result.cacheReadTokens ?? 0) + (result.cacheWriteTokens ?? 0);
19
+ const exactPrompt = result.totalTokens - result.outputTokens;
20
+ if (!count(knownPrompt) || !count(exactPrompt) || exactPrompt < knownPrompt
21
+ || (result.reasoningTokens !== undefined && result.reasoningTokens > result.outputTokens)
22
+ || (result.cacheReadTokens !== undefined && result.cacheWriteTokens !== undefined && exactPrompt !== knownPrompt))
23
+ return null;
24
+ if (value.routes !== undefined) {
25
+ if (!Array.isArray(value.routes) || value.routes.length > 128)
26
+ return null;
27
+ const routes = [];
28
+ for (const route of value.routes) {
29
+ if (!record(route) || typeof route.provider !== 'string' || typeof route.model !== 'string'
30
+ || !route.provider.trim() || !route.model.trim() || route.provider.length > 256 || route.model.length > 256)
31
+ return null;
32
+ routes.push({ provider: route.provider, model: route.model });
33
+ }
34
+ result.routes = routes;
35
+ }
36
+ return result;
37
+ }
38
+ function hasUsage(event) {
39
+ let sample = event.data?.usage;
40
+ if (sample === undefined && Array.isArray(event.data?.stream)) {
41
+ for (const item of event.data.stream) {
42
+ if (record(item) && item.type === 'chunk' && record(item.chunk) && item.chunk.type === 'usage')
43
+ sample = item.chunk.usage;
44
+ }
45
+ }
46
+ return record(sample) && count(sample.inputTokens) && count(sample.outputTokens);
47
+ }
48
+ /** Pure extraction from an already acquired snapshot; no persistence or model calls. */
49
+ export function extractDshDispatchUsage(events, runtimeDispatchRef, deriveTurnUsage) {
50
+ const base = { type: 'DshDispatchUsage/v1', source: 'provider-reported', runtimeDispatchRef,
51
+ turn: null, fromSeq: null, throughSeq: null,
52
+ observedRequests: 0, reportedRequests: 0, usage: null };
53
+ const unavailable = (reasonCode) => ({ ...base, status: 'UNAVAILABLE', reasonCode });
54
+ if (events === null)
55
+ return unavailable('EVENTS_UNREADABLE');
56
+ if (!runtimeDispatchRef.trim() || runtimeDispatchRef.length > 256)
57
+ return unavailable('DISPATCH_REF_INVALID');
58
+ const users = events.map((event, index) => event.type === 'user/message' && messageId(event) === runtimeDispatchRef ? index : -1).filter(index => index >= 0);
59
+ if (users.length !== 1)
60
+ return unavailable(users.length === 0 ? 'DISPATCH_NOT_ADMITTED' : 'DISPATCH_AMBIGUOUS');
61
+ const userIndex = users[0];
62
+ const receipts = events.map((event, index) => event.type === 'agent/inbox/spliced' && Array.isArray(event.data?.inserted)
63
+ && event.data.inserted.some(item => record(item) && item.id === runtimeDispatchRef) ? index : -1).filter(index => index >= 0);
64
+ if (receipts.length > 1 || (receipts.length === 1 && receipts[0] > userIndex))
65
+ return unavailable('DISPATCH_AMBIGUOUS');
66
+ const receiptIndex = receipts[0] ?? userIndex;
67
+ let start = -1;
68
+ // Modern DSH opens the turn before admitting its user/message. Legacy
69
+ // events-only sessions may admit the user before turn/start.
70
+ for (let i = userIndex - 1; i >= (receipts.length ? receiptIndex : 0); i--) {
71
+ if (events[i].type === 'turn/end')
72
+ break;
73
+ if (events[i].type === 'turn/start') {
74
+ start = i;
75
+ break;
76
+ }
77
+ }
78
+ if (start < 0)
79
+ start = events.findIndex((event, index) => index > userIndex && event.type === 'turn/start');
80
+ if (start < 0 || !count(events[start].data?.turn))
81
+ return unavailable('TURN_NOT_OBSERVED');
82
+ const turn = events[start].data.turn;
83
+ base.turn = turn;
84
+ base.fromSeq = count(events[start].seq) ? events[start].seq : null;
85
+ let end = -1;
86
+ for (let i = start + 1; i < events.length; i++) {
87
+ if (events[i].type === 'turn/start')
88
+ return unavailable('TURN_BOUNDARY_AMBIGUOUS');
89
+ if (events[i].type === 'turn/end') {
90
+ if (events[i].data?.turn !== turn)
91
+ return unavailable('TURN_BOUNDARY_AMBIGUOUS');
92
+ end = i;
93
+ break;
94
+ }
95
+ }
96
+ if (end >= 0 && userIndex > end)
97
+ return unavailable('DISPATCH_OUTSIDE_TURN');
98
+ const through = end >= 0 ? end : events.length - 1;
99
+ base.throughSeq = count(events[through]?.seq) ? events[through].seq : null;
100
+ for (let i = Math.min(receiptIndex, start); i <= through; i++) {
101
+ if (events[i].type === 'user/message' && messageId(events[i]) !== runtimeDispatchRef)
102
+ return unavailable('FOREIGN_INPUT');
103
+ }
104
+ const local = events.slice(start, through + 1);
105
+ if (local.some(event => event.seq !== undefined)) {
106
+ for (let i = 0; i < local.length; i++) {
107
+ if (!count(local[i].seq) || (i > 0 && local[i].seq !== local[i - 1].seq + 1))
108
+ return unavailable('EVENT_SEQUENCE_INVALID');
109
+ }
110
+ }
111
+ let slot = -1;
112
+ const reported = new Set();
113
+ for (const event of local) {
114
+ if (event.type === 'step/start' || event.type === 'llm/retry-started') {
115
+ if (event.data?.turn !== turn || !count(event.data?.step))
116
+ return unavailable('REQUEST_BOUNDARY_AMBIGUOUS');
117
+ slot++;
118
+ base.observedRequests++;
119
+ }
120
+ if ((event.type === 'assistant/message' || event.type === 'assistant/attempt') && hasUsage(event) && slot >= 0)
121
+ reported.add(slot);
122
+ }
123
+ base.reportedRequests = reported.size;
124
+ if (deriveTurnUsage === null)
125
+ return { ...base, status: 'UNAVAILABLE', reasonCode: 'USAGE_READER_UNAVAILABLE' };
126
+ if (end < 0)
127
+ return { ...base, status: reported.size ? 'PARTIAL' : 'UNAVAILABLE', reasonCode: 'TURN_IN_PROGRESS' };
128
+ let usage;
129
+ try {
130
+ usage = normalizeDshUsageCounts(deriveTurnUsage(local));
131
+ }
132
+ catch {
133
+ return { ...base, status: 'UNAVAILABLE', reasonCode: 'USAGE_READER_FAILED' };
134
+ }
135
+ if (usage === null || base.observedRequests === 0)
136
+ return { ...base, status: reported.size ? 'PARTIAL' : 'UNAVAILABLE', reasonCode: 'USAGE_INCOMPLETE' };
137
+ return { ...base, status: 'COMPLETE', reasonCode: null, usage };
138
+ }
139
+ let publicUsageReader;
140
+ /** Optional public package export; never deep-import private runtime files. */
141
+ export function loadDshUsageReader() {
142
+ publicUsageReader ??= (async () => {
143
+ try {
144
+ const publicEntry = '@deepseek-ai/dsh-token-meter/client';
145
+ const module = await import(publicEntry);
146
+ return record(module) && typeof module.deriveTurnTokenUsage === 'function'
147
+ ? module.deriveTurnTokenUsage : null;
148
+ }
149
+ catch {
150
+ return null;
151
+ }
152
+ })();
153
+ return publicUsageReader;
154
+ }
155
+ export async function observeDshDispatchUsage(session, runtimeDispatchRef) {
156
+ const reader = await loadDshUsageReader();
157
+ return extractDshDispatchUsage(readDshSessionEvents(session), runtimeDispatchRef, reader);
158
+ }
159
+ //# sourceMappingURL=dsh-usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsh-usage.js","sourceRoot":"","sources":["../../src/adapter/dsh-usage.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ function parseCeiling(json) {
36
36
  * tool arguments is never accepted here.
37
37
  */
38
38
  export function setCapabilityCeiling(store, input, auth) {
39
- const admin = requireAdmin(store, input.kingdomId, auth);
39
+ const admin = requireAdmin(store, input.kingdomId, auth, { operation: 'ceiling', input });
40
40
  if (!admin.ok)
41
41
  return `CONFIG_DENIED: ${admin.message}`;
42
42
  let normalized = null;
@@ -53,15 +53,15 @@ export function setCapabilityCeiling(store, input, auth) {
53
53
  event_id: randomUUID(),
54
54
  kingdom_id: input.kingdomId,
55
55
  event_type: 'CAPABILITY_CEILING_UPDATED',
56
- actor_role: admin.owner ? 'OWNER' : null,
56
+ actor_role: 'OWNER',
57
57
  actor_id: admin.ownerControl ? admin.ownerPrincipalId : admin.owner?.binding_id ?? null,
58
58
  target_type: 'kingdom',
59
59
  target_id: input.kingdomId,
60
60
  payload_json: JSON.stringify({
61
61
  ceiling: value,
62
62
  cleared: value === null,
63
- source: 'direct-owner-slash',
64
- ...(admin.ownerControl ? { source_channel: 'LOCAL_DIRECT_SLASH' } : {}),
63
+ source: admin.eventSource.source_channel === 'LOCAL_OWNER_GUI' ? 'local-owner-gui' : 'direct-owner-slash',
64
+ ...admin.eventSource,
65
65
  }),
66
66
  created_at: new Date().toISOString(),
67
67
  });
@@ -1 +1 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/capability/admin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAA;AAUjE,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAA;IACvE,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,6DAA6D,EAAE,CAAA;IAC9F,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAiC,CAAC,CAAA;IACjE,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,OAAO,KAAK,SAAS,EAAE,CAAC;YACnE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,sEAAsE,EAAE,CAAA;QACvG,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAe,EAAE,CAAA;AAClH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAmB,EACnB,KAAgC,EAChC,IAAgB;IAEhB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACxD,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAA;IAEvD,IAAI,UAAU,GAAkB,IAAI,CAAA;IACpC,IAAI,KAAK,GAAsB,IAAI,CAAA;IACnC,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC9C,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,kBAAkB,MAAM,CAAC,OAAO,EAAE,CAAA;QACzD,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QACpB,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IAC9D,KAAK,CAAC,WAAW,CAAC;QAChB,QAAQ,EAAE,UAAU,EAAE;QACtB,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,UAAU,EAAE,4BAA4B;QACxC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QACxC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,IAAI,IAAI;QACvF,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK,KAAK,IAAI;YACvB,MAAM,EAAE,oBAAoB;YAC5B,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC;QACF,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC,CAAA;IAEF,OAAO,KAAK,KAAK,IAAI;QACnB,CAAC,CAAC,oFAAoF;QACtF,CAAC,CAAC,gCAAgC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,mHAAmH,CAAA;AAClL,CAAC"}
1
+ {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/capability/admin.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { readDshSessionEvents } from '../adapter/dsh-session-events.js';
1
2
  /**
2
3
  * 真实工具面 shape 归一化(Owner S4 seam 裁决 · A/B 组合)。
3
4
  * 接受:字符串数组 / `[{name, description, parameters}, …]`(真实 `tools.schemas()` 实证 shape)/
@@ -96,8 +97,8 @@ function disposeDisposers(context, disposers) {
96
97
  }
97
98
  /** 只接受本次 setter 调用后追加、且字段值精确匹配的政策事件。 */
98
99
  function hasAppendedPolicyEvent(context, startIndex, type, field, expected) {
99
- const events = context.agent.session.events;
100
- return events.slice(startIndex).some((event) => event.type === type && event.data?.[field] === expected);
100
+ const events = readDshSessionEvents(context.agent.session);
101
+ return events !== null && events.slice(startIndex).some((event) => event.type === type && event.data?.[field] === expected);
101
102
  }
102
103
  /**
103
104
  * 从真实 DSH API 重建 context-bound RuntimeEnforceableSet(Owner S4 seam 裁决:A∩B)。
@@ -110,7 +111,9 @@ function hasAppendedPolicyEvent(context, startIndex, type, field, expected) {
110
111
  * - **Runtime Enforceable Tool Set = A ∩ B**;任一来源无法证明 → 空(fail-closed,不默认放行)。
111
112
  */
112
113
  export async function readEnforceableSet(context, deps) {
113
- const events = context.agent.session.events;
114
+ const events = readDshSessionEvents(context.agent.session);
115
+ if (events === null)
116
+ return { tools: [], sandboxMode: null, approvalPolicy: null, presetId: null };
114
117
  const sandboxEvents = events.filter(e => e.type === 'sandbox/mode');
115
118
  const approvalEvents = events.filter(e => e.type === 'approval/policy');
116
119
  const presetEvents = events.filter(e => e.type === 'permission/preset');
@@ -165,7 +168,10 @@ export async function materializeDshEnforcement(deps, context, request) {
165
168
  const disposers = [];
166
169
  const applied = [];
167
170
  const toolsApi = context.agent.ctx.tools;
168
- const policyEventStart = context.agent.session.events.length;
171
+ const beforeEvents = readDshSessionEvents(context.agent.session);
172
+ if (beforeEvents === null)
173
+ return { ok: false, evidenceJson: null, reasons: ['Session event snapshot unreadable; enforcement not attempted'] };
174
+ const policyEventStart = beforeEvents.length;
169
175
  // 1) 工具面:restrict(允许清单)+ guard(单调拒绝,body 不执行)
170
176
  if (!hasToolEnforcementSeam(toolsApi)) {
171
177
  reasons.push('agent.ctx.tools 无 restrict/guard(工具面无法 enforce)');
@@ -289,6 +295,15 @@ export async function materializeDshEnforcement(deps, context, request) {
289
295
  // evidence for the valid idempotent path; do not invent new events.
290
296
  applied.push(`permission:preset=${request.presetId}:idempotent-existing-state`);
291
297
  }
298
+ if (reasons.length === 0 && deps.toolDisclosure) {
299
+ try {
300
+ disposers.push(deps.toolDisclosure.install(context.agent, request.tools));
301
+ applied.push('tool-disclosure:authorized-native-pilot');
302
+ }
303
+ catch (error) {
304
+ reasons.push(`工具展示试点无法安装: ${error instanceof Error ? error.message : String(error)}`);
305
+ }
306
+ }
292
307
  if (reasons.length > 0) {
293
308
  disposerRegistry.set(sessionKey(context), disposers);
294
309
  const cleanup = disposeDisposers(context, disposers);
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-enforcement.js","sourceRoot":"","sources":["../../src/capability/dsh-enforcement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dsh-enforcement.js","sourceRoot":"","sources":["../../src/capability/dsh-enforcement.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,oBAAoB,EAA8B,MAAM,kCAAkC,CAAA;AA+CnG;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IAC/B,MAAM,IAAI,GAAG,CAAC,IAAa,EAAE,SAAkB,EAAE,KAAa,EAAQ,EAAE;QACtE,IAAI,KAAK,GAAG,CAAC;YAAE,OAAM;QACrB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACpC,OAAM;QACR,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YACpD,OAAM;QACR,CAAC;QACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,IAA+B,CAAA;YAC9C,gEAAgE;YAChE,iEAAiE;YACjE,IAAI,SAAS,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjD,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;YACD,gDAAgD;YAChD,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;gBACjE,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;oBACzB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,MAAM,IAAI,IAAI,KAAK;4BAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;oBACvD,CAAC;yBAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9C,mCAAmC;wBACnC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;4BAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACxD,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;oBAC/B,CAAC;oBACD,OAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IACD,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IACrB,OAAO,CAAC,GAAG,KAAK,CAAC,CAAA;AACnB,CAAC;AAED,kEAAkE;AAClE,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,EAAE,CAAA;IACpD,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,2BAA2B,CAAA;AACpE,MAAM,CAAC,MAAM,sBAAsB,GAAG,mCAAmC,CAAA;AAEzE,mFAAmF;AACnF,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAA0B,CAAA;AAE9D,SAAS,UAAU,CAAC,OAA8B;IAChD,OAAO,OAAO,CAAC,KAAK,CAAC,OAA4B,CAAA;AACnD,CAAC;AAID,SAAS,sBAAsB,CAAC,KAA6C;IAC3E,OAAO,OAAO,KAAK,EAAE,QAAQ,KAAK,UAAU,IAAI,OAAO,KAAK,EAAE,KAAK,KAAK,UAAU,CAAA;AACpF,CAAC;AAYD;;;GAGG;AACH,SAAS,gBAAgB,CAAC,OAA8B,EAAE,SAAkC;IAC1F,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,MAAM,QAAQ,GAAsB,EAAE,CAAA;IACtC,MAAM,SAAS,GAAmB,EAAE,CAAA;IACpC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,OAAO,EAAE,CAAA;YACT,QAAQ,EAAE,CAAA;QACZ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK;gBACL,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC/D,CAAC,CAAA;YACF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,CAAC,CAAA;IACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAA;;QACzE,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IACjD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAC/B,CAAC;AAID,wCAAwC;AACxC,SAAS,sBAAsB,CAC7B,OAA8B,EAC9B,UAAkB,EAClB,IAAY,EACZ,KAAa,EACb,QAAgB;IAEhB,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1D,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,KAAmB,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAA;AAC3I,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAA8B,EAAE,IAAyB;IAChG,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1D,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAClG,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAA;IACnE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAA;IACvE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAA;IACvE,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IACjH,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IACvH,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/G,MAAM,WAAW,GAAyC,cAAc,KAAK,WAAW,IAAI,cAAc,KAAK,iBAAiB,IAAI,cAAc,KAAK,oBAAoB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAA;IACnM,MAAM,YAAY,GAA4C,eAAe,KAAK,OAAO,IAAI,eAAe,KAAK,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/I,sGAAsG;IACtG,MAAM,oBAAoB,GAAkB,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAA;IAEpG,mEAAmE;IACnE,2DAA2D;IAC3D,+CAA+C;IAC/C,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAC/D,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC;QAC9D,CAAC,CAAC,EAAE,CAAA;IAEN,+CAA+C;IAC/C,+FAA+F;IAC/F,IAAI,OAAO,GAAa,EAAE,CAAA;IAC1B,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;IAC3C,IAAI,aAAa,IAAI,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAA;YACnE,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;YACzE,OAAO,GAAG,EAAE,CAAA;QACd,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,iFAAiF;QACjF,OAAO,GAAG,SAAS,CAAA;IACrB,CAAC;IAED,sBAAsB;IACtB,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAC3D,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC,CAAC,EAAE,CAAA;IAEN,OAAO;QACL,KAAK;QACL,WAAW,EAAE,WAAW,IAAI,IAAI;QAChC,cAAc,EAAE,YAAY,IAAI,IAAI;QACpC,QAAQ,EAAE,oBAAoB,IAAI,IAAI;KACvC,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAmB,EACnB,OAA8B,EAC9B,OAA2B;IAE3B,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAmB,EAAE,CAAA;IACpC,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAA;IACxC,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAChE,IAAI,YAAY,KAAK,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,8DAA8D,CAAC,EAAE,CAAA;IAC9I,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAA;IAE5C,8CAA8C;IAC9C,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;IACjE,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC3D,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,OAAO,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC3D,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjC,+DAA+D;gBAC/D,qDAAqD;gBACrD,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAA;YAC/F,CAAC,CAAC,CAAA;YACF,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACpF,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;IACtF,IAAI,iBAAiB,GAAG,KAAK,CAAA;IAC7B,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;QAC1D,CAAC;QACD,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,QAAS,CAAC,CAAA;gBAC7D,iBAAiB,GAAG,IAAI,CAAA;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;YAC/E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,iBAAiB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACzF,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;YAChF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC1F,CAAC;QACH,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,0EAA0E;IAC1E,gDAAgD;IAChD,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC1H,IAAI,mBAAmB,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACrD,CAAC;SAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,6BAA6B,OAAO,CAAC,WAAW,+BAA+B,CAAC,CAAA;IAC/F,CAAC;IAED,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IACnI,IAAI,oBAAoB,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC3D,CAAC;SAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,gCAAgC,OAAO,CAAC,cAAc,+BAA+B,CAAC,CAAA;IACrG,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAS,CAAC,CAAA;QAC9H,IAAI,kBAAkB;YAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;aACxE,IAAI,CAAC,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,uCAAuC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC/F,CAAC;IAED,IAAI,OAAO,GAA+E;QACxF,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,IAAI;KACf,CAAA;IACD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAA;QACrD,OAAO,GAAG;YACR,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,cAAc,EAAE,WAAW,CAAC,cAAc;YAC1C,QAAQ,EAAE,WAAW,CAAC,QAAQ;SAC/B,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC5G,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAC,WAAW,IAAI,MAAM,QAAQ,OAAO,CAAC,WAAW,MAAM,CAAC,CAAA;IACzG,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,4BAA4B,OAAO,CAAC,cAAc,IAAI,MAAM,QAAQ,OAAO,CAAC,cAAc,MAAM,CAAC,CAAA;IAChH,CAAC;IACD,IAAI,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,qCAAqC,OAAO,CAAC,QAAQ,IAAI,MAAM,QAAQ,OAAO,CAAC,QAAQ,MAAM,CAAC,CAAA;IAC7G,CAAC;IAED,MAAM,cAAc,GAAG;QACrB,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;QAC3C,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI;QAC/C,iBAAiB,IAAI,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAS,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI;KACtJ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IACjD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACnF,IAAI,UAAU,IAAI,iBAAiB,IAAI,CAAC,mBAAmB,IAAI,CAAC,oBAAoB,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAS,CAAC,EAAE,CAAC;QAC7L,4EAA4E;QAC5E,oEAAoE;QACpE,OAAO,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,QAAQ,4BAA4B,CAAC,CAAA;IACjF,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QAChD,IAAI,CAAC;YAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;QAAC,CAAC;QAC1I,OAAO,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,eAAe,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAAC,CAAC;IACzG,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAA;QACpD,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnH,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IACnD,CAAC;IAED,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAA;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE;YACP,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;YAClC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO;YACP,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC;KACF,CAAC,CAAA;IACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;AAC5C,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAA8B;IACxE,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAC/B,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;IACjD,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACpD,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QACjC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;YAC3B,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE;gBACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAC7B;SACF,CAAC;KACH,CAAA;AACH,CAAC"}
@@ -127,6 +127,9 @@ export async function runCapabilityGate(input) {
127
127
  return { decision, lease, materialized: false, enforcementRequest: null };
128
128
  };
129
129
  const emptyEnforceable = { tools: [], sandboxMode: null, approvalPolicy: null, presetId: null };
130
+ if (input.stillAuthorized && !input.stillAuthorized()) {
131
+ return deny(resolveEffectiveCapability({ requirement, grant: input.grant, ceiling, enforceable: emptyEnforceable }), 'NOT_ATTEMPTED', 'AUTHORITY_CHANGED');
132
+ }
130
133
  // TX-0D:ceiling 缺失 → 拒(B-7),且不触碰 Runtime。
131
134
  if (ceiling === null) {
132
135
  const resolution = resolveEffectiveCapability({ requirement, grant: input.grant, ceiling, enforceable: emptyEnforceable });
@@ -148,6 +151,8 @@ export async function runCapabilityGate(input) {
148
151
  return deny(resolution, 'UNAVAILABLE', `ENFORCEABLE_SET_FAILED:${detail}`);
149
152
  }
150
153
  const resolution = resolveEffectiveCapability({ requirement, grant: input.grant, ceiling, enforceable });
154
+ if (input.stillAuthorized && !input.stillAuthorized())
155
+ return deny(resolution, 'NOT_ATTEMPTED', 'AUTHORITY_CHANGED');
151
156
  const writeRequired = requirement['filesystem.write'] === true;
152
157
  const writeEffective = resolution.effective['filesystem.write'] === true;
153
158
  if (writeRequired && !writeEffective) {
@@ -206,6 +211,8 @@ export async function runCapabilityGate(input) {
206
211
  return deny(materializationResolution, 'UNAVAILABLE', `PREFLIGHT_FAILED:${preflight.reasons.join(';')}`, cleanupOk);
207
212
  }
208
213
  // TX-2S/2F:materialize
214
+ if (input.stillAuthorized && !input.stillAuthorized())
215
+ return deny(materializationResolution, 'NOT_ATTEMPTED', 'AUTHORITY_CHANGED');
209
216
  let materialized;
210
217
  try {
211
218
  materialized = await adapter.materialize(request, input.context);
@@ -219,6 +226,10 @@ export async function runCapabilityGate(input) {
219
226
  const cleanupOk = await cleanupConfirmed(adapter, request, input.context);
220
227
  return deny(materializationResolution, 'FAILED', `MATERIALIZE_FAILED:${(materialized.reasons ?? []).join(';') || 'no-reason'}`, cleanupOk);
221
228
  }
229
+ if (input.stillAuthorized && !input.stillAuthorized()) {
230
+ const cleanupOk = await cleanupConfirmed(adapter, request, input.context);
231
+ return deny(materializationResolution, 'FAILED', 'AUTHORITY_CHANGED', cleanupOk);
232
+ }
222
233
  let enforcementEvidenceJson;
223
234
  try {
224
235
  enforcementEvidenceJson = annotateSandboxEvidence(materialized.evidenceJson, boundedSandbox);
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/capability/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/capability/service.ts"],"names":[],"mappings":"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"}