From d57e6095ff27be7335dc44a6b1a6c7e5d60f8229 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Mon, 13 Apr 2026 11:57:41 -0700 Subject: [PATCH 01/33] sidebar shuffle --- site/guide/_metadata.yml | 6 + site/guide/_sidebar.yaml | 291 ++++++++++++++++++++------------------- site/guide/guides.css | 34 +++++ site/styles.css | 1 + 4 files changed, 192 insertions(+), 140 deletions(-) create mode 100644 site/guide/_metadata.yml create mode 100644 site/guide/guides.css diff --git a/site/guide/_metadata.yml b/site/guide/_metadata.yml new file mode 100644 index 0000000000..2bf5e02e98 --- /dev/null +++ b/site/guide/_metadata.yml @@ -0,0 +1,6 @@ +# Copyright © 2023-2026 ValidMind Inc. All rights reserved. +# Refer to the LICENSE file in the root of this repository for details. +# SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial + +# Paths are resolved relative to this directory for all pages under guide/. +css: guides.css diff --git a/site/guide/_sidebar.yaml b/site/guide/_sidebar.yaml index fd3b304124..11f273d9b1 100644 --- a/site/guide/_sidebar.yaml +++ b/site/guide/_sidebar.yaml @@ -9,154 +9,165 @@ website: contents: - guide/guides.qmd - text: "---" - - text: "Access" - - file: guide/access/accessing-validmind.qmd + - section: "Access" contents: - - guide/access/register-with-validmind.qmd - - guide/access/sign-up-via-aws-marketplace.qmd - - guide/access/log-in-to-validmind.qmd + - file: guide/access/accessing-validmind.qmd + contents: + - guide/access/register-with-validmind.qmd + - guide/access/sign-up-via-aws-marketplace.qmd + - guide/access/log-in-to-validmind.qmd - text: "---" - - text: "Configuration" - - file: guide/configuration/managing-your-organization.qmd - contents: - - guide/configuration/set-up-your-organization.qmd - - guide/configuration/configure-aws-privatelink.qmd - - text: "Configure Google PSC" - file: guide/configuration/configure-google-private-service-connect.qmd - - guide/configuration/configure-azure-private-link.qmd - - file: guide/configuration/managing-users.qmd - contents: - - guide/configuration/manage-users.qmd - - guide/configuration/manage-groups.qmd - - guide/configuration/manage-roles.qmd - - guide/configuration/manage-model-stakeholder-types.qmd - - guide/configuration/manage-permissions.qmd - - file: guide/configuration/personalize-validmind.qmd - contents: - - guide/configuration/manage-your-profile.qmd - - guide/configuration/customize-your-dashboard.qmd - - guide/configuration/manage-platform-notifications.qmd + - section: "Configuration" + contents: + - file: guide/configuration/managing-your-organization.qmd + contents: + - guide/configuration/set-up-your-organization.qmd + - guide/configuration/configure-aws-privatelink.qmd + - text: "Configure Google PSC" + file: guide/configuration/configure-google-private-service-connect.qmd + - guide/configuration/configure-azure-private-link.qmd + - file: guide/configuration/managing-users.qmd + contents: + - guide/configuration/manage-users.qmd + - guide/configuration/manage-groups.qmd + - guide/configuration/manage-roles.qmd + - guide/configuration/manage-model-stakeholder-types.qmd + - guide/configuration/manage-permissions.qmd + - file: guide/configuration/personalize-validmind.qmd + contents: + - guide/configuration/manage-your-profile.qmd + - guide/configuration/customize-your-dashboard.qmd + - guide/configuration/manage-platform-notifications.qmd - text: "---" - - text: "Integrations" - - file: guide/integrations/managing-integrations.qmd - contents: - - guide/integrations/manage-secrets.qmd - - guide/integrations/configure-connections.qmd - - guide/integrations/implement-custom-integrations.qmd - - guide/integrations/link-external-models.qmd - - guide/mcp/connect-ai-assistants-via-mcp.qmd - - guide/integrations/configure-analytics-exports.qmd - - guide/integrations/integrations-examples.qmd + - section: "Integrations" + contents: + - file: guide/integrations/managing-integrations.qmd + contents: + - guide/integrations/manage-secrets.qmd + - guide/integrations/configure-connections.qmd + - guide/integrations/implement-custom-integrations.qmd + - guide/integrations/link-external-models.qmd + - guide/mcp/connect-ai-assistants-via-mcp.qmd + - guide/integrations/configure-analytics-exports.qmd + - guide/integrations/integrations-examples.qmd - text: "---" - - text: "Workflows" - - file: guide/workflows/introduction-to-workflows.qmd - contents: - - guide/workflows/workflow-step-types.qmd - - guide/workflows/conditional-requirements.qmd - - guide/workflows/workflow-states.qmd - - file: guide/workflows/setting-up-workflows.qmd - contents: - - guide/workflows/manage-model-stages.qmd - - guide/workflows/configure-workflows.qmd - - guide/workflows/workflow-configuration-examples.qmd - - file: guide/workflows/working-with-workflows.qmd - contents: - - guide/workflows/manage-workflows.qmd - - guide/workflows/transition-workflows.qmd - - guide/workflows/manage-workflow-tasks.qmd + - section: "Workflows" + contents: + - file: guide/workflows/introduction-to-workflows.qmd + contents: + - guide/workflows/workflow-step-types.qmd + - guide/workflows/conditional-requirements.qmd + - guide/workflows/workflow-states.qmd + - file: guide/workflows/setting-up-workflows.qmd + contents: + - guide/workflows/manage-model-stages.qmd + - guide/workflows/configure-workflows.qmd + - guide/workflows/workflow-configuration-examples.qmd + - file: guide/workflows/working-with-workflows.qmd + contents: + - guide/workflows/manage-workflows.qmd + - guide/workflows/transition-workflows.qmd + - guide/workflows/manage-workflow-tasks.qmd - text: "---" - - text: "Model Inventory" - - text: "Working with the inventory" - file: guide/model-inventory/working-with-model-inventory.qmd - contents: - - guide/model-inventory/register-models-in-inventory.qmd - - guide/model-inventory/customize-model-inventory-layout.qmd - - guide/model-inventory/edit-model-inventory-fields.qmd - - guide/model-inventory/customize-model-overview-page.qmd - - file: guide/model-inventory/managing-model-inventory.qmd - contents: - - guide/model-inventory/configure-model-interdependencies.qmd - - guide/model-inventory/manage-model-inventory-fields.qmd - - guide/model-inventory/archive-delete-models.qmd - - guide/model-inventory/view-model-activity.qmd + - section: "Model Inventory" + contents: + - text: "Working with the inventory" + file: guide/model-inventory/working-with-model-inventory.qmd + contents: + - guide/model-inventory/register-models-in-inventory.qmd + - guide/model-inventory/customize-model-inventory-layout.qmd + - guide/model-inventory/edit-model-inventory-fields.qmd + - guide/model-inventory/customize-model-overview-page.qmd + - file: guide/model-inventory/managing-model-inventory.qmd + contents: + - guide/model-inventory/configure-model-interdependencies.qmd + - guide/model-inventory/manage-model-inventory-fields.qmd + - guide/model-inventory/archive-delete-models.qmd + - guide/model-inventory/view-model-activity.qmd - text: "---" - - text: "Templates" - - file: guide/templates/working-with-model-documents.qmd - contents: - - guide/templates/manage-document-types.qmd - - guide/templates/manage-model-documents.qmd - - text: "Customize document validator" - file: guide/templates/customize-virtual-document-validator.qmd - - text: "Working with templates" - file: guide/templates/working-with-document-templates.qmd - contents: - - guide/templates/customize-document-templates.qmd - - guide/templates/manage-document-templates.qmd - - guide/templates/manage-text-block-library.qmd + - section: "Templates" + contents: + - file: guide/templates/working-with-model-documents.qmd + contents: + - guide/templates/manage-document-types.qmd + - guide/templates/manage-model-documents.qmd + - text: "Customize document validator" + file: guide/templates/customize-virtual-document-validator.qmd + - text: "Working with templates" + file: guide/templates/working-with-document-templates.qmd + contents: + - guide/templates/customize-document-templates.qmd + - guide/templates/manage-document-templates.qmd + - guide/templates/manage-text-block-library.qmd - text: "---" - - text: "Model Documentation" - - text: "Working with documentation" - file: guide/model-documentation/working-with-model-documentation.qmd - contents: - - guide/model-documentation/view-documentation-guidelines.qmd - - guide/model-documentation/work-with-content-blocks.qmd - - guide/model-documentation/work-with-test-results.qmd - - guide/model-documentation/work-with-document-versions.qmd - - text: "Assign section statuses" - file: guide/model-documentation/assign-documentation-section-statuses.qmd - - text: "Check for compliance" - file: guide/model-documentation/check-documentation-for-compliance.qmd - - guide/model-documentation/collaborate-with-others.qmd - - guide/model-documentation/submit-for-approval.qmd + - section: "Model Documentation" + contents: + - text: "Working with documentation" + file: guide/model-documentation/working-with-model-documentation.qmd + contents: + - guide/model-documentation/view-documentation-guidelines.qmd + - guide/model-documentation/work-with-content-blocks.qmd + - guide/model-documentation/work-with-test-results.qmd + - guide/model-documentation/work-with-document-versions.qmd + - text: "Assign section statuses" + file: guide/model-documentation/assign-documentation-section-statuses.qmd + - text: "Check for compliance" + file: guide/model-documentation/check-documentation-for-compliance.qmd + - guide/model-documentation/collaborate-with-others.qmd + - guide/model-documentation/submit-for-approval.qmd - text: "---" - - text: "Model Validation" - - file: guide/model-validation/managing-model-validation.qmd - contents: - - guide/model-validation/manage-validation-guidelines.qmd - - guide/model-validation/configure-assessment-options.qmd - - guide/model-validation/manage-artifact-types.qmd - - guide/model-validation/manage-artifact-severities.qmd - - guide/model-validation/manage-artifact-fields.qmd - - file: guide/model-validation/preparing-validation-reports.qmd - contents: - - guide/model-validation/review-model-documentation.qmd - - guide/model-validation/assess-compliance.qmd - - guide/model-documentation/work-with-content-blocks.qmd - - guide/model-documentation/work-with-document-versions.qmd - - guide/model-documentation/collaborate-with-others.qmd - - guide/model-documentation/submit-for-approval.qmd - - file: guide/model-validation/working-with-artifacts.qmd - contents: - - guide/model-validation/view-filter-artifacts.qmd - - guide/model-validation/customize-artifact-layouts.qmd - - guide/model-validation/add-manage-artifacts.qmd - - guide/model-validation/customize-artifact-overview-page.qmd + - section: "Model Validation" + contents: + - file: guide/model-validation/managing-model-validation.qmd + contents: + - guide/model-validation/manage-validation-guidelines.qmd + - guide/model-validation/configure-assessment-options.qmd + - guide/model-validation/manage-artifact-types.qmd + - guide/model-validation/manage-artifact-severities.qmd + - guide/model-validation/manage-artifact-fields.qmd + - file: guide/model-validation/preparing-validation-reports.qmd + contents: + - guide/model-validation/review-model-documentation.qmd + - guide/model-validation/assess-compliance.qmd + - guide/model-documentation/work-with-content-blocks.qmd + - guide/model-documentation/work-with-document-versions.qmd + - guide/model-documentation/collaborate-with-others.qmd + - guide/model-documentation/submit-for-approval.qmd + - file: guide/model-validation/working-with-artifacts.qmd + contents: + - guide/model-validation/view-filter-artifacts.qmd + - guide/model-validation/customize-artifact-layouts.qmd + - guide/model-validation/add-manage-artifacts.qmd + - guide/model-validation/customize-artifact-overview-page.qmd - text: "---" - - text: "Reporting" - - file: guide/reporting/working-with-analytics.qmd - contents: - - guide/reporting/view-report-data.qmd - - guide/reporting/manage-custom-reports.qmd - - guide/reporting/export-analytics.qmd - - file: guide/reporting/generating-exports.qmd - contents: - - guide/reporting/export-inventory.qmd - - guide/reporting/export-documents.qmd - - guide/reporting/export-artifacts.qmd - - guide/reporting/export-analytics.qmd + - section: "Reporting" + contents: + - file: guide/reporting/working-with-analytics.qmd + contents: + - guide/reporting/view-report-data.qmd + - guide/reporting/manage-custom-reports.qmd + - guide/reporting/export-analytics.qmd + - file: guide/reporting/generating-exports.qmd + contents: + - guide/reporting/export-inventory.qmd + - guide/reporting/export-documents.qmd + - guide/reporting/export-artifacts.qmd + - guide/reporting/export-analytics.qmd - text: "---" - - text: "Monitoring" - - file: guide/monitoring/ongoing-monitoring.qmd - contents: - - guide/monitoring/enable-monitoring.qmd - - guide/monitoring/review-monitoring-results.qmd - - guide/monitoring/work-with-metrics-over-time.qmd - - guide/monitoring/set-thresholds-and-alerts.qmd + - section: "Monitoring" + contents: + - file: guide/monitoring/ongoing-monitoring.qmd + contents: + - guide/monitoring/enable-monitoring.qmd + - guide/monitoring/review-monitoring-results.qmd + - guide/monitoring/work-with-metrics-over-time.qmd + - guide/monitoring/set-thresholds-and-alerts.qmd - text: "---" - - text: "Attestation" - - file: guide/attestation/working-with-attestations.qmd - contents: - - guide/attestation/manage-attestations.qmd - - guide/attestation/submit-attestations.qmd - - guide/attestation/review-attestations.qmd - - guide/attestation/approve-attestations.qmd + - section: "Attestation" + contents: + - file: guide/attestation/working-with-attestations.qmd + contents: + - guide/attestation/manage-attestations.qmd + - guide/attestation/submit-attestations.qmd + - guide/attestation/review-attestations.qmd + - guide/attestation/approve-attestations.qmd diff --git a/site/guide/guides.css b/site/guide/guides.css new file mode 100644 index 0000000000..4b67619667 --- /dev/null +++ b/site/guide/guides.css @@ -0,0 +1,34 @@ +/* Copyright © 2023-2026 ValidMind Inc. All rights reserved. */ +/* Refer to the LICENSE file in the root of this repository for details. */ +/* SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial */ + +/* + YAML `section:` rows render as `.sidebar-item-section` with the title inside + `a.sidebar-link[data-bs-toggle="collapse"]`, so they inherit gray link styles + from assets/styles/_links.scss. Match the plain header look used for `- text:`. +*/ +.sidebar-item.sidebar-item-section + > .sidebar-item-container + > a.sidebar-item-text.sidebar-link[data-bs-toggle="collapse"] + .menu-text { + text-transform: uppercase; + color: #196972; +} + +.sidebar-item.sidebar-item-section + > .sidebar-item-container + > a.sidebar-item-text.sidebar-link[data-bs-toggle="collapse"]:hover + .menu-text, +.sidebar-item.sidebar-item-section + > .sidebar-item-container + > a.sidebar-item-text.sidebar-link[data-bs-toggle="collapse"]:focus-visible + .menu-text { + color: #083E44 !important; +} + +.sidebar-item.sidebar-item-section + > .sidebar-item-container + > a.sidebar-item-text.sidebar-link[data-bs-toggle="collapse"].active + .menu-text { + color: #DE257E !important; +} diff --git a/site/styles.css b/site/styles.css index a458310136..5083238d46 100644 --- a/site/styles.css +++ b/site/styles.css @@ -428,6 +428,7 @@ figcaption { font-weight: bold; } +/* Non-link sidebar labels (`- text:` without file) and similar */ .sidebar-item .menu-text { text-transform: uppercase; color: #196972; From 53d67a564bd984e0ca44f4ed464ccd634812e752 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Mon, 13 Apr 2026 12:06:32 -0700 Subject: [PATCH 02/33] Renaming document checker guide --- site/_variables.yml | 2 +- site/guide/_sidebar.yaml | 6 +++--- .../check-documentation-for-compliance.qmd | 2 +- site/guide/templates/_add-assessments.qmd | 2 +- site/guide/templates/_add-regulations-policies.qmd | 2 +- ...ocument-validator.qmd => customize-document-checker.qmd} | 0 site/guide/templates/working-with-model-documents.qmd | 3 +-- .../using-validmind-for-risk-management.qmd | 6 +++--- 8 files changed, 11 insertions(+), 12 deletions(-) rename site/guide/templates/{customize-virtual-document-validator.qmd => customize-document-checker.qmd} (100%) diff --git a/site/_variables.yml b/site/_variables.yml index 260325682b..970ac1e620 100644 --- a/site/_variables.yml +++ b/site/_variables.yml @@ -28,7 +28,7 @@ validmind: training: "ValidMind Academy" customer: "Customer-Managed ValidMind" admin: "ValidMind Admin UI" - checker: "Virtual Document Validator" + checker: "ValidMind Document Checker" # Short form # Rendered format: `{{< var vm.platform >}}` diff --git a/site/guide/_sidebar.yaml b/site/guide/_sidebar.yaml index 11f273d9b1..76d2fa6fc4 100644 --- a/site/guide/_sidebar.yaml +++ b/site/guide/_sidebar.yaml @@ -85,20 +85,20 @@ website: - guide/model-inventory/archive-delete-models.qmd - guide/model-inventory/view-model-activity.qmd - text: "---" - - section: "Templates" + - section: "Documents & Templates" contents: - file: guide/templates/working-with-model-documents.qmd contents: - guide/templates/manage-document-types.qmd - guide/templates/manage-model-documents.qmd - - text: "Customize document validator" - file: guide/templates/customize-virtual-document-validator.qmd - text: "Working with templates" file: guide/templates/working-with-document-templates.qmd contents: - guide/templates/customize-document-templates.qmd - guide/templates/manage-document-templates.qmd - guide/templates/manage-text-block-library.qmd + - text: "Customize document checker" + file: guide/templates/customize-document-checker.qmd - text: "---" - section: "Model Documentation" contents: diff --git a/site/guide/model-documentation/check-documentation-for-compliance.qmd b/site/guide/model-documentation/check-documentation-for-compliance.qmd index 9f71a791ae..a5703af467 100644 --- a/site/guide/model-documentation/check-documentation-for-compliance.qmd +++ b/site/guide/model-documentation/check-documentation-for-compliance.qmd @@ -12,7 +12,7 @@ listing: sort: false fields: [title, description] contents: - - ../../templates/customize-virtual-document-validator.qmd + - ../../templates/customize-document-checker.qmd - ../../about/overview-llm-features.qmd aliases: - /guide/model-documentation/check-documents-for-compliance.html diff --git a/site/guide/templates/_add-assessments.qmd b/site/guide/templates/_add-assessments.qmd index 28426474bf..c6483785d0 100644 --- a/site/guide/templates/_add-assessments.qmd +++ b/site/guide/templates/_add-assessments.qmd @@ -12,7 +12,7 @@ a. Provide the details for your assessment: a. Click **Add** to create your assessment. -a. Once created, add or edit the assessment questions.^[[Add or edit assessment questions](/guide/templates/customize-virtual-document-validator.qmd#add-or-edit-assessment-questions)] +a. Once created, add or edit the assessment questions.^[[Add or edit assessment questions](/guide/templates/customize-document-checker.qmd#add-or-edit-assessment-questions)] :::: diff --git a/site/guide/templates/_add-regulations-policies.qmd b/site/guide/templates/_add-regulations-policies.qmd index 94800f98ae..a90b175519 100644 --- a/site/guide/templates/_add-regulations-policies.qmd +++ b/site/guide/templates/_add-regulations-policies.qmd @@ -12,7 +12,7 @@ a. Provide the details for your regulation or policy: a. Click **Add** to create your regulation or policy. -a. Once created, manage your regulation or policy assessments.^[[Manage assessments](/guide/templates/customize-virtual-document-validator.qmd#manage-assessments)] +a. Once created, manage your regulation or policy assessments.^[[Manage assessments](/guide/templates/customize-document-checker.qmd#manage-assessments)] :::: diff --git a/site/guide/templates/customize-virtual-document-validator.qmd b/site/guide/templates/customize-document-checker.qmd similarity index 100% rename from site/guide/templates/customize-virtual-document-validator.qmd rename to site/guide/templates/customize-document-checker.qmd diff --git a/site/guide/templates/working-with-model-documents.qmd b/site/guide/templates/working-with-model-documents.qmd index 98b8d61e2b..f5da412688 100644 --- a/site/guide/templates/working-with-model-documents.qmd +++ b/site/guide/templates/working-with-model-documents.qmd @@ -7,14 +7,13 @@ date: last-modified listing: - id: model-documents type: grid - grid-columns: 3 + grid-columns: 2 max-description-length: 250 sort: false fields: [title, description] contents: - manage-document-types.qmd - manage-model-documents.qmd - - customize-virtual-document-validator.qmd --- Set up document types, categories of model-related content, for use on models across your organization, and the regulations and policies that oversee your documents within the {{< var validmind.platform >}}. diff --git a/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd b/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd index 4ad4380a80..4137ea18b6 100644 --- a/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd +++ b/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd @@ -413,7 +413,7 @@ Add regulations & policies ::: ::: {.tc} -[Learn more ...](/guide/templates/customize-virtual-document-validator.qmd#manage-regulations-and-policies){.button target="_blank"} +[Learn more ...](/guide/templates/customize-document-checker.qmd#manage-regulations-and-policies){.button target="_blank"} :::
Try it **live** on the next page. {{< fa hand-point-right >}} @@ -455,7 +455,7 @@ When you're done, click [{{< fa chevron-right >}}]() to continue. Add assessments ::: {.tc} -[Learn more ...](/guide/templates/customize-virtual-document-validator.qmd#add-or-clone-assessments){.button target="_blank"} +[Learn more ...](/guide/templates/customize-document-checker.qmd#add-or-clone-assessments){.button target="_blank"} :::
Try it **live** on the next page. {{< fa hand-point-right >}} @@ -500,7 +500,7 @@ When you're done, click [{{< fa chevron-right >}}]() to continue. Add assessment questions ::: {.tc} -[Learn more ...](/guide/templates/customize-virtual-document-validator.qmd#add-or-edit-assessment-questions){.button target="_blank"} +[Learn more ...](/guide/templates/customize-document-checker.qmd#add-or-edit-assessment-questions){.button target="_blank"} :::
Try it **live** on the next page. {{< fa hand-point-right >}} From a4f401cd2d166bdb9f48c6f869f33806d1d1daa4 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Mon, 13 Apr 2026 12:39:09 -0700 Subject: [PATCH 03/33] wip edit: Customize document checker --- site/guide/templates/_add-assessment-questions.qmd | 4 ++-- site/guide/templates/_add-assessments.qmd | 10 ++++++---- site/guide/templates/_add-regulations-policies.qmd | 8 ++++---- site/guide/templates/customize-document-checker.qmd | 8 ++++++-- 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/site/guide/templates/_add-assessment-questions.qmd b/site/guide/templates/_add-assessment-questions.qmd index c5ada9561f..7034bc3712 100644 --- a/site/guide/templates/_add-assessment-questions.qmd +++ b/site/guide/templates/_add-assessment-questions.qmd @@ -8,7 +8,7 @@ SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> :::: {.content-visible unless-format="revealjs"} -a. Click **{{< fa plus >}} Add Question(s)** to create a new question. +a. Click **{{< fa plus >}} Add Question** to create a new question. a. Enter in the **[questions]{.smallcaps}**: @@ -56,7 +56,7 @@ a. After questions are generated, review and edit them to ensure that they adher 1. Select the assessment you want to add questions to by clicking on it. -1. Click **{{< fa plus >}} Add Question(s)** to create a new question. +1. Click **{{< fa plus >}} Add Question** to create a new question. 1. Enter in the **[questions]{.smallcaps}**: diff --git a/site/guide/templates/_add-assessments.qmd b/site/guide/templates/_add-assessments.qmd index c6483785d0..75359a52c7 100644 --- a/site/guide/templates/_add-assessments.qmd +++ b/site/guide/templates/_add-assessments.qmd @@ -3,14 +3,15 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> :::: {.content-visible unless-format="revealjs"} -a. Click **{{< fa plus >}} Add** to create a new assessment. +a. Click **{{< fa plus >}} Add Assessment** to create a new assessment. a. Provide the details for your assessment: - **[assessment name]{.smallcaps}** + - **[assessment type]{.smallcaps}** — Development or Validation - (Optional) **[description]{.smallcaps}** -a. Click **Add** to create your assessment. +a. Click **Add Assessment** to create your assessment. a. Once created, add or edit the assessment questions.^[[Add or edit assessment questions](/guide/templates/customize-document-checker.qmd#add-or-edit-assessment-questions)] @@ -19,13 +20,14 @@ a. Once created, add or edit the assessment questions.^[[Add or edit assessment :::: {.content-hidden unless-format="revealjs"} -4. Click **{{< fa plus >}} Add** to create a new assessment. +4. Click **{{< fa plus >}} Add Assessment** to create a new assessment. 5. Provide the details for your assessment: - **[assessment name]{.smallcaps}** + - **[assessment type]{.smallcaps}** — Development or Validation - (Optional) **[description]{.smallcaps}** -6. Click **Add** to create your assessment. +6. Click **Add Assessment** to create your assessment. :::: \ No newline at end of file diff --git a/site/guide/templates/_add-regulations-policies.qmd b/site/guide/templates/_add-regulations-policies.qmd index a90b175519..163f69af38 100644 --- a/site/guide/templates/_add-regulations-policies.qmd +++ b/site/guide/templates/_add-regulations-policies.qmd @@ -3,14 +3,14 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> :::: {.content-visible unless-format="revealjs"} -a. Click **{{< fa plus >}} Add** to create a new regulation or policy. +a. Click **{{< fa plus >}} Add Regulation or Policy** to create a new regulation or policy. a. Provide the details for your regulation or policy: - **[regulation or policy name]{.smallcaps}** - (Optional) **[description]{.smallcaps}** -a. Click **Add** to create your regulation or policy. +a. Click **Add Regulation or Policy** to create your regulation or policy. a. Once created, manage your regulation or policy assessments.^[[Manage assessments](/guide/templates/customize-document-checker.qmd#manage-assessments)] @@ -18,13 +18,13 @@ a. Once created, manage your regulation or policy assessments.^[[Manage assessme :::: {.content-hidden unless-format="revealjs"} -3. Click **{{< fa plus >}} Add** to create a new regulation or policy. +3. Click **{{< fa plus >}} Add Regulation or Policy** to create a new regulation or policy. 4. Provide the details for your regulation or policy: - **[regulation or policy name]{.smallcaps}** - (Optional) **[description]{.smallcaps}** -5. Click **Add** to create your regulation or policy. +5. Click **Add Regulation or Policy** to create your regulation or policy. :::: \ No newline at end of file diff --git a/site/guide/templates/customize-document-checker.qmd b/site/guide/templates/customize-document-checker.qmd index 7a0aaafd37..f9a74360c0 100644 --- a/site/guide/templates/customize-document-checker.qmd +++ b/site/guide/templates/customize-document-checker.qmd @@ -14,9 +14,11 @@ listing: contents: - ../../model-documentation/check-documentation-for-compliance.qmd - ../../about/overview-llm-features.qmd +aliases: + - /guide/templates/customize-virtual-document-validator.html --- -Manage the regulations and policies and their attached assessments available when you use the {{< var vm.product >}} {{< var validmind.checker >}}. +Manage the regulations and policies and their attached assessments available when you use the {{< var validmind.checker >}}. ::: {.attn} @@ -95,11 +97,13 @@ To manage an assessment: a. Hover over the assessment you want to clone. -b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{{< fa copy >}} Clone** to make changes to the: +b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{{< fa copy >}} Clone Assessment** to make changes to the: - **[regulation or policy name]{.smallcaps}** - (Optional) **[description]{.smallcaps}** + Cloned assessments are the same assessment type as the original assessment. + c. Click **Clone Assessment** to save a copy of the assessment. d. Once cloned, add or edit the assessment questions.[^3] From f627580ee23c7ee00a1c34fae723ba46bb6cbae3 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Mon, 13 Apr 2026 13:50:13 -0700 Subject: [PATCH 04/33] Save point --- .../overview-llm-features-check-document.png | Bin 16044 -> 24010 bytes site/about/overview-llm-features.qmd | 2 +- .../check-documentation-for-compliance.qmd | 31 +++----------- .../templates/_what-is-document-checker.qmd | 40 ++++++++++++++++++ 4 files changed, 47 insertions(+), 26 deletions(-) create mode 100644 site/guide/templates/_what-is-document-checker.qmd diff --git a/site/about/overview-llm-features-check-document.png b/site/about/overview-llm-features-check-document.png index 709536840c7b23548ad09e264f6823ef3a6346d2..1470d32b9643b50e65bade0d652dadc4358d1d5b 100644 GIT binary patch literal 24010 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±s$MJ#-rRKM;~f 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 diff --git a/site/about/overview-llm-features.qmd b/site/about/overview-llm-features.qmd index 22f68d8c76..92c2accc9b 100644 --- a/site/about/overview-llm-features.qmd +++ b/site/about/overview-llm-features.qmd @@ -14,7 +14,7 @@ date: last-modified :::: {.flex .flex-wrap .justify-around} ::: {.w-25-ns .pt3 .pr4} -![Document checker](overview-llm-features-check-document.png){fig-alt="A screenshot showing the LLM feature for checking documents that can be accessed with the Check Document button" .screenshot} +![Document checker](overview-llm-features-check-document.png){fig-alt="A screenshot showing the LLM feature for checking documents that can be accessed with the Check Document button"} ::: diff --git a/site/guide/model-documentation/check-documentation-for-compliance.qmd b/site/guide/model-documentation/check-documentation-for-compliance.qmd index a5703af467..e89507eea4 100644 --- a/site/guide/model-documentation/check-documentation-for-compliance.qmd +++ b/site/guide/model-documentation/check-documentation-for-compliance.qmd @@ -11,39 +11,20 @@ listing: max-description-length: 250 sort: false fields: [title, description] - contents: + contents: - ../../templates/customize-document-checker.qmd - ../../about/overview-llm-features.qmd -aliases: +aliases: - /guide/model-documentation/check-documents-for-compliance.html --- -Use the {{< var validmind.checker >}} to analyze your completed model documentation by comparing it against regulatory standards. +Use the {{< var validmind.checker >}} to analyze your completed model documentation by comparing it against regulatory standards. ugh -## What is the {{< var validmind.checker >}}? - - -:::: {.flex .flex-wrap .justify-around} - -::: {.w-25-ns .pt3 .pr4} -![{{< var vm.checker >}}](/about/overview-llm-features-check-document.png){fig-alt="A screenshot showing the LLM feature for checking documentation that can be accessed with the Check Document button" .screenshot} - -::: +
-::: {.w-75-ns} -{{< include /guide/model-documentation/_document-checker.qmd >}} -::: - -:::: - -As a compliance tool, the {{< var vm.checker >}} is most useful when your model documentation is sufficiently complete and you are preparing models for regulatory submission or internal audit, as it helps reduce manual review effort and improve quality assurance. - -By default, {{< var vm.product >}} supports the following regulations: +## What is the {{< var validmind.checker >}}? -- Federal Reserve Supervisory Letter SR 11-7 (United States)[^1] -- Bank of England Prudential Regulation Authority (PRA) Supervisory Statement SS1/23 (United Kingdom)[^2] -- Office of the Superintendent of Financial Institutions (OSFI) Guideline E-23 (Canada)[^3] -- European Union Artificial Intelligence Act (Regulation (EU) 2024/1689, EU AI Act)[^4] +{{< include /guide/templates/_what-is-document-checker.qmd >}} ::: {.attn} diff --git a/site/guide/templates/_what-is-document-checker.qmd b/site/guide/templates/_what-is-document-checker.qmd new file mode 100644 index 0000000000..076ef5c086 --- /dev/null +++ b/site/guide/templates/_what-is-document-checker.qmd @@ -0,0 +1,40 @@ + + +:::: {.flex .flex-wrap .justify-around} + +::: {.w-25-ns .pt3 .pr4} +![{{< var vm.checker >}}](/about/overview-llm-features-check-document.png){fig-alt="A screenshot showing the LLM feature for checking documentation that can be accessed with the Check Document button"} + +::: + +::: {.w-75-ns} +{{< include /guide/model-documentation/_document-checker.qmd >}} + +As a compliance tool, the {{< var vm.checker >}} is most useful when your model documentation is sufficiently complete and you are preparing models for regulatory submission or internal audit, as it helps reduce manual review effort and improve quality assurance. + +::: + +:::: + +::: {.embed-tip} +By default, {{< var vm.product >}} supports the following regulations: + +- Federal Reserve Supervisory Letter SR 11-7 (United States) +- Bank of England Prudential Regulation Authority (PRA) Supervisory Statement SS1/23 (United Kingdom) +- Office of the Superintendent of Financial Institutions (OSFI) Guideline E-23 (Canada) +- European Union Artificial Intelligence Act (Regulation (EU) 2024/1689, EU AI Act) + +::: + +

+ +::: {.callout-button .pl4 .nt4} +::: {.callout collapse="true" appearance="minimal"} +### What regulations are supported by default? + +{{< include /guide/templates/_what-is-document-checker.qmd >}} + +::: +::: \ No newline at end of file From 7801dfa13c47c0a91afd75170922a19e7b2361b3 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Mon, 13 Apr 2026 14:26:57 -0700 Subject: [PATCH 05/33] Save point --- .../model-documentation/_document-checker.qmd | 6 ++-- .../check-documentation-for-compliance.qmd | 22 +++--------- .../templates/_what-is-document-checker.qmd | 35 +++++++++++++------ .../templates/customize-document-checker.qmd | 6 +++- 4 files changed, 38 insertions(+), 31 deletions(-) diff --git a/site/guide/model-documentation/_document-checker.qmd b/site/guide/model-documentation/_document-checker.qmd index 5acea225d3..48804d225a 100644 --- a/site/guide/model-documentation/_document-checker.qmd +++ b/site/guide/model-documentation/_document-checker.qmd @@ -2,9 +2,9 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> -The {{< var validmind.checker >}} is a compliance tool that reviews model documentation against a selected regulatory standard. Use the {{< var vm.checker >}} to identify gaps, generate actionable recommendations, and focus your efforts on areas that require attention. The {{< var vm.checker >}} uses a structured checklist to: +The {{< var validmind.checker >}} is a compliance tool that reviews documentation or reports against a selected regulatory standard. Use the {{< var vm.checker >}} to identify gaps, generate actionable recommendations, and focus your efforts on areas that require attention. The {{< var vm.checker >}} uses a structured checklist to: -- Assess whether required information is clearly documented -- Identify missing or weak areas in the documentation +- Assess whether required information or evidence is clearly documented or attached +- Identify missing or weak areas in the documentation or report - Offer guidance on how to improve clarity, completeness, and compliance - Ensure consistency with regulatory expectations for risk and model governance \ No newline at end of file diff --git a/site/guide/model-documentation/check-documentation-for-compliance.qmd b/site/guide/model-documentation/check-documentation-for-compliance.qmd index e89507eea4..ce33519cc4 100644 --- a/site/guide/model-documentation/check-documentation-for-compliance.qmd +++ b/site/guide/model-documentation/check-documentation-for-compliance.qmd @@ -18,11 +18,7 @@ aliases: - /guide/model-documentation/check-documents-for-compliance.html --- -Use the {{< var validmind.checker >}} to analyze your completed model documentation by comparing it against regulatory standards. ugh - -
- -## What is the {{< var validmind.checker >}}? +Use the {{< var validmind.checker >}} to analyze your completed documentation or report by comparing it against regulatory standards. {{< include /guide/templates/_what-is-document-checker.qmd >}} @@ -31,9 +27,9 @@ Use the {{< var validmind.checker >}} to analyze your completed model documentat ## Prerequisites - [x] {{< var link.login >}} -- [x] The model you are documenting is registered in the model inventory.[^5] +- [x] The model you are documenting is registered in the model inventory.[^1] - [x] The model must have sufficiently complete documentation that can be checked against a regulatory standard. -- [x] You are a [{{< fa code >}} Developer]{.bubble} or [{{< fa circle-check >}} Validator]{.bubble}, or assigned another role with sufficient permissions to perform the tasks in this guide.[^6] +- [x] You are a [{{< fa code >}} Developer]{.bubble} or [{{< fa circle-check >}} Validator]{.bubble}, or assigned another role with sufficient permissions to perform the tasks in this guide.[^2] ::: ## Check model documentation @@ -46,16 +42,8 @@ Use the {{< var validmind.checker >}} to analyze your completed model documentat ::: -[^1]: [SR 11-7](https://www.federalreserve.gov/supervisionreg/srletters/sr1107.htm) - -[^2]: [SS1/23](https://www.bankofengland.co.uk/prudential-regulation/publication/2023/may/model-risk-management-principles-for-banks-ss) - -[^3]: [Guideline E-23](https://www.osfi-bsif.gc.ca/en/guidance/guidance-library/guideline-e-23-model-risk-management-2027) - -[^4]: [Regulation (EU) 2024/1689](https://eur-lex.europa.eu/eli/reg/2024/1689/oj/eng) - -[^5]: [Register models in the inventory](/guide/model-inventory/register-models-in-inventory.qmd) +[^1]: [Register models in the inventory](/guide/model-inventory/register-models-in-inventory.qmd) -[^6]: [Manage permissions](/guide/configuration/manage-permissions.qmd) +[^2]: [Manage permissions](/guide/configuration/manage-permissions.qmd) diff --git a/site/guide/templates/_what-is-document-checker.qmd b/site/guide/templates/_what-is-document-checker.qmd index 076ef5c086..1877ec5310 100644 --- a/site/guide/templates/_what-is-document-checker.qmd +++ b/site/guide/templates/_what-is-document-checker.qmd @@ -2,6 +2,8 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> +#### What is the {{< var validmind.checker >}}? + :::: {.flex .flex-wrap .justify-around} ::: {.w-25-ns .pt3 .pr4} @@ -12,29 +14,42 @@ SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> ::: {.w-75-ns} {{< include /guide/model-documentation/_document-checker.qmd >}} -As a compliance tool, the {{< var vm.checker >}} is most useful when your model documentation is sufficiently complete and you are preparing models for regulatory submission or internal audit, as it helps reduce manual review effort and improve quality assurance. -::: + + + +:::: {.content-visible when-format="html" when-meta="includes.customize"} +Customizing the {{< var validmind.checker >}} to support your organization's unique regulatory requirements and policies helps start quality assurance early in the model lifecycle and enables individual contributors to actively participate in risk-management oversight. :::: -::: {.embed-tip} -By default, {{< var vm.product >}} supports the following regulations: +:::: {.content-visible when-format="html" unless-meta="includes.customize"} +As a compliance tool, the {{< var validmind.checker >}} is most useful when your documentation or report is sufficiently complete and you are preparing models for regulatory submission or internal audit, as it helps reduce manual review effort and improve quality assurance. -- Federal Reserve Supervisory Letter SR 11-7 (United States) -- Bank of England Prudential Regulation Authority (PRA) Supervisory Statement SS1/23 (United Kingdom) -- Office of the Superintendent of Financial Institutions (OSFI) Guideline E-23 (Canada) -- European Union Artificial Intelligence Act (Regulation (EU) 2024/1689, EU AI Act) +:::: ::: -

+:::: + +
+ + ::: {.callout-button .pl4 .nt4} ::: {.callout collapse="true" appearance="minimal"} ### What regulations are supported by default? -{{< include /guide/templates/_what-is-document-checker.qmd >}} +By default, {{< var vm.product >}} supports the following regulations: + +- Federal Reserve Supervisory Letter SR 11-7 (United States) +- Bank of England Prudential Regulation Authority (PRA) Supervisory Statement SS1/23 (United Kingdom) +- Office of the Superintendent of Financial Institutions (OSFI) Guideline E-23 (Canada) +- European Union Artificial Intelligence Act (Regulation (EU) 2024/1689, EU AI Act) ::: ::: \ No newline at end of file diff --git a/site/guide/templates/customize-document-checker.qmd b/site/guide/templates/customize-document-checker.qmd index f9a74360c0..c371b717a0 100644 --- a/site/guide/templates/customize-document-checker.qmd +++ b/site/guide/templates/customize-document-checker.qmd @@ -16,10 +16,14 @@ listing: - ../../about/overview-llm-features.qmd aliases: - /guide/templates/customize-virtual-document-validator.html +includes: + customize: true --- Manage the regulations and policies and their attached assessments available when you use the {{< var validmind.checker >}}. +{{< include /guide/templates/_what-is-document-checker.qmd >}} + ::: {.attn} ## Prerequisites @@ -152,7 +156,7 @@ c. Click **Update Question** to save your changes. [^1]: [Manage permissions](/guide/configuration/manage-permissions.qmd) -[^2]: [Check documentation for compliance](/guide/model-documentation/check-documentation-for-compliance.qmd#what-is-the) +[^2]: [What regulations are supported by default?](#default-regulations) [^3]: [Add or edit assessment questions](#add-or-edit-assessment-questions) From fbcb151a56f1dcbb6c33f16fe374dd8675c6c93d Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 11:53:20 -0700 Subject: [PATCH 06/33] Unhiding generate assessment from PDF --- .../templates/_add-assessment-questions.qmd | 29 +++++-------------- .../templates/customize-document-checker.qmd | 9 ++++-- 2 files changed, 14 insertions(+), 24 deletions(-) diff --git a/site/guide/templates/_add-assessment-questions.qmd b/site/guide/templates/_add-assessment-questions.qmd index 7034bc3712..95afe548cc 100644 --- a/site/guide/templates/_add-assessment-questions.qmd +++ b/site/guide/templates/_add-assessment-questions.qmd @@ -2,27 +2,14 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> - - +Manually add assessment questions, or generate questions from a PDF upload: :::: {.content-visible unless-format="revealjs"} -a. Click **{{< fa plus >}} Add Question** to create a new question. - -a. Enter in the **[questions]{.smallcaps}**: - - - Each line without a break (enter) is considered one complete question.^[Empty lines will be ignored.] - - To add a separate question, press enter to start a new line. - - Questions will be added in the order they appear. +#### Manually add questions - As you enter questions, the count of questions will update. - -a. Click **Add # Question(s)** to insert questions into the assessment. - - +a. After questions are generated, review and edit them to ensure that they adhere to your upload's requirements. :::: diff --git a/site/guide/templates/customize-document-checker.qmd b/site/guide/templates/customize-document-checker.qmd index c371b717a0..c22534b83d 100644 --- a/site/guide/templates/customize-document-checker.qmd +++ b/site/guide/templates/customize-document-checker.qmd @@ -99,6 +99,11 @@ To manage an assessment: #### Clone assessments +::: {.callout} +Cloned assessments are the same assessment type as the original assessment. + +::: + a. Hover over the assessment you want to clone. b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{{< fa copy >}} Clone Assessment** to make changes to the: @@ -106,8 +111,6 @@ b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{ - **[regulation or policy name]{.smallcaps}** - (Optional) **[description]{.smallcaps}** - Cloned assessments are the same assessment type as the original assessment. - c. Click **Clone Assessment** to save a copy of the assessment. d. Once cloned, add or edit the assessment questions.[^3] @@ -141,7 +144,7 @@ Click **{{}} Search** to enter in your keywords, then pres a. Hover over the question you want to edit. -b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{{< fa pencil >}} Edit** to make changes to the **[question text]{.smallcaps}**. +b. When the **{{< fa ellipsis-vertical >}}** appears, click on it and select **{{< fa pencil >}} Edit** to make changes to the **[question]{.smallcaps}**. c. Click **Update Question** to save your changes. From a434051688668815abd927381c31e9db77c25807 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 11:58:20 -0700 Subject: [PATCH 07/33] Rename: Check documents for compliance --- site/guide/_sidebar.yaml | 2 +- ...on-for-compliance.qmd => check-documents-for-compliance.qmd} | 2 +- .../model-documentation/working-with-model-documentation.qmd | 2 +- site/guide/templates/customize-document-checker.qmd | 2 +- site/training/common-slides/_document-checker.qmd | 2 +- site/training/what-is-validmind/what-is-validmind.qmd | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) rename site/guide/model-documentation/{check-documentation-for-compliance.qmd => check-documents-for-compliance.qmd} (95%) diff --git a/site/guide/_sidebar.yaml b/site/guide/_sidebar.yaml index 76d2fa6fc4..54b4c4d145 100644 --- a/site/guide/_sidebar.yaml +++ b/site/guide/_sidebar.yaml @@ -112,7 +112,7 @@ website: - text: "Assign section statuses" file: guide/model-documentation/assign-documentation-section-statuses.qmd - text: "Check for compliance" - file: guide/model-documentation/check-documentation-for-compliance.qmd + file: guide/model-documentation/check-documents-for-compliance.qmd - guide/model-documentation/collaborate-with-others.qmd - guide/model-documentation/submit-for-approval.qmd - text: "---" diff --git a/site/guide/model-documentation/check-documentation-for-compliance.qmd b/site/guide/model-documentation/check-documents-for-compliance.qmd similarity index 95% rename from site/guide/model-documentation/check-documentation-for-compliance.qmd rename to site/guide/model-documentation/check-documents-for-compliance.qmd index ce33519cc4..e6bc09f1c2 100644 --- a/site/guide/model-documentation/check-documentation-for-compliance.qmd +++ b/site/guide/model-documentation/check-documents-for-compliance.qmd @@ -15,7 +15,7 @@ listing: - ../../templates/customize-document-checker.qmd - ../../about/overview-llm-features.qmd aliases: - - /guide/model-documentation/check-documents-for-compliance.html + - /guide/model-documentation/check-documentation-for-compliance.html --- Use the {{< var validmind.checker >}} to analyze your completed documentation or report by comparing it against regulatory standards. diff --git a/site/guide/model-documentation/working-with-model-documentation.qmd b/site/guide/model-documentation/working-with-model-documentation.qmd index c2a6d11c0e..49631bb8ec 100644 --- a/site/guide/model-documentation/working-with-model-documentation.qmd +++ b/site/guide/model-documentation/working-with-model-documentation.qmd @@ -24,7 +24,7 @@ listing: fields: [title, description] contents: - assign-documentation-section-statuses.qmd - - check-documentation-for-compliance.qmd + - check-documents-for-compliance.qmd - collaborate-with-others.qmd - submit-for-approval.qmd aliases: diff --git a/site/guide/templates/customize-document-checker.qmd b/site/guide/templates/customize-document-checker.qmd index c22534b83d..8860acbc4f 100644 --- a/site/guide/templates/customize-document-checker.qmd +++ b/site/guide/templates/customize-document-checker.qmd @@ -12,7 +12,7 @@ listing: sort: false fields: [title, description] contents: - - ../../model-documentation/check-documentation-for-compliance.qmd + - ../../model-documentation/check-documents-for-compliance.qmd - ../../about/overview-llm-features.qmd aliases: - /guide/templates/customize-virtual-document-validator.html diff --git a/site/training/common-slides/_document-checker.qmd b/site/training/common-slides/_document-checker.qmd index 60faf7e0f2..ec9ed7fa3b 100644 --- a/site/training/common-slides/_document-checker.qmd +++ b/site/training/common-slides/_document-checker.qmd @@ -10,7 +10,7 @@ SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> ::: {.tc} -[Learn more ...](/guide/model-documentation/check-documentation-for-compliance.qmd){.button target="_blank"} +[Learn more ...](/guide/model-documentation/check-documents-for-compliance.qmd){.button target="_blank"} ::: ::: diff --git a/site/training/what-is-validmind/what-is-validmind.qmd b/site/training/what-is-validmind/what-is-validmind.qmd index a121a7573b..7ae9832d20 100644 --- a/site/training/what-is-validmind/what-is-validmind.qmd +++ b/site/training/what-is-validmind/what-is-validmind.qmd @@ -872,7 +872,7 @@ Use {{< var vm.product >}}'s {{< var vm.checker >}} to: ::: {.slideover--b .auto-collapse} ::: {.tc .nt4} -[[{{< fa circle-info >}} How do I use the {{< var vm.checker >}}?]{.button .button-light-green .shadow-5-ns}](/guide/model-documentation/check-documentation-for-compliance.qmd){target="_blank"} +[[{{< fa circle-info >}} How do I use the {{< var vm.checker >}}?]{.button .button-light-green .shadow-5-ns}](/guide/model-documentation/check-documents-for-compliance.qmd){target="_blank"} ::: ::: From c344030c87283d0e646cbdb29e38cb880b26a64d Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 12:16:55 -0700 Subject: [PATCH 08/33] Edit --- site/guide/templates/_add-assessment-questions.qmd | 7 ++++--- site/guide/templates/_add-assessments.qmd | 4 +++- site/guide/templates/customize-document-checker.qmd | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/site/guide/templates/_add-assessment-questions.qmd b/site/guide/templates/_add-assessment-questions.qmd index 95afe548cc..2e1ec44217 100644 --- a/site/guide/templates/_add-assessment-questions.qmd +++ b/site/guide/templates/_add-assessment-questions.qmd @@ -3,7 +3,7 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> -Manually add assessment questions, or generate questions from a PDF upload: +Manually add assessment questions, or generate questions from a PDF upload for Development type assessments: :::: {.content-visible unless-format="revealjs"} @@ -23,8 +23,9 @@ a. Click **Add # Question(s)** to insert questions into the assessment. #### Generate questions from PDF uploads -::: {.callout-important} -Uploading a PDF document will replace all existing questions, including any custom questions inserted manually or generated from previous PDF uploads. +::: {.callout-important title="Uploading a PDF document will replace all existing questions, including any custom questions inserted manually or generated from previous PDF uploads."} +Currently, generating questions from PDF uploads is only available for Development type assessments. + ::: a. Click **{{< fa diamond >}} Generate From File** to upload a PDF. diff --git a/site/guide/templates/_add-assessments.qmd b/site/guide/templates/_add-assessments.qmd index 75359a52c7..800bdf6311 100644 --- a/site/guide/templates/_add-assessments.qmd +++ b/site/guide/templates/_add-assessments.qmd @@ -8,7 +8,8 @@ a. Click **{{< fa plus >}} Add Assessment** to create a new assessment. a. Provide the details for your assessment: - **[assessment name]{.smallcaps}** - - **[assessment type]{.smallcaps}** — Development or Validation + - **[assessment type]{.smallcaps}** — Development^[Development type assessments are available for Development, Monitoring, and custom type documents.] or Validation^[Validation type assessments are only available for Validation type documents.] + - **[document type]{.smallcaps}** — Select the document types^[[Manage document types](/guide/templates/manage-document-types.qmd)] that this assessment should be available for. - (Optional) **[description]{.smallcaps}** a. Click **Add Assessment** to create your assessment. @@ -26,6 +27,7 @@ a. Once created, add or edit the assessment questions.^[[Add or edit assessment - **[assessment name]{.smallcaps}** - **[assessment type]{.smallcaps}** — Development or Validation + - **[document type]{.smallcaps}** — Select the [document types](/guide/templates/manage-document-types.qmd){target="_blank"} that this assessment should be available for. - (Optional) **[description]{.smallcaps}** 6. Click **Add Assessment** to create your assessment. diff --git a/site/guide/templates/customize-document-checker.qmd b/site/guide/templates/customize-document-checker.qmd index 8860acbc4f..5c05105d48 100644 --- a/site/guide/templates/customize-document-checker.qmd +++ b/site/guide/templates/customize-document-checker.qmd @@ -100,7 +100,7 @@ To manage an assessment: #### Clone assessments ::: {.callout} -Cloned assessments are the same assessment type as the original assessment. +Cloned assessments are the same assessment type and are available to the same document types as the original assessment. ::: From ced4e5834adeeb09cc371fbb635bd894a60e9515 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 12:46:53 -0700 Subject: [PATCH 09/33] Edit: Check documents for compliance --- ...ntation.qmd => _check-model-documents.qmd} | 59 ++++++++++++------- .../check-documents-for-compliance.qmd | 18 +++--- site/guide/monitoring/enable-monitoring.qmd | 4 -- .../finalizing-model-documentation.qmd | 2 +- 4 files changed, 49 insertions(+), 34 deletions(-) rename site/guide/model-documentation/{_check-model-documentation.qmd => _check-model-documents.qmd} (68%) diff --git a/site/guide/model-documentation/_check-model-documentation.qmd b/site/guide/model-documentation/_check-model-documents.qmd similarity index 68% rename from site/guide/model-documentation/_check-model-documentation.qmd rename to site/guide/model-documentation/_check-model-documents.qmd index 9d9addae2d..71894ba293 100644 --- a/site/guide/model-documentation/_check-model-documentation.qmd +++ b/site/guide/model-documentation/_check-model-documents.qmd @@ -3,31 +3,47 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> :::: {.content-visible unless-format="revealjs"} -1. In the left sidebar, click **{{< fa cubes >}} Inventory**. +### 1. Select a document -1. Select a model or find your model by applying a filter or searching for it.^[[Working with the model inventory](/guide/model-inventory/working-with-model-inventory.qmd#search-filter-and-sort-models)] +a. In the left sidebar, click **{{< fa cubes >}} Inventory**. -1. In the left sidebar that appears for your model, click **{{< fa file >}} Documents** and select the **Latest** or **Saved Versions** tab.^[[Work with document versions](/guide/model-documentation/work-with-document-versions.qmd)] +a. Select a model or find your model by applying a filter or searching for it.^[[Working with the model inventory](/guide/model-inventory/working-with-model-inventory.qmd#search-filter-and-sort-models)] -1. Click on a Development type file.^[[Working with model documents](/guide/templates/working-with-model-documents.qmd)] +a. In the left sidebar that appears for your model, click **{{< fa file >}} Documents** and select the **Latest** or **Saved Versions** tab.^[[Work with document versions](/guide/model-documentation/work-with-document-versions.qmd)] -1. Locate the {{< var vm.checker >}} box on the right and click **{{< fa check >}} Check Document**. +a. Click on the file you want to check:^[[Working with model documents](/guide/templates/working-with-model-documents.qmd)] + + ::: {.panel-tabset} + + #### Development, Monitoring, and custom type documents + + Locate the {{< var vm.checker >}} box on the right and click **{{< fa check >}} Check Document**. + + #### Validation type documents + + a. Locate {{< fa file-circle-check >}} Check Document on the right and click to expand the menu. + + a. Click **{{< fa check >}} Check Document**. + + ::: -### Select a regulation +a. Proceed with selecting a regulation to check your document against. -1. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: +### 2. Select a regulation + +a. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/vdv-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} A list of regulation-based questions appears for your review. -1. Scroll to the bottom and click **Check Document**. +a. Scroll to the bottom and click **Check {document type} Document** where `{document type}` is the type of document you are checking. -The {{< var validmind.checker >}} analyzes your documentation, identifies gaps, and generates recommendations for specific questions that you review in the next step. +The {{< var validmind.checker >}} analyzes your document, identifies gaps, and generates recommendations for specific questions for your review. -### Review the observations +### 3. Review the observations -1. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations: +a. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations: ::: {.pl4} [Gap Identified]{.bubble .red-b .red-bg} — A question that is not addressed and requires attention.
@@ -35,19 +51,18 @@ The {{< var validmind.checker >}} analyzes your documentation, identifies gaps, [No Significant Gaps]{.bubble .green-bg} — A question that is fully addressed. ::: -1. Review questions that require attention. Each question includes: +a. Review questions that require attention. Each question includes a(n): - - **Observation** — An analysis of how the documentation currently addresses the question - - **Recommendation** — If suggested, guidance on how to revise the documentation to better address the question + - **Observation** — An analysis of how the document currently addresses the question + - **Recommendation** — If suggested, guidance on how to revise the document to better address the question - ![Sample question that is not addressed](/guide/model-documentation/vdv-gap-identified.png){fig-alt="A screenshot showing the question 'Is the documentation sufficient to allow an expert to adjust parameters?' and the observation 'Gap identified' with a recommendation to add a policy paragraph." .screenshot} + ![Sample question that is not addressed](/guide/model-documentation/vdv-gap-identified.png){fig-alt="A screenshot showing a question and the observation 'GAP IDENTIFIED' with a recommendation" .screenshot} - ![Sample question that is partially addressed](/guide/model-documentation/vdv-partial-gap.png){fig-alt="A screenshot showing the question 'Is the documentation sufficient to allow an expert to adjust parameters?' and the observation 'Gap identified' with a recommendation to add a policy paragraph." .screenshot} + ![Sample question that is partially addressed](/guide/model-documentation/vdv-partial-gap.png){fig-alt="A screenshot showing a question and the observation 'PARTIAL GAP' with a recommendation" .screenshot} - ![Sample question that is fully addressed](/guide/model-documentation/vdv-no-significant-gaps.png){fig-alt="A screenshot showing the question 'Is the documentation sufficient to allow an expert to adjust parameters?' and the observation 'No significant gaps.' with a recommendation to add a policy paragraph." .screenshot} - -Use the feedback provided by the {{< var validmind.checker >}} to review the appropriate sections of your documentation and decide what revisions should be made. Or, if you have run the {{< var vm.checker >}} before and were just checking that all documentation issues have been addressed, submit your model for validation. + ![Sample question that is fully addressed](/guide/model-documentation/vdv-no-significant-gaps.png){fig-alt="A screenshot showing a question and the observation 'NO SIGNIFICANT GAPS' with a recommendation" .screenshot} +Use the feedback provided by the {{< var validmind.checker >}} to review the appropriate sections of your document and decide what revisions should be made. :::: @@ -64,7 +79,7 @@ Use the feedback provided by the {{< var validmind.checker >}} to review the app ::: {.panel-tabset} -#### i. Select a regulation +#### 1. Select a regulation a. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: @@ -76,7 +91,7 @@ a. Scroll to the bottom and click **Check Document**. The {{< var validmind.checker >}} analyzes your documentation, identifies gaps, and generates recommendations for specific questions that you review in the next step. -#### ii. Review the observations +#### 2. Review the observations a. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations: @@ -86,7 +101,7 @@ a. After the {{< var vm.checker >}} has completed its analysis, expand individua [No Significant Gaps]{.bubble .green-bg} — A question that is fully addressed. ::: -a. Review questions that require attention. Each question includes: +b. Review questions that require attention. Each question includes: - **Observation** — An analysis of how the documentation currently addresses the question - **Recommendation** — If suggested, guidance on how to revise the documentation to better address the question diff --git a/site/guide/model-documentation/check-documents-for-compliance.qmd b/site/guide/model-documentation/check-documents-for-compliance.qmd index e6bc09f1c2..0fae64f50f 100644 --- a/site/guide/model-documentation/check-documents-for-compliance.qmd +++ b/site/guide/model-documentation/check-documents-for-compliance.qmd @@ -2,7 +2,7 @@ # Copyright © 2023-2026 ValidMind Inc. All rights reserved. # Refer to the LICENSE file in the root of this repository for details. # SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial -title: "Check documentation for compliance" +title: "Check documents for compliance" date: last-modified listing: - id: check-documents @@ -18,7 +18,7 @@ aliases: - /guide/model-documentation/check-documentation-for-compliance.html --- -Use the {{< var validmind.checker >}} to analyze your completed documentation or report by comparing it against regulatory standards. +Use the {{< var validmind.checker >}} to analyze your completed documents by comparing it against regulatory standards. {{< include /guide/templates/_what-is-document-checker.qmd >}} @@ -28,13 +28,15 @@ Use the {{< var validmind.checker >}} to analyze your completed documentation or - [x] {{< var link.login >}} - [x] The model you are documenting is registered in the model inventory.[^1] -- [x] The model must have sufficiently complete documentation that can be checked against a regulatory standard. -- [x] You are a [{{< fa code >}} Developer]{.bubble} or [{{< fa circle-check >}} Validator]{.bubble}, or assigned another role with sufficient permissions to perform the tasks in this guide.[^2] +- [x] The model must have sufficiently complete documents that can be checked against a regulatory standard. +- [x] Regulations or policies and associated assessments have been configured for the document types you are checking.[^2] +- [x] You are a [{{< fa code >}} Developer]{.bubble} or [{{< fa circle-check >}} Validator]{.bubble}, or assigned another role with sufficient permissions to perform the tasks in this guide.[^3] + ::: -## Check model documentation +## Check documents -{{< include /guide/model-documentation/_check-model-documentation.qmd >}} +{{< include /guide/model-documentation/_check-model-documents.qmd >}} ## Learn more @@ -44,6 +46,8 @@ Use the {{< var validmind.checker >}} to analyze your completed documentation or [^1]: [Register models in the inventory](/guide/model-inventory/register-models-in-inventory.qmd) -[^2]: [Manage permissions](/guide/configuration/manage-permissions.qmd) +[^2]: [Customize {{< var validmind.checker >}}](/guide/templates/customize-document-checker.qmd) + +[^3]: [Manage permissions](/guide/configuration/manage-permissions.qmd) diff --git a/site/guide/monitoring/enable-monitoring.qmd b/site/guide/monitoring/enable-monitoring.qmd index 6acbd80f1a..e547b47c2a 100644 --- a/site/guide/monitoring/enable-monitoring.qmd +++ b/site/guide/monitoring/enable-monitoring.qmd @@ -24,8 +24,6 @@ To start uploading ongoing monitoring results for a model to {{< var vm.product ## Steps -::: {.panel-tabset} - ### 1. Get monitoring code snippet {{< include /developer/model-documentation/_code-snippet.qmd >}} @@ -130,8 +128,6 @@ Attempting to initialize the {{< var vm.developer >}} with a document that does ::: -::: - ## What's next diff --git a/site/training/developer-fundamentals/finalizing-model-documentation.qmd b/site/training/developer-fundamentals/finalizing-model-documentation.qmd index 73fee394f0..61e23c7122 100644 --- a/site/training/developer-fundamentals/finalizing-model-documentation.qmd +++ b/site/training/developer-fundamentals/finalizing-model-documentation.qmd @@ -244,7 +244,7 @@ Use the {{< var vm.checker >}} ::: {.column width="70%" .bl .pl4 .f4} -{{< include /guide/model-documentation/_check-model-documentation.qmd >}} +{{< include /guide/model-documentation/_check-model-documents.qmd >}} ::: From 012ada97811a14b992114ff823b78b1b938c83ec Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 12:53:36 -0700 Subject: [PATCH 10/33] Adding check documents for compliance to validation --- site/guide/_sidebar.yaml | 2 ++ site/guide/model-validation/preparing-validation-reports.qmd | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/site/guide/_sidebar.yaml b/site/guide/_sidebar.yaml index 54b4c4d145..ccf6b74cbf 100644 --- a/site/guide/_sidebar.yaml +++ b/site/guide/_sidebar.yaml @@ -131,6 +131,8 @@ website: - guide/model-validation/assess-compliance.qmd - guide/model-documentation/work-with-content-blocks.qmd - guide/model-documentation/work-with-document-versions.qmd + - text: "Check for compliance" + file: guide/model-documentation/check-documents-for-compliance.qmd - guide/model-documentation/collaborate-with-others.qmd - guide/model-documentation/submit-for-approval.qmd - file: guide/model-validation/working-with-artifacts.qmd diff --git a/site/guide/model-validation/preparing-validation-reports.qmd b/site/guide/model-validation/preparing-validation-reports.qmd index 1f39722977..dd35bcdbbd 100644 --- a/site/guide/model-validation/preparing-validation-reports.qmd +++ b/site/guide/model-validation/preparing-validation-reports.qmd @@ -18,11 +18,12 @@ listing: - ../model-documentation/work-with-document-versions.qmd - id: complete-reports type: grid - grid-columns: 2 + grid-columns: 3 max-description-length: 250 sort: false fields: [title, description] contents: + - ../model-documentation/check-documents-for-compliance.qmd - ../model-documentation/collaborate-with-others.qmd - ../model-documentation/submit-for-approval.qmd aliases: @@ -123,7 +124,7 @@ Complete your validation report by reviewing submitted model documentation and a :::{#draft-reports} ::: -Collaborate with other stakeholders and submit your work for approval: +Wrap up your report, collaborate with other stakeholders, and submit your work for approval: :::{#complete-reports} ::: From f2d2ee65a78c4a68b59657b7b538dd633ba4b337 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:19:10 -0700 Subject: [PATCH 11/33] Admin training edit --- .../model-documentation/_document-checker.qmd | 6 +-- .../templates/_add-assessment-questions.qmd | 6 +-- site/guide/templates/_add-assessments.qmd | 4 +- .../using-validmind-for-risk-management.qmd | 38 ++++++++++--------- 4 files changed, 28 insertions(+), 26 deletions(-) diff --git a/site/guide/model-documentation/_document-checker.qmd b/site/guide/model-documentation/_document-checker.qmd index 48804d225a..54919af981 100644 --- a/site/guide/model-documentation/_document-checker.qmd +++ b/site/guide/model-documentation/_document-checker.qmd @@ -2,9 +2,9 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> -The {{< var validmind.checker >}} is a compliance tool that reviews documentation or reports against a selected regulatory standard. Use the {{< var vm.checker >}} to identify gaps, generate actionable recommendations, and focus your efforts on areas that require attention. The {{< var vm.checker >}} uses a structured checklist to: +The {{< var validmind.checker >}} is a compliance tool that reviews documents against a selected regulatory standard. Use the {{< var vm.checker >}} to identify gaps, generate actionable recommendations, and focus your efforts on areas that require attention. The {{< var vm.checker >}} uses a structured checklist to: - Assess whether required information or evidence is clearly documented or attached -- Identify missing or weak areas in the documentation or report +- Identify missing or weak areas in the document - Offer guidance on how to improve clarity, completeness, and compliance -- Ensure consistency with regulatory expectations for risk and model governance \ No newline at end of file +- Ensure consistency with regulatory expectations for risk and governance \ No newline at end of file diff --git a/site/guide/templates/_add-assessment-questions.qmd b/site/guide/templates/_add-assessment-questions.qmd index 2e1ec44217..67ee6636a7 100644 --- a/site/guide/templates/_add-assessment-questions.qmd +++ b/site/guide/templates/_add-assessment-questions.qmd @@ -2,10 +2,8 @@ Refer to the LICENSE file in the root of this repository for details. SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial --> - -Manually add assessment questions, or generate questions from a PDF upload for Development type assessments: - :::: {.content-visible unless-format="revealjs"} +Manually add assessment questions, or generate questions from a PDF upload for Development type assessments: #### Manually add questions @@ -42,7 +40,7 @@ a. After questions are generated, review and edit them to ensure that they adher :::: {.content-hidden unless-format="revealjs"} -1. Select the assessment you want to add questions to by clicking on it. +Select the assessment you want to add questions to by clicking on it 1. Click **{{< fa plus >}} Add Question** to create a new question. diff --git a/site/guide/templates/_add-assessments.qmd b/site/guide/templates/_add-assessments.qmd index 800bdf6311..f0b08019a0 100644 --- a/site/guide/templates/_add-assessments.qmd +++ b/site/guide/templates/_add-assessments.qmd @@ -8,7 +8,7 @@ a. Click **{{< fa plus >}} Add Assessment** to create a new assessment. a. Provide the details for your assessment: - **[assessment name]{.smallcaps}** - - **[assessment type]{.smallcaps}** — Development^[Development type assessments are available for Development, Monitoring, and custom type documents.] or Validation^[Validation type assessments are only available for Validation type documents.] + - **[assessment type]{.smallcaps}** — Development^[Development type assessments are available for Development, Monitoring, and custom document types.] or Validation^[Validation type assessments are only available for Validation type document types.] - **[document type]{.smallcaps}** — Select the document types^[[Manage document types](/guide/templates/manage-document-types.qmd)] that this assessment should be available for. - (Optional) **[description]{.smallcaps}** @@ -26,7 +26,7 @@ a. Once created, add or edit the assessment questions.^[[Add or edit assessment 5. Provide the details for your assessment: - **[assessment name]{.smallcaps}** - - **[assessment type]{.smallcaps}** — Development or Validation + - **[assessment type]{.smallcaps}** — Development (Development, Monitoring, and custom document types) or Validation (Validation type documents only) - **[document type]{.smallcaps}** — Select the [document types](/guide/templates/manage-document-types.qmd){target="_blank"} that this assessment should be available for. - (Optional) **[description]{.smallcaps}** diff --git a/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd b/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd index 4137ea18b6..e5587bb64b 100644 --- a/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd +++ b/site/training/administrator-fundamentals/using-validmind-for-risk-management.qmd @@ -433,16 +433,17 @@ Add regulations & policies ::: :::: -## {background-iframe="https://app.prod.validmind.ai/settings/regulations" background-interactive="true" data-preload="yes"} +## {background-iframe="https://app.prod.validmind.ai/settings/" background-interactive="true" data-preload="yes"} -:::: {.slideover--b .three-quarters .auto-collapse-10} +:::: {.slideover--l .three-quarters .auto-collapse-10} ::: {.tc} **Add a regulation or policy** ::: -1. Click **{{< fa plus >}} Add** to create a new regulation or policy. -2. Provide a **[regulation or policy name]{.smallcaps}** and an optional **[description]{.smallcaps}**. -3. Click **Add** to create your regulation or policy. +1. Under {{< fa shield >}} Governance, select **Regulations & Policies**. +2. Click **{{< fa plus >}} Add Regulation or Policy** to create a new regulation or policy. +3. Provide a **[regulation or policy name]{.smallcaps}** and an optional **[description]{.smallcaps}**. +4. Click **Add Regulation or Policy** to create your regulation or policy. When you're done, click [{{< fa chevron-right >}}]() to continue. @@ -477,17 +478,18 @@ Add assessments ::: :::: -## {background-iframe="https://app.prod.validmind.ai/settings/regulations" background-interactive="true" data-preload="yes"} +## {background-iframe="https://app.prod.validmind.ai/settings/" background-interactive="true" data-preload="yes"} -:::: {.slideover--b .three-quarters .auto-collapse-10} +:::: {.slideover--l .three-quarters .auto-collapse-10} ::: {.tc} **Add an assessment** ::: -1. Select the regulation or policy you added in the previous step by clicking on it. -2. Click **{{< fa plus >}} Add** to create a new assessment. -3. Provide an **[assessment name]{.smallcaps}** and an optional **[description]{.smallcaps}**. -6. Click **Add** to create your assessment. +1. Under {{< fa shield >}} Governance, select **Regulations & Policies**. +2. Select the regulation or policy you added in the previous step by clicking on it. +3. Click **{{< fa plus >}} Add Assessment** to create a new assessment. +4. Provide an **[assessment name]{.smallcaps}**, then select the **[assessment type]{.smallcaps}** and **[document type]{.smallcaps}**. +5. Click **Add Assessment** to create your assessment. When you're done, click [{{< fa chevron-right >}}]() to continue. @@ -513,17 +515,19 @@ Add assessment questions ::: :::: -## {background-iframe="https://app.prod.validmind.ai/settings/regulations" background-interactive="true" data-preload="yes"} +## {background-iframe="https://app.prod.validmind.ai/settings/" background-interactive="true" data-preload="yes"} -:::: {.slideover--b .three-quarters .auto-collapse-10} +:::: {.slideover--l .three-quarters .auto-collapse-10} ::: {.tc} **Add an assessment question** ::: -1. Select the assessment you want to add questions to by clicking on it. -2. Click **{{< fa plus >}} Add Question(s)** to create a new question. -3. Enter in the **[questions]{.smallcaps}**. -4. Click **Add # Question(s)** to insert questions into the assessment. +1. Under {{< fa shield >}} Governance, select **Regulations & Policies**. +2. Select the regulation or policy you added previously by clicking on it. +3. Select the assessment you added previously by clicking on it. +4. Click **{{< fa plus >}} Add Question** to create a new question. +5. Enter in the **[questions]{.smallcaps}**. +6. Click **Add # Question(s)** to insert questions into the assessment. When you're done, click [{{< fa chevron-right >}}]() to continue. From fdd04605d289350324d17f519b75bc37adcf37be Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:30:12 -0700 Subject: [PATCH 12/33] Screenshot rename or update --- .../_check-model-documents.qmd | 72 ++++++++++++++++-- ...ntified.png => checker-gap-identified.png} | Bin ...ps.png => checker-no-significant-gaps.png} | Bin ...artial-gap.png => checker-partial-gap.png} | Bin .../model-documentation/checker-selection.png | Bin 0 -> 88011 bytes .../model-documentation/vdv-selection.png | Bin 113683 -> 0 bytes 6 files changed, 65 insertions(+), 7 deletions(-) rename site/guide/model-documentation/{vdv-gap-identified.png => checker-gap-identified.png} (100%) rename site/guide/model-documentation/{vdv-no-significant-gaps.png => checker-no-significant-gaps.png} (100%) rename site/guide/model-documentation/{vdv-partial-gap.png => checker-partial-gap.png} (100%) create mode 100644 site/guide/model-documentation/checker-selection.png delete mode 100644 site/guide/model-documentation/vdv-selection.png diff --git a/site/guide/model-documentation/_check-model-documents.qmd b/site/guide/model-documentation/_check-model-documents.qmd index 71894ba293..009b15d0f9 100644 --- a/site/guide/model-documentation/_check-model-documents.qmd +++ b/site/guide/model-documentation/_check-model-documents.qmd @@ -33,7 +33,7 @@ a. Proceed with selecting a regulation to check your document against. a. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: - ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/vdv-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} + ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/checker-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} A list of regulation-based questions appears for your review. @@ -56,11 +56,11 @@ a. Review questions that require attention. Each question includes a(n): - **Observation** — An analysis of how the document currently addresses the question - **Recommendation** — If suggested, guidance on how to revise the document to better address the question - ![Sample question that is not addressed](/guide/model-documentation/vdv-gap-identified.png){fig-alt="A screenshot showing a question and the observation 'GAP IDENTIFIED' with a recommendation" .screenshot} + ![Sample question that is not addressed](/guide/model-documentation/checker-gap-identified.png){fig-alt="A screenshot showing a question and the observation 'GAP IDENTIFIED' with a recommendation" .screenshot} - ![Sample question that is partially addressed](/guide/model-documentation/vdv-partial-gap.png){fig-alt="A screenshot showing a question and the observation 'PARTIAL GAP' with a recommendation" .screenshot} + ![Sample question that is partially addressed](/guide/model-documentation/checker-partial-gap.png){fig-alt="A screenshot showing a question and the observation 'PARTIAL GAP' with a recommendation" .screenshot} - ![Sample question that is fully addressed](/guide/model-documentation/vdv-no-significant-gaps.png){fig-alt="A screenshot showing a question and the observation 'NO SIGNIFICANT GAPS' with a recommendation" .screenshot} + ![Sample question that is fully addressed](/guide/model-documentation/checker-no-significant-gaps.png){fig-alt="A screenshot showing a question and the observation 'NO SIGNIFICANT GAPS' with a recommendation" .screenshot} Use the feedback provided by the {{< var validmind.checker >}} to review the appropriate sections of your document and decide what revisions should be made. @@ -68,7 +68,13 @@ Use the feedback provided by the {{< var validmind.checker >}} to review the app -:::: {.content-hidden unless-format="revealjs"} + + +:::: {.content-visible when-format="revealjs" when-meta="includes.developer"} 1. In the left sidebar, click **{{< fa cubes >}} Inventory**. 1. Select a model or find your model [by applying a filter or searching for it](/guide/model-inventory/working-with-model-inventory.qmd#search-filter-and-sort-models){target="_blank"}. @@ -83,7 +89,7 @@ Use the feedback provided by the {{< var validmind.checker >}} to review the app a. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: - ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/vdv-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} + ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/checker-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} A list of regulation-based questions appears for your review. @@ -110,4 +116,56 @@ Use the feedback provided by the {{< var validmind.checker >}} to review the app ::: -:::: \ No newline at end of file +:::: + + + +:::: {.content-visible when-format="revealjs" unless-meta="includes.developer"} +1. In the left sidebar, click **{{< fa cubes >}} Inventory**. + +1. Select a model or find your model [by applying a filter or searching for it](/guide/model-inventory/working-with-model-inventory.qmd#search-filter-and-sort-models){target="_blank"}. + +1. In the left sidebar that appears for your model, click **{{< fa file >}} Documents** and select **Validation**. + +1. Locate {{< fa file-circle-check >}} Check Document on the right and click to expand the menu, then click **{{< fa check >}} Check Document**. + +::: {.panel-tabset} + +#### 1. Select a regulation + +a. In the {{< var vm.checker >}} modal, select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your document against: + + ![Example **[regulation or policy]{.smallcaps}** and **[assessment]{.smallcaps}** selected to check a document against](/guide/model-documentation/checker-selection.png){fig-alt="A screenshot showing the REGULATION OR POLICY and ASSESSMENT dropdowns in the Document Checker" .screenshot} + + A list of regulation-based questions appears for your review. + +a. Scroll to the bottom and click **Check Validation Document**. + +The {{< var validmind.checker >}} analyzes your report, identifies gaps, and generates recommendations for specific questions that you review in the next step. + +#### 2. Review the observations + +a. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations: + +::: {.pl4} +[Gap Identified]{.bubble .red-b .red-bg} — A question that is not addressed and requires attention.
+[Partial Gap]{.bubble .yellow-bg} — A question that is partially addressed and requires attention.
+[No Significant Gaps]{.bubble .green-bg} — A question that is fully addressed. +::: + +b. Review questions that require attention. Each question includes: + + - **Observation** — An analysis of how the report currently addresses the question + - **Recommendation** — If suggested, guidance on how to revise the report to better address the question + +Use the feedback provided by the {{< var validmind.checker >}} to review the appropriate sections of your report and decide what revisions should be made. Or, if you have run the {{< var vm.checker >}} before and were just checking that all report issues have been addressed, submit your report for review. + +::: + +:::: + + diff --git a/site/guide/model-documentation/vdv-gap-identified.png b/site/guide/model-documentation/checker-gap-identified.png similarity index 100% rename from site/guide/model-documentation/vdv-gap-identified.png rename to site/guide/model-documentation/checker-gap-identified.png diff --git a/site/guide/model-documentation/vdv-no-significant-gaps.png b/site/guide/model-documentation/checker-no-significant-gaps.png similarity index 100% rename from site/guide/model-documentation/vdv-no-significant-gaps.png rename to site/guide/model-documentation/checker-no-significant-gaps.png diff --git a/site/guide/model-documentation/vdv-partial-gap.png b/site/guide/model-documentation/checker-partial-gap.png similarity index 100% rename from site/guide/model-documentation/vdv-partial-gap.png rename to site/guide/model-documentation/checker-partial-gap.png diff --git a/site/guide/model-documentation/checker-selection.png b/site/guide/model-documentation/checker-selection.png new file mode 100644 index 0000000000000000000000000000000000000000..54fe93fac09558223f01d03559337279754a0218 GIT binary patch literal 88011 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 J2dm#2m=@QuMjtwJZAj?1ez|3Oa9;8+~ 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 From 98977751c005dfb1a5a5b37d8698630cc298c178 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:41:41 -0700 Subject: [PATCH 13/33] =?UTF-8?q?Validation=20training=20=E2=80=94=20+=20D?= =?UTF-8?q?ocument=20Checker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_check-model-documents.qmd | 8 ++++ .../finalizing-validation-reports.qmd | 47 ++++++++++++++++++- 2 files changed, 54 insertions(+), 1 deletion(-) diff --git a/site/guide/model-documentation/_check-model-documents.qmd b/site/guide/model-documentation/_check-model-documents.qmd index 009b15d0f9..53ca2968a4 100644 --- a/site/guide/model-documentation/_check-model-documents.qmd +++ b/site/guide/model-documentation/_check-model-documents.qmd @@ -56,11 +56,19 @@ a. Review questions that require attention. Each question includes a(n): - **Observation** — An analysis of how the document currently addresses the question - **Recommendation** — If suggested, guidance on how to revise the document to better address the question +
+ + ::: {.callout-button .pl4 .nt4} + ::: {.callout collapse="true" appearance="minimal"} + ### Examples — Observations & recommendations + ![Sample question that is not addressed](/guide/model-documentation/checker-gap-identified.png){fig-alt="A screenshot showing a question and the observation 'GAP IDENTIFIED' with a recommendation" .screenshot} ![Sample question that is partially addressed](/guide/model-documentation/checker-partial-gap.png){fig-alt="A screenshot showing a question and the observation 'PARTIAL GAP' with a recommendation" .screenshot} ![Sample question that is fully addressed](/guide/model-documentation/checker-no-significant-gaps.png){fig-alt="A screenshot showing a question and the observation 'NO SIGNIFICANT GAPS' with a recommendation" .screenshot} + ::: + ::: Use the feedback provided by the {{< var validmind.checker >}} to review the appropriate sections of your document and decide what revisions should be made. diff --git a/site/training/validator-fundamentals/finalizing-validation-reports.qmd b/site/training/validator-fundamentals/finalizing-validation-reports.qmd index c03373e4d4..8aad6bdb7e 100644 --- a/site/training/validator-fundamentals/finalizing-validation-reports.qmd +++ b/site/training/validator-fundamentals/finalizing-validation-reports.qmd @@ -198,7 +198,7 @@ When you're done, click [{{< fa chevron-right >}}]() to continue. :::: {.columns} ::: {.column width="30%" .pr4 .f2} -Assess compliance +Assess model compliance ::: {.f5 .nt2 .pl2 .mb4} (Scroll down for the full instructions.) @@ -254,6 +254,51 @@ When you're done, click [{{< fa chevron-right >}}]() to continue. ::: +{{< include /training/common-slides/_document-checker.qmd >}} + +
+Learn how to **use the {{< var vm.checker >}} to review validation reports** on the next page. {{< fa hand-point-right >}} + +## {.scrollable} + +:::: {.columns} +::: {.column width="30%" .pr4 .f2} +Use the {{< var vm.checker >}} + +::: {.f5 .nt2 .pl2 .mb4} +(Scroll down for the full instructions.) +::: + + +
Try it **live** on the next page. {{< fa hand-point-right >}} +::: + +::: {.column width="70%" .bl .pl4 .f4} + +{{< include /guide/model-documentation/_check-model-documents.qmd >}} + +::: + +:::: + +## {background-iframe="https://app.prod.validmind.ai/model-inventory" background-interactive="true" data-preload="yes"} + +:::: {.slideover--b .auto-collapse-10} +::: {.tc} +**Check your validation report** +::: + +1. Select the name of your model you registered for this course to open up the model details page. +2. On the left sidebar that appears for your model, click **Validation** under {{< fa file >}} Documents. +3. Locate the {{< var vm.checker >}} box on the right and click **{{< fa check >}} Check Document**. +4. Select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your report against. +5. Scroll to the bottom and click **Check Validation Document**. +6. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations. + +When you're done, click [{{< fa chevron-right >}}]() to continue. + +:::: + # Manage artifacts {background-color="#083E44" background-image="/training/assets/home-hero.svg"} ## {.scrollable} From ce2c27f74a0ef74b510d847b238c0f7f951c1e14 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:50:11 -0700 Subject: [PATCH 14/33] Proofreading --- site/about/overview-llm-features.qmd | 5 ++--- site/faq/faq-integrations.qmd | 6 ++++-- .../finalizing-validation-reports.qmd | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/site/about/overview-llm-features.qmd b/site/about/overview-llm-features.qmd index 92c2accc9b..b1857aec24 100644 --- a/site/about/overview-llm-features.qmd +++ b/site/about/overview-llm-features.qmd @@ -83,10 +83,9 @@ Why it matters ::: ::: {.w-50-ns .pl2 .pr2} -### Document checker +### {{< var validmind.checker >}} -Reviews model development documentation to ensure it aligns with relevant regulatory requirements. -
+Reviews documents such as model documentation or validation reports to ensure documents aligns with relevant regulatory requirements.

diff --git a/site/faq/faq-integrations.qmd b/site/faq/faq-integrations.qmd index 48a9faec1c..f217833b1e 100644 --- a/site/faq/faq-integrations.qmd +++ b/site/faq/faq-integrations.qmd @@ -46,7 +46,7 @@ Support for commercial and closed-source programming languages such as SAS and M - **Test interpretation** — Interprets results from tests run within {{< var vm.product >}}. - **Qualitative checks** — Leverages metadata from the model inventory, test outcomes, and additional data provided to create qualitative sections within model documentation. - **Risk assessment** — Using data from test results, generates a tailored risk assessment for each section of model documentation. -- **Document checker** — Reviews model development documentation to ensure it aligns with relevant regulatory requirements. +- **{{< var validmind.checker >}}**[^8] — Reviews documents such as model documentation or validation reports to ensure documents aligns with relevant regulatory requirements. {{< include _faq-explainability.qmd >}} @@ -92,4 +92,6 @@ We will be implementing connector interfaces allowing extraction of relationship [^6]: [Load dataset predictions](/notebooks/how_to/data_and_datasets/dataset_inputs/load_datasets_predictions.ipynb) -[^7]: [Do you include explainability-related testing and documentation?](#explanability) \ No newline at end of file +[^7]: [Do you include explainability-related testing and documentation?](#explanability) + +[^8]: [Customize {{< var validmind.checker >}}](/guide/templates/customize-document-checker.qmd) \ No newline at end of file diff --git a/site/training/validator-fundamentals/finalizing-validation-reports.qmd b/site/training/validator-fundamentals/finalizing-validation-reports.qmd index 8aad6bdb7e..26e95d307c 100644 --- a/site/training/validator-fundamentals/finalizing-validation-reports.qmd +++ b/site/training/validator-fundamentals/finalizing-validation-reports.qmd @@ -290,7 +290,7 @@ Use the {{< var vm.checker >}} 1. Select the name of your model you registered for this course to open up the model details page. 2. On the left sidebar that appears for your model, click **Validation** under {{< fa file >}} Documents. -3. Locate the {{< var vm.checker >}} box on the right and click **{{< fa check >}} Check Document**. +3. Locate {{< fa file-circle-check >}} Check Document on the right and click to expand the menu, then click **{{< fa check >}} Check Document**. 4. Select a **[regulation]{.smallcaps}** and an associated **[assessment]{.smallcaps}** from the drop-down menus to to check your report against. 5. Scroll to the bottom and click **Check Validation Document**. 6. After the {{< var vm.checker >}} has completed its analysis, expand individual questions or click **Expand All** to look through the observations. From 85a0983d4a9eb4b5120f5efed88a435949885ab2 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:04:43 -0700 Subject: [PATCH 15/33] Fixing the cookie issue for the external previews --- site/about/overview-llm-features.qmd | 26 ++++++++++---------------- site/assets/styles/_links.scss | 2 +- site/training/assets/training.css | 2 +- 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/site/about/overview-llm-features.qmd b/site/about/overview-llm-features.qmd index b1857aec24..eacae7938e 100644 --- a/site/about/overview-llm-features.qmd +++ b/site/about/overview-llm-features.qmd @@ -6,7 +6,7 @@ title: "Large language model features" date: last-modified --- -{{< var vm.product >}} offers several specialized features that use large language models (LLMs) to streamline model risk management and ensure regulatory compliance. Here's how we approach these features and what you need to know. +{{< var vm.product >}} offers several specialized features that use large language models (LLMs) to streamline model risk management and ensure regulatory compliance. Here's how we approach these features and what you need to know. ::: {.attn} ## {{< fa list-check >}} Our philosophy @@ -104,32 +104,26 @@ Assesses each part of the model documentation for adherence to internal guidelin ## What's next - - :::: {.flex .flex-wrap .justify-around} -::: {.w-33-ns .pr3} +::: {.w-50-ns .pr3} ### A commitment to transparency -Understanding our policies shouldn’t feel like deciphering code, so we’ve made our legal texts as clear and accessible as possible: [Legal Ease](https://validmind.com/about/legal/) +Understanding our policies shouldn’t feel like deciphering code, so we’ve made our legal texts as clear and accessible as possible. + +These documents detail our [AI usage policy](https://validmind.com/about/legal/ai-usage-policy/) and more: + +[Legal Ease](https://validmind.com/about/legal/){.button} -These documents detail our [AI usage policy](https://validmind.com/about/legal/ai-usage-policy/) and more. ::: -::: {.w-33-ns .pr3} +::: {.w-50-ns .pr3} ### Try it yourself Discover how {{< var vm.product >}}’s LLM-powered platform, purpose-built for model risk management teams, enables streamlined and confident testing, documentation, validation, and governance of generative AI models and processes. -::: -::: {.w-33-ns .mt3} +[Request a Demo](https://validmind.com/contact/){.button .button-green} -::: {.preview source="https://validmind.com/contact/" height="240" width="430" offset="90"} ::: -::: - -:::: - - +:::: \ No newline at end of file diff --git a/site/assets/styles/_links.scss b/site/assets/styles/_links.scss index ee42d921aa..7be93fa34a 100644 --- a/site/assets/styles/_links.scss +++ b/site/assets/styles/_links.scss @@ -13,7 +13,7 @@ div[id^="fn"] a:hover:not(.button), #supported-model-types a:hover, #supported-modeling-libraries-and-other-tools a:hover, #submit-feedback a:hover, -#whats-next a:hover:not(.quarto-grid-link) { +#whats-next a:hover:not(.quarto-grid-link):not(.button) { text-decoration: underline 2px solid #083E44 !important; } diff --git a/site/training/assets/training.css b/site/training/assets/training.css index fd9c05cd23..2f2866c96a 100644 --- a/site/training/assets/training.css +++ b/site/training/assets/training.css @@ -13,7 +13,7 @@ div[id^="fn"] a:hover, #supported-model-types a:hover, #supported-modeling-libraries-and-other-tools a:hover, #submit-feedback a:hover, -#whats-next a:hover:not(.quarto-grid-link) { +#whats-next a:hover:not(.quarto-grid-link):not(.button) { text-decoration: underline 2px solid #083E44 !important; } From 547fad0a654fd15a8c2c3379534fbac99cbe4dea Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:05:07 -0700 Subject: [PATCH 16/33] Edit --- site/about/overview-llm-features.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/about/overview-llm-features.qmd b/site/about/overview-llm-features.qmd index eacae7938e..2dc6c1d19d 100644 --- a/site/about/overview-llm-features.qmd +++ b/site/about/overview-llm-features.qmd @@ -122,7 +122,7 @@ These documents detail our [AI usage policy](https://validmind.com/about/legal/a Discover how {{< var vm.product >}}’s LLM-powered platform, purpose-built for model risk management teams, enables streamlined and confident testing, documentation, validation, and governance of generative AI models and processes. -[Request a Demo](https://validmind.com/contact/){.button .button-green} +[Request a Demo](https://validmind.com/request-demo/){.button .button-green} ::: From 8a59563445f9c7457fd1524609ee5a116ca73a5c Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:31:05 -0700 Subject: [PATCH 17/33] Shuffling wip --- site/guide/_sidebar.yaml | 2 +- ...idmind.qmd => personalizing-validmind.qmd} | 6 +- .../set-up-your-organization.qmd | 2 +- site/guide/guides.qmd | 258 ++++++++++-------- 4 files changed, 157 insertions(+), 111 deletions(-) rename site/guide/configuration/{personalize-validmind.qmd => personalizing-validmind.qmd} (89%) diff --git a/site/guide/_sidebar.yaml b/site/guide/_sidebar.yaml index ccf6b74cbf..9ebb937d16 100644 --- a/site/guide/_sidebar.yaml +++ b/site/guide/_sidebar.yaml @@ -33,7 +33,7 @@ website: - guide/configuration/manage-roles.qmd - guide/configuration/manage-model-stakeholder-types.qmd - guide/configuration/manage-permissions.qmd - - file: guide/configuration/personalize-validmind.qmd + - file: guide/configuration/personalizing-validmind.qmd contents: - guide/configuration/manage-your-profile.qmd - guide/configuration/customize-your-dashboard.qmd diff --git a/site/guide/configuration/personalize-validmind.qmd b/site/guide/configuration/personalizing-validmind.qmd similarity index 89% rename from site/guide/configuration/personalize-validmind.qmd rename to site/guide/configuration/personalizing-validmind.qmd index cde161077e..5dd80056da 100644 --- a/site/guide/configuration/personalize-validmind.qmd +++ b/site/guide/configuration/personalizing-validmind.qmd @@ -3,8 +3,10 @@ # Refer to the LICENSE file in the root of this repository for details. # SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial # USING THE VARIABLE IN THE TITLE MESSES UP THE BREADCRUMB -title: "Personalize ValidMind" +title: "Personalizing ValidMind" date: last-modified +aliases: + - /guide/personalize-validmind.html listing: - id: personalize-validmind type: grid @@ -20,4 +22,4 @@ listing: Configure the look and functionality of your instance of the {{< var validmind.platform>}}. Changes are automatically saved to your account and do not affect other users. :::{personalize-validmind} -::: \ No newline at end of file +::: diff --git a/site/guide/configuration/set-up-your-organization.qmd b/site/guide/configuration/set-up-your-organization.qmd index d8a19a6194..caa15232e5 100644 --- a/site/guide/configuration/set-up-your-organization.qmd +++ b/site/guide/configuration/set-up-your-organization.qmd @@ -101,7 +101,7 @@ b. If you are sure you want to remove the use case, click **{{< fa trash-can >}} ## What's next - [Managing users](managing-users.qmd) -- [Personalize {{< var vm.product >}}](personalize-validmind.qmd) +- [Personalizing {{< var vm.product >}}](personalizing-validmind.qmd) - [Manage validation guidelines](/guide/model-validation/manage-validation-guidelines.qmd) diff --git a/site/guide/guides.qmd b/site/guide/guides.qmd index 23f5d7493a..beead51ca7 100644 --- a/site/guide/guides.qmd +++ b/site/guide/guides.qmd @@ -7,14 +7,14 @@ date: last-modified aliases: - solutions.html listing: - - id: guides-login + - id: access type: grid max-description-length: 250 sort: false fields: [title, description] contents: - access/accessing-validmind.qmd - - id: guides-configuration + - id: configuration type: grid max-description-length: 250 sort: false @@ -22,111 +22,128 @@ listing: contents: - configuration/managing-your-organization.qmd - configuration/managing-users.qmd - - integrations/managing-integrations.qmd - - id: guides-customize - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - configuration/personalize-validmind.qmd + - configuration/personalizing-validmind.qmd - configuration/manage-platform-notifications.qmd - - id: guides-workflows - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - workflows/setting-up-workflows.qmd - - workflows/working-with-workflows.qmd - - id: guides-model-inventory - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - model-inventory/working-with-model-inventory.qmd - - model-inventory/managing-model-inventory.qmd - - model-inventory/view-model-activity.qmd - - id: guides-model-documentation - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - model-documentation/working-with-model-documentation.qmd - - id: guides-templates - type: grid - max-description-length: 250 - sort: false - contents: - - templates/working-with-model-documents.qmd - - templates/working-with-document-templates.qmd - - templates/manage-text-block-library.qmd - fields: [title, description] - - id: guides-docs-templates - type: grid - max-description-length: 250 - sort: false - contents: - - templates/working-with-document-templates.qmd - - templates/manage-text-block-library.qmd - fields: [title, description] - - id: guides-developer - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - ../developer/validmind-library.qmd - - ../developer/samples-jupyter-notebooks.qmd - - id: guides-validator - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - model-validation/managing-model-validation.qmd - - templates/working-with-document-templates.qmd - - templates/manage-text-block-library.qmd - - id: guides-model-validation - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - contents: - - model-validation/preparing-validation-reports.qmd - - model-validation/working-with-artifacts.qmd - - id: guides-reports - contents: - - reporting/working-with-analytics.qmd - - reporting/generating-exports.qmd - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - - id: guides-monitoring-templates - type: grid - max-description-length: 250 - sort: false - contents: - - templates/working-with-document-templates.qmd - - templates/manage-text-block-library.qmd - fields: [title, description] - - id: guides-monitoring - contents: - - monitoring/ongoing-monitoring.qmd - type: grid - max-description-length: 250 - sort: false - fields: [title, description] - - id: guides-attestation - contents: - - attestation/working-with-attestations.qmd - type: grid - max-description-length: 250 - sort: false - fields: [title, description] + # - id: guides-login + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - access/accessing-validmind.qmd + # - id: guides-configuration + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - configuration/managing-your-organization.qmd + # - configuration/managing-users.qmd + # - integrations/managing-integrations.qmd + # - id: guides-customize + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - configuration/personalizing-validmind.qmd + # - configuration/manage-platform-notifications.qmd + # - id: guides-workflows + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - workflows/setting-up-workflows.qmd + # - workflows/working-with-workflows.qmd + # - id: guides-model-inventory + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - model-inventory/working-with-model-inventory.qmd + # - model-inventory/managing-model-inventory.qmd + # - model-inventory/view-model-activity.qmd + # - id: guides-model-documentation + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - model-documentation/working-with-model-documentation.qmd + # - id: guides-templates + # type: grid + # max-description-length: 250 + # sort: false + # contents: + # - templates/working-with-model-documents.qmd + # - templates/working-with-document-templates.qmd + # - templates/manage-text-block-library.qmd + # fields: [title, description] + # - id: guides-docs-templates + # type: grid + # max-description-length: 250 + # sort: false + # contents: + # - templates/working-with-document-templates.qmd + # - templates/manage-text-block-library.qmd + # fields: [title, description] + # - id: guides-developer + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - ../developer/validmind-library.qmd + # - ../developer/samples-jupyter-notebooks.qmd + # - id: guides-validator + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - model-validation/managing-model-validation.qmd + # - templates/working-with-document-templates.qmd + # - templates/manage-text-block-library.qmd + # - id: guides-model-validation + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # contents: + # - model-validation/preparing-validation-reports.qmd + # - model-validation/working-with-artifacts.qmd + # - id: guides-reports + # contents: + # - reporting/working-with-analytics.qmd + # - reporting/generating-exports.qmd + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # - id: guides-monitoring-templates + # type: grid + # max-description-length: 250 + # sort: false + # contents: + # - templates/working-with-document-templates.qmd + # - templates/manage-text-block-library.qmd + # fields: [title, description] + # - id: guides-monitoring + # contents: + # - monitoring/ongoing-monitoring.qmd + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] + # - id: guides-attestation + # contents: + # - attestation/working-with-attestations.qmd + # type: grid + # max-description-length: 250 + # sort: false + # fields: [title, description] --- Our guides offer step-by-step instructions for frequent tasks you perform within the {{< var validmind.platform >}}, organized by category. @@ -140,6 +157,33 @@ Our guides offer step-by-step instructions for frequent tasks you perform within ## Access +:::{#access} +::: + +## Configuration + +## Integrations + +## Workflows + +## Configuration + +## Model inventory + +## Documents & templates + +## Model documentation + +## Model validation + +## Reporting + +## Monitoring + +## Attestation + + From 6a6e5d5607f235e5c0076c283f64f788ff405044 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:39:27 -0700 Subject: [PATCH 18/33] guides landing reshuffle --- site/guide/guides.qmd | 293 +++++++++++++----------------------------- 1 file changed, 92 insertions(+), 201 deletions(-) diff --git a/site/guide/guides.qmd b/site/guide/guides.qmd index beead51ca7..98cd37a21d 100644 --- a/site/guide/guides.qmd +++ b/site/guide/guides.qmd @@ -4,6 +4,8 @@ # SPDX-License-Identifier: AGPL-3.0 AND ValidMind Commercial title: "Guides" date: last-modified +page-layout: full +sidebar: false aliases: - solutions.html listing: @@ -16,6 +18,7 @@ listing: - access/accessing-validmind.qmd - id: configuration type: grid + grid-columns: 4 max-description-length: 250 sort: false fields: [title, description] @@ -24,126 +27,80 @@ listing: - configuration/managing-users.qmd - configuration/personalizing-validmind.qmd - configuration/manage-platform-notifications.qmd - # - id: guides-login - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - access/accessing-validmind.qmd - # - id: guides-configuration - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - configuration/managing-your-organization.qmd - # - configuration/managing-users.qmd - # - integrations/managing-integrations.qmd - # - id: guides-customize - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - configuration/personalizing-validmind.qmd - # - configuration/manage-platform-notifications.qmd - # - id: guides-workflows - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - workflows/setting-up-workflows.qmd - # - workflows/working-with-workflows.qmd - # - id: guides-model-inventory - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - model-inventory/working-with-model-inventory.qmd - # - model-inventory/managing-model-inventory.qmd - # - model-inventory/view-model-activity.qmd - # - id: guides-model-documentation - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - model-documentation/working-with-model-documentation.qmd - # - id: guides-templates - # type: grid - # max-description-length: 250 - # sort: false - # contents: - # - templates/working-with-model-documents.qmd - # - templates/working-with-document-templates.qmd - # - templates/manage-text-block-library.qmd - # fields: [title, description] - # - id: guides-docs-templates - # type: grid - # max-description-length: 250 - # sort: false - # contents: - # - templates/working-with-document-templates.qmd - # - templates/manage-text-block-library.qmd - # fields: [title, description] - # - id: guides-developer - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - ../developer/validmind-library.qmd - # - ../developer/samples-jupyter-notebooks.qmd - # - id: guides-validator - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - model-validation/managing-model-validation.qmd - # - templates/working-with-document-templates.qmd - # - templates/manage-text-block-library.qmd - # - id: guides-model-validation - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # contents: - # - model-validation/preparing-validation-reports.qmd - # - model-validation/working-with-artifacts.qmd - # - id: guides-reports - # contents: - # - reporting/working-with-analytics.qmd - # - reporting/generating-exports.qmd - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # - id: guides-monitoring-templates - # type: grid - # max-description-length: 250 - # sort: false - # contents: - # - templates/working-with-document-templates.qmd - # - templates/manage-text-block-library.qmd - # fields: [title, description] - # - id: guides-monitoring - # contents: - # - monitoring/ongoing-monitoring.qmd - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] - # - id: guides-attestation - # contents: - # - attestation/working-with-attestations.qmd - # type: grid - # max-description-length: 250 - # sort: false - # fields: [title, description] + - id: integrations + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - integrations/managing-integrations.qmd + - id: workflows + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - workflows/introduction-to-workflows.qmd + - workflows/setting-up-workflows.qmd + - workflows/working-with-workflows.qmd + - id: model-inventory + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - model-inventory/working-with-model-inventory.qmd + - model-inventory/managing-model-inventory.qmd + - model-inventory/view-model-activity.qmd + - id: documents-templates + type: grid + grid-columns: 4 + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - templates/working-with-model-documents.qmd + - templates/working-with-document-templates.qmd + - templates/manage-text-block-library.qmd + - templates/customize-document-checker.qmd + - id: model-documentation + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - model-documentation/working-with-model-documentation.qmd + - id: model-validation + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - model-validation/managing-model-validation.qmd + - model-validation/preparing-validation-reports.qmd + - model-validation/working-with-artifacts.qmd + - id: reporting + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - reporting/working-with-analytics.qmd + - reporting/generating-exports.qmd + - id: monitoring + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - monitoring/ongoing-monitoring.qmd + - id: attestation + type: grid + max-description-length: 250 + sort: false + fields: [title, description] + contents: + - attestation/working-with-attestations.qmd --- Our guides offer step-by-step instructions for frequent tasks you perform within the {{< var validmind.platform >}}, organized by category. @@ -162,116 +119,50 @@ Our guides offer step-by-step instructions for frequent tasks you perform within ## Configuration -## Integrations - -## Workflows - -## Configuration - -## Model inventory - -## Documents & templates - -## Model documentation - -## Model validation - -## Reporting - -## Monitoring - -## Attestation - - +:::{#attestation} +::: \ No newline at end of file From 6b7997986729a7666e876474dd7e2af95b716115 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:47:20 -0700 Subject: [PATCH 19/33] Save point --- site/guide/guides.qmd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/site/guide/guides.qmd b/site/guide/guides.qmd index 98cd37a21d..1ed6fa4b69 100644 --- a/site/guide/guides.qmd +++ b/site/guide/guides.qmd @@ -5,7 +5,7 @@ title: "Guides" date: last-modified page-layout: full -sidebar: false +# sidebar: false aliases: - solutions.html listing: @@ -18,7 +18,7 @@ listing: - access/accessing-validmind.qmd - id: configuration type: grid - grid-columns: 4 + grid-columns: 2 max-description-length: 250 sort: false fields: [title, description] @@ -54,7 +54,7 @@ listing: - model-inventory/view-model-activity.qmd - id: documents-templates type: grid - grid-columns: 4 + grid-columns: 2 max-description-length: 250 sort: false fields: [title, description] From 8fc742c2b8b71251b627315876636f7703cb56a1 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:52:44 -0700 Subject: [PATCH 20/33] Testing... --- .../validbeck/sidebar-slim/README.md | 48 +++++++ .../validbeck/sidebar-slim/_extension.yml | 7 + .../validbeck/sidebar-slim/sidebar-slim.css | 97 ++++++++++++++ .../validbeck/sidebar-slim/sidebar-slim.js | 122 ++++++++++++++++++ .../validbeck/sidebar-slim/sidebar-slim.lua | 32 +++++ site/_quarto.yml | 1 + site/guide/guides.qmd | 2 +- 7 files changed, 308 insertions(+), 1 deletion(-) create mode 100644 site/_extensions/validbeck/sidebar-slim/README.md create mode 100644 site/_extensions/validbeck/sidebar-slim/_extension.yml create mode 100644 site/_extensions/validbeck/sidebar-slim/sidebar-slim.css create mode 100644 site/_extensions/validbeck/sidebar-slim/sidebar-slim.js create mode 100644 site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua diff --git a/site/_extensions/validbeck/sidebar-slim/README.md b/site/_extensions/validbeck/sidebar-slim/README.md new file mode 100644 index 0000000000..fe8ffca0e6 --- /dev/null +++ b/site/_extensions/validbeck/sidebar-slim/README.md @@ -0,0 +1,48 @@ +# Sidebar slim + +Optional **site sidebar** control: on large viewports, readers can collapse the Quarto **docked** sidebar to a narrow vertical strip and expand it again. State is kept for the browser tab (`sessionStorage`). + +## Enable for a section (directory) + +**1. Register the filter once** in the project `format` section (e.g. `site/_quarto.yml`): + +```yaml +filters: + - tachyons + - preview + - validbeck/sidebar-slim +``` + +**2. Opt in** with directory metadata, e.g. `some/section/_metadata.yml`: + +```yaml +sidebar-slim: true +``` + +Any `.qmd` under that directory inherits this unless overridden in the file. + +## Per-page override + +In a single document’s YAML: + +```yaml +sidebar-slim: false +``` + +## Alternative: filter only in a directory + +If you do not want a global filter entry, add both lines under the same `_metadata.yml`: + +```yaml +filters: + - validbeck/sidebar-slim +sidebar-slim: true +``` + +(Confirm how your Quarto version merges `filters` lists with the project; you may need to repeat other project filters.) + +## Notes + +- Only runs for **HTML** (`html:js`) output when `sidebar-slim` is truthy. +- Toolbar appears at **≥992px** width; below that, Quarto’s own responsive sidebar behavior applies and this extension removes its UI. +- Does not replace Quarto’s built-in **reader mode** (`website: reader-mode`); you can use either or both. diff --git a/site/_extensions/validbeck/sidebar-slim/_extension.yml b/site/_extensions/validbeck/sidebar-slim/_extension.yml new file mode 100644 index 0000000000..7349613c42 --- /dev/null +++ b/site/_extensions/validbeck/sidebar-slim/_extension.yml @@ -0,0 +1,7 @@ +title: Sidebar slim toggle +author: validbeck +version: 1.0.0 +quarto-required: ">=1.4.0" +contributes: + filters: + - sidebar-slim.lua diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css new file mode 100644 index 0000000000..31bec9a89d --- /dev/null +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css @@ -0,0 +1,97 @@ +/* + Collapsible site sidebar: narrows to a slim vertical strip (desktop). + Activated when sidebar-slim metadata is true (see sidebar-slim.lua). +*/ + +@media (min-width: 992px) { + .quarto-sidebar-slim-toolbar { + display: flex; + align-items: center; + justify-content: flex-end; + gap: 0.25rem; + padding: 0.35rem 0.4rem 0.45rem; + border-bottom: 1px solid rgba(0, 0, 0, 0.08); + flex-shrink: 0; + } + + body.quarto-sidebar-slim-enabled #quarto-sidebar.sidebar { + display: flex; + flex-direction: column; + transition: + width 0.22s ease, + min-width 0.22s ease, + max-width 0.22s ease, + flex 0.22s ease; + } + + body.quarto-sidebar-slim-enabled #quarto-sidebar .quarto-sidebar-slim-toolbar { + order: -1; + } + + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed #quarto-sidebar.sidebar { + width: 2.75rem !important; + min-width: 2.75rem !important; + max-width: 2.75rem !important; + flex: 0 0 2.75rem !important; + overflow: hidden; + } + + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed + #quarto-sidebar + .sidebar-header:not(.quarto-sidebar-slim-toolbar), + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed + #quarto-sidebar + .sidebar-search, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed + #quarto-sidebar + .sidebar-navigation, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed #quarto-sidebar .sidebar-tools { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border: 0; + } + + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed .quarto-sidebar-slim-toolbar { + justify-content: center; + border-bottom: none; + padding-left: 0; + padding-right: 0; + } + + .quarto-sidebar-slim-toggle { + display: inline-flex; + align-items: center; + justify-content: center; + margin: 0; + padding: 0.2rem; + border: none; + border-radius: 0.25rem; + background: transparent; + color: inherit; + cursor: pointer; + font: inherit; + line-height: 1; + } + + .quarto-sidebar-slim-toggle:hover { + background: rgba(0, 0, 0, 0.06); + } + + .quarto-sidebar-slim-toggle:focus-visible { + outline: 2px solid #196972; + outline-offset: 2px; + } + + .quarto-sidebar-slim-icon { + display: block; + font-size: 1.15rem; + font-weight: 600; + user-select: none; + } +} diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js new file mode 100644 index 0000000000..ff3761c581 --- /dev/null +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js @@ -0,0 +1,122 @@ +(function () { + "use strict"; + + var STORAGE_KEY = "validbeck:quarto:sidebar-slim-collapsed"; + var MQ = "(min-width: 992px)"; + + function readCollapsed() { + try { + return window.sessionStorage.getItem(STORAGE_KEY) === "1"; + } catch (_e) { + return false; + } + } + + function writeCollapsed(collapsed) { + try { + if (collapsed) { + window.sessionStorage.setItem(STORAGE_KEY, "1"); + } else { + window.sessionStorage.removeItem(STORAGE_KEY); + } + } catch (_e) { + /* ignore */ + } + } + + function applyCollapsed(body, collapsed) { + if (collapsed) { + body.classList.add("quarto-sidebar-slim-collapsed"); + } else { + body.classList.remove("quarto-sidebar-slim-collapsed"); + } + } + + function setIcon(btn, collapsed) { + var span = btn.querySelector(".quarto-sidebar-slim-icon"); + if (!span) return; + span.textContent = collapsed ? "\u00bb" : "\u00ab"; + btn.setAttribute( + "aria-label", + collapsed ? "Expand site sidebar" : "Collapse site sidebar" + ); + btn.setAttribute("title", collapsed ? "Expand sidebar" : "Collapse sidebar"); + } + + function init() { + var mq = window.matchMedia(MQ); + var sidebar = document.getElementById("quarto-sidebar"); + if (!sidebar || !sidebar.classList.contains("sidebar")) { + return; + } + + function teardown() { + document.body.classList.remove( + "quarto-sidebar-slim-enabled", + "quarto-sidebar-slim-collapsed" + ); + var existing = sidebar.querySelector(".quarto-sidebar-slim-toolbar"); + if (existing) { + existing.remove(); + } + } + + function setupDesktop() { + teardown(); + document.body.classList.add("quarto-sidebar-slim-enabled"); + var collapsed = readCollapsed(); + applyCollapsed(document.body, collapsed); + + var toolbar = document.createElement("div"); + toolbar.className = + "sidebar-header quarto-sidebar-slim-toolbar"; + toolbar.setAttribute("role", "group"); + + var btn = document.createElement("button"); + btn.type = "button"; + btn.className = "quarto-sidebar-slim-toggle"; + btn.setAttribute("type", "button"); + + var icon = document.createElement("span"); + icon.className = "quarto-sidebar-slim-icon"; + icon.setAttribute("aria-hidden", "true"); + btn.appendChild(icon); + + setIcon(btn, collapsed); + + btn.addEventListener("click", function () { + var next = !document.body.classList.contains( + "quarto-sidebar-slim-collapsed" + ); + applyCollapsed(document.body, next); + setIcon(btn, next); + writeCollapsed(next); + }); + + toolbar.appendChild(btn); + sidebar.insertBefore(toolbar, sidebar.firstChild); + } + + function onMqChange() { + if (mq.matches) { + setupDesktop(); + } else { + teardown(); + } + } + + if (mq.addEventListener) { + mq.addEventListener("change", onMqChange); + } else { + mq.addListener(onMqChange); + } + + onMqChange(); + } + + if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", init); + } else { + init(); + } +})(); diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua new file mode 100644 index 0000000000..7ef23b5c9c --- /dev/null +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua @@ -0,0 +1,32 @@ +-- Enables optional sidebar minimize/expand UI when `sidebar-slim: true` +-- is set in document or directory metadata. + +local function sidebar_slim_enabled(meta) + local v = meta.sidebar_slim or meta["sidebar-slim"] + if v == nil then + return false + end + if type(v) == "boolean" then + return v + end + local s = pandoc.utils.stringify(v):lower() + return s == "true" or s == "1" or s == "yes" +end + +function Pandoc(doc) + if not sidebar_slim_enabled(doc.meta) then + return doc + end + if not quarto.doc.is_format("html:js") then + return doc + end + + quarto.doc.add_html_dependency({ + name = "validbeck-sidebar-slim", + version = "1.0.0", + stylesheets = { "sidebar-slim.css" }, + scripts = { "sidebar-slim.js" }, + }) + + return doc +end diff --git a/site/_quarto.yml b/site/_quarto.yml index b2482ebcbd..8ece692611 100644 --- a/site/_quarto.yml +++ b/site/_quarto.yml @@ -276,3 +276,4 @@ format: filters: - tachyons - preview + - validbeck/sidebar-slim diff --git a/site/guide/guides.qmd b/site/guide/guides.qmd index 1ed6fa4b69..9b20dd7432 100644 --- a/site/guide/guides.qmd +++ b/site/guide/guides.qmd @@ -5,7 +5,7 @@ title: "Guides" date: last-modified page-layout: full -# sidebar: false +sidebar-slim: true aliases: - solutions.html listing: From 6124258b47533dc1969d8d7680fdba20ae8f4ab8 Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 14:56:52 -0700 Subject: [PATCH 21/33] More testing --- .../validbeck/sidebar-slim/README.md | 1 + .../validbeck/sidebar-slim/sidebar-slim.css | 52 +++++++++++++++++-- 2 files changed, 49 insertions(+), 4 deletions(-) diff --git a/site/_extensions/validbeck/sidebar-slim/README.md b/site/_extensions/validbeck/sidebar-slim/README.md index fe8ffca0e6..abddee0692 100644 --- a/site/_extensions/validbeck/sidebar-slim/README.md +++ b/site/_extensions/validbeck/sidebar-slim/README.md @@ -45,4 +45,5 @@ sidebar-slim: true - Only runs for **HTML** (`html:js`) output when `sidebar-slim` is truthy. - Toolbar appears at **≥992px** width; below that, Quarto’s own responsive sidebar behavior applies and this extension removes its UI. +- When collapsed, **main content is widened** by adjusting Quarto’s **CSS grid** placement (docked and floating layouts at the `lg` breakpoint): the sidebar span is shortened and `.content` / `.page-navigation` / `.column-body` start at `page-start-inset` so they use the space the full sidebar used. If a Quarto theme changes grid line names, these rules may need updating. - Does not replace Quarto’s built-in **reader mode** (`website: reader-mode`); you can use either or both. diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css index 31bec9a89d..7adc16065c 100644 --- a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css @@ -28,14 +28,58 @@ order: -1; } - body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed #quarto-sidebar.sidebar { - width: 2.75rem !important; - min-width: 2.75rem !important; + /* + Quarto docked/floating sidebars use CSS grid: the sidebar spans several named + tracks (e.g. screen-start / body-start). Shrinking width alone leaves those + tracks allocated, so main content does not grow. When collapsed, we (1) give + the sidebar a shorter span and (2) start main content at the same line where + the slim sidebar ends, so the article column absorbs the freed width. + Line names match Quarto’s docked-wide / float-wide templates (≥ lg). + */ + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.docked + #quarto-sidebar.sidebar { + grid-column: screen-start / page-start-inset; + width: 100% !important; max-width: 2.75rem !important; - flex: 0 0 2.75rem !important; + min-width: 0 !important; + justify-self: start; overflow: hidden; } + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.floating + #quarto-sidebar.sidebar { + grid-column: page-start / page-start-inset; + width: 100% !important; + max-width: 2.75rem !important; + min-width: 0 !important; + justify-self: start; + overflow: hidden; + } + + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.docked + #quarto-content.page-columns + .content, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.docked + #quarto-content.page-columns + .page-navigation, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.docked + #quarto-content.page-columns + .column-body { + grid-column: page-start-inset / body-content-end; + } + + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.floating + #quarto-content.page-columns + .content, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.floating + #quarto-content.page-columns + .page-navigation, + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed.floating + #quarto-content.page-columns + .column-body { + grid-column: page-start-inset / body-content-end; + } + body.quarto-sidebar-slim-enabled.quarto-sidebar-slim-collapsed #quarto-sidebar .sidebar-header:not(.quarto-sidebar-slim-toolbar), From 263b946eac8d509387392972a8b6c05c4314a04a Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 15:00:41 -0700 Subject: [PATCH 22/33] more --- .../validbeck/sidebar-slim/README.md | 9 +++++ .../validbeck/sidebar-slim/_extension.yml | 2 +- .../validbeck/sidebar-slim/sidebar-slim.js | 35 ++++++++++++++----- .../validbeck/sidebar-slim/sidebar-slim.lua | 23 +++++++++++- site/guide/guides.qmd | 1 + 5 files changed, 59 insertions(+), 11 deletions(-) diff --git a/site/_extensions/validbeck/sidebar-slim/README.md b/site/_extensions/validbeck/sidebar-slim/README.md index abddee0692..e6f21d821a 100644 --- a/site/_extensions/validbeck/sidebar-slim/README.md +++ b/site/_extensions/validbeck/sidebar-slim/README.md @@ -21,6 +21,15 @@ sidebar-slim: true Any `.qmd` under that directory inherits this unless overridden in the file. +### Default to collapsed (narrow) sidebar + +Use **`sidebar-narrow: true`** so the first visit in a tab starts **collapsed** (until the user toggles). Preference is stored in `sessionStorage` (`1` = collapsed, `0` = expanded). + +```yaml +sidebar-slim: true +sidebar-narrow: true +``` + ## Per-page override In a single document’s YAML: diff --git a/site/_extensions/validbeck/sidebar-slim/_extension.yml b/site/_extensions/validbeck/sidebar-slim/_extension.yml index 7349613c42..3e3854c784 100644 --- a/site/_extensions/validbeck/sidebar-slim/_extension.yml +++ b/site/_extensions/validbeck/sidebar-slim/_extension.yml @@ -1,6 +1,6 @@ title: Sidebar slim toggle author: validbeck -version: 1.0.0 +version: 1.0.1 quarto-required: ">=1.4.0" contributes: filters: diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js index ff3761c581..c6e8476d08 100644 --- a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.js @@ -4,21 +4,37 @@ var STORAGE_KEY = "validbeck:quarto:sidebar-slim-collapsed"; var MQ = "(min-width: 992px)"; - function readCollapsed() { + function getConfig() { + var el = document.getElementById("validbeck-sidebar-slim-config"); + if (!el) { + return { sidebarNarrow: false }; + } + try { + var cfg = JSON.parse(el.textContent || "{}"); + return { sidebarNarrow: !!cfg.sidebarNarrow }; + } catch (_e) { + return { sidebarNarrow: false }; + } + } + + /** + * "1" = collapsed, "0" = expanded (explicit user choice). + * Missing key = use default from sidebar-narrow metadata. + */ + function readCollapsed(cfg) { try { - return window.sessionStorage.getItem(STORAGE_KEY) === "1"; + var v = window.sessionStorage.getItem(STORAGE_KEY); + if (v === "1") return true; + if (v === "0") return false; + return !!cfg.sidebarNarrow; } catch (_e) { - return false; + return !!cfg.sidebarNarrow; } } function writeCollapsed(collapsed) { try { - if (collapsed) { - window.sessionStorage.setItem(STORAGE_KEY, "1"); - } else { - window.sessionStorage.removeItem(STORAGE_KEY); - } + window.sessionStorage.setItem(STORAGE_KEY, collapsed ? "1" : "0"); } catch (_e) { /* ignore */ } @@ -64,7 +80,8 @@ function setupDesktop() { teardown(); document.body.classList.add("quarto-sidebar-slim-enabled"); - var collapsed = readCollapsed(); + var cfg = getConfig(); + var collapsed = readCollapsed(cfg); applyCollapsed(document.body, collapsed); var toolbar = document.createElement("div"); diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua index 7ef23b5c9c..9c5cf542d0 100644 --- a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.lua @@ -13,6 +13,18 @@ local function sidebar_slim_enabled(meta) return s == "true" or s == "1" or s == "yes" end +local function truthy_meta(meta, key_hyphen, key_underscore) + local v = meta[key_underscore] or meta[key_hyphen] + if v == nil then + return false + end + if type(v) == "boolean" then + return v + end + local s = pandoc.utils.stringify(v):lower() + return s == "true" or s == "1" or s == "yes" +end + function Pandoc(doc) if not sidebar_slim_enabled(doc.meta) then return doc @@ -21,9 +33,18 @@ function Pandoc(doc) return doc end + local narrow_default = truthy_meta(doc.meta, "sidebar-narrow", "sidebar_narrow") + local cfg = { sidebarNarrow = narrow_default } + quarto.doc.include_text( + "in-header", + '" + ) + quarto.doc.add_html_dependency({ name = "validbeck-sidebar-slim", - version = "1.0.0", + version = "1.0.1", stylesheets = { "sidebar-slim.css" }, scripts = { "sidebar-slim.js" }, }) diff --git a/site/guide/guides.qmd b/site/guide/guides.qmd index 9b20dd7432..bd8afc6591 100644 --- a/site/guide/guides.qmd +++ b/site/guide/guides.qmd @@ -6,6 +6,7 @@ title: "Guides" date: last-modified page-layout: full sidebar-slim: true +sidebar-narrow: true aliases: - solutions.html listing: From 2c552f9d2ffc5073ffa1dadc2133899df745ab1e Mon Sep 17 00:00:00 2001 From: Beck <164545837+validbeck@users.noreply.github.com> Date: Wed, 15 Apr 2026 15:41:40 -0700 Subject: [PATCH 23/33] Save point --- .../validbeck/sidebar-slim/_extension.yml | 2 +- .../validbeck/sidebar-slim/sidebar-slim.css | 27 ++++++------------- .../validbeck/sidebar-slim/sidebar-slim.lua | 2 +- site/guide/_metadata.yml | 6 ++++- 4 files changed, 15 insertions(+), 22 deletions(-) diff --git a/site/_extensions/validbeck/sidebar-slim/_extension.yml b/site/_extensions/validbeck/sidebar-slim/_extension.yml index 3e3854c784..b3f3677f58 100644 --- a/site/_extensions/validbeck/sidebar-slim/_extension.yml +++ b/site/_extensions/validbeck/sidebar-slim/_extension.yml @@ -1,6 +1,6 @@ title: Sidebar slim toggle author: validbeck -version: 1.0.1 +version: 1.0.2 quarto-required: ">=1.4.0" contributes: filters: diff --git a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css index 7adc16065c..bf2c098947 100644 --- a/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css +++ b/site/_extensions/validbeck/sidebar-slim/sidebar-slim.css @@ -80,25 +80,14 @@ grid-column: page-start-inset / body-content-end; } + /* + #quarto-sidebar is