@yadsh/dsh-qa-surface 0.7.4 → 0.9.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 (247) hide show
  1. package/README.md +169 -12
  2. package/compatibility.json +5 -0
  3. package/lib/access/capability-catalog.js +32 -3
  4. package/lib/access/capability-catalog.js.map +1 -1
  5. package/lib/access/model.js +24 -4
  6. package/lib/access/model.js.map +1 -1
  7. package/lib/access/role-repository.js +199 -91
  8. package/lib/access/role-repository.js.map +1 -1
  9. package/lib/access/service.js +223 -7
  10. package/lib/access/service.js.map +1 -1
  11. package/lib/account-remotes.js +2 -4
  12. package/lib/account-remotes.js.map +1 -1
  13. package/lib/accounts/database.js +447 -0
  14. package/lib/accounts/database.js.map +1 -0
  15. package/lib/accounts/errors.js.map +1 -1
  16. package/lib/accounts/file.js +27 -90
  17. package/lib/accounts/file.js.map +1 -1
  18. package/lib/accounts/store.js +224 -59
  19. package/lib/accounts/store.js.map +1 -1
  20. package/lib/admin/permissions.js +4 -0
  21. package/lib/admin/permissions.js.map +1 -1
  22. package/lib/admin/quality-store.js +270 -54
  23. package/lib/admin/quality-store.js.map +1 -1
  24. package/lib/admin/service.js +145 -7
  25. package/lib/admin/service.js.map +1 -1
  26. package/lib/admin/session-log.js +66 -5
  27. package/lib/admin/session-log.js.map +1 -1
  28. package/lib/cli.js +2 -1
  29. package/lib/cli.js.map +1 -1
  30. package/lib/client/QaSessionController.js +379 -39
  31. package/lib/client/QaSessionController.js.map +1 -1
  32. package/lib/client/QaSurface.js +94 -34
  33. package/lib/client/QaSurface.js.map +1 -1
  34. package/lib/client/QaTranscriptAdapter.js +40 -0
  35. package/lib/client/QaTranscriptAdapter.js.map +1 -1
  36. package/lib/client/admin/QaAdmin.js +26 -8
  37. package/lib/client/admin/QaAdmin.js.map +1 -1
  38. package/lib/client/admin/{format.js → copy.js} +1 -1
  39. package/lib/client/admin/copy.js.map +1 -0
  40. package/lib/client/admin/pages/Conversations.js +34 -8
  41. package/lib/client/admin/pages/Conversations.js.map +1 -1
  42. package/lib/client/admin/pages/Overview.js +1 -1
  43. package/lib/client/admin/pages/Overview.js.map +1 -1
  44. package/lib/client/admin/pages/Quality.js +1 -1
  45. package/lib/client/admin/pages/Quality.js.map +1 -1
  46. package/lib/client/admin/pages/Review.js +1 -1
  47. package/lib/client/admin/pages/Review.js.map +1 -1
  48. package/lib/client/admin/pages/Users.js +6 -2
  49. package/lib/client/admin/pages/Users.js.map +1 -1
  50. package/lib/client/admin/shared.js +10 -1
  51. package/lib/client/admin/shared.js.map +1 -1
  52. package/lib/client/admin/styles.js +2 -0
  53. package/lib/client/admin/styles.js.map +1 -1
  54. package/lib/client/audit/QaAuditDialog.js +74 -0
  55. package/lib/client/audit/QaAuditDialog.js.map +1 -0
  56. package/lib/client/audit/QaAuditRowBadge.js +17 -0
  57. package/lib/client/audit/QaAuditRowBadge.js.map +1 -0
  58. package/lib/client/audit/controller.js +39 -0
  59. package/lib/client/audit/controller.js.map +1 -0
  60. package/lib/client/audit/types.js +36 -0
  61. package/lib/client/audit/types.js.map +1 -0
  62. package/lib/client/audit/use-chat-audits.js +139 -0
  63. package/lib/client/audit/use-chat-audits.js.map +1 -0
  64. package/lib/client/components/Markdown.js +14 -206
  65. package/lib/client/components/Markdown.js.map +1 -1
  66. package/lib/client/components/QaChangelog.js +91 -0
  67. package/lib/client/components/QaChangelog.js.map +1 -1
  68. package/lib/client/components/QaComposer.js +63 -3
  69. package/lib/client/components/QaComposer.js.map +1 -1
  70. package/lib/client/components/QaHeader.js +1 -3
  71. package/lib/client/components/QaHeader.js.map +1 -1
  72. package/lib/client/components/QaMessage.js +25 -4
  73. package/lib/client/components/QaMessage.js.map +1 -1
  74. package/lib/client/components/QaQuestions.js +1 -1
  75. package/lib/client/components/QaQuestions.js.map +1 -1
  76. package/lib/client/components/QaSidebar.js +17 -3
  77. package/lib/client/components/QaSidebar.js.map +1 -1
  78. package/lib/client/components/QaSourcesPanel.js +3 -18
  79. package/lib/client/components/QaSourcesPanel.js.map +1 -1
  80. package/lib/client/components/QaWorkGroup.js +4 -8
  81. package/lib/client/components/QaWorkGroup.js.map +1 -1
  82. package/lib/client/components/source-icon.js +26 -0
  83. package/lib/client/components/source-icon.js.map +1 -0
  84. package/lib/client/components/thinking-phrases.js +2 -11
  85. package/lib/client/components/thinking-phrases.js.map +1 -1
  86. package/lib/client/components/use-now.js +21 -0
  87. package/lib/client/components/use-now.js.map +1 -0
  88. package/lib/client/index.js +33 -5
  89. package/lib/client/index.js.map +1 -1
  90. package/lib/client/lineage.js +18 -0
  91. package/lib/client/lineage.js.map +1 -0
  92. package/lib/client/markdown/CodeBlock.js +28 -0
  93. package/lib/client/markdown/CodeBlock.js.map +1 -0
  94. package/lib/client/markdown/blocks.js +342 -0
  95. package/lib/client/markdown/blocks.js.map +1 -0
  96. package/lib/client/markdown/highlight.js +1089 -0
  97. package/lib/client/markdown/highlight.js.map +1 -0
  98. package/lib/client/markdown/inline.js +377 -0
  99. package/lib/client/markdown/inline.js.map +1 -0
  100. package/lib/client/markdown/render.js +147 -0
  101. package/lib/client/markdown/render.js.map +1 -0
  102. package/lib/client/markdown/source-chip.js +55 -0
  103. package/lib/client/markdown/source-chip.js.map +1 -0
  104. package/lib/client/markdown/use-transient-flag.js +27 -0
  105. package/lib/client/markdown/use-transient-flag.js.map +1 -0
  106. package/lib/client/project-session-state.js +15 -2
  107. package/lib/client/project-session-state.js.map +1 -1
  108. package/lib/client/prompt-content.js +26 -0
  109. package/lib/client/prompt-content.js.map +1 -1
  110. package/lib/client/role/RoleSelector.js +11 -2
  111. package/lib/client/role/RoleSelector.js.map +1 -1
  112. package/lib/client/role/preview.js +123 -0
  113. package/lib/client/role/preview.js.map +1 -0
  114. package/lib/client/settings/card.js +2 -2
  115. package/lib/client/settings/card.js.map +1 -1
  116. package/lib/client/settings/sections/lockdown.js +1 -6
  117. package/lib/client/settings/sections/lockdown.js.map +1 -1
  118. package/lib/client/settings/sections/slash.js +57 -0
  119. package/lib/client/settings/sections/slash.js.map +1 -0
  120. package/lib/client/settings/sections/status.js +9 -1
  121. package/lib/client/settings/sections/status.js.map +1 -1
  122. package/lib/client/settings/sections.js +1 -0
  123. package/lib/client/settings/sections.js.map +1 -1
  124. package/lib/client/slash/SlashPalette.js +48 -0
  125. package/lib/client/slash/SlashPalette.js.map +1 -0
  126. package/lib/client/slash/copy.js +54 -0
  127. package/lib/client/slash/copy.js.map +1 -0
  128. package/lib/client/slash/slash-router.js +49 -0
  129. package/lib/client/slash/slash-router.js.map +1 -0
  130. package/lib/client/slash/useSlashNavigation.js +95 -0
  131. package/lib/client/slash/useSlashNavigation.js.map +1 -0
  132. package/lib/client/styles.js +124 -20
  133. package/lib/client/styles.js.map +1 -1
  134. package/lib/client/types.js +11 -0
  135. package/lib/client/types.js.map +1 -1
  136. package/lib/client.js +7615 -1567
  137. package/lib/client.js.map +1 -1
  138. package/lib/config-resolvers/accounts.js +15 -0
  139. package/lib/config-resolvers/accounts.js.map +1 -1
  140. package/lib/config-resolvers/basics.js +11 -2
  141. package/lib/config-resolvers/basics.js.map +1 -1
  142. package/lib/config-resolvers/defaults.js +30 -0
  143. package/lib/config-resolvers/defaults.js.map +1 -1
  144. package/lib/config-resolvers/lockdown.js +8 -2
  145. package/lib/config-resolvers/lockdown.js.map +1 -1
  146. package/lib/config-resolvers/slash-commands.js +60 -0
  147. package/lib/config-resolvers/slash-commands.js.map +1 -0
  148. package/lib/config-resolvers/sources.js +16 -0
  149. package/lib/config-resolvers/sources.js.map +1 -1
  150. package/lib/config.js +118 -2
  151. package/lib/config.js.map +1 -1
  152. package/lib/index.js +183 -11
  153. package/lib/index.js.map +1 -1
  154. package/lib/lockdown-policy.js +19 -0
  155. package/lib/lockdown-policy.js.map +1 -1
  156. package/lib/personal-skills/service.js +16 -3
  157. package/lib/personal-skills/service.js.map +1 -1
  158. package/lib/provenance/host-store.js +25 -4
  159. package/lib/provenance/host-store.js.map +1 -1
  160. package/lib/provenance/retention.js +25 -0
  161. package/lib/provenance/retention.js.map +1 -0
  162. package/lib/provenance/snapshot-store.js +290 -35
  163. package/lib/provenance/snapshot-store.js.map +1 -1
  164. package/lib/questions.js +98 -38
  165. package/lib/questions.js.map +1 -1
  166. package/lib/resolve-config.js +5 -0
  167. package/lib/resolve-config.js.map +1 -1
  168. package/lib/secure-session.js +139 -21
  169. package/lib/secure-session.js.map +1 -1
  170. package/lib/slash/catalog.js +77 -0
  171. package/lib/slash/catalog.js.map +1 -0
  172. package/lib/slash/matcher.js +100 -0
  173. package/lib/slash/matcher.js.map +1 -0
  174. package/lib/slash/parser.js +79 -0
  175. package/lib/slash/parser.js.map +1 -0
  176. package/lib/slash/policy.js +72 -0
  177. package/lib/slash/policy.js.map +1 -0
  178. package/lib/slash/remotes.js +272 -0
  179. package/lib/slash/remotes.js.map +1 -0
  180. package/lib/typert.host.js +348 -56
  181. package/lib/typert.remote-client.d.ts +7 -1
  182. package/lib/typert.remote-client.js +274 -51
  183. package/lib/types/access/capability-catalog.d.ts +28 -1
  184. package/lib/types/access/role-repository.d.ts +38 -7
  185. package/lib/types/access/service.d.ts +106 -3
  186. package/lib/types/account-remotes.d.ts +8 -4
  187. package/lib/types/accounts/database.d.ts +84 -0
  188. package/lib/types/accounts/errors.d.ts +7 -1
  189. package/lib/types/accounts/file.d.ts +17 -39
  190. package/lib/types/accounts/store.d.ts +110 -19
  191. package/lib/types/admin/quality-store.d.ts +38 -2
  192. package/lib/types/admin/service.d.ts +34 -2
  193. package/lib/types/admin/session-log.d.ts +65 -1
  194. package/lib/types/client/QaSessionController.d.ts +84 -2
  195. package/lib/types/client/QaSurface.d.ts +14 -1
  196. package/lib/types/client/admin/{format.d.ts → copy.d.ts} +1 -1
  197. package/lib/types/client/admin/pages/Conversations.d.ts +4 -0
  198. package/lib/types/client/audit/QaAuditDialog.d.ts +21 -0
  199. package/lib/types/client/audit/QaAuditRowBadge.d.ts +18 -0
  200. package/lib/types/client/audit/controller.d.ts +27 -0
  201. package/lib/types/client/audit/types.d.ts +72 -0
  202. package/lib/types/client/audit/use-chat-audits.d.ts +20 -0
  203. package/lib/types/client/components/Markdown.d.ts +7 -8
  204. package/lib/types/client/components/QaComposer.d.ts +12 -2
  205. package/lib/types/client/components/QaQuestions.d.ts +7 -0
  206. package/lib/types/client/components/QaSidebar.d.ts +11 -1
  207. package/lib/types/client/components/QaSourcesPanel.d.ts +1 -3
  208. package/lib/types/client/components/source-icon.d.ts +12 -0
  209. package/lib/types/client/components/use-now.d.ts +8 -0
  210. package/lib/types/client/lineage.d.ts +15 -0
  211. package/lib/types/client/markdown/CodeBlock.d.ts +14 -0
  212. package/lib/types/client/markdown/blocks.d.ts +74 -0
  213. package/lib/types/client/markdown/highlight.d.ts +29 -0
  214. package/lib/types/client/markdown/inline.d.ts +40 -0
  215. package/lib/types/client/markdown/render.d.ts +13 -0
  216. package/lib/types/client/markdown/source-chip.d.ts +32 -0
  217. package/lib/types/client/markdown/use-transient-flag.d.ts +12 -0
  218. package/lib/types/client/project-session-state.d.ts +3 -1
  219. package/lib/types/client/prompt-content.d.ts +9 -1
  220. package/lib/types/client/role/RoleSelector.d.ts +11 -1
  221. package/lib/types/client/role/preview.d.ts +109 -0
  222. package/lib/types/client/settings/sections/slash.d.ts +16 -0
  223. package/lib/types/client/settings/sections.d.ts +1 -0
  224. package/lib/types/client/slash/SlashPalette.d.ts +24 -0
  225. package/lib/types/client/slash/copy.d.ts +30 -0
  226. package/lib/types/client/slash/slash-router.d.ts +67 -0
  227. package/lib/types/client/slash/useSlashNavigation.d.ts +47 -0
  228. package/lib/types/client/styles.d.ts +9 -0
  229. package/lib/types/client/types.d.ts +16 -1
  230. package/lib/types/config-resolvers/slash-commands.d.ts +20 -0
  231. package/lib/types/index.d.ts +83 -2
  232. package/lib/types/lockdown-policy.d.ts +16 -0
  233. package/lib/types/personal-skills/service.d.ts +5 -0
  234. package/lib/types/provenance/host-store.d.ts +20 -3
  235. package/lib/types/provenance/retention.d.ts +46 -0
  236. package/lib/types/provenance/snapshot-store.d.ts +63 -7
  237. package/lib/types/questions.d.ts +13 -0
  238. package/lib/types/secure-session.d.ts +27 -1
  239. package/lib/types/slash/catalog.d.ts +56 -0
  240. package/lib/types/slash/matcher.d.ts +51 -0
  241. package/lib/types/slash/parser.d.ts +46 -0
  242. package/lib/types/slash/policy.d.ts +40 -0
  243. package/lib/types/slash/remotes.d.ts +35 -0
  244. package/lib/types/types.d.ts +254 -5
  245. package/package.json +9 -5
  246. package/scripts/attach-workspace-sessions.mjs +472 -0
  247. package/lib/client/admin/format.js.map +0 -1
