@yadsh/dsh-qa-surface 0.2.0 → 0.3.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 (161) hide show
  1. package/CHANGELOG.md +84 -1
  2. package/README.md +87 -12
  3. package/compatibility.json +11 -3
  4. package/docs/ARCHITECTURE.md +1 -1
  5. package/docs/COMPATIBILITY.md +1 -1
  6. package/docs/CONFIGURATION.md +88 -1
  7. package/docs/SOURCES-MIGRATION.md +28 -0
  8. package/docs/SOURCES-PROVENANCE-AUDIT.md +88 -0
  9. package/docs/SPEC-dsh-qa-surface-accounts.md +219 -0
  10. package/docs/SPEC-dsh-qa-surface-sources-provenance.md +1692 -0
  11. package/lib/accounts/index.js +2 -0
  12. package/lib/accounts/index.js.map +1 -0
  13. package/lib/accounts/store.js +478 -0
  14. package/lib/accounts/store.js.map +1 -0
  15. package/lib/attestation.js.map +1 -1
  16. package/lib/cli.js +143 -0
  17. package/lib/cli.js.map +1 -0
  18. package/lib/client/QaAccountsController.js +329 -0
  19. package/lib/client/QaAccountsController.js.map +1 -0
  20. package/lib/client/QaSessionController.js +203 -127
  21. package/lib/client/QaSessionController.js.map +1 -1
  22. package/lib/client/QaSurface.js +234 -72
  23. package/lib/client/QaSurface.js.map +1 -1
  24. package/lib/client/QaTranscriptAdapter.js +27 -241
  25. package/lib/client/QaTranscriptAdapter.js.map +1 -1
  26. package/lib/client/attestation.js +6 -0
  27. package/lib/client/attestation.js.map +1 -1
  28. package/lib/client/components/Markdown.js +54 -13
  29. package/lib/client/components/Markdown.js.map +1 -1
  30. package/lib/client/components/QaAuthGate.js +40 -0
  31. package/lib/client/components/QaAuthGate.js.map +1 -0
  32. package/lib/client/components/QaChangelog.js +112 -0
  33. package/lib/client/components/QaChangelog.js.map +1 -0
  34. package/lib/client/components/QaMessage.js +47 -17
  35. package/lib/client/components/QaMessage.js.map +1 -1
  36. package/lib/client/components/QaSidebar.js +63 -20
  37. package/lib/client/components/QaSidebar.js.map +1 -1
  38. package/lib/client/components/QaSourcesDrawer.js +113 -32
  39. package/lib/client/components/QaSourcesDrawer.js.map +1 -1
  40. package/lib/client/components/QaTurnRail.js +281 -0
  41. package/lib/client/components/QaTurnRail.js.map +1 -0
  42. package/lib/client/components/QaWelcomeNotice.js +125 -0
  43. package/lib/client/components/QaWelcomeNotice.js.map +1 -0
  44. package/lib/client/components/QaWidthHandle.js +142 -0
  45. package/lib/client/components/QaWidthHandle.js.map +1 -0
  46. package/lib/client/components/source-refs.js +78 -0
  47. package/lib/client/components/source-refs.js.map +1 -0
  48. package/lib/client/create-session.js +51 -0
  49. package/lib/client/create-session.js.map +1 -0
  50. package/lib/client/index.js +100 -12
  51. package/lib/client/index.js.map +1 -1
  52. package/lib/client/project-session-state.js +78 -0
  53. package/lib/client/project-session-state.js.map +1 -0
  54. package/lib/client/session-admission.js +38 -0
  55. package/lib/client/session-admission.js.map +1 -0
  56. package/lib/client/session-assets.js +52 -0
  57. package/lib/client/session-assets.js.map +1 -0
  58. package/lib/client/session-sources.js +61 -0
  59. package/lib/client/session-sources.js.map +1 -0
  60. package/lib/client/settlement.js +24 -0
  61. package/lib/client/settlement.js.map +1 -0
  62. package/lib/client/styles.js +151 -9
  63. package/lib/client/styles.js.map +1 -1
  64. package/lib/client/tool-presentation.js +102 -0
  65. package/lib/client/tool-presentation.js.map +1 -0
  66. package/lib/client/turn-sources.js +98 -0
  67. package/lib/client/turn-sources.js.map +1 -0
  68. package/lib/client/types.js +2 -0
  69. package/lib/client/types.js.map +1 -1
  70. package/lib/client/use-session-ui-state.js +68 -0
  71. package/lib/client/use-session-ui-state.js.map +1 -0
  72. package/lib/client/use-transcript-view.js +44 -0
  73. package/lib/client/use-transcript-view.js.map +1 -0
  74. package/lib/client.js +4649 -861
  75. package/lib/client.js.map +1 -1
  76. package/lib/config.js +218 -102
  77. package/lib/config.js.map +1 -1
  78. package/lib/entry-redirect.js +44 -0
  79. package/lib/entry-redirect.js.map +1 -0
  80. package/lib/host-route.js +25 -1
  81. package/lib/host-route.js.map +1 -1
  82. package/lib/index.js +209 -23
  83. package/lib/index.js.map +1 -1
  84. package/lib/launch-token.js +42 -0
  85. package/lib/launch-token.js.map +1 -0
  86. package/lib/provenance/collector.js +40 -0
  87. package/lib/provenance/collector.js.map +1 -0
  88. package/lib/provenance/connectors.js +147 -0
  89. package/lib/provenance/connectors.js.map +1 -0
  90. package/lib/provenance/dedupe.js +89 -0
  91. package/lib/provenance/dedupe.js.map +1 -0
  92. package/lib/provenance/extractors.js +340 -0
  93. package/lib/provenance/extractors.js.map +1 -0
  94. package/lib/provenance/file-preview.js +39 -0
  95. package/lib/provenance/file-preview.js.map +1 -0
  96. package/lib/provenance/host-store.js +387 -0
  97. package/lib/provenance/host-store.js.map +1 -0
  98. package/lib/provenance/index.js +9 -0
  99. package/lib/provenance/index.js.map +1 -0
  100. package/lib/provenance/normalize.js +128 -0
  101. package/lib/provenance/normalize.js.map +1 -0
  102. package/lib/provenance/reported.js +53 -0
  103. package/lib/provenance/reported.js.map +1 -0
  104. package/lib/provenance/types.js +2 -0
  105. package/lib/provenance/types.js.map +1 -0
  106. package/lib/resolve-config.js +161 -0
  107. package/lib/resolve-config.js.map +1 -1
  108. package/lib/secure-session.js +50 -8
  109. package/lib/secure-session.js.map +1 -1
  110. package/lib/typert.host.js +599 -6
  111. package/lib/typert.remote-client.d.ts +19 -3
  112. package/lib/typert.remote-client.js +471 -3
  113. package/lib/types/accounts/index.d.ts +2 -0
  114. package/lib/types/accounts/store.d.ts +121 -0
  115. package/lib/types/attestation.d.ts +1 -1
  116. package/lib/types/cli.d.ts +9 -0
  117. package/lib/types/client/QaAccountsController.d.ts +95 -0
  118. package/lib/types/client/QaConfigController.d.ts +1 -1
  119. package/lib/types/client/QaSessionController.d.ts +46 -7
  120. package/lib/types/client/QaSurface.d.ts +8 -3
  121. package/lib/types/client/QaTranscriptAdapter.d.ts +5 -10
  122. package/lib/types/client/components/Markdown.d.ts +11 -1
  123. package/lib/types/client/components/QaAgentsDrawer.d.ts +1 -1
  124. package/lib/types/client/components/QaAuthGate.d.ts +15 -0
  125. package/lib/types/client/components/QaChangelog.d.ts +21 -0
  126. package/lib/types/client/components/QaMessage.d.ts +10 -3
  127. package/lib/types/client/components/QaSidebar.d.ts +30 -2
  128. package/lib/types/client/components/QaSourcesDrawer.d.ts +15 -3
  129. package/lib/types/client/components/QaTurnRail.d.ts +59 -0
  130. package/lib/types/client/components/QaWelcomeNotice.d.ts +27 -0
  131. package/lib/types/client/components/QaWidthHandle.d.ts +36 -0
  132. package/lib/types/client/components/source-refs.d.ts +16 -0
  133. package/lib/types/client/create-session.d.ts +16 -0
  134. package/lib/types/client/index.d.ts +1 -0
  135. package/lib/types/client/project-session-state.d.ts +30 -0
  136. package/lib/types/client/session-admission.d.ts +23 -0
  137. package/lib/types/client/session-assets.d.ts +20 -0
  138. package/lib/types/client/session-sources.d.ts +28 -0
  139. package/lib/types/client/settlement.d.ts +6 -0
  140. package/lib/types/client/tool-presentation.d.ts +6 -0
  141. package/lib/types/client/turn-sources.d.ts +14 -0
  142. package/lib/types/client/types.d.ts +73 -9
  143. package/lib/types/client/use-session-ui-state.d.ts +35 -0
  144. package/lib/types/client/use-transcript-view.d.ts +20 -0
  145. package/lib/types/entry-redirect.d.ts +20 -0
  146. package/lib/types/host-route.d.ts +14 -1
  147. package/lib/types/index.d.ts +47 -3
  148. package/lib/types/launch-token.d.ts +21 -0
  149. package/lib/types/provenance/collector.d.ts +26 -0
  150. package/lib/types/provenance/connectors.d.ts +11 -0
  151. package/lib/types/provenance/dedupe.d.ts +6 -0
  152. package/lib/types/provenance/extractors.d.ts +14 -0
  153. package/lib/types/provenance/file-preview.d.ts +10 -0
  154. package/lib/types/provenance/host-store.d.ts +54 -0
  155. package/lib/types/provenance/index.d.ts +10 -0
  156. package/lib/types/provenance/normalize.d.ts +13 -0
  157. package/lib/types/provenance/reported.d.ts +5 -0
  158. package/lib/types/provenance/types.d.ts +78 -0
  159. package/lib/types/secure-session.d.ts +11 -2
  160. package/lib/types/types.d.ts +167 -11
  161. package/package.json +58 -41
