@yadsh/dsh-qa-surface 0.16.0 → 0.18.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 +34 -5
- package/compatibility.json +1 -1
- package/lib/account-remotes.js +13 -0
- package/lib/account-remotes.js.map +1 -1
- package/lib/accounts/database.js +120 -4
- package/lib/accounts/database.js.map +1 -1
- package/lib/accounts/file.js.map +1 -1
- package/lib/accounts/store.js +131 -5
- package/lib/accounts/store.js.map +1 -1
- package/lib/accounts/token.js +8 -2
- package/lib/accounts/token.js.map +1 -1
- package/lib/admin/metrics.js +15 -2
- package/lib/admin/metrics.js.map +1 -1
- package/lib/admin/read-budget.js +28 -0
- package/lib/admin/read-budget.js.map +1 -0
- package/lib/admin/service.js +135 -40
- package/lib/admin/service.js.map +1 -1
- package/lib/admin/session-log.js +63 -4
- package/lib/admin/session-log.js.map +1 -1
- package/lib/chat-sharing/native-fence.js +31 -2
- package/lib/chat-sharing/native-fence.js.map +1 -1
- package/lib/chat-sharing/store.js +9 -3
- package/lib/chat-sharing/store.js.map +1 -1
- package/lib/chat-sharing/transport.js +74 -13
- package/lib/chat-sharing/transport.js.map +1 -1
- package/lib/chat-sharing/uploads.js +79 -6
- package/lib/chat-sharing/uploads.js.map +1 -1
- package/lib/cli.js +13 -0
- package/lib/cli.js.map +1 -1
- package/lib/client/QaAccountsController.js +79 -0
- package/lib/client/QaAccountsController.js.map +1 -1
- package/lib/client/QaRouteController.js +3 -1
- package/lib/client/QaRouteController.js.map +1 -1
- package/lib/client/QaSessionController.js +102 -29
- package/lib/client/QaSessionController.js.map +1 -1
- package/lib/client/QaSurface.js +89 -19
- package/lib/client/QaSurface.js.map +1 -1
- package/lib/client/QaTranscriptAdapter.js +15 -2
- package/lib/client/QaTranscriptAdapter.js.map +1 -1
- package/lib/client/account-sessions.js +74 -8
- package/lib/client/account-sessions.js.map +1 -1
- package/lib/client/admin/CapabilityPicker.js +50 -0
- package/lib/client/admin/CapabilityPicker.js.map +1 -0
- package/lib/client/admin/CoverageNotice.js +9 -0
- package/lib/client/admin/CoverageNotice.js.map +1 -0
- package/lib/client/admin/QaAdmin.js +3 -150
- package/lib/client/admin/QaAdmin.js.map +1 -1
- package/lib/client/admin/RoleEditor.js +46 -0
- package/lib/client/admin/RoleEditor.js.map +1 -0
- package/lib/client/admin/capability-selection.js +63 -0
- package/lib/client/admin/capability-selection.js.map +1 -0
- package/lib/client/admin/pages/Conversations.js +35 -17
- package/lib/client/admin/pages/Conversations.js.map +1 -1
- package/lib/client/admin/pages/Overview.js +3 -2
- package/lib/client/admin/pages/Overview.js.map +1 -1
- package/lib/client/admin/pages/Quality.js +77 -20
- package/lib/client/admin/pages/Quality.js.map +1 -1
- package/lib/client/admin/pages/SkillFiles.js +14 -3
- package/lib/client/admin/pages/SkillFiles.js.map +1 -1
- package/lib/client/admin/shared.js +68 -3
- package/lib/client/admin/shared.js.map +1 -1
- package/lib/client/answer-review.js +89 -0
- package/lib/client/answer-review.js.map +1 -0
- package/lib/client/chat-artifacts.js +1 -0
- package/lib/client/chat-artifacts.js.map +1 -1
- package/lib/client/components/QaAnswerReviewStatus.js +45 -0
- package/lib/client/components/QaAnswerReviewStatus.js.map +1 -0
- package/lib/client/components/QaAuthGate.js +31 -28
- package/lib/client/components/QaAuthGate.js.map +1 -1
- package/lib/client/components/QaChangelog.js +79 -0
- 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 +22 -19
- package/lib/client/components/QaChatSharing.js.map +1 -1
- package/lib/client/components/QaComposer.js +27 -4
- package/lib/client/components/QaComposer.js.map +1 -1
- package/lib/client/components/QaFormItem.js +63 -0
- package/lib/client/components/QaFormItem.js.map +1 -0
- package/lib/client/components/QaInputForm.js +281 -0
- package/lib/client/components/QaInputForm.js.map +1 -0
- package/lib/client/components/QaMarkdownPreview.js +86 -0
- package/lib/client/components/QaMarkdownPreview.js.map +1 -0
- package/lib/client/components/QaMessage.js +8 -2
- package/lib/client/components/QaMessage.js.map +1 -1
- package/lib/client/components/QaModal.js +34 -4
- 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 +10 -1
- 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 +57 -13
- 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 +22 -9
- 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 +18 -4
- package/lib/client/components/source-refs.js.map +1 -1
- package/lib/client/forms-styles.js +14 -0
- package/lib/client/forms-styles.js.map +1 -0
- package/lib/client/forms.js +40 -0
- package/lib/client/forms.js.map +1 -0
- package/lib/client/index.js +31 -3
- package/lib/client/index.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/render.js +23 -5
- package/lib/client/markdown/render.js.map +1 -1
- package/lib/client/markdown/source-chip.js +2 -1
- package/lib/client/markdown/source-chip.js.map +1 -1
- package/lib/client/oidc-browser.js +39 -0
- package/lib/client/oidc-browser.js.map +1 -0
- package/lib/client/panels/PanelHost.js +23 -1
- package/lib/client/panels/PanelHost.js.map +1 -1
- package/lib/client/settings/sections/interface.js +2 -1
- package/lib/client/settings/sections/interface.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/sections/status.js +3 -1
- package/lib/client/settings/sections/status.js.map +1 -1
- package/lib/client/settings/styles.js +18 -28
- package/lib/client/settings/styles.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/styles.js +56 -5
- package/lib/client/styles.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.js +540 -71128
- package/lib/client.js.map +1 -1
- package/lib/config-resolvers/accounts.js +5 -4
- package/lib/config-resolvers/accounts.js.map +1 -1
- package/lib/config-resolvers/defaults.js +20 -3
- package/lib/config-resolvers/defaults.js.map +1 -1
- package/lib/config-resolvers/oidc.js +53 -0
- package/lib/config-resolvers/oidc.js.map +1 -0
- package/lib/config-resolvers/sources.js +2 -0
- package/lib/config-resolvers/sources.js.map +1 -1
- package/lib/config.js +74 -0
- package/lib/config.js.map +1 -1
- package/lib/forms/attachments.js +214 -0
- package/lib/forms/attachments.js.map +1 -0
- package/lib/forms/errors.js +37 -0
- package/lib/forms/errors.js.map +1 -0
- package/lib/forms/fingerprint.js +21 -0
- package/lib/forms/fingerprint.js.map +1 -0
- package/lib/forms/gate.js +125 -0
- package/lib/forms/gate.js.map +1 -0
- package/lib/forms/schema.js +182 -0
- package/lib/forms/schema.js.map +1 -0
- package/lib/forms/service.js +220 -0
- package/lib/forms/service.js.map +1 -0
- package/lib/forms/store.js +194 -0
- package/lib/forms/store.js.map +1 -0
- package/lib/forms/types.js +2 -0
- package/lib/forms/types.js.map +1 -0
- package/lib/forms/validation.js +113 -0
- package/lib/forms/validation.js.map +1 -0
- package/lib/index.js +276 -5
- 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/oidc/http.js +30 -0
- package/lib/oidc/http.js.map +1 -0
- package/lib/oidc/service.js +250 -0
- package/lib/oidc/service.js.map +1 -0
- package/lib/prompt-notes.js +1 -1
- package/lib/prompt-notes.js.map +1 -1
- package/lib/provenance/collector.js +2 -0
- package/lib/provenance/collector.js.map +1 -1
- package/lib/provenance/connectors.js +25 -19
- package/lib/provenance/connectors.js.map +1 -1
- package/lib/provenance/dedupe.js +17 -0
- package/lib/provenance/dedupe.js.map +1 -1
- package/lib/provenance/document-preview.js +12 -2
- package/lib/provenance/document-preview.js.map +1 -1
- package/lib/provenance/extractors.js +23 -5
- package/lib/provenance/extractors.js.map +1 -1
- package/lib/provenance/file-preview.js +9 -2
- package/lib/provenance/file-preview.js.map +1 -1
- package/lib/provenance/integration-extractor.js +5 -6
- package/lib/provenance/integration-extractor.js.map +1 -1
- 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/activation-manager.js +24 -2
- package/lib/qa-tools/activation-manager.js.map +1 -1
- package/lib/qa-tools/catalog.js +11 -1
- package/lib/qa-tools/catalog.js.map +1 -1
- package/lib/qa-tools/index.js +27 -0
- package/lib/qa-tools/index.js.map +1 -1
- package/lib/qa-tools/request-user-form.js +121 -0
- package/lib/qa-tools/request-user-form.js.map +1 -0
- package/lib/questions.js +6 -1
- package/lib/questions.js.map +1 -1
- package/lib/resolve-config.js +2 -0
- package/lib/resolve-config.js.map +1 -1
- package/lib/secure-session.js +14 -8
- package/lib/secure-session.js.map +1 -1
- package/lib/shared/documents.js +12 -0
- package/lib/shared/documents.js.map +1 -1
- package/lib/typert.host.js +5136 -1341
- package/lib/typert.remote-client.d.ts +141 -7
- package/lib/typert.remote-client.js +5896 -2255
- package/lib/types/account-remotes.d.ts +3 -0
- package/lib/types/accounts/database.d.ts +13 -0
- package/lib/types/accounts/file.d.ts +2 -0
- package/lib/types/accounts/store.d.ts +23 -1
- package/lib/types/accounts/token.d.ts +3 -1
- package/lib/types/admin/metrics.d.ts +5 -1
- package/lib/types/admin/read-budget.d.ts +8 -0
- package/lib/types/admin/service.d.ts +17 -0
- package/lib/types/admin/session-log.d.ts +30 -1
- package/lib/types/answer-review.js +2 -0
- package/lib/types/answer-review.js.map +1 -0
- package/lib/types/chat-sharing/store.d.ts +1 -0
- package/lib/types/chat-sharing/transport.d.ts +1 -0
- package/lib/types/chat-sharing/uploads.d.ts +2 -1
- package/lib/types/client/QaAccountsController.d.ts +5 -0
- package/lib/types/client/QaRouteController.d.ts +1 -0
- package/lib/types/client/QaSessionController.d.ts +12 -3
- package/lib/types/client/QaSurface.d.ts +2 -0
- package/lib/types/client/admin/CapabilityPicker.d.ts +14 -0
- package/lib/types/client/admin/CoverageNotice.d.ts +6 -0
- package/lib/types/client/admin/RoleEditor.d.ts +15 -0
- package/lib/types/client/admin/capability-selection.d.ts +27 -0
- package/lib/types/client/admin/shared.d.ts +39 -1
- package/lib/types/client/answer-review.d.ts +16 -0
- package/lib/types/client/components/QaAnswerReviewStatus.d.ts +8 -0
- package/lib/types/client/components/QaAuthGate.d.ts +2 -0
- package/lib/types/client/components/QaChatActions.d.ts +7 -0
- package/lib/types/client/components/QaChatSharing.d.ts +4 -2
- package/lib/types/client/components/QaFormItem.d.ts +20 -0
- package/lib/types/client/components/QaInputForm.d.ts +18 -0
- package/lib/types/client/components/QaMarkdownPreview.d.ts +13 -0
- 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/QaZoomImage.d.ts +38 -0
- package/lib/types/client/forms-styles.d.ts +2 -0
- package/lib/types/client/forms.d.ts +23 -0
- 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/oidc-browser.d.ts +12 -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/types.d.ts +18 -6
- package/lib/types/config-resolvers/oidc.d.ts +3 -0
- package/lib/types/forms/attachments.d.ts +48 -0
- package/lib/types/forms/errors.d.ts +11 -0
- package/lib/types/forms/fingerprint.d.ts +9 -0
- package/lib/types/forms/gate.d.ts +33 -0
- package/lib/types/forms/schema.d.ts +72 -0
- package/lib/types/forms/service.d.ts +15 -0
- package/lib/types/forms/store.d.ts +25 -0
- package/lib/types/forms/types.d.ts +215 -0
- package/lib/types/forms/validation.d.ts +20 -0
- package/lib/types/index.d.ts +36 -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/oidc/http.d.ts +5 -0
- package/lib/types/oidc/service.d.ts +30 -0
- package/lib/types/oidc.js +2 -0
- package/lib/types/oidc.js.map +1 -0
- package/lib/types/prompt-notes.d.ts +1 -1
- package/lib/types/provenance/document-preview.d.ts +3 -2
- package/lib/types/provenance/file-preview.d.ts +2 -1
- 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 +3 -0
- package/lib/types/qa-tools/activation-manager.d.ts +5 -0
- package/lib/types/qa-tools/catalog.d.ts +4 -1
- package/lib/types/qa-tools/index.d.ts +5 -1
- package/lib/types/qa-tools/request-user-form.d.ts +5 -0
- package/lib/types/questions.d.ts +2 -1
- package/lib/types/secure-session.d.ts +1 -0
- package/lib/types/shared/documents.d.ts +2 -0
- package/lib/types/types/accounts.d.ts +7 -1
- package/lib/types/types/admin.d.ts +6 -0
- package/lib/types/types/answer-review.d.ts +11 -0
- package/lib/types/types/config.d.ts +9 -0
- package/lib/types/types/oidc.d.ts +36 -0
- package/lib/types/types/session.d.ts +18 -3
- package/lib/types/types.d.ts +3 -0
- package/package.json +58 -56
|
@@ -71,6 +71,7 @@ export declare class QaPolicyAdmission {
|
|
|
71
71
|
* one set answers for the whole chat.
|
|
72
72
|
*/
|
|
73
73
|
private readonly attested;
|
|
74
|
+
private readonly questionWarnings;
|
|
74
75
|
private readonly workspaceAccess;
|
|
75
76
|
/**
|
|
76
77
|
* Removers of the document input roots granted per session, so a grant lives
|
|
@@ -17,4 +17,6 @@ export declare const QA_PDF_MEDIA_TYPE = "application/pdf";
|
|
|
17
17
|
* previewable (Markdown as text, PDF through the browser's own viewer).
|
|
18
18
|
*/
|
|
19
19
|
export declare function isConvertibleDocument(mediaType: string): boolean;
|
|
20
|
+
export declare function isSpreadsheetDocument(mediaType: string): boolean;
|
|
21
|
+
export declare function isPreviewableDocument(mediaType: string): boolean;
|
|
20
22
|
//# sourceMappingURL=documents.d.ts.map
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { QaAccountRole } from "./policy.js";
|
|
2
2
|
/** The account fields projected to browsers; never includes credentials. */
|
|
3
3
|
export interface QaAccountUserPublic {
|
|
4
|
+
/** Corporate passwords are managed outside QA. Absent on legacy/local accounts. */
|
|
5
|
+
readonly authMethod?: "oidc";
|
|
4
6
|
readonly id: string;
|
|
5
7
|
readonly email: string;
|
|
6
8
|
readonly displayName: string;
|
|
@@ -134,8 +136,10 @@ export type QaServiceTokenScope = "ask" | "sessions:read";
|
|
|
134
136
|
export interface QaServiceTokenCreateInput {
|
|
135
137
|
/** A note the operator's list shows; empty becomes a generic label. */
|
|
136
138
|
readonly label?: string;
|
|
137
|
-
/** Requested scopes; unknown ones are dropped, empty
|
|
139
|
+
/** Requested scopes; unknown ones are dropped, explicit empty grants none. */
|
|
138
140
|
readonly scopes?: readonly string[];
|
|
141
|
+
/** Whether API turns may ask clarifying questions; omitted preserves existing behavior. */
|
|
142
|
+
readonly allowClarifications?: boolean;
|
|
139
143
|
/** How long the token lives, in days; bounded server-side. */
|
|
140
144
|
readonly ttlDays?: number;
|
|
141
145
|
}
|
|
@@ -148,6 +152,8 @@ export interface QaServiceTokenSummary {
|
|
|
148
152
|
readonly id: string;
|
|
149
153
|
readonly label: string;
|
|
150
154
|
readonly scopes: readonly QaServiceTokenScope[];
|
|
155
|
+
/** Older Hosts omit this field and keep clarifications enabled. */
|
|
156
|
+
readonly allowClarifications?: boolean;
|
|
151
157
|
readonly createdAt: string;
|
|
152
158
|
readonly expiresAt: string;
|
|
153
159
|
readonly lastUsedAt: string | null;
|
|
@@ -196,6 +196,12 @@ export interface QaQualityTrendPoint {
|
|
|
196
196
|
readonly negative: number;
|
|
197
197
|
}
|
|
198
198
|
export interface QaQualityMetrics {
|
|
199
|
+
/** Counts derived from journals are incomplete until every journal was read. */
|
|
200
|
+
readonly coverage?: {
|
|
201
|
+
readonly complete: boolean;
|
|
202
|
+
readonly readConversations: number;
|
|
203
|
+
readonly totalConversations: number;
|
|
204
|
+
};
|
|
199
205
|
readonly conversations: number;
|
|
200
206
|
readonly activeUsers: number;
|
|
201
207
|
readonly assistantMessages: number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Host-recorded review of one immutable assistant message. */
|
|
2
|
+
export interface QaAnswerReview {
|
|
3
|
+
readonly version: 1;
|
|
4
|
+
readonly candidateSeq: number;
|
|
5
|
+
readonly candidateHash: string;
|
|
6
|
+
readonly requestSeq: number | null;
|
|
7
|
+
readonly round: number;
|
|
8
|
+
readonly status: "reviewing" | "recovering" | "pass" | "revise" | "failure" | "cancelled" | "waived";
|
|
9
|
+
readonly at: number;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=answer-review.d.ts.map
|
|
@@ -38,6 +38,8 @@ export interface QaSourcesConfig {
|
|
|
38
38
|
readonly filePreview?: {
|
|
39
39
|
readonly enabled?: boolean;
|
|
40
40
|
readonly markdownRenderedByDefault?: boolean;
|
|
41
|
+
/** Render a leading YAML mapping as a document metadata card. */
|
|
42
|
+
readonly renderFrontmatter?: boolean;
|
|
41
43
|
readonly allowRawToggle?: boolean;
|
|
42
44
|
readonly maxBytes?: number;
|
|
43
45
|
readonly maxMarkdownRenderBytes?: number;
|
|
@@ -92,6 +94,7 @@ export interface QaNotesConfig {
|
|
|
92
94
|
};
|
|
93
95
|
}
|
|
94
96
|
export interface QaSurfaceConfig {
|
|
97
|
+
readonly forms?: Partial<import("../forms/types.js").QaFormPolicy>;
|
|
95
98
|
readonly enabled?: boolean;
|
|
96
99
|
readonly route?: {
|
|
97
100
|
readonly path?: string;
|
|
@@ -235,6 +238,8 @@ export interface QaSurfaceConfig {
|
|
|
235
238
|
readonly frameAncestors?: string | null;
|
|
236
239
|
};
|
|
237
240
|
readonly accounts?: {
|
|
241
|
+
readonly localLogin?: boolean;
|
|
242
|
+
readonly oidc?: import("./oidc.js").QaOidcConfig;
|
|
238
243
|
/** Opt-in; the QA gate stays off until the deployment turns this on. */
|
|
239
244
|
readonly enabled?: boolean;
|
|
240
245
|
readonly allowRegistration?: boolean;
|
|
@@ -370,6 +375,7 @@ export interface QaAttachmentsConfig {
|
|
|
370
375
|
readonly extensions?: readonly string[];
|
|
371
376
|
}
|
|
372
377
|
export interface ResolvedQaSurfaceConfig {
|
|
378
|
+
readonly forms: Readonly<import("../forms/types.js").QaFormPolicy>;
|
|
373
379
|
readonly enabled: boolean;
|
|
374
380
|
readonly route: {
|
|
375
381
|
readonly path: string;
|
|
@@ -439,6 +445,8 @@ export interface ResolvedQaSurfaceConfig {
|
|
|
439
445
|
readonly frameAncestors: string | null;
|
|
440
446
|
};
|
|
441
447
|
readonly accounts: {
|
|
448
|
+
readonly localLogin: boolean;
|
|
449
|
+
readonly oidc: import("./oidc.js").ResolvedQaOidcConfig;
|
|
442
450
|
readonly enabled: boolean;
|
|
443
451
|
readonly allowRegistration: boolean;
|
|
444
452
|
readonly sessionTtlDays: number;
|
|
@@ -534,6 +542,7 @@ export interface ResolvedQaSurfaceConfig {
|
|
|
534
542
|
readonly filePreview: {
|
|
535
543
|
readonly enabled: boolean;
|
|
536
544
|
readonly markdownRenderedByDefault: boolean;
|
|
545
|
+
readonly renderFrontmatter: boolean;
|
|
537
546
|
readonly allowRawToggle: boolean;
|
|
538
547
|
readonly maxBytes: number;
|
|
539
548
|
readonly maxMarkdownRenderBytes: number;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Server OIDC configuration. Secrets are referenced by environment name only. */
|
|
2
|
+
export interface QaOidcConfig {
|
|
3
|
+
readonly enabled?: boolean;
|
|
4
|
+
readonly issuer?: string;
|
|
5
|
+
readonly clientId?: string;
|
|
6
|
+
readonly clientSecretEnv?: string;
|
|
7
|
+
/** Exact public HTTPS callback URL, including any reverse proxy prefix. */
|
|
8
|
+
readonly redirectUri?: string;
|
|
9
|
+
readonly buttonLabel?: string;
|
|
10
|
+
readonly autoProvision?: boolean;
|
|
11
|
+
/** Client roles included in the signed ID token's resource_access claim. */
|
|
12
|
+
readonly requiredRole?: string;
|
|
13
|
+
readonly adminRole?: string;
|
|
14
|
+
readonly reviewerRole?: string;
|
|
15
|
+
/** Upper bound on QA access before another OIDC authentication. */
|
|
16
|
+
readonly sessionTtlSeconds?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface ResolvedQaOidcConfig {
|
|
19
|
+
readonly enabled: boolean;
|
|
20
|
+
readonly issuer: string;
|
|
21
|
+
readonly clientId: string;
|
|
22
|
+
readonly clientSecretEnv: string;
|
|
23
|
+
readonly redirectUri: string;
|
|
24
|
+
readonly buttonLabel: string;
|
|
25
|
+
readonly autoProvision: boolean;
|
|
26
|
+
readonly requiredRole: string;
|
|
27
|
+
readonly adminRole: string;
|
|
28
|
+
readonly reviewerRole: string;
|
|
29
|
+
readonly sessionTtlSeconds: number;
|
|
30
|
+
}
|
|
31
|
+
/** The browser retains completionKey in sessionStorage before leaving QA. */
|
|
32
|
+
export interface QaOidcStart {
|
|
33
|
+
readonly authorizationUrl: string;
|
|
34
|
+
readonly completionKey: string;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=oidc.d.ts.map
|
|
@@ -9,18 +9,32 @@ export interface QaSourceFilePreview {
|
|
|
9
9
|
readonly markdown: boolean;
|
|
10
10
|
readonly renderableMarkdown: boolean;
|
|
11
11
|
readonly document?: QaDocumentPreview;
|
|
12
|
+
readonly frontmatter?: import("../markdown-frontmatter.js").MarkdownFrontmatter;
|
|
12
13
|
}
|
|
13
14
|
/**
|
|
14
|
-
* A
|
|
15
|
-
* pipeline turned a Word file into PDF, and the browser shows that PDF.
|
|
15
|
+
* A PDF payload, including Word documents rendered by the document pipeline.
|
|
16
16
|
*/
|
|
17
|
-
export interface
|
|
17
|
+
export interface QaPdfPreview {
|
|
18
18
|
readonly kind: "pdf";
|
|
19
19
|
readonly base64: string;
|
|
20
20
|
readonly mime: "application/pdf";
|
|
21
21
|
readonly name: string;
|
|
22
22
|
readonly bytes: number;
|
|
23
23
|
}
|
|
24
|
+
/** A bounded cell window; the complete workbook stays on the Host. */
|
|
25
|
+
export interface QaSpreadsheetPreview {
|
|
26
|
+
readonly kind: "spreadsheet";
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly bytes: number;
|
|
29
|
+
readonly inventory: import("@yadsh/dsh-documents").SpreadsheetInspectResult;
|
|
30
|
+
readonly page: import("@yadsh/dsh-documents").SpreadsheetReadResult;
|
|
31
|
+
}
|
|
32
|
+
export interface QaSpreadsheetPreviewSelection {
|
|
33
|
+
readonly sheet?: string;
|
|
34
|
+
readonly startRow?: number;
|
|
35
|
+
readonly startColumn?: number;
|
|
36
|
+
}
|
|
37
|
+
export type QaDocumentPreview = QaPdfPreview | QaSpreadsheetPreview;
|
|
24
38
|
/** One directory entry of a chat's own workspace, as the files panel browses it. */
|
|
25
39
|
export interface QaWorkspaceEntry {
|
|
26
40
|
readonly name: string;
|
|
@@ -111,6 +125,7 @@ export type QaMessage = QaUserMessage | {
|
|
|
111
125
|
* while the browser's own message id does not.
|
|
112
126
|
*/
|
|
113
127
|
readonly seq?: number;
|
|
128
|
+
readonly review?: import("./answer-review.js").QaAnswerReview;
|
|
114
129
|
/** Final text of a completed turn with a durable fork boundary. */
|
|
115
130
|
readonly forkable?: boolean;
|
|
116
131
|
/** Host turn this answer belongs to; groups regenerations into variants. */
|
package/lib/types/types.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
export type * from "./types/policy.js";
|
|
2
|
+
export type * from "./forms/types.js";
|
|
2
3
|
export type * from "./types/capability.js";
|
|
3
4
|
export type * from "./types/access.js";
|
|
4
5
|
export type * from "./types/accounts.js";
|
|
6
|
+
export type * from "./types/oidc.js";
|
|
5
7
|
export type * from "./types/skills.js";
|
|
6
8
|
export type * from "./types/expert-memory.js";
|
|
7
9
|
export type * from "./types/config.js";
|
|
8
10
|
export type * from "./types/slash.js";
|
|
9
11
|
export type * from "./types/documents.js";
|
|
10
12
|
export type * from "./types/session.js";
|
|
13
|
+
export type * from "./types/answer-review.js";
|
|
11
14
|
export type * from "./types/quality.js";
|
|
12
15
|
export type * from "./types/admin.js";
|
|
13
16
|
export type { QaSourceEvidence, QaSourceKind, QaSourceLocation, QaSourceOrigin, QaSourceReference, QaTurnSources, } from "./provenance/types.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yadsh/dsh-qa-surface",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "A focused end-user QA surface backed by native DeepSeek Harness sessions",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -104,73 +104,75 @@
|
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"@deepseek-ai/cordis": "^4.0.4",
|
|
107
|
-
"@deepseek-ai/dsh-agent": ">=0.1.7-rc.2 <0.
|
|
108
|
-
"@deepseek-ai/dsh-agent-preset-registry": ">=0.1.7-rc.2 <0.
|
|
109
|
-
"@deepseek-ai/dsh-api-gateway": ">=0.1.7-rc.2 <0.
|
|
110
|
-
"@deepseek-ai/dsh-api-session-controller": ">=0.1.7-rc.2 <0.
|
|
111
|
-
"@deepseek-ai/dsh-api-workspace-controller": ">=0.1.7-rc.2 <0.
|
|
112
|
-
"@deepseek-ai/dsh-client-connection": ">=0.1.7-rc.2 <0.
|
|
113
|
-
"@deepseek-ai/dsh-client-ui-chat": ">=0.1.7-rc.2 <0.
|
|
114
|
-
"@deepseek-ai/dsh-client-ui-conversation": ">=0.1.7-rc.2 <0.
|
|
115
|
-
"@deepseek-ai/dsh-client-ui-layout": ">=0.1.7-rc.2 <0.
|
|
116
|
-
"@deepseek-ai/dsh-client-ui-plugin-manager": ">=0.1.7-rc.2 <0.
|
|
117
|
-
"@deepseek-ai/dsh-client-ui-renderer": ">=0.1.7-rc.2 <0.
|
|
118
|
-
"@deepseek-ai/dsh-client-ui-settings": ">=0.1.7-rc.2 <0.
|
|
119
|
-
"@deepseek-ai/dsh-client-ui-slots": ">=0.1.7-rc.2 <0.
|
|
120
|
-
"@deepseek-ai/dsh-client-ui-theme": ">=0.1.7-rc.2 <0.
|
|
121
|
-
"@deepseek-ai/dsh-host-webserver": ">=0.1.7-rc.2 <0.
|
|
122
|
-
"@deepseek-ai/dsh-llm": ">=0.1.7-rc.2 <0.
|
|
123
|
-
"@deepseek-ai/dsh-permission-presets": ">=0.1.7-rc.2 <0.
|
|
124
|
-
"@deepseek-ai/dsh-
|
|
125
|
-
"@deepseek-ai/dsh-
|
|
126
|
-
"@deepseek-ai/dsh-settings": ">=0.1.7-rc.2 <0.
|
|
127
|
-
"@deepseek-ai/dsh-skill": ">=0.1.7-rc.2 <0.
|
|
128
|
-
"@deepseek-ai/dsh-system-prompt": ">=0.1.7-rc.2 <0.
|
|
129
|
-
"@deepseek-ai/dsh-tools": ">=0.1.7-rc.2 <0.
|
|
130
|
-
"@deepseek-ai/dsh-typert-protocol": ">=0.1.7-rc.2 <0.
|
|
131
|
-
"@deepseek-ai/dsh-workspace": ">=0.1.7-rc.2 <0.
|
|
107
|
+
"@deepseek-ai/dsh-agent": ">=0.1.7-rc.2 <0.3.0-0",
|
|
108
|
+
"@deepseek-ai/dsh-agent-preset-registry": ">=0.1.7-rc.2 <0.3.0-0",
|
|
109
|
+
"@deepseek-ai/dsh-api-gateway": ">=0.1.7-rc.2 <0.3.0-0",
|
|
110
|
+
"@deepseek-ai/dsh-api-session-controller": ">=0.1.7-rc.2 <0.3.0-0",
|
|
111
|
+
"@deepseek-ai/dsh-api-workspace-controller": ">=0.1.7-rc.2 <0.3.0-0",
|
|
112
|
+
"@deepseek-ai/dsh-client-connection": ">=0.1.7-rc.2 <0.3.0-0",
|
|
113
|
+
"@deepseek-ai/dsh-client-ui-chat": ">=0.1.7-rc.2 <0.3.0-0",
|
|
114
|
+
"@deepseek-ai/dsh-client-ui-conversation": ">=0.1.7-rc.2 <0.3.0-0",
|
|
115
|
+
"@deepseek-ai/dsh-client-ui-layout": ">=0.1.7-rc.2 <0.3.0-0",
|
|
116
|
+
"@deepseek-ai/dsh-client-ui-plugin-manager": ">=0.1.7-rc.2 <0.3.0-0",
|
|
117
|
+
"@deepseek-ai/dsh-client-ui-renderer": ">=0.1.7-rc.2 <0.3.0-0",
|
|
118
|
+
"@deepseek-ai/dsh-client-ui-settings": ">=0.1.7-rc.2 <0.3.0-0",
|
|
119
|
+
"@deepseek-ai/dsh-client-ui-slots": ">=0.1.7-rc.2 <0.3.0-0",
|
|
120
|
+
"@deepseek-ai/dsh-client-ui-theme": ">=0.1.7-rc.2 <0.3.0-0",
|
|
121
|
+
"@deepseek-ai/dsh-host-webserver": ">=0.1.7-rc.2 <0.3.0-0",
|
|
122
|
+
"@deepseek-ai/dsh-llm": ">=0.1.7-rc.2 <0.3.0-0",
|
|
123
|
+
"@deepseek-ai/dsh-permission-presets": ">=0.1.7-rc.2 <0.3.0-0",
|
|
124
|
+
"@deepseek-ai/dsh-scope": ">=0.1.7-rc.2 <0.3.0-0",
|
|
125
|
+
"@deepseek-ai/dsh-session": ">=0.1.7-rc.2 <0.3.0-0",
|
|
126
|
+
"@deepseek-ai/dsh-settings": ">=0.1.7-rc.2 <0.3.0-0",
|
|
127
|
+
"@deepseek-ai/dsh-skill": ">=0.1.7-rc.2 <0.3.0-0",
|
|
128
|
+
"@deepseek-ai/dsh-system-prompt": ">=0.1.7-rc.2 <0.3.0-0",
|
|
129
|
+
"@deepseek-ai/dsh-tools": ">=0.1.7-rc.2 <0.3.0-0",
|
|
130
|
+
"@deepseek-ai/dsh-typert-protocol": ">=0.1.7-rc.2 <0.3.0-0",
|
|
131
|
+
"@deepseek-ai/dsh-workspace": ">=0.1.7-rc.2 <0.3.0-0",
|
|
132
132
|
"@deepseek-ai/schemastery": "^3.18.4",
|
|
133
133
|
"react": "^18.2.0",
|
|
134
134
|
"react-dom": "^18.2.0"
|
|
135
135
|
},
|
|
136
136
|
"dependencies": {
|
|
137
|
+
"openid-client": "6.8.8",
|
|
137
138
|
"yaml": "^2.9.0",
|
|
138
139
|
"zod": "^4.4.3",
|
|
139
140
|
"@yadsh/dsh-audit-core": "^0.1.2",
|
|
140
|
-
"@yadsh/dsh-plugin-kit": "^0.5.1",
|
|
141
|
-
"@yadsh/dsh-documents": "^0.7.0",
|
|
142
141
|
"@yadsh/dsh-audit-ui": "^0.1.3",
|
|
142
|
+
"@yadsh/dsh-documents": "^0.8.1",
|
|
143
|
+
"@yadsh/dsh-plugin-kit": "^0.6.0",
|
|
143
144
|
"@yadsh/dsh-plugin-log": "^0.4.2"
|
|
144
145
|
},
|
|
145
146
|
"devDependencies": {
|
|
146
|
-
"@deepseek-ai/cordis": "4.0.
|
|
147
|
-
"@deepseek-ai/dsh-agent": "0.1
|
|
148
|
-
"@deepseek-ai/dsh-agent-preset-registry": "0.1
|
|
149
|
-
"@deepseek-ai/dsh-api-gateway": "0.1
|
|
150
|
-
"@deepseek-ai/dsh-api-session-controller": "0.1
|
|
151
|
-
"@deepseek-ai/dsh-api-workspace-controller": "0.1
|
|
152
|
-
"@deepseek-ai/dsh-client-connection": "0.1
|
|
153
|
-
"@deepseek-ai/dsh-client-ui-chat": "0.1
|
|
154
|
-
"@deepseek-ai/dsh-client-ui-conversation": "0.1
|
|
155
|
-
"@deepseek-ai/dsh-client-ui-layout": "0.1
|
|
156
|
-
"@deepseek-ai/dsh-client-ui-plugin-manager": "0.1
|
|
157
|
-
"@deepseek-ai/dsh-client-ui-renderer": "0.1
|
|
158
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.1
|
|
159
|
-
"@deepseek-ai/dsh-client-ui-slots": "0.1
|
|
160
|
-
"@deepseek-ai/dsh-client-ui-theme": "0.1
|
|
161
|
-
"@deepseek-ai/dsh-host-webserver": "0.1
|
|
162
|
-
"@deepseek-ai/dsh-llm": "0.1
|
|
163
|
-
"@deepseek-ai/dsh-permission-presets": "0.1
|
|
164
|
-
"@deepseek-ai/dsh-scope": "0.1
|
|
165
|
-
"@deepseek-ai/dsh-session": "0.1
|
|
166
|
-
"@deepseek-ai/dsh-settings": "0.1
|
|
167
|
-
"@deepseek-ai/dsh-skill": "0.1
|
|
168
|
-
"@deepseek-ai/dsh-system-prompt": "0.1
|
|
169
|
-
"@deepseek-ai/dsh-tools": "0.1
|
|
170
|
-
"@deepseek-ai/dsh-typert-generator": "0.1
|
|
171
|
-
"@deepseek-ai/dsh-typert-protocol": "0.1
|
|
172
|
-
"@deepseek-ai/dsh-
|
|
173
|
-
"@deepseek-ai/
|
|
147
|
+
"@deepseek-ai/cordis": "4.0.5",
|
|
148
|
+
"@deepseek-ai/dsh-agent": "0.2.1-rc.3",
|
|
149
|
+
"@deepseek-ai/dsh-agent-preset-registry": "0.2.1-rc.3",
|
|
150
|
+
"@deepseek-ai/dsh-api-gateway": "0.2.1-rc.3",
|
|
151
|
+
"@deepseek-ai/dsh-api-session-controller": "0.2.1-rc.3",
|
|
152
|
+
"@deepseek-ai/dsh-api-workspace-controller": "0.2.1-rc.3",
|
|
153
|
+
"@deepseek-ai/dsh-client-connection": "0.2.1-rc.3",
|
|
154
|
+
"@deepseek-ai/dsh-client-ui-chat": "0.2.1-rc.3",
|
|
155
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.2.1-rc.3",
|
|
156
|
+
"@deepseek-ai/dsh-client-ui-layout": "0.2.1-rc.3",
|
|
157
|
+
"@deepseek-ai/dsh-client-ui-plugin-manager": "0.2.1-rc.3",
|
|
158
|
+
"@deepseek-ai/dsh-client-ui-renderer": "0.2.1-rc.3",
|
|
159
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.2.1-rc.3",
|
|
160
|
+
"@deepseek-ai/dsh-client-ui-slots": "0.2.1-rc.3",
|
|
161
|
+
"@deepseek-ai/dsh-client-ui-theme": "0.2.1-rc.3",
|
|
162
|
+
"@deepseek-ai/dsh-host-webserver": "0.2.1-rc.3",
|
|
163
|
+
"@deepseek-ai/dsh-llm": "0.2.1-rc.3",
|
|
164
|
+
"@deepseek-ai/dsh-permission-presets": "0.2.1-rc.3",
|
|
165
|
+
"@deepseek-ai/dsh-scope": "0.2.1-rc.3",
|
|
166
|
+
"@deepseek-ai/dsh-session": "0.2.1-rc.3",
|
|
167
|
+
"@deepseek-ai/dsh-settings": "0.2.1-rc.3",
|
|
168
|
+
"@deepseek-ai/dsh-skill": "0.2.1-rc.3",
|
|
169
|
+
"@deepseek-ai/dsh-system-prompt": "0.2.1-rc.3",
|
|
170
|
+
"@deepseek-ai/dsh-tools": "0.2.1-rc.3",
|
|
171
|
+
"@deepseek-ai/dsh-typert-generator": "0.2.1-rc.3",
|
|
172
|
+
"@deepseek-ai/dsh-typert-protocol": "0.2.1-rc.3",
|
|
173
|
+
"@deepseek-ai/dsh-util-values": "0.2.1-rc.3",
|
|
174
|
+
"@deepseek-ai/dsh-workspace": "0.2.1-rc.3",
|
|
175
|
+
"@deepseek-ai/schemastery": "3.18.5",
|
|
174
176
|
"@testing-library/react": "^16.3.0",
|
|
175
177
|
"@types/node": "^26.4.0",
|
|
176
178
|
"@types/react": "18.3.28",
|