package/lib/index.js CHANGED
@@ -41,7 +41,7 @@ import { ConfigSchema, resolveConfig } from "./config.js";
41
41
  import { createQaAccountRemotes } from "./account-remotes.js";
42
42
  import { QaAdminService } from "./admin/service.js";
43
43
  import { QaQualityStore } from "./admin/quality-store.js";
44
- import { createSessionLogReader } from "./admin/session-log.js";
44
+ import { createSessionEraser, createSessionLogReader, } from "./admin/session-log.js";
45
45
  import { createQaPersonalSkillRemotes, QaPersonalSkillsHost, } from "./personal-skills/index.js";
46
46
  import { QaApprovalGate } from "./approvals.js";
47
47
  import { QaAttestationError, qaAttestationFailureMessage, } from "./attestation.js";
@@ -53,10 +53,11 @@ import { makeLaunchTokenSource } from "./launch-token.js";
53
53
  import { QaIntegrationPrincipalBindings } from "./integration-principals.js";
54
54
  import { QaPolicyAdmission } from "./secure-session.js";
55
55
  import { QaAccessService } from "./access/service.js";
56
+ import { createQaSlashRemotes } from "./slash/remotes.js";
56
57
  import { QaPromptNotes } from "./prompt-notes.js";
57
58
  import { QaTools } from "./qa-tools/index.js";