@@ -61,6 +61,54 @@ export const DEFAULT_QA_SURFACE_CONFIG = Object.freeze({
61
61
  }),
62
62
  }),
63
63
  embedding: Object.freeze({ frameAncestors: null }),
64
+ accounts: Object.freeze({
65
+ enabled: false,
66
+ allowRegistration: true,
67
+ sessionTtlDays: 30,
68
+ showOtherUsersChats: false,
69
+ }),
70
+ entry: Object.freeze({
71
+ redirectNonLoopback: true,
72
+ cookieBootstrap: true,
73
+ }),
74
+ sources: Object.freeze({
75
+ enabled: true,
76
+ collect: Object.freeze({
77
+ parentAgent: true,
78
+ subagents: true,
79
+ persistTurnEvent: true,
80
+ }),
81
+ display: Object.freeze({
82
+ sidebar: true,
83
+ footer: true,
84
+ groupByKind: true,
85
+ showDiscovered: false,
86
+ showOriginBadges: false,
87
+ maxInitiallyVisiblePerGroup: 8,
88
+ }),
89
+ webSearch: Object.freeze({
90
+ promoteSearchResultsWithoutFetch: true,
91
+ maxPromotedPerSearch: 5,
92
+ }),
93
+ dedupe: Object.freeze({
94
+ normalizeUrls: true,
95
+ stripTrackingParams: true,
96
+ mergeFileRanges: true,
97
+ }),
98
+ filePreview: Object.freeze({
99
+ enabled: true,
100
+ markdownRenderedByDefault: true,
101
+ allowRawToggle: true,
102
+ maxBytes: 2_000_000,
103
+ maxMarkdownRenderBytes: 1_000_000,
104
+ }),
105
+ subagents: Object.freeze({
106
+ inheritSources: true,
107
+ enableReportToolFallback: true,
108
+ markIncompleteOpaqueRuns: true,
109
+ }),
110
+ legacy: Object.freeze({ parseAssistantSourcesBlock: false }),
111
+ }),
64
112
  });
