@yadsh/dsh-qa-surface 0.15.7 → 0.17.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.
- package/README.md +27 -2
- package/lib/access/capability-catalog.js +11 -4
- package/lib/access/capability-catalog.js.map +1 -1
- package/lib/access/service.js +46 -5
- package/lib/access/service.js.map +1 -1
- package/lib/account-remotes.js +9 -0
- package/lib/account-remotes.js.map +1 -1
- package/lib/accounts/database.js +34 -3
- package/lib/accounts/database.js.map +1 -1
- package/lib/accounts/store.js +22 -2
- package/lib/accounts/store.js.map +1 -1
- package/lib/admin/service.js +4 -2
- package/lib/admin/service.js.map +1 -1
- package/lib/admin/session-log.js +3 -0
- package/lib/admin/session-log.js.map +1 -1
- package/lib/agent-scope.js +9 -0
- package/lib/agent-scope.js.map +1 -0
- package/lib/chat-sharing/native-fence.js +120 -0
- package/lib/chat-sharing/native-fence.js.map +1 -0
- package/lib/chat-sharing/resources.js +57 -0
- package/lib/chat-sharing/resources.js.map +1 -0
- package/lib/chat-sharing/store.js +199 -0
- package/lib/chat-sharing/store.js.map +1 -0
- package/lib/chat-sharing/transport.js +329 -0
- package/lib/chat-sharing/transport.js.map +1 -0
- package/lib/chat-sharing/turn-guard.js +154 -0
- package/lib/chat-sharing/turn-guard.js.map +1 -0
- package/lib/chat-sharing/types.js +2 -0
- package/lib/chat-sharing/types.js.map +1 -0
- package/lib/chat-sharing/uploads.js +55 -0
- package/lib/chat-sharing/uploads.js.map +1 -0
- package/lib/client/QaAccountsController.js +47 -2
- package/lib/client/QaAccountsController.js.map +1 -1
- package/lib/client/QaConfigController.js +7 -12
- package/lib/client/QaConfigController.js.map +1 -1
- package/lib/client/QaSessionController.js +195 -19
- package/lib/client/QaSessionController.js.map +1 -1
- package/lib/client/QaSurface.js +156 -14
- package/lib/client/QaSurface.js.map +1 -1
- package/lib/client/QaSurfaceGuard.js +6 -1
- package/lib/client/QaSurfaceGuard.js.map +1 -1
- package/lib/client/QaTranscriptAdapter.js +28 -5
- package/lib/client/QaTranscriptAdapter.js.map +1 -1
- package/lib/client/account-conversation.js +33 -0
- package/lib/client/account-conversation.js.map +1 -0
- package/lib/client/account-sessions.js +106 -0
- package/lib/client/account-sessions.js.map +1 -0
- package/lib/client/account-upload.js +30 -0
- package/lib/client/account-upload.js.map +1 -0
- package/lib/client/answer-review.js +89 -0
- package/lib/client/answer-review.js.map +1 -0
- package/lib/client/chat-artifacts.js +18 -3
- package/lib/client/chat-artifacts.js.map +1 -1
- package/lib/client/chat-sharing-api.js +2 -0
- package/lib/client/chat-sharing-api.js.map +1 -0
- package/lib/client/components/QaAnswerReviewStatus.js +45 -0
- package/lib/client/components/QaAnswerReviewStatus.js.map +1 -0
- package/lib/client/components/QaChangelog.js +92 -3
- package/lib/client/components/QaChangelog.js.map +1 -1
- package/lib/client/components/QaChatActions.js +52 -0
- package/lib/client/components/QaChatActions.js.map +1 -0
- package/lib/client/components/QaChatSharing.js +95 -0
- package/lib/client/components/QaChatSharing.js.map +1 -0
- package/lib/client/components/QaComposer.js +8 -4
- package/lib/client/components/QaComposer.js.map +1 -1
- package/lib/client/components/QaFileAttachment.js +12 -3
- package/lib/client/components/QaFileAttachment.js.map +1 -1
- package/lib/client/components/QaFilesPanel.js +11 -4
- package/lib/client/components/QaFilesPanel.js.map +1 -1
- package/lib/client/components/QaHeader.js +3 -3
- package/lib/client/components/QaHeader.js.map +1 -1
- package/lib/client/components/QaMarkdownPreview.js +86 -0
- package/lib/client/components/QaMarkdownPreview.js.map +1 -0
- package/lib/client/components/QaMessage.js +41 -10
- package/lib/client/components/QaMessage.js.map +1 -1
- package/lib/client/components/QaModal.js +17 -0
- package/lib/client/components/QaModal.js.map +1 -1
- package/lib/client/components/QaRightRail.js +6 -4
- package/lib/client/components/QaRightRail.js.map +1 -1
- package/lib/client/components/QaRightRailResize.js +129 -0
- package/lib/client/components/QaRightRailResize.js.map +1 -0
- package/lib/client/components/QaSidebar.js +11 -2
- package/lib/client/components/QaSidebar.js.map +1 -1
- package/lib/client/components/QaSourceFilters.js +22 -0
- package/lib/client/components/QaSourceFilters.js.map +1 -0
- package/lib/client/components/QaSourcesPanel.js +66 -14
- package/lib/client/components/QaSourcesPanel.js.map +1 -1
- package/lib/client/components/QaSpreadsheetPreview.js +56 -0
- package/lib/client/components/QaSpreadsheetPreview.js.map +1 -0
- package/lib/client/components/QaWelcomeNotice.js +2 -2
- package/lib/client/components/QaWelcomeNotice.js.map +1 -1
- package/lib/client/components/QaWorkspaceBrowser.js +46 -12
- package/lib/client/components/QaWorkspaceBrowser.js.map +1 -1
- package/lib/client/components/QaZoomImage.js +56 -0
- package/lib/client/components/QaZoomImage.js.map +1 -0
- package/lib/client/components/source-refs.js +57 -24
- package/lib/client/components/source-refs.js.map +1 -1
- package/lib/client/index.js +76 -8
- package/lib/client/index.js.map +1 -1
- package/lib/client/lineage.js +4 -3
- package/lib/client/lineage.js.map +1 -1
- package/lib/client/markdown/SourceImage.js +52 -0
- package/lib/client/markdown/SourceImage.js.map +1 -0
- package/lib/client/markdown/blocks.js +150 -115
- package/lib/client/markdown/blocks.js.map +1 -1
- package/lib/client/markdown/katex-css.js +1 -1
- package/lib/client/markdown/render.js +26 -9
- package/lib/client/markdown/render.js.map +1 -1
- package/lib/client/markdown/source-chip.js +6 -2
- package/lib/client/markdown/source-chip.js.map +1 -1
- package/lib/client/notifications/notification-dispatcher.js +50 -11
- package/lib/client/notifications/notification-dispatcher.js.map +1 -1
- package/lib/client/notifications/use-turn-notifications.js +107 -18
- package/lib/client/notifications/use-turn-notifications.js.map +1 -1
- package/lib/client/project-session-state.js +28 -13
- package/lib/client/project-session-state.js.map +1 -1
- package/lib/client/session-admission.js +9 -1
- package/lib/client/session-admission.js.map +1 -1
- package/lib/client/session-sources.js +44 -3
- package/lib/client/session-sources.js.map +1 -1
- package/lib/client/settings/sections/sources.js +1 -1
- package/lib/client/settings/sections/sources.js.map +1 -1
- package/lib/client/settings/styles.js +18 -28
- package/lib/client/settings/styles.js.map +1 -1
- package/lib/client/slash/useSlashNavigation.js +8 -5
- package/lib/client/slash/useSlashNavigation.js.map +1 -1
- package/lib/client/source-filters-styles.js +11 -0
- package/lib/client/source-filters-styles.js.map +1 -0
- package/lib/client/source-preview.js +1 -1
- package/lib/client/source-preview.js.map +1 -1
- package/lib/client/styles.js +62 -4
- package/lib/client/styles.js.map +1 -1
- package/lib/client/turn-sources.js +2 -1
- package/lib/client/turn-sources.js.map +1 -1
- package/lib/client/types.js.map +1 -1
- package/lib/client/use-right-rail.js +1 -1
- package/lib/client/use-right-rail.js.map +1 -1
- package/lib/client/user-settings/IntegrationTokensPage.js +30 -6
- package/lib/client/user-settings/IntegrationTokensPage.js.map +1 -1
- package/lib/client/workspace-download.js +42 -2
- package/lib/client/workspace-download.js.map +1 -1
- package/lib/client.js +6481 -2234
- package/lib/client.js.map +1 -1
- package/lib/config-resolvers/defaults.js +4 -3
- package/lib/config-resolvers/defaults.js.map +1 -1
- package/lib/config-resolvers/sources.js +2 -0
- package/lib/config-resolvers/sources.js.map +1 -1
- package/lib/config.js +3 -0
- package/lib/config.js.map +1 -1
- package/lib/enforcement/skill-policy.js +29 -4
- package/lib/enforcement/skill-policy.js.map +1 -1
- package/lib/enforcement/skill-resource-paths.js +32 -0
- package/lib/enforcement/skill-resource-paths.js.map +1 -0
- package/lib/enforcement/structured-result.js +38 -0
- package/lib/enforcement/structured-result.js.map +1 -0
- package/lib/enforcement/tool-grants.js +3 -1
- package/lib/enforcement/tool-grants.js.map +1 -1
- package/lib/index.js +447 -17
- package/lib/index.js.map +1 -1
- package/lib/integration/host-runner.js +1 -0
- package/lib/integration/host-runner.js.map +1 -1
- package/lib/integration/question-policy.js +126 -0
- package/lib/integration/question-policy.js.map +1 -0
- package/lib/integration/service.js +2 -0
- package/lib/integration/service.js.map +1 -1
- package/lib/llm-identity.js +27 -0
- package/lib/llm-identity.js.map +1 -0
- package/lib/markdown-frontmatter.js +47 -0
- package/lib/markdown-frontmatter.js.map +1 -0
- package/lib/markdown-images.js +33 -0
- package/lib/markdown-images.js.map +1 -0
- package/lib/prompt-notes.js +19 -2
- package/lib/prompt-notes.js.map +1 -1
- package/lib/provenance/collector.js +15 -1
- package/lib/provenance/collector.js.map +1 -1
- package/lib/provenance/connectors.js +57 -27
- package/lib/provenance/connectors.js.map +1 -1
- package/lib/provenance/dedupe.js +25 -1
- package/lib/provenance/dedupe.js.map +1 -1
- package/lib/provenance/document-preview.js +31 -3
- package/lib/provenance/document-preview.js.map +1 -1
- package/lib/provenance/extractors.js +88 -4
- package/lib/provenance/extractors.js.map +1 -1
- package/lib/provenance/file-download.js +56 -0
- package/lib/provenance/file-download.js.map +1 -0
- package/lib/provenance/file-preview.js +20 -2
- package/lib/provenance/file-preview.js.map +1 -1
- package/lib/provenance/host-store.js +59 -10
- package/lib/provenance/host-store.js.map +1 -1
- package/lib/provenance/integration-extractor.js +62 -0
- package/lib/provenance/integration-extractor.js.map +1 -0
- package/lib/provenance/snapshot-store.js +2 -0
- package/lib/provenance/snapshot-store.js.map +1 -1
- package/lib/provenance/source-content.js +103 -0
- package/lib/provenance/source-content.js.map +1 -0
- package/lib/provenance/source-image.js +57 -0
- package/lib/provenance/source-image.js.map +1 -0
- package/lib/provenance/spreadsheet-preview.js +52 -0
- package/lib/provenance/spreadsheet-preview.js.map +1 -0
- package/lib/qa-tools/docs-tools.js +14 -0
- package/lib/qa-tools/docs-tools.js.map +1 -1
- package/lib/questions.js +6 -1
- package/lib/questions.js.map +1 -1
- package/lib/secure-session.js +9 -3
- package/lib/secure-session.js.map +1 -1
- package/lib/session-fork-host.js +157 -0
- package/lib/session-fork-host.js.map +1 -0
- package/lib/session-fork.js +34 -0
- package/lib/session-fork.js.map +1 -0
- package/lib/session-ownership.js +5 -1
- package/lib/session-ownership.js.map +1 -1
- package/lib/shared/documents.js +12 -0
- package/lib/shared/documents.js.map +1 -1
- package/lib/shared/session-lineage.js +6 -0
- package/lib/shared/session-lineage.js.map +1 -0
- package/lib/slash/draft-target.js +21 -0
- package/lib/slash/draft-target.js.map +1 -0
- package/lib/slash/remotes.js +39 -4
- package/lib/slash/remotes.js.map +1 -1
- package/lib/typert.host.js +1869 -163
- package/lib/typert.remote-client.d.ts +56 -5
- package/lib/typert.remote-client.js +1678 -154
- package/lib/types/access/capability-catalog.d.ts +1 -1
- package/lib/types/access/service.d.ts +7 -0
- package/lib/types/access.js +2 -0
- package/lib/types/access.js.map +1 -0
- package/lib/types/account-remotes.d.ts +3 -0
- package/lib/types/accounts/database.d.ts +5 -0
- package/lib/types/accounts/store.d.ts +7 -2
- package/lib/types/accounts.js +2 -0
- package/lib/types/accounts.js.map +1 -0
- package/lib/types/admin/session-log.d.ts +2 -0
- package/lib/types/admin.js +2 -0
- package/lib/types/admin.js.map +1 -0
- package/lib/types/agent-scope.d.ts +4 -0
- package/lib/types/answer-review.js +2 -0
- package/lib/types/answer-review.js.map +1 -0
- package/lib/types/capability.js +2 -0
- package/lib/types/capability.js.map +1 -0
- package/lib/types/chat-sharing/native-fence.d.ts +11 -0
- package/lib/types/chat-sharing/resources.d.ts +5 -0
- package/lib/types/chat-sharing/store.d.ts +29 -0
- package/lib/types/chat-sharing/transport.d.ts +32 -0
- package/lib/types/chat-sharing/turn-guard.d.ts +21 -0
- package/lib/types/chat-sharing/types.d.ts +25 -0
- package/lib/types/chat-sharing/uploads.d.ts +5 -0
- package/lib/types/client/QaAccountsController.d.ts +4 -0
- package/lib/types/client/QaConfigController.d.ts +3 -2
- package/lib/types/client/QaSessionController.d.ts +17 -3
- package/lib/types/client/QaSurface.d.ts +6 -1
- package/lib/types/client/account-conversation.d.ts +6 -0
- package/lib/types/client/account-sessions.d.ts +7 -0
- package/lib/types/client/account-upload.d.ts +15 -0
- package/lib/types/client/answer-review.d.ts +16 -0
- package/lib/types/client/chat-sharing-api.d.ts +35 -0
- package/lib/types/client/components/QaAnswerReviewStatus.d.ts +8 -0
- package/lib/types/client/components/QaChatActions.d.ts +7 -0
- package/lib/types/client/components/QaChatSharing.d.ts +12 -0
- package/lib/types/client/components/QaComposer.d.ts +2 -0
- package/lib/types/client/components/QaFileAttachment.d.ts +3 -2
- package/lib/types/client/components/QaFilesPanel.d.ts +4 -1
- package/lib/types/client/components/QaMarkdownPreview.d.ts +13 -0
- package/lib/types/client/components/QaMessage.d.ts +5 -2
- package/lib/types/client/components/QaModal.d.ts +9 -0
- package/lib/types/client/components/QaRightRail.d.ts +3 -2
- package/lib/types/client/components/QaRightRailResize.d.ts +9 -0
- package/lib/types/client/components/QaSidebar.d.ts +2 -0
- package/lib/types/client/components/QaSourceFilters.d.ts +12 -0
- package/lib/types/client/components/QaSpreadsheetPreview.d.ts +8 -0
- package/lib/types/client/components/QaWelcomeNotice.d.ts +1 -1
- package/lib/types/client/components/QaWorkspaceBrowser.d.ts +8 -1
- package/lib/types/client/components/QaZoomImage.d.ts +38 -0
- package/lib/types/client/components/source-refs.d.ts +1 -0
- package/lib/types/client/lineage.d.ts +2 -2
- package/lib/types/client/markdown/SourceImage.d.ts +7 -0
- package/lib/types/client/markdown/blocks.d.ts +8 -1
- package/lib/types/client/markdown/render.d.ts +5 -1
- package/lib/types/client/markdown/source-chip.d.ts +1 -0
- package/lib/types/client/notifications/notification-dispatcher.d.ts +10 -6
- package/lib/types/client/notifications/use-turn-notifications.d.ts +4 -0
- package/lib/types/client/project-session-state.d.ts +1 -0
- package/lib/types/client/session-admission.d.ts +2 -0
- package/lib/types/client/session-sources.d.ts +1 -0
- package/lib/types/client/settings/styles.d.ts +2 -5
- package/lib/types/client/source-filters-styles.d.ts +2 -0
- package/lib/types/client/turn-sources.d.ts +1 -1
- package/lib/types/client/types.d.ts +18 -5
- package/lib/types/client/workspace-download.d.ts +9 -1
- package/lib/types/config.js +2 -0
- package/lib/types/config.js.map +1 -0
- package/lib/types/documents.js +2 -0
- package/lib/types/documents.js.map +1 -0
- package/lib/types/enforcement/skill-resource-paths.d.ts +5 -0
- package/lib/types/enforcement/structured-result.d.ts +11 -0
- package/lib/types/expert-memory.js +2 -0
- package/lib/types/expert-memory.js.map +1 -0
- package/lib/types/index.d.ts +42 -3
- package/lib/types/integration/contract.d.ts +1 -0
- package/lib/types/integration/question-policy.d.ts +20 -0
- package/lib/types/integration/service.d.ts +1 -0
- package/lib/types/llm-identity.d.ts +20 -0
- package/lib/types/markdown-frontmatter.d.ts +10 -0
- package/lib/types/markdown-images.d.ts +3 -0
- package/lib/types/policy.js +2 -0
- package/lib/types/policy.js.map +1 -0
- package/lib/types/prompt-notes.d.ts +3 -1
- package/lib/types/provenance/connectors.d.ts +4 -1
- package/lib/types/provenance/document-preview.d.ts +5 -2
- package/lib/types/provenance/extractors.d.ts +2 -0
- package/lib/types/provenance/file-download.d.ts +10 -0
- package/lib/types/provenance/file-preview.d.ts +2 -1
- package/lib/types/provenance/host-store.d.ts +2 -0
- package/lib/types/provenance/integration-extractor.d.ts +5 -0
- package/lib/types/provenance/source-content.d.ts +19 -0
- package/lib/types/provenance/source-image.d.ts +4 -0
- package/lib/types/provenance/spreadsheet-preview.d.ts +5 -0
- package/lib/types/provenance/types.d.ts +5 -0
- package/lib/types/qa-tools/docs-tools.d.ts +2 -0
- package/lib/types/quality.js +7 -0
- package/lib/types/quality.js.map +1 -0
- package/lib/types/questions.d.ts +2 -1
- package/lib/types/session-fork-host.d.ts +27 -0
- package/lib/types/session-fork.d.ts +7 -0
- package/lib/types/session.js +2 -0
- package/lib/types/session.js.map +1 -0
- package/lib/types/shared/documents.d.ts +2 -0
- package/lib/types/shared/session-lineage.d.ts +7 -0
- package/lib/types/skills.js +2 -0
- package/lib/types/skills.js.map +1 -0
- package/lib/types/slash/draft-target.d.ts +7 -0
- package/lib/types/slash/remotes.d.ts +7 -0
- package/lib/types/slash.js +2 -0
- package/lib/types/slash.js.map +1 -0
- package/lib/types/types/access.d.ts +43 -0
- package/lib/types/types/accounts.d.ts +177 -0
- package/lib/types/types/admin.d.ts +286 -0
- package/lib/types/types/answer-review.d.ts +11 -0
- package/lib/types/types/capability.d.ts +230 -0
- package/lib/types/types/config.d.ts +597 -0
- package/lib/types/types/documents.d.ts +34 -0
- package/lib/types/types/expert-memory.d.ts +35 -0
- package/lib/types/types/policy.d.ts +54 -0
- package/lib/types/types/quality.d.ts +100 -0
- package/lib/types/types/session.d.ts +397 -0
- package/lib/types/types/skills.d.ts +143 -0
- package/lib/types/types/slash.d.ts +159 -0
- package/lib/types/types.d.ts +14 -2180
- package/package.json +8 -7
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tools split by how they become available. `always` is visible from the first
|
|
3
|
+
* model step; `skillGrantable` is a ceiling — the tool only appears once an
|
|
4
|
+
* activated skill requires it, and never outside this list.
|
|
5
|
+
*/
|
|
6
|
+
export interface QaToolSelection {
|
|
7
|
+
readonly always: readonly string[];
|
|
8
|
+
readonly skillGrantable: readonly string[];
|
|
9
|
+
/**
|
|
10
|
+
* Names this layer takes away, whatever grants them.
|
|
11
|
+
*
|
|
12
|
+
* The deployment's pinned tools and the Common layer reach every role, so
|
|
13
|
+
* without this a system tool could only be withdrawn by editing the profile
|
|
14
|
+
* and restarting the Host. A denial beats every grant — system, Common, the
|
|
15
|
+
* role's own list and every skill — and it narrows the ceiling a delegated
|
|
16
|
+
* assistant is held to, so one checkbox takes a tool away from a role and
|
|
17
|
+
* from the experts that role may spawn.
|
|
18
|
+
*/
|
|
19
|
+
readonly deny?: readonly string[];
|
|
20
|
+
}
|
|
21
|
+
/** Tool/skill selection shared by the common layer and one QA subrole. */
|
|
22
|
+
export interface QaCapabilitySelection {
|
|
23
|
+
readonly tools: QaToolSelection;
|
|
24
|
+
readonly skills: readonly string[];
|
|
25
|
+
/** Reserved extension seams; v1 enforcement intentionally ignores them. */
|
|
26
|
+
readonly mcpServers?: readonly string[];
|
|
27
|
+
readonly knowledgeSources?: readonly string[];
|
|
28
|
+
readonly promptAdditions?: readonly string[];
|
|
29
|
+
}
|
|
30
|
+
/** Audience one skill declares for itself in its own SKILL.md metadata. */
|
|
31
|
+
export type QaSkillAudience = {
|
|
32
|
+
readonly type: "unassigned";
|
|
33
|
+
} | {
|
|
34
|
+
readonly type: "common";
|
|
35
|
+
} | {
|
|
36
|
+
readonly type: "subroles";
|
|
37
|
+
readonly include: readonly string[];
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Normalized `metadata.qa-surface` of one skill. Discovery never throws on a
|
|
41
|
+
* malformed block: the fields fall back to the fail-closed defaults and every
|
|
42
|
+
* complaint lands in `warnings` for the administration surface.
|
|
43
|
+
*/
|
|
44
|
+
export interface QaSkillDescriptor {
|
|
45
|
+
readonly name: string;
|
|
46
|
+
readonly audience: QaSkillAudience;
|
|
47
|
+
/** Tools the skill needs to work; the role ceiling still decides the grant. */
|
|
48
|
+
readonly requiredTools: readonly string[];
|
|
49
|
+
/** Whether activation must be refused when one required tool is unavailable. */
|
|
50
|
+
readonly requireAll: boolean;
|
|
51
|
+
readonly lifecycle: "session";
|
|
52
|
+
/** `metadata.qa-surface.version`; 0 when the block declared none. */
|
|
53
|
+
readonly schemaVersion: number;
|
|
54
|
+
/** Whether the skill carried a readable qa-surface metadata block. */
|
|
55
|
+
readonly declared: boolean;
|
|
56
|
+
readonly warnings: readonly string[];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Administrator overlay over one skill's declared audience. The skill file is
|
|
60
|
+
* never rewritten: assignments are stored beside the policy and merged here.
|
|
61
|
+
*/
|
|
62
|
+
export interface QaSkillAssignmentOverride {
|
|
63
|
+
readonly skillName: string;
|
|
64
|
+
readonly addToSubroles?: readonly string[];
|
|
65
|
+
readonly removeFromSubroles?: readonly string[];
|
|
66
|
+
readonly forceCommon?: boolean;
|
|
67
|
+
readonly disabled?: boolean;
|
|
68
|
+
}
|
|
69
|
+
export type QaSkillHealth = "healthy" | "degraded" | "blocked" | "unassigned";
|
|
70
|
+
/** Per-role projection of one skill: what the role sees and what it may grant. */
|
|
71
|
+
export interface QaSkillRoleGrant {
|
|
72
|
+
readonly roleId: string;
|
|
73
|
+
readonly visible: boolean;
|
|
74
|
+
readonly declared: boolean;
|
|
75
|
+
readonly addedByAdmin: boolean;
|
|
76
|
+
readonly removedByAdmin: boolean;
|
|
77
|
+
readonly disabled: boolean;
|
|
78
|
+
/** Required tools this role's ceiling admits. */
|
|
79
|
+
readonly grantableTools: readonly string[];
|
|
80
|
+
/** Required tools this role cannot grant: outside the ceiling or not installed. */
|
|
81
|
+
readonly unavailableTools: readonly string[];
|
|
82
|
+
}
|
|
83
|
+
/** One row of the administration Skills table plus its detail view. */
|
|
84
|
+
export interface QaSkillAccess {
|
|
85
|
+
readonly name: string;
|
|
86
|
+
readonly description?: string;
|
|
87
|
+
readonly whenToUse?: string;
|
|
88
|
+
readonly source: QaCapabilityDescriptor["source"];
|
|
89
|
+
readonly status: "available" | "missing";
|
|
90
|
+
readonly descriptor: QaSkillDescriptor;
|
|
91
|
+
/** Roles whose policy currently exposes the skill. */
|
|
92
|
+
readonly visibleTo: readonly string[];
|
|
93
|
+
readonly disabled: boolean;
|
|
94
|
+
readonly forceCommon: boolean;
|
|
95
|
+
readonly overridden: boolean;
|
|
96
|
+
readonly health: QaSkillHealth;
|
|
97
|
+
/** Every required tool with the union of roles that could grant it. */
|
|
98
|
+
readonly tools: readonly {
|
|
99
|
+
readonly id: string;
|
|
100
|
+
readonly installed: boolean;
|
|
101
|
+
readonly grantableBy: readonly string[];
|
|
102
|
+
readonly blockedFor: readonly string[];
|
|
103
|
+
}[];
|
|
104
|
+
readonly roles: readonly QaSkillRoleGrant[];
|
|
105
|
+
}
|
|
106
|
+
/** Why a skill activation was attempted; recorded for conversation review. */
|
|
107
|
+
export type QaSkillActivationOrigin = "model" | "user" | "preview";
|
|
108
|
+
/**
|
|
109
|
+
* One activation attempt on a live session, appended to the session record.
|
|
110
|
+
* `denied` covers an audience refusal, `rejected` a failed `requireAll` check.
|
|
111
|
+
*/
|
|
112
|
+
export interface QaSkillActivationRecord {
|
|
113
|
+
readonly timestamp: string;
|
|
114
|
+
readonly skillName: string;
|
|
115
|
+
readonly origin: QaSkillActivationOrigin;
|
|
116
|
+
readonly outcome: "activated" | "rejected" | "denied";
|
|
117
|
+
readonly requestedTools: readonly string[];
|
|
118
|
+
readonly grantedTools: readonly string[];
|
|
119
|
+
readonly deniedTools: readonly string[];
|
|
120
|
+
readonly reason?: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* One provider and model pair, fixed by policy rather than chosen in the
|
|
124
|
+
* interface. `provider` and `model` are named together or not at all, because
|
|
125
|
+
* the Host refuses either of them alone.
|
|
126
|
+
*/
|
|
127
|
+
export interface QaModelPair {
|
|
128
|
+
readonly provider: string;
|
|
129
|
+
readonly model: string;
|
|
130
|
+
readonly reasoningEffort?: string;
|
|
131
|
+
}
|
|
132
|
+
/** One agent capability profile. It never grants administrative access. */
|
|
133
|
+
export interface QaSubrole {
|
|
134
|
+
readonly id: string;
|
|
135
|
+
readonly name: string;
|
|
136
|
+
readonly description?: string;
|
|
137
|
+
readonly enabled: boolean;
|
|
138
|
+
readonly capabilities: QaCapabilitySelection;
|
|
139
|
+
/**
|
|
140
|
+
* The pair every chat of this role is opened on, whatever the visitor picks
|
|
141
|
+
* in the interface. Absent means the role keeps no opinion and the
|
|
142
|
+
* deployment's pair serves it.
|
|
143
|
+
*/
|
|
144
|
+
readonly model?: QaModelPair;
|
|
145
|
+
readonly ui?: {
|
|
146
|
+
readonly icon?: string;
|
|
147
|
+
readonly accent?: string;
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
/** Host-owned, versioned capability configuration. */
|
|
151
|
+
export interface QaCapabilityConfig {
|
|
152
|
+
readonly version: 1;
|
|
153
|
+
readonly common: QaCapabilitySelection;
|
|
154
|
+
readonly subroles: readonly QaSubrole[];
|
|
155
|
+
/** Administrator assignments layered over what each skill declares. */
|
|
156
|
+
readonly skillOverrides: readonly QaSkillAssignmentOverride[];
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* One pair the Host can serve right now, as the administration surface lists
|
|
160
|
+
* it. A projection of the harness catalog, so the browser never learns the
|
|
161
|
+
* provider's own catalog shape and a policy can only be written by picking one
|
|
162
|
+
* of these.
|
|
163
|
+
*/
|
|
164
|
+
export interface QaModelCatalogEntry {
|
|
165
|
+
readonly provider: string;
|
|
166
|
+
readonly model: string;
|
|
167
|
+
/** The catalog's display name for the model, or its id when it has none. */
|
|
168
|
+
readonly label: string;
|
|
169
|
+
readonly reasoningEfforts: readonly string[];
|
|
170
|
+
}
|
|
171
|
+
/** The QA profiles one account may choose, independently of its access role. */
|
|
172
|
+
export interface QaUserAccess {
|
|
173
|
+
readonly allowedSubroles: readonly string[];
|
|
174
|
+
readonly defaultSubrole: string;
|
|
175
|
+
/**
|
|
176
|
+
* The pair this account is opened on, ahead of what its role says: a support
|
|
177
|
+
* desk runs on the local model even when it borrows a role the rest of the
|
|
178
|
+
* deployment shares. Absent means the account keeps no opinion.
|
|
179
|
+
*/
|
|
180
|
+
readonly model?: QaModelPair;
|
|
181
|
+
}
|
|
182
|
+
export type QaCapabilitySourceKind = "core" | "plugin" | "mcp" | "filesystem" | "runtime";
|
|
183
|
+
/** One capability currently installed, or retained as a missing selection. */
|
|
184
|
+
export interface QaCapabilityDescriptor {
|
|
185
|
+
readonly type: "tool" | "skill";
|
|
186
|
+
readonly id: string;
|
|
187
|
+
readonly title: string;
|
|
188
|
+
readonly description?: string;
|
|
189
|
+
readonly source: {
|
|
190
|
+
readonly kind: QaCapabilitySourceKind;
|
|
191
|
+
readonly name?: string;
|
|
192
|
+
};
|
|
193
|
+
readonly status: "available" | "missing";
|
|
194
|
+
readonly modelInvocable?: boolean;
|
|
195
|
+
readonly userInvocable?: boolean;
|
|
196
|
+
}
|
|
197
|
+
/** JSON-safe projection of an immutable policy snapshot. */
|
|
198
|
+
export interface QaEffectiveCapabilityPolicy {
|
|
199
|
+
readonly subroleId: string;
|
|
200
|
+
/** Tools visible from the first model step, before any skill is loaded. */
|
|
201
|
+
readonly tools: readonly string[];
|
|
202
|
+
/** Ceiling for the tools an activated skill may add to this session. */
|
|
203
|
+
readonly grantableTools: readonly string[];
|
|
204
|
+
/** Skills the model may see and load for the frozen subrole. */
|
|
205
|
+
readonly skills: readonly string[];
|
|
206
|
+
/**
|
|
207
|
+
* Visible skills a person may invoke with `/name`, including skills that
|
|
208
|
+
* opted out of model invocation and therefore stay out of the catalog. The
|
|
209
|
+
* skills this account owns are here for it without a role grant, unless an
|
|
210
|
+
* administrator has withdrawn the name outright.
|
|
211
|
+
*/
|
|
212
|
+
readonly userSkills: readonly string[];
|
|
213
|
+
readonly sources: {
|
|
214
|
+
readonly systemTools: readonly string[];
|
|
215
|
+
readonly commonTools: readonly string[];
|
|
216
|
+
readonly roleTools: readonly string[];
|
|
217
|
+
readonly commonGrantableTools: readonly string[];
|
|
218
|
+
readonly roleGrantableTools: readonly string[];
|
|
219
|
+
readonly systemSkills: readonly string[];
|
|
220
|
+
readonly commonSkills: readonly string[];
|
|
221
|
+
readonly roleSkills: readonly string[];
|
|
222
|
+
/** Skills this subrole received from their own SKILL.md audience. */
|
|
223
|
+
readonly declaredSkills: readonly string[];
|
|
224
|
+
};
|
|
225
|
+
readonly missingTools: readonly string[];
|
|
226
|
+
readonly missingSkills: readonly string[];
|
|
227
|
+
/** Revision of the resolved policy, recorded with the session snapshot. */
|
|
228
|
+
readonly policyRevision: string;
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=capability.d.ts.map
|