58
59
  import { QaProvenanceHost } from "./provenance/host-store.js";
59
- import { FileQaProvenanceSnapshotStore } from "./provenance/snapshot-store.js";
60
+ import { defaultLegacyProvenanceFilePath, defaultQaProvenanceDirectoryPath, FileQaProvenanceSnapshotStore, } from "./provenance/snapshot-store.js";
60
61
  import { readSourceFilePreview, QaSourcePreviewError, } from "./provenance/file-preview.js";
61
62
  import { existingQaUserWorkspace, prepareQaUserWorkspace, } from "./user-workspace.js";
62
63
  export const name = "qa-surface";
@@ -113,6 +114,7 @@ let QaSurface = (() => {
113
114
  let _adminUpdateUser_decorators;
114
115
  let _adminConversations_decorators;
115
116
  let _adminConversation_decorators;
117
+ let _adminDeleteConversation_decorators;
116
118
  let _adminFeedback_decorators;
117
119
  let _adminRateMessage_decorators;
118
120
  let _adminReviewQueue_decorators;
@@ -135,6 +137,8 @@ let QaSurface = (() => {
135
137
  let _skillsRemove_decorators;
136
138
  let _skillsValidate_decorators;
137
139
  let _skillsTools_decorators;
140
+ let _slashCatalog_decorators;
141
+ let _slashExecute_decorators;
138
142
  return class QaSurface extends _classSuper {
139
143
  static {
140
144
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
@@ -164,6 +168,7 @@ let QaSurface = (() => {
164
168
  _adminUpdateUser_decorators = [Remote("adminUpdateUser")];
165
169
  _adminConversations_decorators = [Remote("adminConversations")];
166
170
  _adminConversation_decorators = [Remote("adminConversation")];
171
+ _adminDeleteConversation_decorators = [Remote("adminDeleteConversation")];
167
172
  _adminFeedback_decorators = [Remote("adminFeedback")];
168
173
  _adminRateMessage_decorators = [Remote("adminRateMessage")];
169
174
  _adminReviewQueue_decorators = [Remote("adminReviewQueue")];
@@ -186,6 +191,8 @@ let QaSurface = (() => {
186
191
  _skillsRemove_decorators = [Remote("skillsRemove")];
187
192
  _skillsValidate_decorators = [Remote("skillsValidate")];
188
193
  _skillsTools_decorators = [Remote("skillsTools")];
194
+ _slashCatalog_decorators = [Remote("slashCatalog")];
195
+ _slashExecute_decorators = [Remote("slashExecute")];
189
196
  __esDecorate(this, null, _accountsRegister_decorators, { kind: "method", name: "accountsRegister", static: false, private: false, access: { has: obj => "accountsRegister" in obj, get: obj => obj.accountsRegister }, metadata: _metadata }, null, _instanceExtraInitializers);
190
197
  __esDecorate(this, null, _accountsLogin_decorators, { kind: "method", name: "accountsLogin", static: false, private: false, access: { has: obj => "accountsLogin" in obj, get: obj => obj.accountsLogin }, metadata: _metadata }, null, _instanceExtraInitializers);
191
198
  __esDecorate(this, null, _accountsWhoami_decorators, { kind: "method", name: "accountsWhoami", static: false, private: false, access: { has: obj => "accountsWhoami" in obj, get: obj => obj.accountsWhoami }, metadata: _metadata }, null, _instanceExtraInitializers);
@@ -212,6 +219,7 @@ let QaSurface = (() => {
212
219
  __esDecorate(this, null, _adminUpdateUser_decorators, { kind: "method", name: "adminUpdateUser", static: false, private: false, access: { has: obj => "adminUpdateUser" in obj, get: obj => obj.adminUpdateUser }, metadata: _metadata }, null, _instanceExtraInitializers);
213
220
  __esDecorate(this, null, _adminConversations_decorators, { kind: "method", name: "adminConversations", static: false, private: false, access: { has: obj => "adminConversations" in obj, get: obj => obj.adminConversations }, metadata: _metadata }, null, _instanceExtraInitializers);
214
221
  __esDecorate(this, null, _adminConversation_decorators, { kind: "method", name: "adminConversation", static: false, private: false, access: { has: obj => "adminConversation" in obj, get: obj => obj.adminConversation }, metadata: _metadata }, null, _instanceExtraInitializers);
222
+ __esDecorate(this, null, _adminDeleteConversation_decorators, { kind: "method", name: "adminDeleteConversation", static: false, private: false, access: { has: obj => "adminDeleteConversation" in obj, get: obj => obj.adminDeleteConversation }, metadata: _metadata }, null, _instanceExtraInitializers);
215
223
  __esDecorate(this, null, _adminFeedback_decorators, { kind: "method", name: "adminFeedback", static: false, private: false, access: { has: obj => "adminFeedback" in obj, get: obj => obj.adminFeedback }, metadata: _metadata }, null, _instanceExtraInitializers);
216
224
  __esDecorate(this, null, _adminRateMessage_decorators, { kind: "method", name: "adminRateMessage", static: false, private: false, access: { has: obj => "adminRateMessage" in obj, get: obj => obj.adminRateMessage }, metadata: _metadata }, null, _instanceExtraInitializers);
217
225
  __esDecorate(this, null, _adminReviewQueue_decorators, { kind: "method", name: "adminReviewQueue", static: false, private: false, access: { has: obj => "adminReviewQueue" in obj, get: obj => obj.adminReviewQueue }, metadata: _metadata }, null, _instanceExtraInitializers);
@@ -234,6 +242,8 @@ let QaSurface = (() => {
234
242
  __esDecorate(this, null, _skillsRemove_decorators, { kind: "method", name: "skillsRemove", static: false, private: false, access: { has: obj => "skillsRemove" in obj, get: obj => obj.skillsRemove }, metadata: _metadata }, null, _instanceExtraInitializers);
235
243
  __esDecorate(this, null, _skillsValidate_decorators, { kind: "method", name: "skillsValidate", static: false, private: false, access: { has: obj => "skillsValidate" in obj, get: obj => obj.skillsValidate }, metadata: _metadata }, null, _instanceExtraInitializers);
236
244
  __esDecorate(this, null, _skillsTools_decorators, { kind: "method", name: "skillsTools", static: false, private: false, access: { has: obj => "skillsTools" in obj, get: obj => obj.skillsTools }, metadata: _metadata }, null, _instanceExtraInitializers);
245
+ __esDecorate(this, null, _slashCatalog_decorators, { kind: "method", name: "slashCatalog", static: false, private: false, access: { has: obj => "slashCatalog" in obj, get: obj => obj.slashCatalog }, metadata: _metadata }, null, _instanceExtraInitializers);
246
+ __esDecorate(this, null, _slashExecute_decorators, { kind: "method", name: "slashExecute", static: false, private: false, access: { has: obj => "slashExecute" in obj, get: obj => obj.slashExecute }, metadata: _metadata }, null, _instanceExtraInitializers);
237
247
  if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
238
248
  }
239
249
  static inject = inject;
@@ -260,6 +270,12 @@ let QaSurface = (() => {
260
270
  personalSkills;
261
271
  /** Personal-skill remote bodies; the wire signatures stay on this class. */
262
272
  skillRemotes;
273
+ /**
274
+ * Slash-catalog and command-admission bodies. Admission, not execution:
275
+ * the native skill and command runtimes stay the only things that know what
276
+ * a `/name` means.
277
+ */
278
+ slashRemotes;
263
279
  launchToken;
264
280
  /** Root session principals attested for their owner, never for admin viewing. */
265
281
  integrationPrincipals = new QaIntegrationPrincipalBindings();
@@ -283,11 +299,23 @@ let QaSurface = (() => {
283
299
  getConfig: () => this.getConfig(),
284
300
  logger: this.logger,
285
301
  });
302
+ // One durable-session reader for the whole plugin: the console lists the
303
+ // deployment's conversations with it, and the access service tells a chat
304
+ // from a delegated child with it.
305
+ const sessionLog = createSessionLogReader(ctx);
286
306
  this.access = new QaAccessService(ctx, {
287
307
  accounts: () => this.accountRemotes.resolve(this.getConfig()),
288
308
  config: () => this.getConfig(),
289
309
  logger: this.logger,
290
310
  dynamicToolNames: () => this.tools?.catalogToolNames() ?? [],
311
+ presetScope: () => this.qaPresetScope(),
312
+ sessionLog,
313
+ // The record the sweep reclaims is the authorization boundary, not the
314
+ // whole of what the deployment kept about a chat: the quality rows a
315
+ // conversation owns outlive it unless they are dropped here.
316
+ onVanishedSessions: (sessionIds) => {
317
+ this.dropVanishedChats(sessionIds);
318
+ },
291
319
  });
292
320
  this.personalSkills = new QaPersonalSkillsHost({
293
321
  ctx,
@@ -299,7 +327,11 @@ let QaSurface = (() => {
299
327
  quality: () => this.quality(),
300
328
  roles: () => this.access.roles,
301
329
  access: () => this.access,
302
- sessionLog: createSessionLogReader(ctx),
330
+ sessionLog,
331
+ // Deletion is the console's alone: the sidebar's delete stays a
332
+ // per-browser row, and only an administrator removes the chat itself.
333
+ sessionFiles: createSessionEraser(),
334
+ dropSources: (sessionId) => this.provenance.dropSession(sessionId),
303
335
  logger: this.logger,
304
336
  });
305
337
  this.skillRemotes = createQaPersonalSkillRemotes({
@@ -308,13 +340,19 @@ let QaSurface = (() => {
308
340
  skills: this.personalSkills.service,
309
341
  accounts: this.accountRemotes,
310
342
  });
343
+ this.slashRemotes = createQaSlashRemotes({
344
+ ctx,
345
+ getConfig: () => this.getConfig(),
346
+ logger: this.logger,
347
+ sessionGrant: (token, sessionId, agent) => this.slashSessionGrant(token, sessionId, agent),
348
+ });
311
349
  this.admission = new QaPolicyAdmission(ctx, () => this.getConfig(), this.logger,
312
350
  // Identity half of admission; no-ops while accounts stay disabled.
313
351
  {
314
- enforceSessionAccess: (token, sessionId) => {
352
+ enforceSessionAccess: (token, sessionId, facts) => {
315
353
  return this.accountRemotes
316
354
  .resolve(this.getConfig())
317
- ?.ensureSessionAccess(token, sessionId);
355
+ ?.ensureSessionAccess(token, sessionId, facts);
318
356
  },
319
357
  userWorkspace: (userId, registeredWorkspacePath) => existingQaUserWorkspace(registeredWorkspacePath, userId),
320
358
  },
@@ -322,7 +360,10 @@ let QaSurface = (() => {
322
360
  // role-managed sessions authorize its known entries through the frozen
323
361
  // capability policy instead.
324
362
  (agent) => this.tools?.activeToolNames(agent) ?? [], (token, sessionId, agent) => this.access.policyForSession(token, sessionId, agent), () => this.tools?.catalogToolNames() ?? []);
325
- this.provenance = new QaProvenanceHost(ctx, () => this.getConfig(), new FileQaProvenanceSnapshotStore(), (error) => this.logger.error("sources.persistence-failed", {
363
+ this.provenance = new QaProvenanceHost(ctx, () => this.getConfig(),
364
+ // Sharded per chat and bounded by the resolved retention policy: the
365
+ // turn path must never rewrite history it did not touch.
366
+ new FileQaProvenanceSnapshotStore(defaultQaProvenanceDirectoryPath(), () => this.getConfig().sources.retention, defaultLegacyProvenanceFilePath()), (error) => this.logger.error("sources.persistence-failed", {
326
367
  message: error instanceof Error ? error.message : String(error),
327
368
  }));
328
369
  // The one place a composed gate's `ask` becomes a decision for an attested
@@ -358,6 +399,7 @@ let QaSurface = (() => {
358
399
  ctx.effect(() => () => this.notes.dispose(), "dsh-qa-surface.prompt-notes");
359
400
  ctx.effect(() => () => this.personalSkills.dispose(), "dsh-qa-surface.personal-skills");
360
401
  this.warnDocumentsMoved();
402
+ this.warnLegacySlashDefaults();
361
403
  // The QA tool catalog is attached per agent, never at boot: nothing here
362
404
  // reaches the model until a managed agent loads the activation skill.
363
405
  this.tools = new QaTools(ctx, {
@@ -384,6 +426,7 @@ let QaSurface = (() => {
384
426
  const config = this.getConfig();
385
427
  this.refreshRoute();
386
428
  this.warnDocumentsMoved();
429
+ this.warnLegacySlashDefaults();
387
430
  this.logger.info("config.updated", {
388
431
  enabled: config.enabled,
389
432
  route: config.route.path,
@@ -409,6 +452,11 @@ let QaSurface = (() => {
409
452
  enabled: resolvedEntry.enabled,
410
453
  route: resolvedEntry.route.path,
411
454
  sessionPolicy: resolvedEntry.session.policy,
455
+ // What the two parked-interaction seams resolve to on this deployment:
456
+ // the attestation path warns per session when the question seam and the
457
+ // tool policy disagree, and this is the config they are read against.
458
+ approvals: resolvedEntry.interaction.approvals,
459
+ questions: resolvedEntry.interaction.questions,
412
460
  });
413
461
  }
414
462
  /** The quality store, opening its file the first time anyone needs it. */
@@ -416,6 +464,44 @@ let QaSurface = (() => {
416
464
  this.qualityStore ??= new QaQualityStore();
417
465
  return this.qualityStore;
418
466
  }
467
+ /**
468
+ * The standing scope of the preset QA chats run under, so an administrator's
469
+ * capability catalog is read the way a chat reads it. Everything a preset
470
+ * mounts — its skill catalog, its tool family — is registered in that scope,
471
+ * and a global-only read showed the operator an almost empty page. Resolving
472
+ * the preset composes it but starts no agent, no session and no turn;
473
+ * without a pinned preset there is nothing to borrow, and the read stays
474
+ * global.
475
+ */
476
+ async qaPresetScope() {
477
+ const preset = this.getConfig().session.agentPreset;
478
+ if (preset === null || preset === undefined)
479
+ return undefined;
480
+ return await this.ctx.agentPresets.standingKeyFor(preset);
481
+ }
482
+ /**
483
+ * Drop what the quality layer kept about chats that no longer exist in the
484
+ * Harness. The ownership sweep calls this with the ids it reclaimed: the
485
+ * record it removes is one thing the deployment held about a chat, and
486
+ * ratings, reviews and queue entries are the rest. Failure is logged and
487
+ * swallowed — housekeeping runs inside a review read, and a store that
488
+ * cannot be opened must not fail the page that triggered it.
489
+ */
490
+ dropVanishedChats(sessionIds) {
491
+ try {
492
+ const rows = this.quality().dropConversations(sessionIds);
493
+ this.logger.info("quality.vanished-conversations-dropped", {
494
+ conversations: sessionIds.length,
495
+ rows,
496
+ sessionIds: sessionIds.slice(0, 20),
497
+ });
498
+ }
499
+ catch (error) {
500
+ this.logger.error("quality.vanished-conversations-drop-failed", {
501
+ message: error instanceof Error ? error.message : String(error),
502
+ });
503
+ }
504
+ }
419
505
  /** Resolve browser authentication to the caller only; never accepts an id. */
420
506
  principalForToken(token) {
421
507
  const accounts = this.accountRemotes.resolve(this.getConfig());
@@ -442,6 +528,36 @@ let QaSurface = (() => {
442
528
  getConfig() {
443
529
  return resolveConfig(this.source());
444
530
  }
531
+ /**
532
+ * Ownership plus the role's user-skill grant for one slash read.
533
+ *
534
+ * Ownership comes first and for the same reason the rest of the plugin does
535
+ * it: a catalog names the skills a chat can reach, and a foreign browser has
536
+ * no business enumerating that. With accounts off there is no identity to
537
+ * check and the deployment's lockdown is the boundary, exactly as it is for
538
+ * every other remote.
539
+ *
540
+ * The grant mirrors `installQaSkillPolicy` to the letter — an empty
541
+ * `userSkills` list means the role keeps no separate user list, not that it
542
+ * grants nothing — so the palette can never offer a skill the typed gesture
543
+ * would refuse, nor hide one it would accept.
544
+ */
545
+ async slashSessionGrant(token, sessionId, agent) {
546
+ const accounts = this.accountRemotes.resolve(this.getConfig());
547
+ if (accounts === undefined)
548
+ return undefined;
549
+ if (agent === undefined) {
550
+ // A cold chat has no capability snapshot to read, but it still has an
551
+ // owner, and that is what the catalog read must respect.
552
+ this.accountRemotes.run(() => this.access.session(token, sessionId));
553
+ return undefined;
554
+ }
555
+ const resolved = await this.access.policyForSession(token, sessionId, agent);
556
+ if (resolved === undefined)
557
+ return undefined;
558
+ const { policy } = resolved;
559
+ return policy.userSkills.length === 0 ? policy.skills : policy.userSkills;
560
+ }
445
561
  /**
446
562
  * Self-service signup; the first account ever created becomes admin. The
447
563
  * display name derives from the email: the generated client enforces exact
@@ -457,9 +573,13 @@ let QaSurface = (() => {
457
573
  accountsWhoami(token) {
458
574
  return this.accountRemotes.whoami(token);
459
575
  }
460
- /** Migrate a browser's local chat index into server-side ownership. */
576
+ /**
577
+ * Migrate a browser's local chat index into server-side ownership. The
578
+ * access service owns the filter: a delegated session in that index is not a
579
+ * chat and is never claimed.
580
+ */
461
581
  accountsClaimSessions(token, sessionIds) {
462
- return this.accountRemotes.claimSessions(token, sessionIds);
582
+ return this.accountRemotes.run(() => this.access.claimSessions(token, sessionIds));
463
583
  }
464
584
  /** The token user's owned session ids; the sidebar list authority. */
465
585
  accountsOwnedSessions(token) {
@@ -515,7 +635,6 @@ let QaSurface = (() => {
515
635
  const owner = accounts === undefined
516
636
  ? undefined
517
637
  : this.accountRemotes.run(() => this.access.reserveSession(token, String(id), subroleId, adminPreview));
518
- let hostCreated = false;
519
638
  try {
520
639
  // Check deployment-only pins before creating a durable Host session.
521
640
  // Full admission below still verifies the composed agent and tool view.
@@ -545,7 +664,6 @@ let QaSurface = (() => {
545
664
  ? {}
546
665
  : { agentPreset: config.session.agentPreset }),
547
666
  });
548
- hostCreated = true;
549
667
  if (config.session.provider !== null && config.session.model !== null) {
550
668
  await this.ctx.sessionController.selectModel({
551
669
  sessionId: created.sessionId,
@@ -562,7 +680,12 @@ let QaSurface = (() => {
562
680
  return sessionId;
563
681
  }
564
682
  catch (error) {
565
- if (!hostCreated && owner !== undefined) {
683
+ // This call is the only way the browser could have learned the id, so a
684
+ // failure at any stage — the Host creating the session, selecting the
685
+ // model, the admission refusing the composition — leaves no chat behind
686
+ // and the reservation goes with it. A kept record would put an empty
687
+ // chat in the account's list, and nothing else would ever remove it.
688
+ if (owner !== undefined) {
566
689
  accounts?.releaseSessionReservation(owner.id, String(id));
567
690
  }
568
691
  this.logger.error("session.create-rejected", {
@@ -643,6 +766,14 @@ let QaSurface = (() => {
643
766
  adminConversation(token, conversationId) {
644
767
  return this.accountRemotes.runAsync(() => this.admin.conversation(token, conversationId));
645
768
  }
769
+ /**
770
+ * Remove one conversation from the deployment. Admin-only, audited, and the
771
+ * only path that deletes what a person wrote — the sidebar's own delete
772
+ * stays what it always was, a per-browser row.
773
+ */
774
+ adminDeleteConversation(token, conversationId) {
775
+ return this.accountRemotes.runAsync(() => this.admin.deleteConversation(token, conversationId));
776
+ }
646
777
  adminFeedback(token, query, cursor, limit) {
647
778
  return this.accountRemotes.runAsync(() => this.admin.feedback(token, query, cursor ?? undefined, limit ?? undefined));
648
779
  }
@@ -818,6 +949,32 @@ let QaSurface = (() => {
818
949
  skillsTools(token) {
819
950
  return this.skillRemotes.tools(token);
820
951
  }
952
+ /**
953
+ * The slash entries this browser may offer for one chat: the session's
954
+ * user-invocable skills and its agent's effective commands, already cut down
955
+ * by the deployment policy and by the chat's role. The browser filters and
956
+ * ranks this list; it never widens it.
957
+ *
958
+ * Enabled is reported rather than assumed, so a page that loaded before the
959
+ * operator flipped the master switch learns the truth instead of showing an
960
+ * empty palette forever.
961
+ */
962
+ slashCatalog(token, sessionId) {
963
+ return this.slashRemotes.catalog(token, sessionId);
964
+ }
965
+ /**
966
+ * Run one human command line. The line is the whole request — the browser
967
+ * sends no name, no kind and no descriptor, so there is nothing for it to
968
+ * forge; admission re-derives the name and re-checks the policy against the
969
+ * deployment's own config.
970
+ *
971
+ * A command never becomes a model message: the native runtime answers it and
972
+ * writes `command/run`/`command/done` into the session log, which is where
973
+ * the transcript row is read from.
974
+ */
975
+ slashExecute(token, sessionId, line, attachments) {
976
+ return this.slashRemotes.execute(token, sessionId, line, attachments);
977
+ }
821
978
  refreshRoute() {
822
979
  const config = this.getConfig();
823
980
  const key = config.enabled
@@ -835,6 +992,21 @@ let QaSurface = (() => {
835
992
  });
836
993
  this.routeKey = key;
837
994
  }
995
+ /**
996
+ * A deployment that set `lockdown.allowSlashCommands: true` before this
997
+ * section existed keeps the behaviour it asked for — skills at `all`,
998
+ * commands denied — and is told so once per configuration change, because
999
+ * "skills appeared after the upgrade" is otherwise indistinguishable from a
1000
+ * defect. Commands are never part of that fallback: an upgrade must not hand
1001
+ * the user a control-plane command nobody named.
1002
+ */
1003
+ warnLegacySlashDefaults() {
1004
+ if (!this.getConfig().slashCommands.legacyDefaults)
1005
+ return;
1006
+ this.logger.warn("slash.legacy-defaults", {
1007
+ message: "lockdown.allowSlashCommands=true without a slashCommands section: every user-invocable skill is admitted and no human command is. Declare slashCommands.commands to enable commands explicitly.",
1008
+ });
1009
+ }
838
1010
  /**
839
1011
  * The document pipeline moved out of this plugin into `@yadsh/dsh-documents`.
840
1012
  * A deployment whose profile still carries the old `documents` section would
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -29,4 +29,23 @@ export function qaToolDenial(allowed, toolName, dynamicNames = []) {
29
29
  ? undefined
30
30
  : TOOL_DENIAL;
31
31
  }
32
+ const CEILING_DENIAL = "This tool is outside the capability profile of this conversation, which also bounds its delegated assistants.";
33
+ /**
34
+ * The conversation-wide ceiling, applied to every agent of an attested chat.
35
+ *
36
+ * A scoped restriction and a scoped guard cover the scope that owns them and
37
+ * that scope's descendants. A delegated child is composed from the parent's
38
+ * PRESET, so the parent agent's own layers never enter the child's chain: the
39
+ * child is bounded by its preset `toolFilter` alone, and an expert can
40
+ * therefore hold — and call — a tool the subrole never granted the chat. This
41
+ * check is the ceiling the whole conversation shares: the subrole's reach,
42
+ * visible tools plus the grantable ones, so a skill may still hand a tool to a
43
+ * delegated assistant, but nothing may exceed what the role could ever grant.
44
+ * @param ceiling - names reachable anywhere in this conversation.
45
+ * @param toolName - the tool the model is trying to call.
46
+ * @returns the denial reason, or `undefined` when the call is within reach.
47
+ */
48
+ export function qaCeilingDenial(ceiling, toolName) {
49
+ return ceiling.has(toolName) ? undefined : CEILING_DENIAL;
50
+ }
32
51
  //# sourceMappingURL=lockdown-policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lockdown-policy.js","sourceRoot":"","sources":["../src/lockdown-policy.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,yDAAyD,CAAC;AAS9E;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAwB,EACxB,SAAwC;IAExC,OAAO;QACL,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,OAA4B,EAC5B,QAAgB,EAChB,YAAY,GAAsB,EAAE;IAEpC,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,WAAW,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"lockdown-policy.js","sourceRoot":"","sources":["../src/lockdown-policy.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,yDAAyD,CAAC;AAS9E;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAwB,EACxB,SAAwC;IAExC,OAAO;QACL,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,OAA4B,EAC5B,QAAgB,EAChB,YAAY,GAAsB,EAAE;IAEpC,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,WAAW,CAAC;AAClB,CAAC;AAED,MAAM,cAAc,GAClB,+GAA+G,CAAC;AAElH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAC7B,OAA4B,EAC5B,QAAgB;IAEhB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;AAC5D,CAAC"}
@@ -227,6 +227,11 @@ export class QaPersonalSkills {
227
227
  * The skills one session cwd exposes to DSH. A file the parser rejects, or
228
228
  * one whose name disagrees with its directory, is reported in the editor and
229
229
  * never handed to the model as a half-valid skill.
230
+ *
231
+ * This is the model-facing discovery path, so it degrades to empty instead
232
+ * of throwing: a provider that throws marks the whole catalog snapshot
233
+ * incomplete, and the harness then withholds the available-skills section
234
+ * from every session — not just this account's skills.
230
235
  */
231
236
  discover(cwd) {
232
237
  const config = this.options.getConfig();
@@ -236,9 +241,17 @@ export class QaPersonalSkills {
236
241
  if (roots === undefined)
237
242
  return [];
238
243
  this.observe(roots.skills);
239
- return listSkillDirectories(roots)
240
- .map((directoryName) => this.load(roots, directoryName))
241
- .filter((skill) => this.isDiscoverable(skill));
244
+ try {
245
+ return listSkillDirectories(roots)
246
+ .map((directoryName) => this.load(roots, directoryName))
247
+ .filter((skill) => this.isDiscoverable(skill));
248
+ }
249
+ catch (error) {
250
+ this.options.logger.warn("skill.discover-failed", {
251
+ message: error instanceof Error ? error.message : String(error),
252
+ });
253
+ return [];
254
+ }
242
255
  }
243
256
  /** Re-read one skill of a session cwd, re-checking the same boundary. */
244
257
  read(cwd, directoryName) {