65
113
  function optionalText(value) {
66
114
  const trimmed = value?.trim() ?? "";
@@ -173,6 +221,44 @@ export function resolveConfig(input = {}) {
173
221
  !allowSessionReset) {
174
222
  throw new TypeError("dsh-qa-surface: ui.showReset requires lockdown.allowSessionReset");
175
223
  }
224
+ const maxInitiallyVisiblePerGroup = input.sources?.display?.maxInitiallyVisiblePerGroup ??
225
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.maxInitiallyVisiblePerGroup;
226
+ const maxPromotedPerSearch = input.sources?.webSearch?.maxPromotedPerSearch ??
227
+ DEFAULT_QA_SURFACE_CONFIG.sources.webSearch.maxPromotedPerSearch;
228
+ const maxBytes = input.sources?.filePreview?.maxBytes ??
229
+ DEFAULT_QA_SURFACE_CONFIG.sources.filePreview.maxBytes;
230
+ const maxMarkdownRenderBytes = input.sources?.filePreview?.maxMarkdownRenderBytes ??
231
+ DEFAULT_QA_SURFACE_CONFIG.sources.filePreview.maxMarkdownRenderBytes;
232
+ for (const [name, value, min, max] of [
233
+ [
234
+ "sources.display.maxInitiallyVisiblePerGroup",
235
+ maxInitiallyVisiblePerGroup,
236
+ 1,
237
+ 100,
238
+ ],
239
+ ["sources.webSearch.maxPromotedPerSearch", maxPromotedPerSearch, 0, 50],
240
+ ["sources.filePreview.maxBytes", maxBytes, 1_024, 20_000_000],
241
+ [
242
+ "sources.filePreview.maxMarkdownRenderBytes",
243
+ maxMarkdownRenderBytes,
244
+ 1_024,
245
+ 10_000_000,
246
+ ],
247
+ ]) {
248
+ if (!Number.isSafeInteger(value) || value < min || value > max) {
249
+ throw new TypeError(`dsh-qa-surface: ${name} must be an integer from ${min} to ${max}`);
250
+ }
251
+ }
252
+ if (maxMarkdownRenderBytes > maxBytes) {
253
+ throw new TypeError("dsh-qa-surface: sources.filePreview.maxMarkdownRenderBytes cannot exceed maxBytes");
254
+ }
255
+ const sessionTtlDays = input.accounts?.sessionTtlDays ??
256
+ DEFAULT_QA_SURFACE_CONFIG.accounts.sessionTtlDays;
257
+ if (!Number.isSafeInteger(sessionTtlDays) ||
258
+ sessionTtlDays < 1 ||
259
+ sessionTtlDays > 365) {
260
+ throw new TypeError("dsh-qa-surface: accounts.sessionTtlDays must be an integer from 1 to 365");
261
+ }
176
262
  return Object.freeze({
177
263
  enabled: input.enabled ?? DEFAULT_QA_SURFACE_CONFIG.enabled,
178
264
  route: Object.freeze({
@@ -250,6 +336,81 @@ export function resolveConfig(input = {}) {
250
336
  embedding: Object.freeze({
251
337
  frameAncestors: optionalText(input.embedding?.frameAncestors),
252
338
  }),
339
+ accounts: Object.freeze({
340
+ enabled: input.accounts?.enabled ?? DEFAULT_QA_SURFACE_CONFIG.accounts.enabled,
341
+ allowRegistration: input.accounts?.allowRegistration ??
342
+ DEFAULT_QA_SURFACE_CONFIG.accounts.allowRegistration,
343
+ sessionTtlDays,
344
+ showOtherUsersChats: input.accounts?.showOtherUsersChats ??
345
+ DEFAULT_QA_SURFACE_CONFIG.accounts.showOtherUsersChats,
346
+ }),
347
+ entry: Object.freeze({
348
+ redirectNonLoopback: input.entry?.redirectNonLoopback ??
349
+ DEFAULT_QA_SURFACE_CONFIG.entry.redirectNonLoopback,
350
+ cookieBootstrap: input.entry?.cookieBootstrap ??
351
+ DEFAULT_QA_SURFACE_CONFIG.entry.cookieBootstrap,
352
+ }),
353
+ sources: Object.freeze({
354
+ enabled: input.sources?.enabled ?? DEFAULT_QA_SURFACE_CONFIG.sources.enabled,
355
+ collect: Object.freeze({
356
+ parentAgent: input.sources?.collect?.parentAgent ??
357
+ DEFAULT_QA_SURFACE_CONFIG.sources.collect.parentAgent,
358
+ subagents: input.sources?.collect?.subagents ??
359
+ DEFAULT_QA_SURFACE_CONFIG.sources.collect.subagents,
360
+ persistTurnEvent: input.sources?.collect?.persistTurnEvent ??
361
+ DEFAULT_QA_SURFACE_CONFIG.sources.collect.persistTurnEvent,
362
+ }),
363
+ display: Object.freeze({
364
+ sidebar: input.sources?.display?.sidebar ??
365
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.sidebar,
366
+ footer: input.sources?.display?.footer ??
367
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.footer,
368
+ groupByKind: input.sources?.display?.groupByKind ??
369
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.groupByKind,
370
+ showDiscovered: input.sources?.display?.showDiscovered ??
371
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.showDiscovered,
372
+ showOriginBadges: input.sources?.display?.showOriginBadges ??
373
+ DEFAULT_QA_SURFACE_CONFIG.sources.display.showOriginBadges,
374
+ maxInitiallyVisiblePerGroup,
375
+ }),
376
+ webSearch: Object.freeze({
377
+ promoteSearchResultsWithoutFetch: input.sources?.webSearch?.promoteSearchResultsWithoutFetch ??
378
+ DEFAULT_QA_SURFACE_CONFIG.sources.webSearch
379
+ .promoteSearchResultsWithoutFetch,
380
+ maxPromotedPerSearch,
381
+ }),
382
+ dedupe: Object.freeze({
383
+ normalizeUrls: input.sources?.dedupe?.normalizeUrls ??
384
+ DEFAULT_QA_SURFACE_CONFIG.sources.dedupe.normalizeUrls,
385
+ stripTrackingParams: input.sources?.dedupe?.stripTrackingParams ??
386
+ DEFAULT_QA_SURFACE_CONFIG.sources.dedupe.stripTrackingParams,
387
+ mergeFileRanges: input.sources?.dedupe?.mergeFileRanges ??
388
+ DEFAULT_QA_SURFACE_CONFIG.sources.dedupe.mergeFileRanges,
389
+ }),
390
+ filePreview: Object.freeze({
391
+ enabled: input.sources?.filePreview?.enabled ??
392
+ DEFAULT_QA_SURFACE_CONFIG.sources.filePreview.enabled,
393
+ markdownRenderedByDefault: input.sources?.filePreview?.markdownRenderedByDefault ??
394
+ DEFAULT_QA_SURFACE_CONFIG.sources.filePreview
395
+ .markdownRenderedByDefault,
396
+ allowRawToggle: input.sources?.filePreview?.allowRawToggle ??
397
+ DEFAULT_QA_SURFACE_CONFIG.sources.filePreview.allowRawToggle,
398
+ maxBytes,
399
+ maxMarkdownRenderBytes,
400
+ }),
401
+ subagents: Object.freeze({
402
+ inheritSources: input.sources?.subagents?.inheritSources ??
403
+ DEFAULT_QA_SURFACE_CONFIG.sources.subagents.inheritSources,
404
+ enableReportToolFallback: input.sources?.subagents?.enableReportToolFallback ??
405
+ DEFAULT_QA_SURFACE_CONFIG.sources.subagents.enableReportToolFallback,
406
+ markIncompleteOpaqueRuns: input.sources?.subagents?.markIncompleteOpaqueRuns ??
407
+ DEFAULT_QA_SURFACE_CONFIG.sources.subagents.markIncompleteOpaqueRuns,
408
+ }),
409
+ legacy: Object.freeze({
410
+ parseAssistantSourcesBlock: input.sources?.legacy?.parseAssistantSourcesBlock ??
411
+ DEFAULT_QA_SURFACE_CONFIG.sources.legacy.parseAssistantSourcesBlock,
412
+ }),
413
+ }),
253
414
  });
254
415
  }
255
416
  //# sourceMappingURL=resolve-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-config.js","sourceRoot":"","sources":["../src/resolve-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-config.js","sourceRoot":"","sources":["../src/resolve-config.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
- import { SessionId } from "@deepseek-ai/dsh-session";
1
+ // The `types` subpath keeps the client ISessions Context merge authoritative;
2
+ // the package root merges a conflicting host `sessions` service type.
3
+ import { SessionId } from "@deepseek-ai/dsh-session/types";
2
4
  import { WorkspaceId } from "@deepseek-ai/dsh-workspace";
5
+ import { QaAccountsError } from "./accounts/store.js";
3
6
  import { QaAttestationError } from "./attestation.js";
4
7
  import { qaToolDenial, qaToolPolicyPlan } from "./lockdown-policy.js";
8
+ import { QA_REPORT_SOURCES_TOOL } from "./provenance/host-store.js";
5
9
  /** Grace period in which a fresh session may still be pinned to the QA preset. */
6
10
  const FRESH_SESSION_BOOTSTRAP_WINDOW_MS = 120_000;
7
11
  /**
@@ -31,18 +35,37 @@ export class QaPolicyAdmission {
31
35
  ctx;
32
36
  config;
33
37
  logger;
38
+ accounts;
34
39
  appliedPolicies = new Map();
35
- constructor(ctx, config, logger) {
40
+ constructor(ctx, config, logger, accounts) {
36
41
  this.ctx = ctx;
37
42
  this.config = config;
38
43
  this.logger = logger;
44
+ this.accounts = accounts;
39
45
  ctx.on("agent/disposed", ({ agent }) => {
40
46
  this.appliedPolicies.delete(agent);
41
47
  });
42
48
  }
43
- secureSession(sessionId) {
49
+ secureSession(token, sessionId) {
44
50
  const config = this.config();
45
51
  const lockdown = config.lockdown;
52
+ // Account identity is checked before any policy work: an invalid token
53
+ // must not learn whether a session exists or how the deployment composes.
54
+ // Independent of lockdown — a deployment may gate users without pinning
55
+ // the policy, and the gate itself no-ops while accounts are disabled.
56
+ if (this.accounts !== undefined) {
57
+ try {
58
+ this.accounts.enforceSessionAccess(token, sessionId);
59
+ }
60
+ catch (error) {
61
+ if (error instanceof QaAccountsError) {
62
+ throw new QaAttestationError(error.reason === "session-owned-elsewhere"
63
+ ? "session-owned-elsewhere"
64
+ : "auth-required", error.message);
65
+ }
66
+ throw error;
67
+ }
68
+ }
46
69
  const agent = this.ctx.agents.get(SessionId(sessionId));
47
70
  if (agent === undefined) {
48
71
  throw new QaAttestationError("agent-unavailable", "agent is unavailable");
@@ -97,15 +120,23 @@ export class QaPolicyAdmission {
97
120
  permission.approval !== lockdown.approvalPolicy) {
98
121
  throw new QaAttestationError("permission-preset", `permission preset ${lockdown.permissionPreset} does not resolve to read-only/never`);
99
122
  }
100
- const currentPermission = this.ctx.permissionPresets.current(agent.session.events);
101
- const hasUserHistory = agent.session.events.some((event) => event.type === "user/message");
123
+ const currentPermission = this.ctx.permissionPresets.current(agent.session);
124
+ // History check over the model-visible surface: `user/message` is a
125
+ // surface event, so any adopted conversation shows up here regardless of
126
+ // window pagination.
127
+ const hasUserHistory = agent.session.surface.nodes.some((seq) => agent.session.eventAt(seq)?.type === "user/message");
102
128
  if (currentPermission !== lockdown.permissionPreset &&
103
129
  (hasUserHistory ||
104
130
  Date.now() - agent.session.header.createdAt >
105
131
  FRESH_SESSION_BOOTSTRAP_WINDOW_MS)) {
106
132
  throw new QaAttestationError("adoption-refused", "existing non-QA session cannot be adopted");
107
133
  }
108
- const policy = qaToolPolicyPlan(lockdown.toolPolicy.allow, (toolName) => this.ctx.tools.get(toolName, agent) !== undefined);
134
+ const policyAllow = config.sources.enabled &&
135
+ config.sources.subagents.enableReportToolFallback &&
136
+ !lockdown.toolPolicy.allow.includes(QA_REPORT_SOURCES_TOOL)
137
+ ? [...lockdown.toolPolicy.allow, QA_REPORT_SOURCES_TOOL]
138
+ : lockdown.toolPolicy.allow;
139
+ const policy = qaToolPolicyPlan(policyAllow, (toolName) => this.ctx.tools.get(toolName, agent) !== undefined);
109
140
  if (policy.unknown.length > 0) {
110
141
  throw new QaAttestationError("unknown-tools", `unknown QA tool(s): ${policy.unknown.join(", ")}`);
111
142
  }
@@ -114,6 +145,11 @@ export class QaPolicyAdmission {
114
145
  if (prior?.fingerprint !== fingerprint) {
115
146
  const allowed = new Set(policy.allow);
116
147
  const disposeGuard = agent.ctx.tools.guard((execution) => qaToolDenial(allowed, execution.name));
148
+ const disposeGuidance = agent.ctx.systemPrompt.section({
149
+ name: "dsh-qa-surface:structured-sources",
150
+ order: 950,
151
+ text: "Source provenance is collected automatically from tools. Do not append a manual Sources/Источники bibliography to the answer. Delegated providers that cannot expose tool events should call qa_report_sources before finishing.",
152
+ });
117
153
  try {
118
154
  const disposeRestriction = agent.ctx.tools.restrict({
119
155
  allow: policy.allow,
@@ -122,17 +158,20 @@ export class QaPolicyAdmission {
122
158
  fingerprint,
123
159
  disposeGuard,
124
160
  disposeRestriction,
161
+ disposeGuidance,
125
162
  });
126
163
  prior?.disposeRestriction();
127
164
  prior?.disposeGuard();
165
+ prior?.disposeGuidance();
128
166
  }
129
167
  catch (error) {
130
168
  disposeGuard();
169
+ disposeGuidance();
131
170
  throw error;
132
171
  }
133
172
  }
134
173
  this.ctx.permissionPresets.set(agent.session, lockdown.permissionPreset);
135
- const effectivePermission = this.ctx.permissionPresets.current(agent.session.events);
174
+ const effectivePermission = this.ctx.permissionPresets.current(agent.session);
136
175
  const sandboxIsReadOnly = permission.sandbox === "read-only";
137
176
  const approvalIsNever = permission.approval === "never";
138
177
  if (effectivePermission !== lockdown.permissionPreset ||
@@ -155,7 +194,9 @@ export class QaPolicyAdmission {
155
194
  approvalIsNever,
156
195
  permissionPreset: lockdown.permissionPreset,
157
196
  toolPolicyLoaded: true,
158
- toolAllowList: policy.allow,
197
+ // The fallback reporter is an internal read-only provenance capability,
198
+ // not an operator-configured QA tool grant.
199
+ toolAllowList: lockdown.toolPolicy.allow,
159
200
  };
160
201
  }
161
202
  /** Detach every pinned tool policy; wired as a disposal effect by the entry. */
@@ -163,6 +204,7 @@ export class QaPolicyAdmission {
163
204
  for (const policy of this.appliedPolicies.values()) {
164
205
  policy.disposeRestriction();
165
206
  policy.disposeGuard();
207
+ policy.disposeGuidance();
166
208
  }
167
209
  this.appliedPolicies.clear();
168
210
  }
@@ -1 +1 @@
1
- {"version":3,"file":"secure-session.js","sourceRoot":"","sources":["../src/secure-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secure-session.js","sourceRoot":"","sources":["../src/secure-session.ts"],"names":[],"mappings":"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"}