{
  "schemaVersion": 1,
  "rubricVersion": "1.1",
  "kind": "pair",
  "slug": "glean-vs-librechat",
  "canonicalUrl": "https://onaihq.com/compare/agents/glean-vs-librechat/",
  "markdownUrl": "https://onaihq.com/compare/agents/glean-vs-librechat/index.md",
  "dataUrl": "https://onaihq.com/compare/agents/glean-vs-librechat/data.json",
  "generatedAt": "2026-10-27",
  "lastCheckedAt": "2026-10-26",
  "lastCrossCheckedAt": "2026-10-26",
  "nextCheckAt": "2026-12-20",
  "publisher": {
    "name": "onAI",
    "url": "https://onaihq.com",
    "marketParticipant": true,
    "editorialControl": "onAI selects the products, rubric, sources and wording, including for comparisons that do not include onAI.",
    "disclosure": "Published by onAI. onAI also sells one of the products compared here. Findings about other products link to public sources so you can check them; statements about onAI are marked as stated by onAI."
  },
  "products": [
    {
      "id": "glean",
      "name": "Glean",
      "website": "https://www.glean.com",
      "repository": null,
      "pageUrl": "https://onaihq.com/compare/agents/products/glean/",
      "lifecycle": {
        "status": "unknown",
        "note": null
      },
      "surfaces": [
        {
          "id": "hosted",
          "name": "Glean Hosted web Assistant and Agents",
          "type": "web-app"
        },
        {
          "id": "customer-cloud",
          "name": "Customer Hosted managed GCP or AWS tenant",
          "type": "managed-server"
        },
        {
          "id": "desktop",
          "name": "Glean for Desktop Windows and macOS",
          "type": "desktop-app"
        },
        {
          "id": "mobile",
          "name": "Glean iOS and Android",
          "type": "mobile-app"
        },
        {
          "id": "extension",
          "name": "Glean browser extension and companion",
          "type": "browser-extension"
        },
        {
          "id": "teams",
          "name": "Glean in Microsoft Teams",
          "type": "teams-app"
        },
        {
          "id": "api",
          "name": "Glean APIs and remote MCP server",
          "type": "api"
        }
      ],
      "sourcedClaimCount": 50,
      "statedByVendorCount": 0,
      "crossCheckedClaimCount": 50,
      "sourcedOnlyClaimCount": 0,
      "oldestCheckedAt": "2026-10-21",
      "lastCheckedAt": "2026-10-26"
    },
    {
      "id": "librechat",
      "name": "LibreChat",
      "website": "https://www.librechat.ai",
      "repository": "https://github.com/LibreChat-AI/LibreChat",
      "pageUrl": "https://onaihq.com/compare/agents/products/librechat/",
      "lifecycle": {
        "status": "unknown",
        "note": null
      },
      "surfaces": [
        {
          "id": "self-hosted-web",
          "name": "Customer-operated web application and server",
          "type": "self-hosted-server"
        },
        {
          "id": "public-demo",
          "name": "LibreChat public evaluation demo",
          "type": "hosted-demo"
        },
        {
          "id": "admin-panel-preview",
          "name": "Separately deployed LibreChat Admin Panel preview",
          "type": "administration"
        }
      ],
      "sourcedClaimCount": 47,
      "statedByVendorCount": 0,
      "crossCheckedClaimCount": 47,
      "sourcedOnlyClaimCount": 0,
      "oldestCheckedAt": "2026-10-21",
      "lastCheckedAt": "2026-10-26"
    }
  ],
  "coverage": {
    "totalCriteria": 51,
    "sharedCrossCheckedCriteria": 46,
    "sharedSourcedCriteria": 46,
    "crossCheckedCriteriaByProduct": {
      "glean": 50,
      "librechat": 47
    },
    "sourcedOnlyCriteriaByProduct": {
      "glean": 0,
      "librechat": 0
    },
    "sourcedCriteriaByProduct": {
      "glean": 50,
      "librechat": 47
    },
    "crossCheckedCriterionRows": 51,
    "sourcedOnlyCriterionRows": 0,
    "sourcedCriterionRows": 51,
    "statedByVendorRows": 0
  },
  "criteria": [
    {
      "id": "MOD-01",
      "title": "Model catalogue and providers",
      "group": {
        "id": 1,
        "name": "Models"
      },
      "judgment": "List each available model by provider and plan, including reasoning, fast and multimodal variants. Record whether the user picks the model, the product routes automatically, or both. A provider counts only if at least one of its current models is selectable on the scoped plan.",
      "questions": [
        {
          "id": "providers",
          "question": "Which model providers are available?"
        },
        {
          "id": "current_models",
          "question": "Which current models are selectable on this plan?"
        },
        {
          "id": "user_choice",
          "question": "Can users pick the model per chat?"
        },
        {
          "id": "auto_routing",
          "question": "Does the product route between models automatically, and is the chosen model shown?"
        },
        {
          "id": "multimodal_input",
          "question": "Which models accept images, audio or files?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:MOD-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Model Hub documents multi-provider choice and Auto routing. New department Auto policies require opt-in rollout as of October 21, with GA scheduled October 29.",
          "availability": "unknown",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "As of 2026-10-21: established model catalog plus opt-in new Auto-policy rollout; no tenant observed",
            "plan": "Core Suite + Model Hub Usage with Universal Model Key or Customer Key; new department policies only on Glean-key deployments with rollout enabled. Enterprise Flex billing is separate.",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "providers",
              "question": "Which model providers are available?",
              "support": "supported",
              "answer": "Model Hub lists OpenAI, Anthropic, Google, Amazon, Glean and open models through Baseten/Fireworks. Availability is conditional on enabled model and route.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "current_models",
              "question": "Which current models are selectable on this plan?",
              "support": "partial",
              "answer": "Representative listed models include GPT-6.1 Sol, GPT-6 Astra/Sol/Luna, Claude Sonnet 5.5, Opus 5.5, Gemini 3.8 Flash, Waldo and GLM 5.3. Actual tenant-enabled selections were not observed.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "user_choice",
              "question": "Can users pick the model per chat?",
              "support": "supported",
              "answer": "With Glean Universal Model Key users can select a specific enabled model or Auto. Customer Key uses configured defaults and has separate availability constraints.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "auto_routing",
              "question": "Does the product route between models automatically, and is the chosen model shown?",
              "support": "partial",
              "answer": "Universal Model Key Auto routes among enabled models. The new department policies require Feature rollouts opt-in from October 15 as of this October 21 check; GA is scheduled October 29. Customer Key Auto uses admin defaults. Per-request selected-model visibility was not established.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r3-october-rollout-migration"
              ]
            },
            {
              "id": "multimodal_input",
              "question": "Which models accept images, audio or files?",
              "support": "partial",
              "answer": "Uploads, image generation and real-time voice are documented; supported input types vary by model and the key-feature matrix. A complete per-model input matrix was not verified.",
              "evidenceIds": [
                "glean:glean:uploads",
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "This criterion combines established model choice with an opt-in policy rollout; no blanket current GA status is asserted for the new policies. Enabled tenant models and per-request routing were not observed."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:models",
            "glean:glean:r2-core-entitlements",
            "glean:glean:key-matrix",
            "glean:glean:r3-october-rollout-migration",
            "glean:glean:uploads"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:MOD-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The model catalog is configured by the customer across first-party provider integrations and custom endpoints.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "providers",
              "question": "Which model providers are available?",
              "support": "partial",
              "answer": "Documented routes include OpenAI, Anthropic, Google, Azure OpenAI, AWS Bedrock and custom compatible services; selection requires enabled credentials and model access.",
              "evidenceIds": [
                "librechat:librechat:custom",
                "librechat:librechat:azure",
                "librechat:librechat:bedrock",
                "librechat:librechat:vertex"
              ]
            },
            {
              "id": "current_models",
              "question": "Which current models are selectable on this plan?",
              "support": "partial",
              "answer": "v0.8.8 release notes mention GPT-6/GPT-6.1 Sol, Claude Opus/Sonnet 5.5 and Gemini 3.8 Flash support. Actual selectable IDs still depend on the installed configuration and provider account.",
              "evidenceIds": [
                "librechat:librechat:releases"
              ]
            },
            {
              "id": "user_choice",
              "question": "Can users pick the model per chat?",
              "support": "supported",
              "answer": "Users choose an endpoint/model unless admins enforce model specs or a fixed Agent.",
              "evidenceIds": [
                "librechat:librechat:modelspec",
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "auto_routing",
              "question": "Does the product route between models automatically, and is the chosen model shown?",
              "support": "unknown",
              "answer": "auto_routing: Does the product route between models automatically, and is the chosen model shown? No automatic routing policy showing a chosen model was established, and no configured endpoint was exercised.",
              "evidenceIds": []
            },
            {
              "id": "multimodal_input",
              "question": "Which models accept images, audio or files?",
              "support": "partial",
              "answer": "Provider-native files support images/PDFs and some providers accept additional Office/audio/video types. Exact acceptance depends on the selected model and transport; no matrix was tested.",
              "evidenceIds": [
                "librechat:librechat:ocr"
              ]
            }
          ],
          "limitations": [
            "providers: Documented routes include OpenAI, Anthropic, Google, Azure OpenAI, AWS Bedrock and custom compatible services; selection requires enabled credentials and model access.",
            "current_models: v0.8.8 release notes mention GPT-6/GPT-6.1 Sol, Claude Opus/Sonnet 5.5 and Gemini 3.8 Flash support. Actual selectable IDs still depend on the installed configuration and provider account.",
            "auto_routing: Does the product route between models automatically, and is the chosen model shown? No automatic routing policy showing a chosen model was established, and no configured endpoint was exercised.",
            "multimodal_input: Provider-native files support images/PDFs and some providers accept additional Office/audio/video types. Exact acceptance depends on the selected model and transport; no matrix was tested."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:custom",
            "librechat:librechat:azure",
            "librechat:librechat:bedrock",
            "librechat:librechat:vertex",
            "librechat:librechat:releases",
            "librechat:librechat:modelspec",
            "librechat:librechat:agents",
            "librechat:librechat:ocr"
          ]
        }
      ]
    },
    {
      "id": "MOD-02",
      "title": "Model freshness",
      "group": {
        "id": 1,
        "name": "Models"
      },
      "judgment": "Measure the days from a provider's general release to availability in the product for the last three major releases from OpenAI, Anthropic and Google (and Mistral where offered). Use dated changelogs or observation. Record deprecation notice for retired models.",
      "questions": [
        {
          "id": "release_lag_days",
          "question": "What was the lag for each of the last three major releases, per provider?"
        },
        {
          "id": "changelog",
          "question": "Is there a dated public model changelog?"
        },
        {
          "id": "deprecation_notice",
          "question": "How much notice is given before a model is removed?"
        },
        {
          "id": "version_pinning",
          "question": "Can an admin keep an older model version?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:MOD-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Dated release notes and model deprecation guidance are public; comparable release-lag measurements remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex Model Hub; Customer Key deprecation policy distinguished from Universal Model Key",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "release_lag_days",
              "question": "What was the lag for each of the last three major releases, per provider?",
              "support": "unknown",
              "answer": "What was the lag for each of the last three major releases, per provider? The release notes were checked, but provider general-release dates and scoped product-availability dates were not paired for the last three releases per provider.",
              "evidenceIds": []
            },
            {
              "id": "changelog",
              "question": "Is there a dated public model changelog?",
              "support": "supported",
              "answer": "Public dated release notes include October 15, 2026 and model announcements.",
              "evidenceIds": [
                "glean:glean:release",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "deprecation_notice",
              "question": "How much notice is given before a model is removed?",
              "support": "partial",
              "answer": "For Customer Key Assistant, email notices are described at 60 and 15 days. The page also describes automatic migration for deprecated configurations; application to each removal needs confirmation.",
              "evidenceIds": [
                "glean:glean:deprecation",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "version_pinning",
              "question": "Can an admin keep an older model version?",
              "support": "partial",
              "answer": "Customer Key admins manage upgrades but deprecated models stop being usable. No indefinite version-pinning entitlement is established.",
              "evidenceIds": [
                "glean:glean:deprecation",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:release",
            "glean:glean:r2-core-entitlements",
            "glean:glean:deprecation"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:MOD-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Dated releases document model updates, but measured availability lags and retirement notice periods remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "release_lag_days",
              "question": "What was the lag for each of the last three major releases, per provider?",
              "support": "unknown",
              "answer": "release_lag_days: What was the lag for each of the last three major releases, per provider? No paired general-release/LibreChat-availability dates for the last three major releases per provider, or binding retirement-notice period, were established.",
              "evidenceIds": []
            },
            {
              "id": "changelog",
              "question": "Is there a dated public model changelog?",
              "support": "supported",
              "answer": "Public releases and the LibreChat changelog date model updates; v0.8.8 was published 2026-10-01.",
              "evidenceIds": [
                "librechat:librechat:releases"
              ]
            },
            {
              "id": "deprecation_notice",
              "question": "How much notice is given before a model is removed?",
              "support": "unknown",
              "answer": "deprecation_notice: How much notice is given before a model is removed? No paired general-release/LibreChat-availability dates for the last three major releases per provider, or binding retirement-notice period, were established.",
              "evidenceIds": []
            },
            {
              "id": "version_pinning",
              "question": "Can an admin keep an older model version?",
              "support": "partial",
              "answer": "Admins can name explicit model IDs in endpoints/model specs; continuing remote availability remains under provider control.",
              "evidenceIds": [
                "librechat:librechat:modelspec",
                "librechat:librechat:custom"
              ]
            }
          ],
          "limitations": [
            "release_lag_days: What was the lag for each of the last three major releases, per provider? No paired general-release/LibreChat-availability dates for the last three major releases per provider, or binding retirement-notice period, were established.",
            "deprecation_notice: How much notice is given before a model is removed? No paired general-release/LibreChat-availability dates for the last three major releases per provider, or binding retirement-notice period, were established.",
            "version_pinning: Admins can name explicit model IDs in endpoints/model specs; continuing remote availability remains under provider control."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:releases",
            "librechat:librechat:modelspec",
            "librechat:librechat:custom"
          ]
        }
      ]
    },
    {
      "id": "MOD-03",
      "title": "Bring-your-own keys and provider contracts",
      "group": {
        "id": 1,
        "name": "Models"
      },
      "judgment": "Record customer-held API keys, customer cloud accounts (Azure OpenAI, Bedrock, Vertex), and aggregator routes (OpenRouter, LiteLLM) as separate routes. Record what still works without a vendor-provided model, whether prices change with BYO, and documented restrictions. API-key support does not imply support for the customer's own Azure contract.",
      "questions": [
        {
          "id": "own_api_keys",
          "question": "Can the customer use its own provider API keys?"
        },
        {
          "id": "own_cloud_contract",
          "question": "Can it use its own Azure OpenAI, Bedrock or Vertex deployment?"
        },
        {
          "id": "custom_endpoint",
          "question": "Can an admin add any OpenAI-compatible endpoint?"
        },
        {
          "id": "byo_pricing",
          "question": "Does BYO change the licence price?"
        },
        {
          "id": "byo_restrictions",
          "question": "Which features stop working with BYO?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:MOD-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Customer Key supports named provider accounts; it has documented feature and cloud restrictions.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Customer Key + Glean-family Model Hub Usage; Enterprise Flex Customer Key/private-cloud discounts are separately contractual",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "own_api_keys",
              "question": "Can the customer use its own provider API keys?",
              "support": "supported",
              "answer": "Customer Key supports customer provider credentials including OpenAI and direct Anthropic keys.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "own_cloud_contract",
              "question": "Can it use its own Azure OpenAI, Bedrock or Vertex deployment?",
              "support": "partial",
              "answer": "Customer Key supports Azure OpenAI and named provider credentials. The supported-LLMs matrix permits Vertex only on GCP and Bedrock only on AWS; Configure LLMs separately says customer AWS can use Vertex, while its Vertex setup heading says GCP-only. AWS/Vertex eligibility is therefore unknown; no cross-cloud promise is made.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:key-matrix",
                "glean:glean:r2-auto-policy-and-cloud-conflict",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "custom_endpoint",
              "question": "Can an admin add any OpenAI-compatible endpoint?",
              "support": "unknown",
              "answer": "Can an admin add any OpenAI-compatible endpoint? The supported-provider configuration and key matrix were checked; arbitrary OpenAI-compatible customer endpoints are not established.",
              "evidenceIds": []
            },
            {
              "id": "byo_pricing",
              "question": "Does BYO change the licence price?",
              "support": "partial",
              "answer": "Core Suite Customer Key limits Glean Model Hub charges to Glean-family usage; customer provider use is paid directly. Enterprise Flex says seats/credits are discounted for own-key/private-cloud customers but publishes no numeric adjustment.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "byo_restrictions",
              "question": "Which features stop working with BYO?",
              "support": "supported",
              "answer": "The key matrix marks Meeting Notes and podcast artifacts unsupported on Customer Key. Text defaults share one provider; image models may differ. Memory depends on deployment readiness.",
              "evidenceIds": [
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:models",
            "glean:glean:r2-core-entitlements",
            "glean:glean:key-matrix",
            "glean:glean:r2-auto-policy-and-cloud-conflict",
            "glean:glean:r2-flex-entitlements"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:MOD-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Customer-held provider keys, customer Azure/AWS/Vertex configurations and custom endpoints are documented.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "own_api_keys",
              "question": "Can the customer use its own provider API keys?",
              "support": "supported",
              "answer": "Provider keys can be operator-supplied or user_provided, with user key controls in Settings.",
              "evidenceIds": [
                "librechat:librechat:firstchat",
                "librechat:librechat:custom"
              ]
            },
            {
              "id": "own_cloud_contract",
              "question": "Can it use its own Azure OpenAI, Bedrock or Vertex deployment?",
              "support": "supported",
              "answer": "Customer Azure OpenAI deployments, AWS Bedrock region/credentials and Anthropic Vertex project/region routes are documented separately.",
              "evidenceIds": [
                "librechat:librechat:azure",
                "librechat:librechat:bedrock",
                "librechat:librechat:vertex"
              ]
            },
            {
              "id": "custom_endpoint",
              "question": "Can an admin add any OpenAI-compatible endpoint?",
              "support": "supported",
              "answer": "Operators can configure a custom compatible API URL and model list.",
              "evidenceIds": [
                "librechat:librechat:custom"
              ]
            },
            {
              "id": "byo_pricing",
              "question": "Does BYO change the licence price?",
              "support": "supported",
              "answer": "MIT repository use has no per-seat licence fee; customers separately procure provider service usage.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "byo_restrictions",
              "question": "Which features stop working with BYO?",
              "support": "partial",
              "answer": "File modalities, tools and other capabilities depend on provider/model support and optional services. A universal BYO feature-parity guarantee was not established.",
              "evidenceIds": [
                "librechat:librechat:ocr",
                "librechat:librechat:code"
              ]
            }
          ],
          "limitations": [
            "byo_restrictions: File modalities, tools and other capabilities depend on provider/model support and optional services. A universal BYO feature-parity guarantee was not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:firstchat",
            "librechat:librechat:custom",
            "librechat:librechat:azure",
            "librechat:librechat:bedrock",
            "librechat:librechat:vertex",
            "librechat:librechat:license",
            "librechat:librechat:ocr",
            "librechat:librechat:code"
          ]
        }
      ]
    },
    {
      "id": "MOD-04",
      "title": "Local and self-hosted models",
      "group": {
        "id": 1,
        "name": "Models"
      },
      "judgment": "Record support for models running in the customer's environment (vLLM, Ollama, TGI or similar) and which features work with them: chat, RAG, tools, embeddings. Distinguish a documented, supported route from a generic endpoint that happens to work.",
      "questions": [
        {
          "id": "self_hosted_chat",
          "question": "Can chat use a customer-hosted model?"
        },
        {
          "id": "self_hosted_embeddings",
          "question": "Can retrieval use customer-hosted embeddings?"
        },
        {
          "id": "feature_parity",
          "question": "Which features fail with self-hosted models?"
        },
        {
          "id": "vendor_hosted_open_models",
          "question": "Does the vendor host open-weight models in EU/CH?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:MOD-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The documented Universal Model Key open models run in the US. Supported customer-operated chat and embedding routes remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public open-model guide retrieved 2026-10-26; no deployment observed",
            "plan": "Universal Model Key open-model route; current guide does not name a Core Suite/Flex entitlement for customer-operated models",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "self_hosted_chat",
              "question": "Can chat use a customer-hosted model?",
              "support": "unknown",
              "answer": "Can chat use a customer-hosted model? The public Model Hub, Customer Key matrix and deployment guides describe named hosted-provider routes. They do not establish supported vLLM/Ollama/TGI chat, customer embeddings, parity or vendor-hosted open-model inference in a named EU/CH region. Creator-region model toggles do not prove inference location.",
              "evidenceIds": []
            },
            {
              "id": "self_hosted_embeddings",
              "question": "Can retrieval use customer-hosted embeddings?",
              "support": "unknown",
              "answer": "Can retrieval use customer-hosted embeddings? The public Model Hub, Customer Key matrix and deployment guides describe named hosted-provider routes. They do not establish supported vLLM/Ollama/TGI chat, customer embeddings, parity or vendor-hosted open-model inference in a named EU/CH region. Creator-region model toggles do not prove inference location.",
              "evidenceIds": []
            },
            {
              "id": "feature_parity",
              "question": "Which features fail with self-hosted models?",
              "support": "unknown",
              "answer": "Which features fail with self-hosted models? The public Model Hub, Customer Key matrix and deployment guides describe named hosted-provider routes. They do not establish supported vLLM/Ollama/TGI chat, customer embeddings, parity or vendor-hosted open-model inference in a named EU/CH region. Creator-region model toggles do not prove inference location.",
              "evidenceIds": []
            },
            {
              "id": "vendor_hosted_open_models",
              "question": "Does the vendor host open-weight models in EU/CH?",
              "support": "unsupported",
              "answer": "For Universal Model Key open models described in the region-control guide, inference is hosted in the US regardless of creator country. That documented route does not provide EU/CH-hosted open-model inference; other private contracts are unverified.",
              "evidenceIds": [
                "glean:glean:r4-open-model-inference"
              ]
            }
          ],
          "limitations": [
            "The US inference finding is limited to the Universal Model Key open models described by the source. No absence of every conceivable private deployment is inferred."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "glean:glean:r4-open-model-inference"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:MOD-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Local compatible inference and Ollama embeddings are documented; optional services must also be local for a fully private stack.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "self_hosted_chat",
              "question": "Can chat use a customer-hosted model?",
              "support": "supported",
              "answer": "Custom endpoints can point at customer-hosted compatible model servers, including Ollama-compatible setups.",
              "evidenceIds": [
                "librechat:librechat:custom"
              ]
            },
            {
              "id": "self_hosted_embeddings",
              "question": "Can retrieval use customer-hosted embeddings?",
              "support": "supported",
              "answer": "The RAG configuration documents Ollama embeddings and local Hugging Face through the appropriate full image.",
              "evidenceIds": [
                "librechat:librechat:ragcfg"
              ]
            },
            {
              "id": "feature_parity",
              "question": "Which features fail with self-hosted models?",
              "support": "partial",
              "answer": "Chat and retrieval can use local endpoints. Tool calling and vision depend on the model; external OCR/search/code services are separate. No complete offline fixture was run.",
              "evidenceIds": [
                "librechat:librechat:ragcfg",
                "librechat:librechat:ocr",
                "librechat:librechat:code"
              ]
            },
            {
              "id": "vendor_hosted_open_models",
              "question": "Does the vendor host open-weight models in EU/CH?",
              "support": "unknown",
              "answer": "vendor_hosted_open_models: Does the vendor host open-weight models in EU/CH? A vendor-hosted EU/Swiss open-weight model service was not established for the MIT self-hosted project.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "feature_parity: Chat and retrieval can use local endpoints. Tool calling and vision depend on the model; external OCR/search/code services are separate. No complete offline fixture was run.",
            "vendor_hosted_open_models: Does the vendor host open-weight models in EU/CH? A vendor-hosted EU/Swiss open-weight model service was not established for the MIT self-hosted project."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:custom",
            "librechat:librechat:ragcfg",
            "librechat:librechat:ocr",
            "librechat:librechat:code"
          ]
        }
      ]
    },
    {
      "id": "MOD-05",
      "title": "Model control and usage limits",
      "group": {
        "id": 1,
        "name": "Models"
      },
      "judgment": "Record admin allow-lists per group, default models, restrictions on which models may see which data, and per-user rate or fair-use limits. Test one restriction with two users in different groups. Record limits as enforced stops, warnings or undocumented fair use.",
      "questions": [
        {
          "id": "model_allowlist_by_group",
          "question": "Can admins limit models per group?"
        },
        {
          "id": "data_bound_models",
          "question": "Can admins restrict which models receive connector or knowledge content?"
        },
        {
          "id": "default_model",
          "question": "Can admins set the default model?"
        },
        {
          "id": "user_limits",
          "question": "What per-user message or token limits apply, and are they published?"
        },
        {
          "id": "limit_behaviour",
          "question": "What happens when a limit is reached?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:MOD-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Model restrictions and blocking usage limits are documented; new department Auto policies remain an opt-in rollout on October 21.",
          "availability": "unknown",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "As of 2026-10-21: existing controls plus opt-in Auto policies; policy GA scheduled 2026-10-29",
            "plan": "Core Suite/Enterprise Flex model governance and usage limits; new Auto policies require Glean-key deployment and Feature rollouts opt-in. Legacy Enterprise exclusions preserved.",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "model_allowlist_by_group",
              "question": "Can admins limit models per group?",
              "support": "supported",
              "answer": "Eligible models can be allowed by department or synced IdP group. Default models cannot carry these restrictions; membership refresh is not immediate.",
              "evidenceIds": [
                "glean:glean:model-controls",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "data_bound_models",
              "question": "Can admins restrict which models receive connector or knowledge content?",
              "support": "partial",
              "answer": "Admins can exclude connectors, folders/sites or individual documents from all LLM responses. This is an all-LLM content boundary; per-model data classification rules were not established.",
              "evidenceIds": [
                "glean:glean:restrictions",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "default_model",
              "question": "Can admins set the default model?",
              "support": "partial",
              "answer": "Customer Key admins set defaults. Universal Model Key admins manage available models; the new department Auto policies require rollout opt-in on October 21, with GA scheduled October 29. They are not a verified generally available policy entitlement on the check date.",
              "evidenceIds": [
                "glean:glean:model-config",
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements",
                "glean:glean:r3-october-rollout-migration"
              ]
            },
            {
              "id": "user_limits",
              "question": "What per-user message or token limits apply, and are they published?",
              "support": "supported",
              "answer": "Core Suite and Enterprise Flex support configurable monthly per-user defaults and overrides. Limits reset each calendar month; legacy Enterprise lacks user/agent limits.",
              "evidenceIds": [
                "glean:glean:limits",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "limit_behaviour",
              "question": "What happens when a limit is reached?",
              "support": "supported",
              "answer": "Admins select alert-only or block. An in-flight run finishes, then subsequent billable use is blocked until reset; slight overage can occur.",
              "evidenceIds": [
                "glean:glean:limits",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            }
          ],
          "limitations": [
            "Existing controls and the new policy rollout have different availability. No two-user enforcement test was run; hiding premium models alone does not prevent Auto from using them."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:model-controls",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:restrictions",
            "glean:glean:model-config",
            "glean:glean:key-matrix",
            "glean:glean:r3-october-rollout-migration",
            "glean:glean:limits"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:MOD-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Model specs and scoped configuration can limit choices; optional user credit reservations provide a blocking mechanism.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "model_allowlist_by_group",
              "question": "Can admins limit models per group?",
              "support": "partial",
              "answer": "Enforced model specs and role/group configuration overrides can restrict available endpoints/models. The separate management UI is preview; a two-group fixture was not run.",
              "evidenceIds": [
                "librechat:librechat:modelspec",
                "librechat:librechat:admin",
                "librechat:librechat:access"
              ]
            },
            {
              "id": "data_bound_models",
              "question": "Can admins restrict which models receive connector or knowledge content?",
              "support": "unknown",
              "answer": "data_bound_models: Can admins restrict which models receive connector or knowledge content? A hard binding between each enterprise content source and a permitted model provider was not established in the Agent and access-control guides.",
              "evidenceIds": []
            },
            {
              "id": "default_model",
              "question": "Can admins set the default model?",
              "support": "supported",
              "answer": "Model-spec presets can define default endpoint/model configurations.",
              "evidenceIds": [
                "librechat:librechat:modelspec"
              ]
            },
            {
              "id": "user_limits",
              "question": "What per-user message or token limits apply, and are they published?",
              "support": "partial",
              "answer": "Balance tracking, initial credits/refills and message moderation limits are operator-configurable, rather than a universal vendor allowance.",
              "evidenceIds": [
                "librechat:librechat:balance",
                "librechat:librechat:mod"
              ]
            },
            {
              "id": "limit_behaviour",
              "question": "What happens when a limit is reached?",
              "support": "supported",
              "answer": "Pinned checkBalance reserves credits and throws a TOKEN_BALANCE error when insufficient. This establishes a blocking code path, not an observed end-to-end quota test.",
              "evidenceIds": [
                "librechat:librechat:balance-pin"
              ]
            }
          ],
          "limitations": [
            "model_allowlist_by_group: Enforced model specs and role/group configuration overrides can restrict available endpoints/models. The separate management UI is preview; a two-group fixture was not run.",
            "data_bound_models: Can admins restrict which models receive connector or knowledge content? A hard binding between each enterprise content source and a permitted model provider was not established in the Agent and access-control guides.",
            "user_limits: Balance tracking, initial credits/refills and message moderation limits are operator-configurable, rather than a universal vendor allowance."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:modelspec",
            "librechat:librechat:admin",
            "librechat:librechat:access",
            "librechat:librechat:balance",
            "librechat:librechat:mod",
            "librechat:librechat:balance-pin"
          ]
        }
      ]
    },
    {
      "id": "KNOW-01",
      "title": "Files in chat",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Record supported formats, size and count limits, scanned-PDF OCR, tables and spreadsheets, images inside documents, and whether a file is read in full or retrieved in chunks. Upload the shared fixture set (long German PDF, scanned contract, Excel with formulas, PowerPoint) and record failures.",
      "questions": [
        {
          "id": "formats",
          "question": "Which formats are accepted?"
        },
        {
          "id": "limits",
          "question": "What size and count limits apply per file and chat?"
        },
        {
          "id": "ocr",
          "question": "Are scanned PDFs read?"
        },
        {
          "id": "spreadsheets",
          "question": "Are Excel tables read with structure intact?"
        },
        {
          "id": "full_vs_chunked",
          "question": "Is the whole file used or only retrieved parts, and does the user see which?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Chat uploads support common office formats with explicit size limits and OCR prerequisites.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Assistant + Model Hub Usage; Enterprise Flex doc uploads follow its named Assistant mode allowances",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "formats",
              "question": "Which formats are accepted?",
              "support": "supported",
              "answer": "Documented formats include PDF, DOC/DOCX, XLS/XLSX/XLSM, PPT/PPTX, text and image files; audio/video uploads are excluded.",
              "evidenceIds": [
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "limits",
              "question": "What size and count limits apply per file and chat?",
              "support": "supported",
              "answer": "128K models allow 5 files at 64 MB each; 32K models 4 at 32 MB; 8K models 2 at 16 MB. Minimum file size is 1 KB.",
              "evidenceIds": [
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "ocr",
              "question": "Are scanned PDFs read?",
              "support": "supported",
              "answer": "Scanned PDFs require OCR enabled by an administrator or support.",
              "evidenceIds": [
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "spreadsheets",
              "question": "Are Excel tables read with structure intact?",
              "support": "partial",
              "answer": "Data Analysis handles uploaded spreadsheets, but merged cells, hierarchical tables, charts and complex structures have limited support. Fixture formula and structure fidelity was not tested.",
              "evidenceIds": [
                "glean:glean:analysis",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "full_vs_chunked",
              "question": "Is the whole file used or only retrieved parts, and does the user see which?",
              "support": "partial",
              "answer": "Uploaded analysis files expose full raw content within size limits; referenced indexed spreadsheets may be truncated. Archives are inspected on demand in Thinking mode. Complete visibility into selected chunks was not verified.",
              "evidenceIds": [
                "glean:glean:analysis",
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Shared long-PDF, scan, spreadsheet and presentation fixture was not run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:uploads",
            "glean:glean:r2-core-entitlements",
            "glean:glean:analysis"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Files can be indexed, injected as extracted text or sent directly to compatible model providers.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "New spreadsheet finding at development source a378657583567310c841d652b0f6b00c83e2bd6b; earlier accepted facts retain their cited release pins",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "formats",
              "question": "Which formats are accepted?",
              "support": "supported",
              "answer": "Documents include PDF/text/Office formats through configured extraction; provider-native acceptance varies, including Bedrock Office formats and Google audio/video.",
              "evidenceIds": [
                "librechat:librechat:ocr",
                "librechat:librechat:filecfg"
              ]
            },
            {
              "id": "limits",
              "question": "What size and count limits apply per file and chat?",
              "support": "partial",
              "answer": "File counts, sizes and MIME patterns are operator/endpoint settings; provider limits may be stricter. The shared fixture was not uploaded.",
              "evidenceIds": [
                "librechat:librechat:filecfg",
                "librechat:librechat:ocr"
              ]
            },
            {
              "id": "ocr",
              "question": "Are scanned PDFs read?",
              "support": "supported",
              "answer": "Optional Mistral OCR, Azure/Vertex Mistral OCR and provider-native file processing are documented.",
              "evidenceIds": [
                "librechat:librechat:ocr"
              ]
            },
            {
              "id": "spreadsheets",
              "question": "Are Excel tables read with structure intact?",
              "support": "partial",
              "answer": "The inspected built-in XLSX/XLS/ODS parser emits each sheet name and CSV values. The current guide lists a 15 MB built-in parser limit. Workbook formatting, formula recalculation and shared-fixture accuracy were not established.",
              "evidenceIds": [
                "librechat:librechat:r4-spreadsheet-parser",
                "librechat:librechat:r4-text-current"
              ]
            },
            {
              "id": "full_vs_chunked",
              "question": "Is the whole file used or only retrieved parts, and does the user see which?",
              "support": "supported",
              "answer": "RAG retrieves indexed chunks; Upload as Text and Agent File Context inject extracted full text, subject to context limits.",
              "evidenceIds": [
                "librechat:librechat:rag",
                "librechat:librechat:text",
                "librechat:librechat:ocr"
              ]
            }
          ],
          "limitations": [
            "File counts, sizes and provider acceptance depend on deployment settings.",
            "Spreadsheet parsing yields named sheets and CSV values; layout/formula fidelity and the shared fixture remain untested."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "librechat:librechat:ocr",
            "librechat:librechat:filecfg",
            "librechat:librechat:rag",
            "librechat:librechat:text",
            "librechat:librechat:r4-spreadsheet-parser",
            "librechat:librechat:r4-text-current"
          ]
        }
      ]
    },
    {
      "id": "KNOW-02",
      "title": "Knowledge bases and shared collections",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Record curated document collections that persist across chats, who can create and share them, size limits, and how they attach to assistants. Distinguish personal, group and organisation-wide scope.",
      "questions": [
        {
          "id": "persistent_collections",
          "question": "Can users keep document collections across chats?"
        },
        {
          "id": "sharing_scope",
          "question": "Can collections be shared with users, groups or the whole organisation?"
        },
        {
          "id": "size_limits",
          "question": "What are the collection limits?"
        },
        {
          "id": "assistant_binding",
          "question": "Can collections be bound to an assistant?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Core Suite includes Library Collections; the replacement Projects rollout and plan entitlement remain qualified.",
          "availability": "unknown",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Library Collections included; current Projects rollout/entitlement not separately established",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "persistent_collections",
              "question": "Can users keep document collections across chats?",
              "support": "partial",
              "answer": "Core Suite includes persistent Library Collections. Projects documentation describes a replacement containing chats/documents/files/artifacts, but current Core Suite/Enterprise Flex Projects entitlement and migration rollout were not verified.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:projects"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can collections be shared with users, groups or the whole organisation?",
              "support": "unknown",
              "answer": "The Projects guide describes private-by-default and people/group sharing, but current Projects rollout/entitlement under Core Suite or Enterprise Flex is not separately established. No current plan-scoped project-sharing guarantee is made.",
              "evidenceIds": []
            },
            {
              "id": "size_limits",
              "question": "What are the collection limits?",
              "support": "unknown",
              "answer": "What are the collection limits? The Projects guide and agent builder were checked, but a current project size cap and direct knowledge-binding contract are not specified.",
              "evidenceIds": []
            },
            {
              "id": "assistant_binding",
              "question": "Can collections be bound to an assistant?",
              "support": "unknown",
              "answer": "Projects and Agent Builder were checked; direct binding of a persistent Project or Collection to an assistant was not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Projects are rolling out gradually and may not be enabled for a given deployment. Chat and artifact sharing is separate from project membership.",
            "Projects is documented as a gradual replacement for Collections, but its current Core Suite/Enterprise Flex entitlement and rollout were not verified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:r2-core-entitlements",
            "glean:glean:projects"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Agents and personal Projects keep files across chats; shared Agent access is distinct from personal Project ownership.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "persistent_collections",
              "question": "Can users keep document collections across chats?",
              "support": "supported",
              "answer": "Agent File Search/File Context and Project reference files persist for later chats.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:projects"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can collections be shared with users, groups or the whole organisation?",
              "support": "partial",
              "answer": "Agents can share files/knowledge with permitted users/groups/roles; Projects themselves are personal and cannot be shared or transferred.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:agents",
                "librechat:librechat:projects"
              ]
            },
            {
              "id": "size_limits",
              "question": "What are the collection limits?",
              "support": "unknown",
              "answer": "size_limits: What are the collection limits? No universal collection storage/size allowance was established; limits are deployment and file-configuration dependent.",
              "evidenceIds": []
            },
            {
              "id": "assistant_binding",
              "question": "Can collections be bound to an assistant?",
              "support": "supported",
              "answer": "Agent File Search and File Context bind retrieved or extracted knowledge to an Agent.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:ocr"
              ]
            }
          ],
          "limitations": [
            "sharing_scope: Agents can share files/knowledge with permitted users/groups/roles; Projects themselves are personal and cannot be shared or transferred.",
            "size_limits: What are the collection limits? No universal collection storage/size allowance was established; limits are deployment and file-configuration dependent."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:projects",
            "librechat:librechat:access",
            "librechat:librechat:ocr"
          ]
        }
      ]
    },
    {
      "id": "KNOW-03",
      "title": "Enterprise connectors",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "List each connector separately with plan, availability and setup owner: SharePoint, OneDrive, Outlook, Teams, Google Drive, Gmail, Confluence, Jira, Notion, Box, Salesforce, ServiceNow, file shares. Record whether the vendor or a third party (or the customer via MCP) provides it, and whether it needs admin consent. A connector listed on a roadmap or partner page is `announced`. An on-prem connector or gateway proves access to local data, not a self-hosted platform (DATA-02).",
      "questions": [
        {
          "id": "microsoft_365",
          "question": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected?"
        },
        {
          "id": "google_workspace",
          "question": "Which Google sources are connected?"
        },
        {
          "id": "atlassian",
          "question": "Confluence and Jira?"
        },
        {
          "id": "other_systems",
          "question": "Which other business systems?"
        },
        {
          "id": "on_prem_sources",
          "question": "Can on-prem file shares or databases be connected?"
        },
        {
          "id": "connector_provider",
          "question": "Who builds and maintains each connector?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean documents M365, Google and Atlassian connectors, with indexed and live patterns depending on source.",
          "availability": "generally-available",
          "delivery": "official-integration",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite native connectors included; individual connector setup/consent still required; Enterprise Flex platform connections use applicable feature allowances",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "microsoft_365",
              "question": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected?",
              "support": "supported",
              "answer": "SharePoint and OneDrive support indexing and live retrieval. Outlook and Teams are listed separately; Teams includes channels and opt-in private/meeting chats. M365 indexing requires application permissions and admin consent.",
              "evidenceIds": [
                "glean:glean:sharepoint",
                "glean:glean:onedrive",
                "glean:glean:outlook",
                "glean:glean:teams-connector",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "google_workspace",
              "question": "Which Google sources are connected?",
              "support": "supported",
              "answer": "Google Drive and Gmail have official indexing documentation; Drive setup uses directory delegation. Plan-specific connector entitlements remain contractual.",
              "evidenceIds": [
                "glean:glean:drive",
                "glean:glean:gmail",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "atlassian",
              "question": "Confluence and Jira?",
              "support": "partial",
              "answer": "The official catalog lists Confluence and Jira, including Cloud and Data Center documentation. Tenant setup and per-plan limits were not tested.",
              "evidenceIds": [
                "glean:glean:connectors",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "other_systems",
              "question": "Which other business systems?",
              "support": "partial",
              "answer": "The catalog includes Box, Salesforce, Notion, Slack, Zendesk and other systems. Individual entitlements, scopes and consent were not verified for every connector.",
              "evidenceIds": [
                "glean:glean:connectors",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "on_prem_sources",
              "question": "Can on-prem file shares or databases be connected?",
              "support": "partial",
              "answer": "Deployment guidance supports private connectivity for on-premise connectors. This establishes a network option, not every file share/database or a locally hosted whole platform.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "connector_provider",
              "question": "Who builds and maintains each connector?",
              "support": "partial",
              "answer": "Glean publishes native connector guides; custom connectors and MCP routes are separate. Maintenance ownership for every listed third-party integration was not established.",
              "evidenceIds": [
                "glean:glean:connectors",
                "glean:glean:gateway",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:sharepoint",
            "glean:glean:onedrive",
            "glean:glean:outlook",
            "glean:glean:teams-connector",
            "glean:glean:r2-core-entitlements",
            "glean:glean:drive",
            "glean:glean:gmail",
            "glean:glean:connectors",
            "glean:glean:deploy",
            "glean:glean:gateway"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "SharePoint and OneDrive have a documented delegated file picker. Other enterprise systems require separately verified tools or connectors.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "microsoft_365",
              "question": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected?",
              "support": "partial",
              "answer": "SharePoint Online and OneDrive for Business can be browsed and attached through Entra token reuse/OBO, delegated AllSites.Read and Files.Read.All, and admin consent. Outlook/Teams source access was not established.",
              "evidenceIds": [
                "librechat:librechat:sharepoint"
              ]
            },
            {
              "id": "google_workspace",
              "question": "Which Google sources are connected?",
              "support": "unknown",
              "answer": "google_workspace: Which Google sources are connected? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
              "evidenceIds": []
            },
            {
              "id": "atlassian",
              "question": "Confluence and Jira?",
              "support": "unknown",
              "answer": "atlassian: Confluence and Jira? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
              "evidenceIds": []
            },
            {
              "id": "other_systems",
              "question": "Which other business systems?",
              "support": "unknown",
              "answer": "other_systems: Which other business systems? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
              "evidenceIds": []
            },
            {
              "id": "on_prem_sources",
              "question": "Can on-prem file shares or databases be connected?",
              "support": "partial",
              "answer": "Custom local MCP stdio servers can reach systems available to the deployment, but a maintained file-share/database connector and its permissions were not verified.",
              "evidenceIds": [
                "librechat:librechat:mcpcfg"
              ]
            },
            {
              "id": "connector_provider",
              "question": "Who builds and maintains each connector?",
              "support": "supported",
              "answer": "LibreChat documents the Microsoft picker. Other MCP tool integrations are separately configured and maintained by their respective server authors/operators.",
              "evidenceIds": [
                "librechat:librechat:sharepoint",
                "librechat:librechat:mcp"
              ]
            }
          ],
          "limitations": [
            "microsoft_365: SharePoint Online and OneDrive for Business can be browsed and attached through Entra token reuse/OBO, delegated AllSites.Read and Files.Read.All, and admin consent. Outlook/Teams source access was not established.",
            "google_workspace: Which Google sources are connected? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
            "atlassian: Confluence and Jira? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
            "other_systems: Which other business systems? Google Drive/Gmail, Confluence/Jira and other named business-system connectors were not verified from first-party maintained connector documentation; generic MCP compatibility is not a connector catalog.",
            "on_prem_sources: Custom local MCP stdio servers can reach systems available to the deployment, but a maintained file-share/database connector and its permissions were not verified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:sharepoint",
            "librechat:librechat:mcpcfg",
            "librechat:librechat:mcp"
          ]
        }
      ]
    },
    {
      "id": "KNOW-04",
      "title": "Permission-aware retrieval",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Using two test users, verify that a restricted document in the fixture tenant is never cited or summarised for the user without access, including after a permission change. Record whether permissions are enforced at query time by the source system, mirrored into an index, or not enforced. Record the propagation delay of a revocation.",
      "questions": [
        {
          "id": "source_permissions_respected",
          "question": "Are source permissions enforced per user?"
        },
        {
          "id": "enforcement_point",
          "question": "Does the source system, a mirrored index or nothing enforce them?"
        },
        {
          "id": "revocation_delay",
          "question": "How quickly does a removed permission take effect?"
        },
        {
          "id": "admin_scope_controls",
          "question": "Can admins exclude sites, folders or labels?"
        },
        {
          "id": "sensitivity_labels",
          "question": "Are Microsoft Purview or similar labels respected?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Permission-aware indexed and live retrieval is documented; the restricted-document test is outstanding.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect permission enforcement and connector access; fine-grained source rules documented per connector",
            "addOns": [
              "Glean Protect+ and account-team enablement for O365 sensitivity-label redlisting only"
            ],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "source_permissions_respected",
              "question": "Are source permissions enforced per user?",
              "support": "supported",
              "answer": "SharePoint, OneDrive and Teams docs describe per-user permissions checked at query time. This is documentary evidence, not a passed two-user test.",
              "evidenceIds": [
                "glean:glean:sharepoint",
                "glean:glean:onedrive",
                "glean:glean:teams-connector",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "enforcement_point",
              "question": "Does the source system, a mirrored index or nothing enforce them?",
              "support": "supported",
              "answer": "Indexed routes copy source ACLs into Glean and evaluate them at query time; live SharePoint/OneDrive routes avoid a stored content index.",
              "evidenceIds": [
                "glean:glean:sharepoint",
                "glean:glean:onedrive",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "revocation_delay",
              "question": "How quickly does a removed permission take effect?",
              "support": "partial",
              "answer": "For indexed Drive, activity changes are checked every 10 minutes and group membership hourly. These are crawl schedules, not a measured revocation guarantee.",
              "evidenceIds": [
                "glean:glean:drive",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "admin_scope_controls",
              "question": "Can admins exclude sites, folders or labels?",
              "support": "supported",
              "answer": "Admins can include/exclude connectors, containers and documents from LLM access. Changes may take up to an hour.",
              "evidenceIds": [
                "glean:glean:restrictions",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "sensitivity_labels",
              "question": "Are Microsoft Purview or similar labels respected?",
              "support": "partial",
              "answer": "Glean Protect+ can exclude SharePoint/OneDrive files by Purview label priority after account-team enablement. It requires crawling, may need days for the first full crawl, and does not cover Teams message text. This is index exclusion, not a passed live-permission test.",
              "evidenceIds": [
                "glean:glean:r4-purview-label-redlist"
              ]
            }
          ],
          "limitations": [
            "Permission claims are documented only; no leak-free outcome or measured propagation delay is claimed."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "glean:glean:sharepoint",
            "glean:glean:onedrive",
            "glean:glean:teams-connector",
            "glean:glean:r2-core-entitlements",
            "glean:glean:drive",
            "glean:glean:restrictions",
            "glean:glean:r4-purview-label-redlist"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Product resource ACLs and delegated Microsoft file selection are documented. Continuing source permissions for copied content remain untested.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "source_permissions_respected",
              "question": "Are source permissions enforced per user?",
              "support": "unknown",
              "answer": "source_permissions_respected: Are source permissions enforced per user? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "enforcement_point",
              "question": "Does the source system, a mirrored index or nothing enforce them?",
              "support": "partial",
              "answer": "LibreChat ACLs control Agent/file resources; Microsoft delegated OBO limits source downloads as the signed-in user. No query-time source ACL check for previously copied chunks was established.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:sharepoint"
              ]
            },
            {
              "id": "revocation_delay",
              "question": "How quickly does a removed permission take effect?",
              "support": "unknown",
              "answer": "revocation_delay: How quickly does a removed permission take effect? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "admin_scope_controls",
              "question": "Can admins exclude sites, folders or labels?",
              "support": "partial",
              "answer": "Operators can scope Agent/resource grants and its selected files. Site/folder/label exclusion across sources was not established.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "sensitivity_labels",
              "question": "Are Microsoft Purview or similar labels respected?",
              "support": "unknown",
              "answer": "sensitivity_labels: Are Microsoft Purview or similar labels respected? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "source_permissions_respected: Are source permissions enforced per user? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified.",
            "enforcement_point: LibreChat ACLs control Agent/file resources; Microsoft delegated OBO limits source downloads as the signed-in user. No query-time source ACL check for previously copied chunks was established.",
            "revocation_delay: How quickly does a removed permission take effect? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified.",
            "admin_scope_controls: Operators can scope Agent/resource grants and its selected files. Site/folder/label exclusion across sources was not established.",
            "sensitivity_labels: Are Microsoft Purview or similar labels respected? No restricted-document two-user fixture or grant/revocation test was run. Source permission enforcement, revocation delay and Purview label handling remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:access",
            "librechat:librechat:sharepoint",
            "librechat:librechat:agents"
          ]
        }
      ]
    },
    {
      "id": "KNOW-05",
      "title": "Freshness and sync model",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Record live (federated) search versus a copied index, sync interval, deletion propagation, and where the index is stored. Edit and delete one fixture document and record when answers change. A copied index adds storage location to DATA-01.",
      "questions": [
        {
          "id": "live_or_indexed",
          "question": "Is content searched live or copied into an index?"
        },
        {
          "id": "sync_interval",
          "question": "How often does an index refresh?"
        },
        {
          "id": "deletion_propagation",
          "question": "How quickly does a deleted document disappear?"
        },
        {
          "id": "index_location",
          "question": "Where is indexed content stored?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean combines indexed and live connector routes; refresh timing is source-specific.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite connector/index platform; Customer Hosted location/contract separately selected",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "live_or_indexed",
              "question": "Is content searched live or copied into an index?",
              "support": "supported",
              "answer": "SharePoint/OneDrive document indexed, live and tool routes. Indexed routes copy content; live routes do not store content in the index.",
              "evidenceIds": [
                "glean:glean:sharepoint",
                "glean:glean:onedrive",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "sync_interval",
              "question": "How often does an index refresh?",
              "support": "supported",
              "answer": "Drive documents 10-minute activity crawls, hourly people/group crawls, 3-hour incremental crawls and normally 28-day full crawls.",
              "evidenceIds": [
                "glean:glean:drive",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "deletion_propagation",
              "question": "How quickly does a deleted document disappear?",
              "support": "partial",
              "answer": "Drive activity processing includes deletions, but no fixture deletion-to-answer interval or universal maximum was verified.",
              "evidenceIds": [
                "glean:glean:drive",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "index_location",
              "question": "Where is indexed content stored?",
              "support": "partial",
              "answer": "Indexes run in the selected isolated Glean Hosted or Customer Hosted environment. Exact country and any secondary log/backup locations need deployment confirmation.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:sharepoint",
            "glean:glean:onedrive",
            "glean:glean:r2-core-entitlements",
            "glean:glean:drive",
            "glean:glean:deploy"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The RAG API copies uploaded content into PGVector; imported files do not by themselves establish live enterprise synchronization.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "live_or_indexed",
              "question": "Is content searched live or copied into an index?",
              "support": "supported",
              "answer": "The RAG API indexes uploaded documents into PostgreSQL/PGVector; file-context mode stores extracted text in Agent instructions.",
              "evidenceIds": [
                "librechat:librechat:rag",
                "librechat:librechat:ocr"
              ]
            },
            {
              "id": "sync_interval",
              "question": "How often does an index refresh?",
              "support": "unknown",
              "answer": "sync_interval: How often does an index refresh? No periodic enterprise-source sync contract, source edit/delete propagation bound or timed fixture was established from the RAG and Microsoft import guides.",
              "evidenceIds": []
            },
            {
              "id": "deletion_propagation",
              "question": "How quickly does a deleted document disappear?",
              "support": "unknown",
              "answer": "deletion_propagation: How quickly does a deleted document disappear? No periodic enterprise-source sync contract, source edit/delete propagation bound or timed fixture was established from the RAG and Microsoft import guides.",
              "evidenceIds": []
            },
            {
              "id": "index_location",
              "question": "Where is indexed content stored?",
              "support": "supported",
              "answer": "The operator chooses the RAG database and its location, independently of the inference provider.",
              "evidenceIds": [
                "librechat:librechat:rag",
                "librechat:librechat:compose-pin"
              ]
            }
          ],
          "limitations": [
            "sync_interval: How often does an index refresh? No periodic enterprise-source sync contract, source edit/delete propagation bound or timed fixture was established from the RAG and Microsoft import guides.",
            "deletion_propagation: How quickly does a deleted document disappear? No periodic enterprise-source sync contract, source edit/delete propagation bound or timed fixture was established from the RAG and Microsoft import guides."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:rag",
            "librechat:librechat:ocr",
            "librechat:librechat:compose-pin"
          ]
        }
      ]
    },
    {
      "id": "KNOW-06",
      "title": "Grounding and retrieval quality",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Run the shared question set over the fixture corpus: factual lookups, cross-document questions, German document with an English question, a question with no answer in the corpus. Record citation presence, link accuracy, correct answers and refusals to invent. Disclose model, settings, attempt count and failures. Single runs support a case study, not a ranking.",
      "questions": [
        {
          "id": "citations",
          "question": "Are answers linked to specific sources?"
        },
        {
          "id": "citation_accuracy",
          "question": "Do the cited passages support the answer?"
        },
        {
          "id": "cross_language",
          "question": "Does a question in one language find documents in another?"
        },
        {
          "id": "no_answer_behaviour",
          "question": "Does it say when the corpus has no answer?"
        },
        {
          "id": "observed_accuracy",
          "question": "How many of the question set were answered correctly?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Linked source citations are documented; named-plan cross-language retrieval and observed grounding quality remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Assistant/Deep Research with Model Hub Usage; no verified Core Suite/Enterprise Flex cross-language entitlement",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "citations",
              "question": "Are answers linked to specific sources?",
              "support": "supported",
              "answer": "Assistant documentation describes grounded answers with linked citations; Deep Research produces cited company/web reports.",
              "evidenceIds": [
                "glean:glean:research",
                "glean:glean:sharing",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "citation_accuracy",
              "question": "Do the cited passages support the answer?",
              "support": "unknown",
              "answer": "Do the cited passages support the answer? No shared multilingual question set or restricted corpus was run; citation accuracy, correct-answer count and no-answer behavior remain unmeasured.",
              "evidenceIds": []
            },
            {
              "id": "cross_language",
              "question": "Does a question in one language find documents in another?",
              "support": "unknown",
              "answer": "The language guide labels answering across document/query languages Early Access, but its Core Suite/Enterprise Flex entitlement and enabled rollout were not established. Cross-language retrieval for those named plans remains unknown; no multilingual fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "no_answer_behaviour",
              "question": "Does it say when the corpus has no answer?",
              "support": "unknown",
              "answer": "Does it say when the corpus has no answer? No shared multilingual question set or restricted corpus was run; citation accuracy, correct-answer count and no-answer behavior remain unmeasured.",
              "evidenceIds": []
            },
            {
              "id": "observed_accuracy",
              "question": "How many of the question set were answered correctly?",
              "support": "unknown",
              "answer": "How many of the question set were answered correctly? No shared multilingual question set or restricted corpus was run; citation accuracy, correct-answer count and no-answer behavior remain unmeasured.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Citation links do not establish citation accuracy. The Early Access language guide does not map cross-language retrieval to a verified named-plan entitlement."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:research",
            "glean:glean:sharing",
            "glean:glean:r2-core-entitlements",
            "glean:glean:language"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "File-search citations are documented; retrieval accuracy remains unmeasured.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "citations",
              "question": "Are answers linked to specific sources?",
              "support": "supported",
              "answer": "RAG/File Search provides retrieved source references and citation controls.",
              "evidenceIds": [
                "librechat:librechat:rag",
                "librechat:librechat:access"
              ]
            },
            {
              "id": "citation_accuracy",
              "question": "Do the cited passages support the answer?",
              "support": "unknown",
              "answer": "citation_accuracy: Do the cited passages support the answer? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
              "evidenceIds": []
            },
            {
              "id": "cross_language",
              "question": "Does a question in one language find documents in another?",
              "support": "unknown",
              "answer": "cross_language: Does a question in one language find documents in another? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
              "evidenceIds": []
            },
            {
              "id": "no_answer_behaviour",
              "question": "Does it say when the corpus has no answer?",
              "support": "unknown",
              "answer": "no_answer_behaviour: Does it say when the corpus has no answer? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
              "evidenceIds": []
            },
            {
              "id": "observed_accuracy",
              "question": "How many of the question set were answered correctly?",
              "support": "unknown",
              "answer": "observed_accuracy: How many of the question set were answered correctly? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "citation_accuracy: Do the cited passages support the answer? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
            "cross_language: Does a question in one language find documents in another? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
            "no_answer_behaviour: Does it say when the corpus has no answer? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown.",
            "observed_accuracy: How many of the question set were answered correctly? The shared multilingual factual/cross-document/no-answer question set was not run. Citation correctness, cross-language success, no-answer reliability and observed accuracy remain unknown."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:rag",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "KNOW-07",
      "title": "Memory and personal context",
      "group": {
        "id": 2,
        "name": "Company knowledge"
      },
      "judgment": "Record personal custom instructions, cross-chat memory, project or workspace context, and user controls to view, edit, delete or disable memory. Record whether admins can disable memory organisation-wide.",
      "questions": [
        {
          "id": "custom_instructions",
          "question": "Can users set persistent instructions?"
        },
        {
          "id": "cross_chat_memory",
          "question": "Does the product remember facts across chats?"
        },
        {
          "id": "user_memory_controls",
          "question": "Can users view, edit and delete memories?"
        },
        {
          "id": "admin_memory_controls",
          "question": "Can admins turn memory off?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:KNOW-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean documents personal saved and learned memory with user controls and a limited admin off switch.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite saved memory in seat and learned memory with Model Hub Usage; Enterprise Flex learned-memory rate/temporary waiver separate",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "custom_instructions",
              "question": "Can users set persistent instructions?",
              "support": "supported",
              "answer": "Saved preferences and explicit memories can persist across conversations.",
              "evidenceIds": [
                "glean:glean:memory",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "cross_chat_memory",
              "question": "Does the product remember facts across chats?",
              "support": "supported",
              "answer": "Saved and learned memories retain user work context and preferences across chats, subject to deployment availability.",
              "evidenceIds": [
                "glean:glean:memory",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "user_memory_controls",
              "question": "Can users view, edit and delete memories?",
              "support": "supported",
              "answer": "Users can view, edit and delete memories and control memory use in a conversation.",
              "evidenceIds": [
                "glean:glean:memory",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "admin_memory_controls",
              "question": "Can admins turn memory off?",
              "support": "partial",
              "answer": "Admins can disable learned memory; saved memories are user-controlled and cannot be disabled by admins through this setting.",
              "evidenceIds": [
                "glean:glean:memory-admin",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:memory",
            "glean:glean:r2-core-entitlements",
            "glean:glean:memory-admin"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:KNOW-07",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Opt-in user memory stores editable key/value context across chats; Projects and Agents provide additional persistent instructions.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "custom_instructions",
              "question": "Can users set persistent instructions?",
              "support": "supported",
              "answer": "Projects retain instructions across their chats; Agents retain system instructions.",
              "evidenceIds": [
                "librechat:librechat:projects",
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "cross_chat_memory",
              "question": "Does the product remember facts across chats?",
              "support": "supported",
              "answer": "User Memory injects configured key/value entries across chats and is not semantic search over all past conversations.",
              "evidenceIds": [
                "librechat:librechat:memory"
              ]
            },
            {
              "id": "user_memory_controls",
              "question": "Can users view, edit and delete memories?",
              "support": "supported",
              "answer": "Users add/edit/remove entries and can toggle memory when permitted.",
              "evidenceIds": [
                "librechat:librechat:memory"
              ]
            },
            {
              "id": "admin_memory_controls",
              "question": "Can admins turn memory off?",
              "support": "supported",
              "answer": "Memory is disabled until configured and its feature permissions can be restricted by role.",
              "evidenceIds": [
                "librechat:librechat:memory",
                "librechat:librechat:access"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:projects",
            "librechat:librechat:agents",
            "librechat:librechat:memory",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "AGT-01",
      "title": "Custom assistants",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record creation of assistants with instructions, model, knowledge and tools; who can create; sharing scope; versioning; and an internal catalogue or directory. Build one HR policy assistant on the fixture and share it with one group. Prompt templates and a prompt library are recorded here.",
      "questions": [
        {
          "id": "create_assistants",
          "question": "Can users create assistants with instructions, knowledge and tools?"
        },
        {
          "id": "creator_permissions",
          "question": "Can admins limit who creates them?"
        },
        {
          "id": "sharing_scope",
          "question": "Can assistants be shared with users, groups or everyone?"
        },
        {
          "id": "catalogue",
          "question": "Is there an internal assistant directory?"
        },
        {
          "id": "prompt_library",
          "question": "Are shared prompt templates available?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Custom agents combine instructions, models, knowledge and tools and have an internal library.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Agent Building/Governance/Sharing in seat; builder assistance/debugging/runtime use Model Hub as applicable",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "create_assistants",
              "question": "Can users create assistants with instructions, knowledge and tools?",
              "support": "supported",
              "answer": "Agent Builder configures instructions, model choice, knowledge and tools, with Workflow and Auto modes.",
              "evidenceIds": [
                "glean:glean:builder",
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "creator_permissions",
              "question": "Can admins limit who creates them?",
              "support": "partial",
              "answer": "Admin role and agent-sharing controls regulate creation and distribution; no trial creation-boundary check was performed.",
              "evidenceIds": [
                "glean:glean:roles",
                "glean:glean:agent-sharing",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can assistants be shared with users, groups or everyone?",
              "support": "supported",
              "answer": "Agents have controlled sharing/edit access, including department and IdP-group audiences where enabled.",
              "evidenceIds": [
                "glean:glean:agent-sharing",
                "glean:glean:groups",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "catalogue",
              "question": "Is there an internal assistant directory?",
              "support": "supported",
              "answer": "The Agent library shows accessible agents for discovery and execution.",
              "evidenceIds": [
                "glean:glean:library",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "prompt_library",
              "question": "Are shared prompt templates available?",
              "support": "partial",
              "answer": "The former Prompt Library was retired August 5, 2025. Reusable prompts and apps moved to Agents; use current agents/templates rather than the retired interface.",
              "evidenceIds": [
                "glean:glean:sunset",
                "glean:glean:library",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:builder",
            "glean:glean:agents",
            "glean:glean:r2-core-entitlements",
            "glean:glean:roles",
            "glean:glean:agent-sharing",
            "glean:glean:groups",
            "glean:glean:library",
            "glean:glean:sunset"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-01",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Agents combine instructions, a model, knowledge and tools, with version history and a permissioned internal catalog.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "create_assistants",
              "question": "Can users create assistants with instructions, knowledge and tools?",
              "support": "supported",
              "answer": "The Agent Builder creates reusable instructions/model/files/tools/skills configurations.",
              "evidenceIds": [
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "creator_permissions",
              "question": "Can admins limit who creates them?",
              "support": "supported",
              "answer": "AGENTS CREATE and sharing permissions can be restricted by role; resource grants control access.",
              "evidenceIds": [
                "librechat:librechat:access"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can assistants be shared with users, groups or everyone?",
              "support": "supported",
              "answer": "Agent ACLs support users, groups, roles and all authenticated users when public sharing is permitted.",
              "evidenceIds": [
                "librechat:librechat:access"
              ]
            },
            {
              "id": "catalogue",
              "question": "Is there an internal assistant directory?",
              "support": "supported",
              "answer": "Agents have a marketplace/catalog and searchable builder tool library.",
              "evidenceIds": [
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "prompt_library",
              "question": "Are shared prompt templates available?",
              "support": "supported",
              "answer": "Prompt resources have use/create/share/share-public permissions and ACLs.",
              "evidenceIds": [
                "librechat:librechat:access"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "AGT-02",
      "title": "Tools, actions and MCP",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record built-in tools, custom actions (OpenAPI), MCP client support (local and remote servers), authentication model per tool (shared service account or per-user OAuth), and admin approval of tools. Verify one external-tool call and its access boundary.",
      "questions": [
        {
          "id": "builtin_tools",
          "question": "Which tools are built in?"
        },
        {
          "id": "custom_actions",
          "question": "Can admins add API actions?"
        },
        {
          "id": "mcp_client",
          "question": "Can it use remote MCP servers, and with what admin control?"
        },
        {
          "id": "tool_auth",
          "question": "Do tools act as the user or as a shared account?"
        },
        {
          "id": "tool_approval",
          "question": "Can admins approve or block tools, and can users confirm actions before they run?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean supports tools and external MCP with admin access controls; tool identities vary by route.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite native tools/MCP host and Developer Tools; LLM tool/API calls incur Model Hub Usage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "builtin_tools",
              "question": "Which tools are built in?",
              "support": "supported",
              "answer": "Agents can search knowledge, analyze data and read/write connected records; available tools depend on enabled connectors.",
              "evidenceIds": [
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "custom_actions",
              "question": "Can admins add API actions?",
              "support": "supported",
              "answer": "The MCP Gateway exposes customer-built read/write tools as well as connector tools.",
              "evidenceIds": [
                "glean:glean:gateway",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "mcp_client",
              "question": "Can it use remote MCP servers, and with what admin control?",
              "support": "partial",
              "answer": "Admins register external remote MCP servers and apply role/group controls in Glean. This pass did not execute a server call.",
              "evidenceIds": [
                "glean:glean:gateway",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "tool_auth",
              "question": "Do tools act as the user or as a shared account?",
              "support": "partial",
              "answer": "OAuth integrations can use Glean-managed or customer OAuth applications; agent service credentials are a distinct route. Identity must be checked per tool.",
              "evidenceIds": [
                "glean:glean:oauth",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "tool_approval",
              "question": "Can admins approve or block tools, and can users confirm actions before they run?",
              "support": "partial",
              "answer": "Admins control tool exposure. The Microsoft file-creation guide instructs interactive-agent builders to disable Run without user confirmation when user approval is required. Write confirmation is configurable, not an unconditional enforced rule; a universal approval policy for unattended agents remains unknown.",
              "evidenceIds": [
                "glean:glean:gateway",
                "glean:glean:r3-microsoft-write-confirmation",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "External-tool access boundaries were not tested. Customer Key and tool-provider contracts remain separate."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:agents",
            "glean:glean:r2-core-entitlements",
            "glean:glean:gateway",
            "glean:glean:oauth",
            "glean:glean:r3-microsoft-write-confirmation"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Agent tools include file search, code, web and Actions, with local/remote MCP and configurable approval boundaries.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Customer-operated or third-party MCP servers",
              "Optional separate Code Interpreter service"
            ],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "builtin_tools",
              "question": "Which tools are built in?",
              "support": "supported",
              "answer": "Agent capabilities include file search/context, web search, memory and optionally configured code execution/image tools.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:images"
              ]
            },
            {
              "id": "custom_actions",
              "question": "Can admins add API actions?",
              "support": "supported",
              "answer": "Agents support custom API Actions configured in the tool library.",
              "evidenceIds": [
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "mcp_client",
              "question": "Can it use remote MCP servers, and with what admin control?",
              "support": "supported",
              "answer": "Configured MCP transports include stdio, SSE and Streamable HTTP; YAML and permissioned UI setup are documented.",
              "evidenceIds": [
                "librechat:librechat:mcp",
                "librechat:librechat:mcpcfg"
              ]
            },
            {
              "id": "tool_auth",
              "question": "Do tools act as the user or as a shared account?",
              "support": "supported",
              "answer": "MCP supports configured credentials/headers and OAuth; credential and resource ownership scope depends on each server configuration.",
              "evidenceIds": [
                "librechat:librechat:mcp",
                "librechat:librechat:mcpcfg"
              ]
            },
            {
              "id": "tool_approval",
              "question": "Can admins approve or block tools, and can users confirm actions before they run?",
              "support": "partial",
              "answer": "Agent/code environments document approval modes and individual tool-call approvals. The default policy and every external side-effect boundary were not exercised.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:code"
              ]
            }
          ],
          "limitations": [
            "tool_approval: Agent/code environments document approval modes and individual tool-call approvals. The default policy and every external side-effect boundary were not exercised."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:images",
            "librechat:librechat:mcp",
            "librechat:librechat:mcpcfg",
            "librechat:librechat:code"
          ]
        }
      ]
    },
    {
      "id": "AGT-03",
      "title": "Web search and deep research",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record web search on/off control per organisation and group, search provider, citation of web sources, deep or multi-step research, and whether queries leave the residency boundary. Admins of regulated companies often need web search off.",
      "questions": [
        {
          "id": "web_search",
          "question": "Is web search available?"
        },
        {
          "id": "admin_toggle",
          "question": "Can admins disable it per organisation or group?"
        },
        {
          "id": "search_provider",
          "question": "Which search provider handles queries, and where?"
        },
        {
          "id": "deep_research",
          "question": "Is multi-step research with a report available?"
        },
        {
          "id": "web_citations",
          "question": "Are web sources cited?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Brave is the new web-search default; OpenAI search is a legacy route under migration. Deep Research produces cited read-only reports.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "2026-10-21, after the October 19 start of OpenAI-to-Brave migration; individual migration completion unobserved",
            "plan": "Core Suite Deep Research with Model Hub Usage; Brave for new web-search setups, configured Gemini route per setup guide, legacy OpenAI only until migrated",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "web_search",
              "question": "Is web search available?",
              "support": "supported",
              "answer": "Brave is the default for new web-search setups. The setup guide also documents Google Gemini. OpenAI Web Search is closed to new setups; existing instances work only until Glean migrates them to Brave, beginning October 19.",
              "evidenceIds": [
                "glean:glean:web",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r3-october-rollout-migration"
              ]
            },
            {
              "id": "admin_toggle",
              "question": "Can admins disable it per organisation or group?",
              "support": "partial",
              "answer": "Admins select enabled search tools and publication to Assistant, Agents and MCP. Universal per-group disabling was not verified.",
              "evidenceIds": [
                "glean:glean:web",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "search_provider",
              "question": "Which search provider handles queries, and where?",
              "support": "partial",
              "answer": "Brave is the new default and the provider named by Deep Research; Gemini is another documented configured route. OpenAI is legacy-only during the migration that began October 19. Per-tenant migration completion and query-processing countries remain unknown.",
              "evidenceIds": [
                "glean:glean:web",
                "glean:glean:research",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r3-october-rollout-migration"
              ]
            },
            {
              "id": "deep_research",
              "question": "Is multi-step research with a report available?",
              "support": "supported",
              "answer": "Deep Research writes cited multi-source reports from company sources and the web; it does not write to connected systems.",
              "evidenceIds": [
                "glean:glean:research",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "web_citations",
              "question": "Are web sources cited?",
              "support": "supported",
              "answer": "Deep Research reports contain linked web and company citations.",
              "evidenceIds": [
                "glean:glean:research",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "The dated release governs the new-versus-legacy route distinction. No per-tenant configuration, migration completion or provider-region test was performed."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:web",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r3-october-rollout-migration",
            "glean:glean:research"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Web search combines configured search, scraping and optional reranking services; source queries can leave the installation boundary.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "web_search",
              "question": "Is web search available?",
              "support": "supported",
              "answer": "Tool-capable chats/Agents can use the configured web search capability.",
              "evidenceIds": [
                "librechat:librechat:web",
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "admin_toggle",
              "question": "Can admins disable it per organisation or group?",
              "support": "supported",
              "answer": "WEB_SEARCH feature permissions control use; operators configure whether its provider stack is available.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:web"
              ]
            },
            {
              "id": "search_provider",
              "question": "Which search provider handles queries, and where?",
              "support": "supported",
              "answer": "Documented choices include Serper, SearXNG, Tavily and Keenable, with Firecrawl/Tavily/Keenable scraping and optional Jina/Cohere reranking. Geography depends on the chosen services.",
              "evidenceIds": [
                "librechat:librechat:web"
              ]
            },
            {
              "id": "deep_research",
              "question": "Is multi-step research with a report available?",
              "support": "partial",
              "answer": "Agents can perform repeated tool operations and web research. No dedicated report fixture, quality result or preset research SLA was verified.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:web"
              ]
            },
            {
              "id": "web_citations",
              "question": "Are web sources cited?",
              "support": "supported",
              "answer": "The web-search guide documents source references/citations from search and fetched content.",
              "evidenceIds": [
                "librechat:librechat:web"
              ]
            }
          ],
          "limitations": [
            "deep_research: Agents can perform repeated tool operations and web research. No dedicated report fixture, quality result or preset research SLA was verified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:web",
            "librechat:librechat:agents",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "AGT-04",
      "title": "Workflows and automation",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record no-code or low-code workflows, scheduled prompts, triggers from email, forms or business systems, and multi-step chains. Name where they run and who can build them. A shared prompt template is not a workflow.",
      "questions": [
        {
          "id": "workflow_builder",
          "question": "Is there a workflow or chain builder?"
        },
        {
          "id": "scheduled_tasks",
          "question": "Can prompts or assistants run on a schedule?"
        },
        {
          "id": "event_triggers",
          "question": "Can external events start a workflow?"
        },
        {
          "id": "builder_audience",
          "question": "Is building aimed at business users, IT or developers?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-04",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Workflow mode supports multi-step logic with schedule and content-event triggers.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Agent Building, workflow mode and triggers in seat; LLM execution incurs Model Hub Usage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "workflow_builder",
              "question": "Is there a workflow or chain builder?",
              "support": "supported",
              "answer": "Workflow mode supports explicit steps, branches, loops and hand-offs; Auto mode builds from natural-language goals.",
              "evidenceIds": [
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "scheduled_tasks",
              "question": "Can prompts or assistants run on a schedule?",
              "support": "supported",
              "answer": "Published agents can run on schedules after admin enablement; setup differs by Auto versus Workflow mode.",
              "evidenceIds": [
                "glean:glean:triggers",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "event_triggers",
              "question": "Can external events start a workflow?",
              "support": "supported",
              "answer": "Content triggers run when supported connected-system content changes; chat and form triggers are separate.",
              "evidenceIds": [
                "glean:glean:triggers",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "builder_audience",
              "question": "Is building aimed at business users, IT or developers?",
              "support": "supported",
              "answer": "The builder supports natural-language creation and explicit workflow editing; the documentation includes self-paced Agent Builder training.",
              "evidenceIds": [
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:agents",
            "glean:glean:r2-core-entitlements",
            "glean:glean:triggers"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Experimental Scheduled Chats run saved Agents on cron schedules; beta Agent Events can receive external deliveries.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Experimental schedules explicitly enabled",
              "Beta Agents API for external Agent Events"
            ],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "workflow_builder",
              "question": "Is there a workflow or chain builder?",
              "support": "partial",
              "answer": "Agent Builder supports tool workflows and subagent configurations; no general business no-code flow editor was established.",
              "evidenceIds": [
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "scheduled_tasks",
              "question": "Can prompts or assistants run on a schedule?",
              "support": "supported",
              "answer": "Scheduled Chats supports hourly/daily/weekly/custom cron with time zones, owner scope and execution checks; it is experimental and off by default.",
              "evidenceIds": [
                "librechat:librechat:schedule"
              ]
            },
            {
              "id": "event_triggers",
              "question": "Can external events start a workflow?",
              "support": "partial",
              "answer": "The beta Agents API includes authenticated Agent Events. A built-in email/form trigger catalog was not verified.",
              "evidenceIds": [
                "librechat:librechat:api"
              ]
            },
            {
              "id": "builder_audience",
              "question": "Is building aimed at business users, IT or developers?",
              "support": "supported",
              "answer": "Agent Builder is a user UI; API-event and runtime configuration require technical deployment work.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:schedule",
                "librechat:librechat:api"
              ]
            }
          ],
          "limitations": [
            "workflow_builder: Agent Builder supports tool workflows and subagent configurations; no general business no-code flow editor was established.",
            "event_triggers: The beta Agents API includes authenticated Agent Events. A built-in email/form trigger catalog was not verified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:schedule",
            "librechat:librechat:api"
          ]
        }
      ]
    },
    {
      "id": "AGT-05",
      "title": "Agentic task execution",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record an agent mode that plans and carries out multi-step tasks with tools (browser, files, connectors), with visible steps, user confirmation of side effects and stop control. Run one fixture task (gather three documents, draft a summary, propose an email). Record interventions and what ran. A final claim of success is not proof.",
      "questions": [
        {
          "id": "agent_mode",
          "question": "Is there an agent mode for multi-step tasks?"
        },
        {
          "id": "visible_steps",
          "question": "Are steps and tool calls shown?"
        },
        {
          "id": "side_effect_confirmation",
          "question": "Must the user confirm actions with side effects?"
        },
        {
          "id": "stop_control",
          "question": "Can the user stop a running task?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Auto mode agents plan and use tools, but end-to-end execution safety was not tested.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Agent Harness/Agent Building with Model Hub Usage for LLM execution",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "agent_mode",
              "question": "Is there an agent mode for multi-step tasks?",
              "support": "supported",
              "answer": "Auto mode agents dynamically choose tools and delegate subtasks; Workflow mode uses explicit steps.",
              "evidenceIds": [
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "visible_steps",
              "question": "Are steps and tool calls shown?",
              "support": "partial",
              "answer": "Workflow steps and builder preview/debugging are documented. Complete runtime visibility for every Auto action was not verified.",
              "evidenceIds": [
                "glean:glean:builder",
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "side_effect_confirmation",
              "question": "Must the user confirm actions with side effects?",
              "support": "partial",
              "answer": "Office creation tools describe a confirmation step before writing, without an editable inline preview. This does not establish confirmation for all scheduled operations.",
              "evidenceIds": [
                "glean:glean:office-output",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "stop_control",
              "question": "Can the user stop a running task?",
              "support": "partial",
              "answer": "The October 15 release documents that canceling an Assistant response terminates its tool calls and background tasks. Universal cancellation across scheduled/independent agents and every client was not verified by a fixture.",
              "evidenceIds": [
                "glean:glean:r4-cancellation-release"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "glean:glean:agents",
            "glean:glean:r2-core-entitlements",
            "glean:glean:builder",
            "glean:glean:office-output",
            "glean:glean:r4-cancellation-release"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Agent runs expose reasoning/tool activity and optional approval, interruption and cooperative stop controls.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "agent_mode",
              "question": "Is there an agent mode for multi-step tasks?",
              "support": "supported",
              "answer": "Agents execute multi-step tool workflows; code/workspace capabilities require a compatible separately deployed service.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:code"
              ]
            },
            {
              "id": "visible_steps",
              "question": "Are steps and tool calls shown?",
              "support": "supported",
              "answer": "Activity groups and tool cards distinguish preparation, execution, completion, cancellation and failure.",
              "evidenceIds": [
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "side_effect_confirmation",
              "question": "Must the user confirm actions with side effects?",
              "support": "partial",
              "answer": "Attached environments can expose Ask before changes/Accept edits/Full access, bounded by operator tool rules. This is configurable, not a guarantee that all side effects require confirmation.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:code"
              ]
            },
            {
              "id": "stop_control",
              "question": "Can the user stop a running task?",
              "support": "partial",
              "answer": "The release documents interruption/steering; ordinary background-tool cancellation is optional and cooperative, so an uncooperative tool may still finish.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:releases"
              ]
            }
          ],
          "limitations": [
            "No gather-documents, draft-summary and propose-email task was run.",
            "Highly experimental attached workspaces are distinct from ordinary Agent tool use."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:code",
            "librechat:librechat:releases"
          ]
        }
      ]
    },
    {
      "id": "AGT-06",
      "title": "Programmable access",
      "group": {
        "id": 3,
        "name": "Assistants and agents"
      },
      "judgment": "Record a public API for chat, assistants and knowledge, SDKs, API authentication, rate limits and whether API use counts against the same governance (audit, budgets, model restrictions). Being an MCP client is different from exposing the product over MCP.",
      "questions": [
        {
          "id": "chat_api",
          "question": "Is there an API for chat and assistants?"
        },
        {
          "id": "knowledge_api",
          "question": "Can documents be loaded through an API?"
        },
        {
          "id": "api_governance",
          "question": "Do audit, budgets and model rules apply to API use?"
        },
        {
          "id": "mcp_server",
          "question": "Does the product expose itself to other agents over MCP?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:AGT-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public platform APIs and a remote MCP server are documented.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "api"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Platform/Admin/Indexing/Tools APIs in seat and LLM Client APIs/MCP with Model Hub Usage; Enterprise Flex Client APIs consume FlexCredits",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "api",
                "name": "Glean APIs and remote MCP server",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_api",
              "question": "Is there an API for chat and assistants?",
              "support": "supported",
              "answer": "Core Suite lists Chat and Agents APIs plus platform APIs and Web SDK; LLM-using calls incur Model Hub consumption.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "knowledge_api",
              "question": "Can documents be loaded through an API?",
              "support": "supported",
              "answer": "Core Suite lists the Indexing API and Tools API; document upload APIs are linked from the file-upload guide.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "api_governance",
              "question": "Do audit, budgets and model rules apply to API use?",
              "support": "partial",
              "answer": "Machine-scale API usage can incur extra fees, and MCP uses user permissions. Full audit/budget/model-rule parity across API credentials was not tested.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:mcp",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "mcp_server",
              "question": "Does the product expose itself to other agents over MCP?",
              "support": "supported",
              "answer": "Glean MCP exposes search, chat, document reading and other tools to external AI hosts.",
              "evidenceIds": [
                "glean:glean:mcp",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:core-price",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:uploads",
            "glean:glean:mcp"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:AGT-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The beta Agents API provides inference, Agent management and authenticated events; deployment guards and limitations are explicit.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_api",
              "question": "Is there an API for chat and assistants?",
              "support": "supported",
              "answer": "Chat Completions and Open Responses interfaces expose saved Agents, with API-key or configured OIDC authentication.",
              "evidenceIds": [
                "librechat:librechat:api"
              ]
            },
            {
              "id": "knowledge_api",
              "question": "Can documents be loaded through an API?",
              "support": "partial",
              "answer": "The beta management surface includes Agent/Skill management. A complete public knowledge-ingestion contract and fixture were not verified.",
              "evidenceIds": [
                "librechat:librechat:api"
              ]
            },
            {
              "id": "api_governance",
              "question": "Do audit, budgets and model rules apply to API use?",
              "support": "partial",
              "answer": "Agent access and remote-agent permissions gate APIs, with source identity bound for events. Complete logging/budget/model parity across routes was not tested.",
              "evidenceIds": [
                "librechat:librechat:api",
                "librechat:librechat:access"
              ]
            },
            {
              "id": "mcp_server",
              "question": "Does the product expose itself to other agents over MCP?",
              "support": "unknown",
              "answer": "mcp_server: Does the product expose itself to other agents over MCP? A native product-wide MCP server was not established; being an MCP client does not establish that interface.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "knowledge_api: The beta management surface includes Agent/Skill management. A complete public knowledge-ingestion contract and fixture were not verified.",
            "api_governance: Agent access and remote-agent permissions gate APIs, with source identity bound for events. Complete logging/budget/model parity across routes was not tested.",
            "mcp_server: Does the product expose itself to other agents over MCP? A native product-wide MCP server was not established; being an MCP client does not establish that interface."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:api",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "WORK-01",
      "title": "Clients and access points",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "List web, desktop (Windows, macOS), iOS, Android, mobile browser and browser extension separately. For each, record login with company SSO, feature gaps against web, and MDM/Intune deployability. An installable app is different from a mobile website.",
      "questions": [
        {
          "id": "web",
          "question": "Is a full web client available?"
        },
        {
          "id": "desktop_apps",
          "question": "Windows and macOS apps?"
        },
        {
          "id": "mobile_apps",
          "question": "iOS and Android apps with SSO?"
        },
        {
          "id": "browser_extension",
          "question": "Is there a browser extension or sidebar?"
        },
        {
          "id": "managed_deployment",
          "question": "Can IT deploy and configure clients through MDM?"
        },
        {
          "id": "client_feature_gaps",
          "question": "Which features are missing on mobile?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean has web, desktop, mobile and extension access, including managed mobile controls.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "desktop",
              "mobile",
              "extension"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Glean surfaces included in seat; individual AI actions may incur Model Hub Usage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [
              "Windows",
              "macOS",
              "iOS",
              "Android"
            ],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "desktop",
                "name": "Glean for Desktop Windows and macOS",
                "type": "desktop-app"
              },
              {
                "id": "mobile",
                "name": "Glean iOS and Android",
                "type": "mobile-app"
              },
              {
                "id": "extension",
                "name": "Glean browser extension and companion",
                "type": "browser-extension"
              }
            ]
          },
          "questions": [
            {
              "id": "web",
              "question": "Is a full web client available?",
              "support": "supported",
              "answer": "The full browser app provides chat, Library and agents.",
              "evidenceIds": [
                "glean:glean:surfaces",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "desktop_apps",
              "question": "Windows and macOS apps?",
              "support": "supported",
              "answer": "Windows and macOS desktop clients are documented.",
              "evidenceIds": [
                "glean:glean:surfaces",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "mobile_apps",
              "question": "iOS and Android apps with SSO?",
              "support": "supported",
              "answer": "iOS and Android apps require an active SSO-configured tenant.",
              "evidenceIds": [
                "glean:glean:mobile",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "browser_extension",
              "question": "Is there a browser extension or sidebar?",
              "support": "supported",
              "answer": "The extension supplies sidebar chat/search and a companion for selected text.",
              "evidenceIds": [
                "glean:glean:surfaces",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "managed_deployment",
              "question": "Can IT deploy and configure clients through MDM?",
              "support": "supported",
              "answer": "Mobile integrates with Intune App Protection. Managed desktop and extension deployment are linked in official deployment guidance.",
              "evidenceIds": [
                "glean:glean:mobile",
                "glean:glean:surfaces",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "client_feature_gaps",
              "question": "Which features are missing on mobile?",
              "support": "partial",
              "answer": "Deep Research is web-only. Real-time voice supports web, desktop and mobile; other complete parity differences were not verified.",
              "evidenceIds": [
                "glean:glean:research",
                "glean:glean:voice",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:surfaces",
            "glean:glean:r2-core-entitlements",
            "glean:glean:mobile",
            "glean:glean:research",
            "glean:glean:voice"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The main deployment is a responsive browser client. Native clients, MDM and a supported sidebar extension were not verified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "web",
              "question": "Is a full web client available?",
              "support": "supported",
              "answer": "A Docker/npm deployment serves a browser application at the configured server URL.",
              "evidenceIds": [
                "librechat:librechat:firstchat",
                "librechat:librechat:local"
              ]
            },
            {
              "id": "desktop_apps",
              "question": "Windows and macOS apps?",
              "support": "unknown",
              "answer": "desktop_apps: Windows and macOS apps? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
              "evidenceIds": []
            },
            {
              "id": "mobile_apps",
              "question": "iOS and Android apps with SSO?",
              "support": "partial",
              "answer": "Docs describe mobile navigation and temporary-chat controls in the web UI. No native iOS/Android client with company SSO was established.",
              "evidenceIds": [
                "librechat:librechat:retention",
                "librechat:librechat:insights"
              ]
            },
            {
              "id": "browser_extension",
              "question": "Is there a browser extension or sidebar?",
              "support": "unknown",
              "answer": "browser_extension: Is there a browser extension or sidebar? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
              "evidenceIds": []
            },
            {
              "id": "managed_deployment",
              "question": "Can IT deploy and configure clients through MDM?",
              "support": "unknown",
              "answer": "managed_deployment: Can IT deploy and configure clients through MDM? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
              "evidenceIds": []
            },
            {
              "id": "client_feature_gaps",
              "question": "Which features are missing on mobile?",
              "support": "partial",
              "answer": "Desktop/mobile layouts expose different navigation controls; no comprehensive parity matrix was tested.",
              "evidenceIds": [
                "librechat:librechat:retention",
                "librechat:librechat:insights"
              ]
            }
          ],
          "limitations": [
            "desktop_apps: Windows and macOS apps? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
            "mobile_apps: Docs describe mobile navigation and temporary-chat controls in the web UI. No native iOS/Android client with company SSO was established.",
            "browser_extension: Is there a browser extension or sidebar? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
            "managed_deployment: Can IT deploy and configure clients through MDM? The self-host installation and client docs did not establish native Windows/macOS apps, a first-party browser extension or Intune/MDM configuration.",
            "client_feature_gaps: Desktop/mobile layouts expose different navigation controls; no comprehensive parity matrix was tested."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:firstchat",
            "librechat:librechat:local",
            "librechat:librechat:retention",
            "librechat:librechat:insights"
          ]
        }
      ]
    },
    {
      "id": "WORK-02",
      "title": "Office suite and Teams integration",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record presence inside Word, Excel, PowerPoint, Outlook and Teams (and Google Docs, Gmail), with what the assistant can do in each: read the open document, write into it, act on mail. Record extra licences and admin consent needed. A connector that searches Office files is KNOW-03, not WORK-02.",
      "questions": [
        {
          "id": "word_excel_powerpoint",
          "question": "Does it work inside Word, Excel and PowerPoint?"
        },
        {
          "id": "outlook",
          "question": "Does it work inside Outlook?"
        },
        {
          "id": "teams",
          "question": "Is there a Teams app or bot?"
        },
        {
          "id": "google_workspace_apps",
          "question": "Does it work inside Docs, Sheets or Gmail?"
        },
        {
          "id": "licence_prerequisites",
          "question": "Which licences or consents are needed?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A Microsoft Teams app is documented; connectors and file-generation tools do not establish in-Office add-ins.",
          "availability": "generally-available",
          "delivery": "official-integration",
          "scope": {
            "surfaceIds": [
              "teams",
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite embedded Microsoft Teams and other listed surfaces; selected Assistant actions incur Model Hub Usage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "teams",
                "name": "Glean in Microsoft Teams",
                "type": "teams-app"
              },
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "word_excel_powerpoint",
              "question": "Does it work inside Word, Excel and PowerPoint?",
              "support": "unknown",
              "answer": "Does it work inside Word, Excel and PowerPoint? The Teams app, connector catalog and Office-output guides were checked. An assistant embedded inside Word/Excel/PowerPoint, Outlook, Docs/Sheets/Gmail was not established; remote content access is not counted as in-app presence.",
              "evidenceIds": []
            },
            {
              "id": "outlook",
              "question": "Does it work inside Outlook?",
              "support": "unknown",
              "answer": "Does it work inside Outlook? The Teams app, connector catalog and Office-output guides were checked. An assistant embedded inside Word/Excel/PowerPoint, Outlook, Docs/Sheets/Gmail was not established; remote content access is not counted as in-app presence.",
              "evidenceIds": []
            },
            {
              "id": "teams",
              "question": "Is there a Teams app or bot?",
              "support": "supported",
              "answer": "The Glean Teams app has an admin installation guide and tenant setup/consent requirements.",
              "evidenceIds": [
                "glean:glean:teams-app",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "google_workspace_apps",
              "question": "Does it work inside Docs, Sheets or Gmail?",
              "support": "unknown",
              "answer": "Does it work inside Docs, Sheets or Gmail? The Teams app, connector catalog and Office-output guides were checked. An assistant embedded inside Word/Excel/PowerPoint, Outlook, Docs/Sheets/Gmail was not established; remote content access is not counted as in-app presence.",
              "evidenceIds": []
            },
            {
              "id": "licence_prerequisites",
              "question": "Which licences or consents are needed?",
              "support": "partial",
              "answer": "Teams requires admin deployment in a configured Glean tenant and Microsoft permissions. Extra licence charges are not numerically specified in the guide.",
              "evidenceIds": [
                "glean:glean:teams-app",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:teams-app",
            "glean:glean:r2-core-entitlements"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-02",
          "verificationStatus": "not-published",
          "support": "not-published",
          "answer": "We found no public information on this. A missing finding is not evidence that the product lacks the capability.",
          "availability": null,
          "delivery": null,
          "scope": null,
          "questions": [],
          "limitations": [],
          "checkedAt": null,
          "crossCheckedAt": null,
          "nextCheckAt": null,
          "evidenceIds": []
        }
      ]
    },
    {
      "id": "WORK-03",
      "title": "Translation and writing",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record document translation preserving layout, the translation engine (LLM or dedicated such as DeepL), glossaries, formality control, supported languages including Swiss German conventions (no ß), and rewriting/proofreading tools. Translate the shared German contract into French and Italian and record layout and glossary results.",
      "questions": [
        {
          "id": "document_translation",
          "question": "Can whole documents be translated with formatting kept?"
        },
        {
          "id": "translation_engine",
          "question": "Which engine translates?"
        },
        {
          "id": "glossaries",
          "question": "Are company glossaries supported?"
        },
        {
          "id": "formality_and_variants",
          "question": "Can formality and regional variants (de-CH) be set?"
        },
        {
          "id": "writing_tools",
          "question": "Are dedicated rewrite and proofreading tools available?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Browser companion translation and general writing are documented; layout-preserving document translation is unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "extension",
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite browser Companion/Sidebar surfaces included; LLM writing/translation uses configured model usage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "extension",
                "name": "Glean browser extension and companion",
                "type": "browser-extension"
              },
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "document_translation",
              "question": "Can whole documents be translated with formatting kept?",
              "support": "unknown",
              "answer": "Can whole documents be translated with formatting kept? The companion, file-upload and Office-generation guides were checked. No whole-document layout-preserving translation, company glossary, formality/de-CH control or DE-to-FR/IT fixture result was established.",
              "evidenceIds": []
            },
            {
              "id": "translation_engine",
              "question": "Which engine translates?",
              "support": "partial",
              "answer": "The browser companion translates selected text through Glean. A dedicated translation service or exact translation-model route is not named here.",
              "evidenceIds": [
                "glean:glean:surfaces",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "glossaries",
              "question": "Are company glossaries supported?",
              "support": "unknown",
              "answer": "Are company glossaries supported? The companion, file-upload and Office-generation guides were checked. No whole-document layout-preserving translation, company glossary, formality/de-CH control or DE-to-FR/IT fixture result was established.",
              "evidenceIds": []
            },
            {
              "id": "formality_and_variants",
              "question": "Can formality and regional variants (de-CH) be set?",
              "support": "unknown",
              "answer": "Can formality and regional variants (de-CH) be set? The companion, file-upload and Office-generation guides were checked. No whole-document layout-preserving translation, company glossary, formality/de-CH control or DE-to-FR/IT fixture result was established.",
              "evidenceIds": []
            },
            {
              "id": "writing_tools",
              "question": "Are dedicated rewrite and proofreading tools available?",
              "support": "partial",
              "answer": "Configured agents support drafting; the browser companion explains, summarizes and translates selected text. Dedicated proofreading behavior was not verified.",
              "evidenceIds": [
                "glean:glean:surfaces",
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:surfaces",
            "glean:glean:r2-core-entitlements",
            "glean:glean:agents"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-03",
          "verificationStatus": "not-published",
          "support": "not-published",
          "answer": "We found no public information on this. A missing finding is not evidence that the product lacks the capability.",
          "availability": null,
          "delivery": null,
          "scope": null,
          "questions": [],
          "limitations": [],
          "checkedAt": null,
          "crossCheckedAt": null,
          "nextCheckAt": null,
          "evidenceIds": []
        }
      ]
    },
    {
      "id": "WORK-04",
      "title": "Image generation and editing",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record available image models, editing (inpainting, reference images), admin control and per-image cost visibility, and licence or usage terms for generated images.",
      "questions": [
        {
          "id": "image_generation",
          "question": "Can users generate images, with which models?"
        },
        {
          "id": "image_editing",
          "question": "Can users edit uploaded images?"
        },
        {
          "id": "admin_control",
          "question": "Can admins restrict image generation?"
        },
        {
          "id": "usage_terms",
          "question": "What usage rights apply to output?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean can generate and edit images using enabled image models.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite image generation/editing with Model Hub Usage; provider/key availability remains conditional",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "image_generation",
              "question": "Can users generate images, with which models?",
              "support": "supported",
              "answer": "Universal Model Key uses the managed GPT Image 2.5 or GPT Image 2 default; Customer Key admins select image models and Agents can select enabled models.",
              "evidenceIds": [
                "glean:glean:images",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "image_editing",
              "question": "Can users edit uploaded images?",
              "support": "supported",
              "answer": "The image guide documents editing uploaded images.",
              "evidenceIds": [
                "glean:glean:images",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "admin_control",
              "question": "Can admins restrict image generation?",
              "support": "supported",
              "answer": "An administrator must enable image generation and a supported image model.",
              "evidenceIds": [
                "glean:glean:images",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "usage_terms",
              "question": "What usage rights apply to output?",
              "support": "partial",
              "answer": "Customer rights in outputs are governed by the Terms and AI Addendum together with model-provider terms; no unique or exclusive image-output guarantee was verified.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:ai-addendum",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:images",
            "glean:glean:r2-core-entitlements",
            "glean:glean:terms",
            "glean:glean:ai-addendum"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Configured Agent image tools generate and edit images; model service rights/costs remain separate.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "image_generation",
              "question": "Can users generate images, with which models?",
              "support": "supported",
              "answer": "OpenAI Image Tools and additional documented provider tools attach to an Agent; the current guide defaults OpenAI tools to gpt-image-2.5-flare.",
              "evidenceIds": [
                "librechat:librechat:images"
              ]
            },
            {
              "id": "image_editing",
              "question": "Can users edit uploaded images?",
              "support": "supported",
              "answer": "The image guide documents editing/remixing uploaded images using image IDs and compatible tools.",
              "evidenceIds": [
                "librechat:librechat:images"
              ]
            },
            {
              "id": "admin_control",
              "question": "Can admins restrict image generation?",
              "support": "partial",
              "answer": "Operators control tool credentials/configuration and Agent creation/access permissions. A dedicated per-group image-spend switch was not established.",
              "evidenceIds": [
                "librechat:librechat:images",
                "librechat:librechat:access"
              ]
            },
            {
              "id": "usage_terms",
              "question": "What usage rights apply to output?",
              "support": "unknown",
              "answer": "usage_terms: What usage rights apply to output? Generated-output rights and complete per-image cost visibility were not established as a LibreChat software entitlement.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "admin_control: Operators control tool credentials/configuration and Agent creation/access permissions. A dedicated per-group image-spend switch was not established.",
            "usage_terms: What usage rights apply to output? Generated-output rights and complete per-image cost visibility were not established as a LibreChat software entitlement."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:images",
            "librechat:librechat:access"
          ]
        }
      ]
    },
    {
      "id": "WORK-05",
      "title": "Voice and meetings",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record dictation, read-aloud, live voice conversation, meeting transcription and summarisation, supported languages including Swiss German speech, and where audio is processed.",
      "questions": [
        {
          "id": "dictation",
          "question": "Can users dictate prompts?"
        },
        {
          "id": "read_aloud",
          "question": "Can answers be read aloud?"
        },
        {
          "id": "voice_conversation",
          "question": "Is a live voice mode available?"
        },
        {
          "id": "meeting_summaries",
          "question": "Are meetings transcribed and summarised?"
        },
        {
          "id": "swiss_german_speech",
          "question": "Is Swiss German speech recognised?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Real-time voice is available with provider streaming; meeting functionality depends on key mode.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "desktop",
              "mobile"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite real-time voice/Meeting Notes with Model Hub Usage; Meeting Notes requires Universal Model Key per feature matrix",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "desktop",
                "name": "Glean for Desktop Windows and macOS",
                "type": "desktop-app"
              },
              {
                "id": "mobile",
                "name": "Glean iOS and Android",
                "type": "mobile-app"
              }
            ]
          },
          "questions": [
            {
              "id": "dictation",
              "question": "Can users dictate prompts?",
              "support": "unknown",
              "answer": "Can users dictate prompts? The voice guide and key-mode matrix were checked; separate dictation and Swiss German recognition were not established or tested.",
              "evidenceIds": []
            },
            {
              "id": "read_aloud",
              "question": "Can answers be read aloud?",
              "support": "partial",
              "answer": "Real-time voice speaks its responses; a separate read-aloud control for arbitrary text responses was not established.",
              "evidenceIds": [
                "glean:glean:voice",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "voice_conversation",
              "question": "Is a live voice mode available?",
              "support": "supported",
              "answer": "Interactive voice supports web, desktop and mobile, with interruptible spoken replies and a chat transcript. It does not invoke a chosen published agent.",
              "evidenceIds": [
                "glean:glean:voice",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "meeting_summaries",
              "question": "Are meetings transcribed and summarised?",
              "support": "partial",
              "answer": "The key matrix lists Meeting Notes as generally available with Universal Model Key and unsupported with Customer Key. Recording/language behavior was not tested.",
              "evidenceIds": [
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "swiss_german_speech",
              "question": "Is Swiss German speech recognised?",
              "support": "unknown",
              "answer": "Is Swiss German speech recognised? The voice guide and key-mode matrix were checked; separate dictation and Swiss German recognition were not established or tested.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Raw voice audio streams to the configured model provider and is not stored according to the voice guide; transcripts follow chat retention."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:voice",
            "glean:glean:r2-core-entitlements",
            "glean:glean:key-matrix"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "LibreChat documents STT, TTS and a hands-free conversation mode that chains them. Real-time speech-to-speech behavior, meeting outcomes and Swiss German recognition remain unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Current self-hosted LibreChat Speech Settings documentation retrieved 2026-10-21; no voice-latency or dialect fixture performed",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Optional configured STT/TTS engines and provider credentials; self-hosted speech services need allowedAddresses"
            ],
            "deploymentMode": "on-premise",
            "region": "Customer-selected app infrastructure; audio processing depends on browser or configured external/self-hosted speech engines, with no universal region verified",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "dictation",
              "question": "Can users dictate prompts?",
              "support": "supported",
              "answer": "Speech configuration provides STT for audio input.",
              "evidenceIds": [
                "librechat:librechat:speech"
              ]
            },
            {
              "id": "read_aloud",
              "question": "Can answers be read aloud?",
              "support": "supported",
              "answer": "Speech configuration provides TTS for model responses.",
              "evidenceIds": [
                "librechat:librechat:speech"
              ]
            },
            {
              "id": "voice_conversation",
              "question": "Is a live voice mode available?",
              "support": "partial",
              "answer": "speechTab.conversationMode chains STT and TTS for hands-free turns: autoSendText sends the transcript after a configured delay, and automaticPlayback reads a completed response. Microphone recording is initially started by the user. Real-time speech-to-speech, interruption behavior and end-to-end latency were not tested.",
              "evidenceIds": [
                "librechat:librechat:speech-conversation-r2"
              ]
            },
            {
              "id": "meeting_summaries",
              "question": "Are meetings transcribed and summarised?",
              "support": "unknown",
              "answer": "No meeting capture/integration, speaker diarization or meeting-summary fixture was verified in the reviewed speech documentation.",
              "evidenceIds": []
            },
            {
              "id": "swiss_german_speech",
              "question": "Is Swiss German speech recognised?",
              "support": "unknown",
              "answer": "Swiss German recognition and transcript quality were not tested; a language setting does not establish dialect accuracy.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Conversation mode is a chain of transcription, text generation and playback; real-time audio-to-audio behavior, interruption and latency were not verified.",
            "Audio location depends on the chosen engine. No meeting or Swiss German fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:speech",
            "librechat:librechat:speech-conversation-r2"
          ]
        }
      ]
    },
    {
      "id": "WORK-06",
      "title": "Data analysis and document output",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record code execution for data analysis, charts, and generation of downloadable Word, Excel, PowerPoint and PDF files. Analyse the fixture Excel and request a PowerPoint summary. Record where code runs and whether files are editable.",
      "questions": [
        {
          "id": "data_analysis",
          "question": "Can it analyse spreadsheets with executed code?"
        },
        {
          "id": "charts",
          "question": "Can it produce charts?"
        },
        {
          "id": "office_file_output",
          "question": "Can it create Word, Excel or PowerPoint files?"
        },
        {
          "id": "canvas_editing",
          "question": "Is there a document or canvas editor for iterating on output?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Data analysis and Office file output are documented, with spreadsheet and template limitations.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Assistant/Canvas/document output with Model Hub Usage; provider/tool prerequisites apply",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "data_analysis",
              "question": "Can it analyse spreadsheets with executed code?",
              "support": "supported",
              "answer": "Thinking-mode uploaded spreadsheets can use a per-user/session sandbox. Indexed spreadsheets may be truncated and cross-indexed-file numeric aggregation is not supported by the documented Data Analysis route.",
              "evidenceIds": [
                "glean:glean:analysis",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "charts",
              "question": "Can it produce charts?",
              "support": "unknown",
              "answer": "The Data Analysis and Office-output guides were checked, but chart generation and chart-file fidelity were not established or observed in this pass.",
              "evidenceIds": []
            },
            {
              "id": "office_file_output",
              "question": "Can it create Word, Excel or PowerPoint files?",
              "support": "supported",
              "answer": "Enabled tools create Word documents, Excel workbooks and PowerPoint decks, saved/downloaded through the documented route. Arbitrary Word/Excel template population is not supported by create tools.",
              "evidenceIds": [
                "glean:glean:office-output",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "canvas_editing",
              "question": "Is there a document or canvas editor for iterating on output?",
              "support": "supported",
              "answer": "Slide generation creates decks in Canvas for refinement and export; exact themes and embedded elements are not guaranteed.",
              "evidenceIds": [
                "glean:glean:office-output",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "No fixture analysis or output-file inspection. Code-interpreter provider and retention differ by route."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:analysis",
            "glean:glean:r2-core-entitlements",
            "glean:glean:office-output"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The separate Code Interpreter runs analysis and produces downloadable files; artifacts provide code/HTML/diagram previews.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Separately operated compatible Code Interpreter service",
              "Experimental stateful workspaces only if explicitly configured"
            ],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "data_analysis",
              "question": "Can it analyse spreadsheets with executed code?",
              "support": "supported",
              "answer": "Configured Code Interpreter executes programs against uploaded files in its separate sandbox.",
              "evidenceIds": [
                "librechat:librechat:code"
              ]
            },
            {
              "id": "charts",
              "question": "Can it produce charts?",
              "support": "partial",
              "answer": "Code execution and generated-file downloads support chart artifacts, but the shared spreadsheet/chart fixture was not run.",
              "evidenceIds": [
                "librechat:librechat:code"
              ]
            },
            {
              "id": "office_file_output",
              "question": "Can it create Word, Excel or PowerPoint files?",
              "support": "partial",
              "answer": "Generated files are downloadable; editable Word/Excel/PowerPoint fidelity was not established with a fixture.",
              "evidenceIds": [
                "librechat:librechat:code"
              ]
            },
            {
              "id": "canvas_editing",
              "question": "Is there a document or canvas editor for iterating on output?",
              "support": "partial",
              "answer": "Artifacts render React/HTML/Mermaid content and source; a rich Office document editor was not established.",
              "evidenceIds": [
                "librechat:librechat:artifacts"
              ]
            }
          ],
          "limitations": [
            "charts: Code execution and generated-file downloads support chart artifacts, but the shared spreadsheet/chart fixture was not run.",
            "office_file_output: Generated files are downloadable; editable Word/Excel/PowerPoint fidelity was not established with a fixture.",
            "canvas_editing: Artifacts render React/HTML/Mermaid content and source; a rich Office document editor was not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:code",
            "librechat:librechat:artifacts"
          ]
        }
      ]
    },
    {
      "id": "WORK-07",
      "title": "Sharing and team spaces",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record chat sharing (link, user, group), shared projects or team spaces, channels or group chat with AI, and commenting. Test sharing a chat with a colleague in another group and record what the recipient sees, including knowledge they lack access to.",
      "questions": [
        {
          "id": "share_chats",
          "question": "Can chats be shared inside the organisation?"
        },
        {
          "id": "team_spaces",
          "question": "Are shared projects or workspaces available?"
        },
        {
          "id": "group_chat",
          "question": "Can several people chat together with the AI?"
        },
        {
          "id": "share_permission_boundary",
          "question": "Does sharing respect the recipient's access to sources?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Viewer chat sharing documents recipient-source redaction; current Projects and group-chat plan entitlements remain unknown.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Assistant Viewer sharing; current Projects and Team-chat Editor entitlement under Core Suite/Enterprise Flex unverified",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "share_chats",
              "question": "Can chats be shared inside the organisation?",
              "support": "supported",
              "answer": "Users can share chats with users, departments or the organization, with Viewer read-only access.",
              "evidenceIds": [
                "glean:glean:sharing",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "team_spaces",
              "question": "Are shared projects or workspaces available?",
              "support": "unknown",
              "answer": "The Projects guide describes gradual enablement but does not establish a current named Core Suite/Enterprise Flex entitlement. Shared-project availability remains unknown.",
              "evidenceIds": []
            },
            {
              "id": "group_chat",
              "question": "Can several people chat together with the AI?",
              "support": "unknown",
              "answer": "The Team chat guide describes a beta enabled for selected users, but its current Core Suite/Enterprise Flex entitlement was not established. Multi-user AI chat availability for a named plan remains unknown.",
              "evidenceIds": []
            },
            {
              "id": "share_permission_boundary",
              "question": "Does sharing respect the recipient's access to sources?",
              "support": "partial",
              "answer": "For Viewer chat sharing, the guide documents redaction of inaccessible citations and content. That finding does not establish the distinct Team-chat Editor entitlement or its availability for a Core Suite/Enterprise Flex tenant. No cross-group sharing test was run.",
              "evidenceIds": [
                "glean:glean:sharing",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Viewer redaction must not be generalized to Team-chat Editors. Projects and Team-chat commercial/rollout entitlements remain unknown; no two-user fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:sharing",
            "glean:glean:r2-core-entitlements",
            "glean:glean:projects",
            "glean:glean:team-chat"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Shared chat links publish transcript snapshots and optional files. Projects are personal, and shared source permission boundaries need care.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "share_chats",
              "question": "Can chats be shared inside the organisation?",
              "support": "supported",
              "answer": "Authenticated shared links are supported, with optional public viewing; public unauthenticated access is off by default.",
              "evidenceIds": [
                "librechat:librechat:share"
              ]
            },
            {
              "id": "team_spaces",
              "question": "Are shared projects or workspaces available?",
              "support": "unsupported",
              "answer": "Projects specifically cannot be shared or transferred and are personal to the creator. Shared Agents/resources are a separate capability.",
              "evidenceIds": [
                "librechat:librechat:projects"
              ]
            },
            {
              "id": "group_chat",
              "question": "Can several people chat together with the AI?",
              "support": "unknown",
              "answer": "group_chat: Can several people chat together with the AI? Simultaneous multi-person AI group chat was not established from Projects and shareable-link documentation; link continuation creates a separate personal copy.",
              "evidenceIds": []
            },
            {
              "id": "share_permission_boundary",
              "question": "Does sharing respect the recipient's access to sources?",
              "support": "partial",
              "answer": "Published file snapshots are served independently of the owner’s live file ACL. Sharing grants access to the published copy, not continuing source-system authorization; no restricted-source fixture was run.",
              "evidenceIds": [
                "librechat:librechat:share"
              ]
            }
          ],
          "limitations": [
            "group_chat: Can several people chat together with the AI? Simultaneous multi-person AI group chat was not established from Projects and shareable-link documentation; link continuation creates a separate personal copy.",
            "share_permission_boundary: Published file snapshots are served independently of the owner’s live file ACL. Sharing grants access to the published copy, not continuing source-system authorization; no restricted-source fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:share",
            "librechat:librechat:projects"
          ]
        }
      ]
    },
    {
      "id": "WORK-08",
      "title": "Interface languages and accessibility",
      "group": {
        "id": 4,
        "name": "Daily work"
      },
      "judgment": "Record UI languages, focusing on German, French, Italian and English, with translation quality observed (complete, partial, machine-translated). Record response language handling and WCAG conformance statements.",
      "questions": [
        {
          "id": "ui_languages",
          "question": "Which UI languages are offered?"
        },
        {
          "id": "dach_language_quality",
          "question": "Are German, French and Italian UIs complete and natural?"
        },
        {
          "id": "accessibility_statement",
          "question": "Is there a WCAG conformance statement?"
        },
        {
          "id": "admin_ui_languages",
          "question": "Is the admin interface available in German?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:WORK-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "German, French, Italian and English end-user UIs are documented; admin setup is not localized.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite client surfaces; detailed language/localization entitlements not separately mapped by plan",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "ui_languages",
              "question": "Which UI languages are offered?",
              "support": "supported",
              "answer": "The support matrix lists English, German, French and Italian UI among other locales.",
              "evidenceIds": [
                "glean:glean:language",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "dach_language_quality",
              "question": "Are German, French and Italian UIs complete and natural?",
              "support": "unknown",
              "answer": "Are German, French and Italian UIs complete and natural? The locale matrix and accessibility statement were checked, but translation completeness and naturalness were not observed in a logged-in German/French/Italian UI.",
              "evidenceIds": []
            },
            {
              "id": "accessibility_statement",
              "question": "Is there a WCAG conformance statement?",
              "support": "partial",
              "answer": "Glean maintains a VPAT 2.5 ACR covering WCAG 2.0/2.1/2.2 A and AA, obtainable through the Trust Center; the report was not reviewed.",
              "evidenceIds": [
                "glean:glean:accessibility",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "admin_ui_languages",
              "question": "Is the admin interface available in German?",
              "support": "unsupported",
              "answer": "The language guide explicitly says external help documentation and admin workspace setup are not yet localized.",
              "evidenceIds": [
                "glean:glean:language",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps.",
            "The language/accessibility pages describe the common product, without a separate Core Suite/Enterprise Flex localization entitlement matrix."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:language",
            "glean:glean:r2-core-entitlements",
            "glean:glean:accessibility"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:WORK-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "English, German, French and Italian UI resources are registered in the pinned client; quality and accessibility conformance were not evaluated.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "ui_languages",
              "question": "Which UI languages are offered?",
              "support": "supported",
              "answer": "The client i18n implementation registers en, de, fr and it among community-maintained translations.",
              "evidenceIds": [
                "librechat:librechat:i18n-pin"
              ]
            },
            {
              "id": "dach_language_quality",
              "question": "Are German, French and Italian UIs complete and natural?",
              "support": "unknown",
              "answer": "dach_language_quality: Are German, French and Italian UIs complete and natural? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified.",
              "evidenceIds": []
            },
            {
              "id": "accessibility_statement",
              "question": "Is there a WCAG conformance statement?",
              "support": "unknown",
              "answer": "accessibility_statement: Is there a WCAG conformance statement? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified.",
              "evidenceIds": []
            },
            {
              "id": "admin_ui_languages",
              "question": "Is the admin interface available in German?",
              "support": "unknown",
              "answer": "admin_ui_languages: Is the admin interface available in German? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "dach_language_quality: Are German, French and Italian UIs complete and natural? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified.",
            "accessibility_statement: Is there a WCAG conformance statement? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified.",
            "admin_ui_languages: Is the admin interface available in German? No complete DE/FR/IT walkthrough, German separate-admin-panel coverage test or WCAG conformance statement/report was verified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:i18n-pin"
          ]
        }
      ]
    },
    {
      "id": "ADM-01",
      "title": "Single sign-on and authentication",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record SAML, OIDC, Microsoft Entra ID, Google, LDAP, MFA enforcement, conditional-access compatibility, domain verification and plan restrictions. Test one SSO login on a trial where possible.",
      "questions": [
        {
          "id": "sso_protocols",
          "question": "Which SSO protocols and identity providers work?"
        },
        {
          "id": "sso_plan",
          "question": "Which plan includes SSO?"
        },
        {
          "id": "mfa",
          "question": "Can MFA be enforced?"
        },
        {
          "id": "conditional_access",
          "question": "Do Entra conditional-access policies apply?"
        },
        {
          "id": "domain_capture",
          "question": "Can the company claim its email domain?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "SSO is mandatory with OIDC/SAML and identity-provider MFA and conditional access.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect includes SSO and role access; detailed IdP policy setup is separately documented",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "sso_protocols",
              "question": "Which SSO protocols and identity providers work?",
              "support": "supported",
              "answer": "OIDC and SAML work with Entra ID, Google, Okta, OneLogin and generic SAML providers as documented.",
              "evidenceIds": [
                "glean:glean:sso",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "sso_plan",
              "question": "Which plan includes SSO?",
              "support": "partial",
              "answer": "SSO is mandatory during deployment setup; no separate SSO price or plan gate is given in this guide.",
              "evidenceIds": [
                "glean:glean:sso",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "mfa",
              "question": "Can MFA be enforced?",
              "support": "supported",
              "answer": "Glean recommends enforcing MFA through the configured identity provider.",
              "evidenceIds": [
                "glean:glean:sso",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "conditional_access",
              "question": "Do Entra conditional-access policies apply?",
              "support": "supported",
              "answer": "Glean recommends appropriately secure IdP conditional-access policies; mobile documents Intune-compatible sign-in.",
              "evidenceIds": [
                "glean:glean:sso",
                "glean:glean:mobile",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "domain_capture",
              "question": "Can the company claim its email domain?",
              "support": "partial",
              "answer": "Glean checks the user email domain against the expected customer domain before issuing a login cookie; broader domain-capture/migration semantics were not established.",
              "evidenceIds": [
                "glean:glean:sso",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "No SSO trial login was performed."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:sso",
            "glean:glean:r2-core-entitlements",
            "glean:glean:mobile"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Self-hosted authentication supports OAuth/OIDC, SAML and LDAP; local/LDAP TOTP can be enforced.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "sso_protocols",
              "question": "Which SSO protocols and identity providers work?",
              "support": "supported",
              "answer": "OIDC/OAuth providers include Entra, Google, Keycloak and Auth0; SAML and LDAP are documented separately.",
              "evidenceIds": [
                "librechat:librechat:openid",
                "librechat:librechat:saml",
                "librechat:librechat:auth"
              ]
            },
            {
              "id": "sso_plan",
              "question": "Which plan includes SSO?",
              "support": "supported",
              "answer": "The authentication configuration belongs to the MIT self-hosted project, with no separate SSO licence tariff.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:auth"
              ]
            },
            {
              "id": "mfa",
              "question": "Can MFA be enforced?",
              "support": "supported",
              "answer": "ENFORCE_TWO_FACTOR_AUTHENTICATION requires local/LDAP enrollment and prevents disabling it; federated accounts depend on IdP MFA.",
              "evidenceIds": [
                "librechat:librechat:auth"
              ]
            },
            {
              "id": "conditional_access",
              "question": "Do Entra conditional-access policies apply?",
              "support": "partial",
              "answer": "Entra authentication and token reuse are documented, but an actual conditional-access/device-policy login was not tested.",
              "evidenceIds": [
                "librechat:librechat:entra"
              ]
            },
            {
              "id": "domain_capture",
              "question": "Can the company claim its email domain?",
              "support": "unknown",
              "answer": "domain_capture: Can the company claim its email domain? Registration/domain filters were not established as a tenant-wide company-domain ownership claim.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "conditional_access: Entra authentication and token reuse are documented, but an actual conditional-access/device-policy login was not tested.",
            "domain_capture: Can the company claim its email domain? Registration/domain filters were not established as a tenant-wide company-domain ownership claim."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:openid",
            "librechat:librechat:saml",
            "librechat:librechat:auth",
            "librechat:librechat:license",
            "librechat:librechat:entra"
          ]
        }
      ]
    },
    {
      "id": "ADM-02",
      "title": "User provisioning and lifecycle",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record SCIM, just-in-time provisioning, group sync from the identity provider, deprovisioning effects (chats, assistants, knowledge ownership transfer) and licence assignment. Deprovision a test user and record what happens to their content.",
      "questions": [
        {
          "id": "scim",
          "question": "Is SCIM provisioning supported?"
        },
        {
          "id": "group_sync",
          "question": "Are identity-provider groups synced?"
        },
        {
          "id": "jit_provisioning",
          "question": "Are users created at first login?"
        },
        {
          "id": "deprovisioning",
          "question": "What happens to a removed user's data and shared assets?"
        },
        {
          "id": "seat_assignment",
          "question": "Can admins assign and reclaim seats?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-02",
          "verificationStatus": "not-published",
          "support": "not-published",
          "answer": "We found no public information on this. A missing finding is not evidence that the product lacks the capability.",
          "availability": null,
          "delivery": null,
          "scope": null,
          "questions": [],
          "limitations": [],
          "checkedAt": null,
          "crossCheckedAt": null,
          "nextCheckAt": null,
          "evidenceIds": []
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Entra group synchronization and federated account creation are documented; SCIM and leaver content transfer remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "scim",
              "question": "Is SCIM provisioning supported?",
              "support": "unknown",
              "answer": "scim: Is SCIM provisioning supported? SCIM was not established in the authentication/access docs or pinned repository path review. No two-user deprovisioning fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "group_sync",
              "question": "Are identity-provider groups synced?",
              "support": "supported",
              "answer": "With Entra OIDC token reuse, Graph groups sync at login; resource ACL principal membership has a documented cache.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:entra"
              ]
            },
            {
              "id": "jit_provisioning",
              "question": "Are users created at first login?",
              "support": "supported",
              "answer": "Federated login creates accounts according to the authentication configuration; OpenID/SAML registration cannot be independently disabled.",
              "evidenceIds": [
                "librechat:librechat:auth"
              ]
            },
            {
              "id": "deprovisioning",
              "question": "What happens to a removed user's data and shared assets?",
              "support": "partial",
              "answer": "The docs provide user deletion scripts, but content ownership transfer and revocation behavior were not fixture-tested.",
              "evidenceIds": [
                "librechat:librechat:auth"
              ]
            },
            {
              "id": "seat_assignment",
              "question": "Can admins assign and reclaim seats?",
              "support": "partial",
              "answer": "Operators manage accounts/roles under an MIT licence; there is no per-seat licence entitlement in the scoped source.",
              "evidenceIds": [
                "librechat:librechat:auth",
                "librechat:librechat:license"
              ]
            }
          ],
          "limitations": [
            "scim: Is SCIM provisioning supported? SCIM was not established in the authentication/access docs or pinned repository path review. No two-user deprovisioning fixture was run.",
            "deprovisioning: The docs provide user deletion scripts, but content ownership transfer and revocation behavior were not fixture-tested.",
            "seat_assignment: Operators manage accounts/roles under an MIT licence; there is no per-seat licence entitlement in the scoped source."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:access",
            "librechat:librechat:entra",
            "librechat:librechat:auth",
            "librechat:librechat:license"
          ]
        }
      ]
    },
    {
      "id": "ADM-03",
      "title": "Roles, groups and feature permissions",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record admin roles, delegated admins, groups, per-feature permissions (web search, image generation, connectors, file upload, agents), separation of subsidiaries or departments, and enforcement. Test one disabled feature for one group.",
      "questions": [
        {
          "id": "admin_roles",
          "question": "Which admin roles exist, and can admin rights be delegated?"
        },
        {
          "id": "groups",
          "question": "Can permissions be set per group?"
        },
        {
          "id": "feature_toggles",
          "question": "Which features can be switched on or off per group?"
        },
        {
          "id": "multi_entity",
          "question": "Can subsidiaries or departments be separated within one contract?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean has delegated admin roles, IdP-group permissions and feature access controls.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect/Agent Governance role controls; department and IdP group policy configuration as documented",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_roles",
              "question": "Which admin roles exist, and can admin rights be delegated?",
              "support": "supported",
              "answer": "Setup Admin, Admin, Super Admin and specialist moderators have documented scopes; only Super Admin can assign certain privileges.",
              "evidenceIds": [
                "glean:glean:roles",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "groups",
              "question": "Can permissions be set per group?",
              "support": "supported",
              "answer": "Direct and IdP-group roles combine, with highest-precedence primary roles and union of secondary roles. Group permission behavior is feature-flag dependent.",
              "evidenceIds": [
                "glean:glean:groups",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "feature_toggles",
              "question": "Which features can be switched on or off per group?",
              "support": "partial",
              "answer": "Member permissions include content and agent creation; model access, scheduled triggers and beta features have specific controls. Every feature/group combination was not verified.",
              "evidenceIds": [
                "glean:glean:users",
                "glean:glean:groups",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "multi_entity",
              "question": "Can subsidiaries or departments be separated within one contract?",
              "support": "partial",
              "answer": "Terms permit affiliates to use or order the service, while separate subsidiary data partitions within one contract were not established.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "No two-group restriction-enforcement test."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:roles",
            "glean:glean:r2-core-entitlements",
            "glean:glean:groups",
            "glean:glean:users",
            "glean:glean:terms"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Role permissions, resource ACLs and system grants support granular governance; the separate management UI remains preview.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web",
              "admin-panel-preview"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Separate Admin Panel preview for GUI management"
            ],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              },
              {
                "id": "admin-panel-preview",
                "name": "Separately deployed LibreChat Admin Panel preview",
                "type": "administration"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_roles",
              "question": "Which admin roles exist, and can admin rights be delegated?",
              "support": "supported",
              "answer": "ADMIN/USER and custom roles exist; capability grants can delegate selected administrative functions without full admin.",
              "evidenceIds": [
                "librechat:librechat:access"
              ]
            },
            {
              "id": "groups",
              "question": "Can permissions be set per group?",
              "support": "supported",
              "answer": "Local and Entra groups can receive ACLs, system grants and configuration overrides.",
              "evidenceIds": [
                "librechat:librechat:access",
                "librechat:librechat:admin"
              ]
            },
            {
              "id": "feature_toggles",
              "question": "Which features can be switched on or off per group?",
              "support": "supported",
              "answer": "Permissions include Agents, MCP, prompts, memory, search, file search/citations and code execution.",
              "evidenceIds": [
                "librechat:librechat:access"
              ]
            },
            {
              "id": "multi_entity",
              "question": "Can subsidiaries or departments be separated within one contract?",
              "support": "partial",
              "answer": "Tenant-scoped API queries and group/configuration boundaries are documented. A commercial multi-entity contract and tested tenant isolation were not established.",
              "evidenceIds": [
                "librechat:librechat:insights",
                "librechat:librechat:access"
              ]
            }
          ],
          "limitations": [
            "Separate admin management UI is preview; the core authorization model is documented as available.",
            "No two-group disabled-feature fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:access",
            "librechat:librechat:admin",
            "librechat:librechat:insights"
          ]
        }
      ]
    },
    {
      "id": "ADM-04",
      "title": "Usage and adoption analytics",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record dashboards for active users, usage by feature, model, group and assistant, export, and privacy controls (aggregation, pseudonymisation, works-council-friendly settings). Distinguish aggregate adoption metrics from per-person monitoring.",
      "questions": [
        {
          "id": "adoption_dashboard",
          "question": "Is there an adoption dashboard?"
        },
        {
          "id": "breakdowns",
          "question": "Can usage be broken down by group, model, feature and assistant?"
        },
        {
          "id": "export",
          "question": "Can usage data be exported?"
        },
        {
          "id": "privacy_modes",
          "question": "Can per-person reporting be limited or pseudonymised?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Insights provides adoption and individual activity reporting with CSV export.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Billing & Insights included in seat; Enterprise Flex Admin console/Insights platform separate from usage rates",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "adoption_dashboard",
              "question": "Is there an adoption dashboard?",
              "support": "supported",
              "answer": "Insights includes daily, weekly and monthly active users and adoption metrics.",
              "evidenceIds": [
                "glean:glean:insights",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "breakdowns",
              "question": "Can usage be broken down by group, model, feature and assistant?",
              "support": "partial",
              "answer": "Department filters and per-person Assistant, search, agent and MCP activity are documented. Model usage is a separate dashboard; a unified breakdown by every requested dimension was not verified.",
              "evidenceIds": [
                "glean:glean:insights",
                "glean:glean:core-price",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "export",
              "question": "Can usage data be exported?",
              "support": "supported",
              "answer": "The All signed up users table exports CSV; customer event delivery supports downstream analysis.",
              "evidenceIds": [
                "glean:glean:insights",
                "glean:glean:events",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "privacy_modes",
              "question": "Can per-person reporting be limited or pseudonymised?",
              "support": "partial",
              "answer": "Departments under five users are grouped. The same guide documents named user activity; an organization-wide pseudonymous mode was not established.",
              "evidenceIds": [
                "glean:glean:insights",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:insights",
            "glean:glean:r2-core-entitlements",
            "glean:glean:core-price",
            "glean:glean:events"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Optional Insights reports identifiable activity; token transactions and optional tracing are separate sources of usage detail.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "adoption_dashboard",
              "question": "Is there an adoption dashboard?",
              "support": "supported",
              "answer": "Opt-in Insights reports conversations, unique users, messages, tokens, top users and recent conversations.",
              "evidenceIds": [
                "librechat:librechat:insights"
              ]
            },
            {
              "id": "breakdowns",
              "question": "Can usage be broken down by group, model, feature and assistant?",
              "support": "partial",
              "answer": "Insights supports Agent filtering and user activity; recorded token/context cost details are per model/endpoint. Complete group/feature/assistant exports were not established.",
              "evidenceIds": [
                "librechat:librechat:insights",
                "librechat:librechat:tokens"
              ]
            },
            {
              "id": "export",
              "question": "Can usage data be exported?",
              "support": "unknown",
              "answer": "export: Can usage data be exported? A documented complete admin analytics export and group/cost-centre dataset were not verified.",
              "evidenceIds": []
            },
            {
              "id": "privacy_modes",
              "question": "Can per-person reporting be limited or pseudonymised?",
              "support": "partial",
              "answer": "Insights is off unless enabled and is capability-gated; it can display names, emails and first-message content. Pseudonymized reporting was not established.",
              "evidenceIds": [
                "librechat:librechat:insights"
              ]
            }
          ],
          "limitations": [
            "breakdowns: Insights supports Agent filtering and user activity; recorded token/context cost details are per model/endpoint. Complete group/feature/assistant exports were not established.",
            "export: Can usage data be exported? A documented complete admin analytics export and group/cost-centre dataset were not verified.",
            "privacy_modes: Insights is off unless enabled and is capability-gated; it can display names, emails and first-message content. Pseudonymized reporting was not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:insights",
            "librechat:librechat:tokens"
          ]
        }
      ]
    },
    {
      "id": "ADM-05",
      "title": "Spend controls and cost allocation",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record cost visibility per user, group and cost centre, budgets and their behaviour (alert, block, downgrade model), pooled credits, and chargeback exports. Test a small budget on a trial where possible. Distinguish billed amounts, estimates and unavailable amounts.",
      "questions": [
        {
          "id": "cost_visibility",
          "question": "Can admins see cost or consumption per user and group?"
        },
        {
          "id": "budgets",
          "question": "Can budgets be set per user or group?"
        },
        {
          "id": "budget_enforcement",
          "question": "Does reaching a budget alert, block or downgrade?"
        },
        {
          "id": "chargeback",
          "question": "Can costs be exported per cost centre?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Usage limits can alert or block; team limits are per-member defaults rather than pooled team budgets.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite / Enterprise Flex; legacy Enterprise exclusions stated",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_visibility",
              "question": "Can admins see cost or consumption per user and group?",
              "support": "supported",
              "answer": "Usage dashboards expose user/team/agent consumption in dollars or FlexCredits depending on plan.",
              "evidenceIds": [
                "glean:glean:limits"
              ]
            },
            {
              "id": "budgets",
              "question": "Can budgets be set per user or group?",
              "support": "supported",
              "answer": "Organization, user, department/IdP-group and agent monthly limits are documented for Core Suite/Enterprise Flex; legacy Enterprise lacks user/agent limits.",
              "evidenceIds": [
                "glean:glean:limits"
              ]
            },
            {
              "id": "budget_enforcement",
              "question": "Does reaching a budget alert, block or downgrade?",
              "support": "supported",
              "answer": "An optional block stops later billable requests after the running action completes. Alert-only is also available; some overage can occur.",
              "evidenceIds": [
                "glean:glean:limits"
              ]
            },
            {
              "id": "chargeback",
              "question": "Can costs be exported per cost centre?",
              "support": "unknown",
              "answer": "Can costs be exported per cost centre? The usage-limit and pricing guides were checked; cost-center chargeback export and cost allocation outside current department/group metadata were not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:limits"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Optional token-credit balances block admission when insufficient; credit estimates differ from actual cloud invoices.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_visibility",
              "question": "Can admins see cost or consumption per user and group?",
              "support": "partial",
              "answer": "Token transactions and configured token prices support per-user/model estimates. Insights explicitly reports activity rather than monetary billing.",
              "evidenceIds": [
                "librechat:librechat:tokens",
                "librechat:librechat:insights"
              ]
            },
            {
              "id": "budgets",
              "question": "Can budgets be set per user or group?",
              "support": "partial",
              "answer": "Optional per-user start balances and automatic refills are documented. Group/cost-centre pooled budgets were not established.",
              "evidenceIds": [
                "librechat:librechat:balance"
              ]
            },
            {
              "id": "budget_enforcement",
              "question": "Does reaching a budget alert, block or downgrade?",
              "support": "supported",
              "answer": "Pinned balance middleware reserves estimated token cost and throws an error if credits cannot be reserved; no low-budget trial was run.",
              "evidenceIds": [
                "librechat:librechat:balance-pin"
              ]
            },
            {
              "id": "chargeback",
              "question": "Can costs be exported per cost centre?",
              "support": "unknown",
              "answer": "chargeback: Can costs be exported per cost centre? Cost-centre chargeback exports and reconciliation to actual vendor invoices were not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "cost_visibility: Token transactions and configured token prices support per-user/model estimates. Insights explicitly reports activity rather than monetary billing.",
            "budgets: Optional per-user start balances and automatic refills are documented. Group/cost-centre pooled budgets were not established.",
            "chargeback: Can costs be exported per cost centre? Cost-centre chargeback exports and reconciliation to actual vendor invoices were not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:tokens",
            "librechat:librechat:insights",
            "librechat:librechat:balance",
            "librechat:librechat:balance-pin"
          ]
        }
      ]
    },
    {
      "id": "ADM-06",
      "title": "Audit logs and compliance export",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record which events are logged (logins, admin changes, prompts, responses, file access, connector queries), retention, export or SIEM streaming, and eDiscovery/legal hold. Use the word audit only with a defined retention and integrity model.",
      "questions": [
        {
          "id": "admin_events",
          "question": "Are admin and security events logged?"
        },
        {
          "id": "content_logging",
          "question": "Can prompts and answers be retained for compliance, and is it configurable?"
        },
        {
          "id": "siem_export",
          "question": "Can logs stream to a SIEM or be exported?"
        },
        {
          "id": "ediscovery",
          "question": "Are eDiscovery and legal hold supported?"
        },
        {
          "id": "log_retention",
          "question": "How long are logs kept?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Administrative change logs have documented CSV export and retention. Prompt/response compliance logging remains unknown because source scopes conflict.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect administrative audit logs; no verified prompt/response compliance-logging finding",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_events",
              "question": "Are admin and security events logged?",
              "support": "supported",
              "answer": "Admin Audit Logs record configuration changes by admins and Glean support, excluding end-user events. Default retention is 30 days.",
              "evidenceIds": [
                "glean:glean:audit",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "content_logging",
              "question": "Can prompts and answers be retained for compliance, and is it configurable?",
              "support": "unknown",
              "answer": "Prompt/response retention and its configuration remain unknown. The deployment comparison says individual queries/responses are not logged, while Customer Event documentation describes CHAT response content and the history guide separates that logging from history. Their deployment/system scopes were not reconciled.",
              "evidenceIds": []
            },
            {
              "id": "siem_export",
              "question": "Can logs stream to a SIEM or be exported?",
              "support": "partial",
              "answer": "The administrative audit-log guide documents self-serve CSV export. For Glean-hosted deployments, ongoing delivery of administrative logs can be configured by the account team and is not enabled by default or self-serve. This finding makes no prompt/response or Customer Event export guarantee.",
              "evidenceIds": [
                "glean:glean:audit",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "ediscovery",
              "question": "Are eDiscovery and legal hold supported?",
              "support": "unknown",
              "answer": "Are eDiscovery and legal hold supported? Administrative and Customer Event documentation was checked. eDiscovery/legal-hold behavior, integrity guarantees and per-destination content-log retention were not established.",
              "evidenceIds": []
            },
            {
              "id": "log_retention",
              "question": "How long are logs kept?",
              "support": "partial",
              "answer": "Administrative audit logs have a documented 30-day default; extended periods require arrangement. Customer Event/content-log retention is unknown and no common retention term for all logs is inferred.",
              "evidenceIds": [
                "glean:glean:audit",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Only administrative/configuration events, their export and their stated retention are positive findings. Content logging, its compliance integrity model, eDiscovery and legal hold remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:audit",
            "glean:glean:r2-core-entitlements",
            "glean:glean:deploy",
            "glean:glean:events",
            "glean:glean:history"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Operational logs and persisted chats are available; a complete audit retention/integrity or eDiscovery system was not verified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_events",
              "question": "Are admin and security events logged?",
              "support": "partial",
              "answer": "Backend logs capture errors/debug activity and can include operational/security actions. A complete immutable admin-event schema was not established.",
              "evidenceIds": [
                "librechat:librechat:logging"
              ]
            },
            {
              "id": "content_logging",
              "question": "Can prompts and answers be retained for compliance, and is it configurable?",
              "support": "partial",
              "answer": "Chats are persisted in MongoDB subject to retention settings; external tracing is optional. This is not a verified compliance archive.",
              "evidenceIds": [
                "librechat:librechat:retention",
                "librechat:librechat:compose-pin"
              ]
            },
            {
              "id": "siem_export",
              "question": "Can logs stream to a SIEM or be exported?",
              "support": "partial",
              "answer": "Operators can feed log files to external systems such as ELK. A native managed SIEM stream and integrity guarantee were not verified.",
              "evidenceIds": [
                "librechat:librechat:logging"
              ]
            },
            {
              "id": "ediscovery",
              "question": "Are eDiscovery and legal hold supported?",
              "support": "unknown",
              "answer": "ediscovery: Are eDiscovery and legal hold supported? No eDiscovery/legal hold, tamper-evident archive or complete prompt/file/connector event coverage was verified.",
              "evidenceIds": []
            },
            {
              "id": "log_retention",
              "question": "How long are logs kept?",
              "support": "partial",
              "answer": "The logging guide describes 14-day rotation. Rotation is not evidence of an enforced legal retention or deletion guarantee across external sinks.",
              "evidenceIds": [
                "librechat:librechat:logging"
              ]
            }
          ],
          "limitations": [
            "admin_events: Backend logs capture errors/debug activity and can include operational/security actions. A complete immutable admin-event schema was not established.",
            "content_logging: Chats are persisted in MongoDB subject to retention settings; external tracing is optional. This is not a verified compliance archive.",
            "siem_export: Operators can feed log files to external systems such as ELK. A native managed SIEM stream and integrity guarantee were not verified.",
            "ediscovery: Are eDiscovery and legal hold supported? No eDiscovery/legal hold, tamper-evident archive or complete prompt/file/connector event coverage was verified.",
            "log_retention: The logging guide describes 14-day rotation. Rotation is not evidence of an enforced legal retention or deletion guarantee across external sinks."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:logging",
            "librechat:librechat:retention",
            "librechat:librechat:compose-pin"
          ]
        }
      ]
    },
    {
      "id": "ADM-07",
      "title": "Data loss prevention and personal data",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record detection and handling of personal and confidential data before it reaches a model: redaction, masking, blocking, warning. Record integration with Purview, Netskope or similar, and whether filtering runs locally or at a third party. Send a fixture prompt with a Swiss AHV number and IBAN and record the outcome.",
      "questions": [
        {
          "id": "pii_detection",
          "question": "Is personal data detected in prompts and files?"
        },
        {
          "id": "pii_action",
          "question": "Is it redacted, masked, blocked or only warned?"
        },
        {
          "id": "custom_patterns",
          "question": "Can admins add custom patterns or terms?"
        },
        {
          "id": "dlp_integration",
          "question": "Does it integrate with an existing DLP product?"
        },
        {
          "id": "filter_location",
          "question": "Where does filtering run?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Protect+ can flag or block configured sensitive patterns in prompts; file coverage and Swiss-fixture outcomes are unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Enterprise Flex + Protect+ site-wide annual add-on; basic Core Suite CSV protection is a different mechanism",
            "addOns": [
              "Glean Protect+ AI security"
            ],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "pii_detection",
              "question": "Is personal data detected in prompts and files?",
              "support": "partial",
              "answer": "Prompt-only regex policy covers configured PII, credentials, IBAN and government-ID patterns. Templates start disabled; this policy excludes retrieved data and generated responses.",
              "evidenceIds": [
                "glean:glean:pii",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "pii_action",
              "question": "Is it redacted, masked, blocked or only warned?",
              "support": "supported",
              "answer": "Admins choose monitoring with findings or immediate blocking of the run; the guide does not promise automatic redaction for this policy.",
              "evidenceIds": [
                "glean:glean:pii",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "custom_patterns",
              "question": "Can admins add custom patterns or terms?",
              "support": "supported",
              "answer": "Admins can define RE2 pattern groups and test patterns before enabling them.",
              "evidenceIds": [
                "glean:glean:pii",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "dlp_integration",
              "question": "Does it integrate with an existing DLP product?",
              "support": "partial",
              "answer": "Protect+ documents AI security integrations including Palo Alto Networks in the product/security material. Purview/Netskope integration and exact enterprise entitlement were not verified.",
              "evidenceIds": [
                "glean:glean:protect",
                "glean:glean:subprocessors",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "filter_location",
              "question": "Where does filtering run?",
              "support": "unknown",
              "answer": "Where does filtering run? Protect+ and prompt-policy guides were checked. Filtering location, upload scanning by this policy and Swiss AHV/IBAN behavior were not observed.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Prompt-only pattern policy is not evidence that file contents are filtered before every model call. No personal-data fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:pii",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:protect",
            "glean:glean:subprocessors"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Optional server-side content filters support configured pattern detection, blocking and auditing, plus narrowly scoped Agent text redaction. External DLP integration and fixture accuracy remain unknown.",
          "availability": "source-only",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Development source a378657583567310c841d652b0f6b00c83e2bd6b; current Latest (dev) documentation; limited redaction announced in config v1.3.18 on 2026-10-22",
            "plan": "Customer-operated LibreChat; optional base-YAML content policies, disabled unless configured",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "pii_detection",
              "question": "Is personal data detected in prompts and files?",
              "support": "partial",
              "answer": "Configured source-aware policies can inspect selected prompt fields and file names/extracted text/transcripts. Built-in starter rules match credentials; admins must supply additional personal-data patterns. Opaque files may be allowed by default or explicitly blocked. AHV/IBAN and confidential-file detection accuracy were not tested.",
              "evidenceIds": [
                "librechat:librechat:r4-content-filter",
                "librechat:librechat:r4-pii-runtime",
                "librechat:librechat:r4-patterns",
                "librechat:librechat:r4-private-submission",
                "librechat:librechat:r4-filter-middleware"
              ]
            },
            {
              "id": "pii_action",
              "question": "Is it redacted, masked, blocked or only warned?",
              "support": "partial",
              "answer": "Configured matches can block or audit. Redaction transforms only fresh, text-only interactive Agent submissions carrying clientRequestId and a valid CREDS_KEY; edits, resumes, files, quotes and other endpoints retain blocking checks. Original text is encrypted and unindexed, rather than discarded. No running deployment was tested.",
              "evidenceIds": [
                "librechat:librechat:r4-content-filter",
                "librechat:librechat:r4-pii-runtime",
                "librechat:librechat:r4-patterns",
                "librechat:librechat:r4-private-submission",
                "librechat:librechat:r4-filter-middleware"
              ]
            },
            {
              "id": "custom_patterns",
              "question": "Can admins add custom patterns or terms?",
              "support": "supported",
              "answer": "Operators can add labelled custom RE2JS regular expressions in base librechat.yaml, with optional categories. Database/role/group/user overrides cannot modify the policy; all replicas must load matching configuration. Invalid rules are rejected on configuration load.",
              "evidenceIds": [
                "librechat:librechat:r4-content-filter",
                "librechat:librechat:r4-patterns",
                "librechat:librechat:r4-filter-middleware"
              ]
            },
            {
              "id": "dlp_integration",
              "question": "Does it integrate with an existing DLP product?",
              "support": "unknown",
              "answer": "No first-party Purview/Netskope or other external DLP connector was established from the content-filter guide, current public repository tree and targeted official-site search. Configurable local patterns are not evidence of an external enterprise DLP integration.",
              "evidenceIds": []
            },
            {
              "id": "filter_location",
              "question": "Where does filtering run?",
              "support": "supported",
              "answer": "Inspected content-filter middleware and rule evaluation run in the customer-operated LibreChat API backend. Optional extraction/OCR and inference providers remain separate data flows; no named deployment region or traffic path was tested.",
              "evidenceIds": [
                "librechat:librechat:r4-pii-runtime",
                "librechat:librechat:r4-filter-middleware"
              ]
            }
          ],
          "limitations": [
            "Development-source finding; no running instance or AHV/IBAN fixture.",
            "Filtering is opt-in and limited to configured sources/fields. Default patterns cover credential shapes, not every PII class.",
            "Redaction applies only to eligible fresh Agent text; encrypted originals remain stored.",
            "A dedicated external DLP integration remains unverified."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "librechat:librechat:r4-content-filter",
            "librechat:librechat:r4-pii-runtime",
            "librechat:librechat:r4-patterns",
            "librechat:librechat:r4-private-submission",
            "librechat:librechat:r4-filter-middleware",
            "librechat:librechat:r4-config-1318"
          ]
        }
      ]
    },
    {
      "id": "ADM-08",
      "title": "AI policy and guardrails",
      "group": {
        "id": 5,
        "name": "Administration and governance"
      },
      "judgment": "Record organisation-wide system instructions, acceptable-use notices and acknowledgement, content filters, topic restrictions, AI-output labelling, and admin visibility of policy violations. Separate enforced policy from instructions the model is expected to follow.",
      "questions": [
        {
          "id": "org_instructions",
          "question": "Can admins set organisation-wide instructions?"
        },
        {
          "id": "usage_notice",
          "question": "Can users be required to accept a usage policy?"
        },
        {
          "id": "content_filters",
          "question": "Are content filters configurable?"
        },
        {
          "id": "violation_reporting",
          "question": "Are policy hits visible to admins?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:ADM-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Enterprise instructions and configurable AI security policies are documented.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Enterprise Flex Assistant instructions; Protect+ site-wide annual add-on for security monitoring/blocking",
            "addOns": [
              "Protect+ for AI security findings; not required for basic custom instructions"
            ],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "org_instructions",
              "question": "Can admins set organisation-wide instructions?",
              "support": "supported",
              "answer": "Admins can configure up to five enterprise custom instructions for Assistant.",
              "evidenceIds": [
                "glean:glean:org-instructions",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "usage_notice",
              "question": "Can users be required to accept a usage policy?",
              "support": "unknown",
              "answer": "Can users be required to accept a usage policy? The custom-instruction and AI security guides were checked; a mandatory acceptable-use acknowledgement flow was not established.",
              "evidenceIds": []
            },
            {
              "id": "content_filters",
              "question": "Are content filters configurable?",
              "support": "supported",
              "answer": "Protect+ policies can monitor/block configured sensitive prompts and restrict topics; enforcement depends on enabled policy.",
              "evidenceIds": [
                "glean:glean:pii",
                "glean:glean:protect",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "violation_reporting",
              "question": "Are policy hits visible to admins?",
              "support": "supported",
              "answer": "Monitoring creates admin findings with matched patterns, snippets and conversation links.",
              "evidenceIds": [
                "glean:glean:pii",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            }
          ],
          "limitations": [
            "Model-followed instructions are distinct from policy enforcement."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:org-instructions",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:pii",
            "glean:glean:protect"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:ADM-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Operators can configure prompts and usage terms; abuse moderation is distinct from semantic content-policy enforcement.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "org_instructions",
              "question": "Can admins set organisation-wide instructions?",
              "support": "partial",
              "answer": "Enforced model-spec presets and Agent instructions can guide behavior; model-followed instructions are not guaranteed policy enforcement.",
              "evidenceIds": [
                "librechat:librechat:modelspec",
                "librechat:librechat:agents"
              ]
            },
            {
              "id": "usage_notice",
              "question": "Can users be required to accept a usage policy?",
              "support": "supported",
              "answer": "Interface configuration includes custom terms of service and acceptance settings.",
              "evidenceIds": [
                "librechat:librechat:interface"
              ]
            },
            {
              "id": "content_filters",
              "question": "Are content filters configurable?",
              "support": "partial",
              "answer": "Automated moderation scores rate/authentication/message abuse and can ban users. Semantic topic or PII policy coverage was not established.",
              "evidenceIds": [
                "librechat:librechat:mod"
              ]
            },
            {
              "id": "violation_reporting",
              "question": "Are policy hits visible to admins?",
              "support": "partial",
              "answer": "Abuse scoring is documented, but a complete organization content-policy violation dashboard and reporting fixture were not established.",
              "evidenceIds": [
                "librechat:librechat:mod"
              ]
            }
          ],
          "limitations": [
            "org_instructions: Enforced model-spec presets and Agent instructions can guide behavior; model-followed instructions are not guaranteed policy enforcement.",
            "content_filters: Automated moderation scores rate/authentication/message abuse and can ban users. Semantic topic or PII policy coverage was not established.",
            "violation_reporting: Abuse scoring is documented, but a complete organization content-policy violation dashboard and reporting fixture were not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:modelspec",
            "librechat:librechat:agents",
            "librechat:librechat:interface",
            "librechat:librechat:mod"
          ]
        }
      ]
    },
    {
      "id": "DATA-01",
      "title": "Hosting location and data residency",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record country or region separately for chat storage, files and indexes, model inference, backups, logs and telemetry, and support access. Name the cloud provider. Record whether residency is default, a paid option or plan-dependent. \"EU data boundary\" programmes are recorded with their documented exceptions.",
      "questions": [
        {
          "id": "storage_region",
          "question": "Where are chats, files and indexes stored?"
        },
        {
          "id": "inference_region",
          "question": "Where do model calls run, per provider?"
        },
        {
          "id": "backups_logs_region",
          "question": "Where are backups, logs and telemetry?"
        },
        {
          "id": "support_access_region",
          "question": "From where can vendor staff access data?"
        },
        {
          "id": "swiss_hosting",
          "question": "Is Swiss hosting available?"
        },
        {
          "id": "residency_plan",
          "question": "Which plan or option provides residency?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Hosting is region-selectable, but storage, model processing and remote support must be scoped separately.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Glean Hosted regional single-tenant hosting included; Customer Hosted and provider regions remain contract/key choices",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "storage_region",
              "question": "Where are chats, files and indexes stored?",
              "support": "partial",
              "answer": "Tenant storage and index follow the selected isolated GCP/AWS deployment; the public GCP list includes Netherlands, Belgium and Frankfurt. Actual contracted country was not selected.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:regions",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "inference_region",
              "question": "Where do model calls run, per provider?",
              "support": "partial",
              "answer": "Model routes depend on cloud and key mode; GCP/AWS Customer Key has cross-cloud restrictions. The subprocessor list allows customer-selected provider locations but does not establish every model remains in EU/CH.",
              "evidenceIds": [
                "glean:glean:models",
                "glean:glean:subprocessors",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "backups_logs_region",
              "question": "Where are backups, logs and telemetry?",
              "support": "partial",
              "answer": "Deployment documentation lists backups up to seven days but no full country map for backups, telemetry and central services was established.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "support_access_region",
              "question": "From where can vendor staff access data?",
              "support": "supported",
              "answer": "The subprocessor list names the Indian affiliate for remote support/security/debugging; the SLA names California and Bangalore support locations.",
              "evidenceIds": [
                "glean:glean:subprocessors",
                "glean:glean:sla",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "swiss_hosting",
              "question": "Is Swiss hosting available?",
              "support": "unknown",
              "answer": "Is Swiss hosting available? Region and deployment pages were checked; Swiss hosting, exact backup/log/telemetry geography and all model-provider regional exceptions were not established.",
              "evidenceIds": []
            },
            {
              "id": "residency_plan",
              "question": "Which plan or option provides residency?",
              "support": "partial",
              "answer": "Both vendor-hosted and customer-cloud modes offer region selection. Prices, thresholds and per-model regional conditions remain contractual.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:deploy",
            "glean:glean:regions",
            "glean:glean:r2-core-entitlements",
            "glean:glean:models",
            "glean:glean:subprocessors",
            "glean:glean:sla",
            "glean:glean:terms"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Customer operators choose storage and service locations; external model, OCR, search and code services need separate residency decisions.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "storage_region",
              "question": "Where are chats, files and indexes stored?",
              "support": "supported",
              "answer": "The reference self-hosted stack keeps application data in configured MongoDB/files and retrieval data in PGVector. Its country is chosen by the deployer.",
              "evidenceIds": [
                "librechat:librechat:compose-pin",
                "librechat:librechat:remote"
              ]
            },
            {
              "id": "inference_region",
              "question": "Where do model calls run, per provider?",
              "support": "supported",
              "answer": "Customer-selected cloud endpoints/regions or local endpoints determine inference; hosting LibreChat in Switzerland does not place every external model there.",
              "evidenceIds": [
                "librechat:librechat:custom",
                "librechat:librechat:bedrock",
                "librechat:librechat:vertex"
              ]
            },
            {
              "id": "backups_logs_region",
              "question": "Where are backups, logs and telemetry?",
              "support": "partial",
              "answer": "Logs and mounted data reside in the configured deployment; backup, telemetry and optional tracing geographies depend on operator choices and were not audited.",
              "evidenceIds": [
                "librechat:librechat:logging",
                "librechat:librechat:compose-pin"
              ]
            },
            {
              "id": "support_access_region",
              "question": "From where can vendor staff access data?",
              "support": "unknown",
              "answer": "support_access_region: From where can vendor staff access data? No vendor or integrator support-access country restriction was reviewed for this customer-operated deployment.",
              "evidenceIds": []
            },
            {
              "id": "swiss_hosting",
              "question": "Is Swiss hosting available?",
              "support": "partial",
              "answer": "A customer may run the software on Swiss infrastructure; no bundled Swiss managed inference/support commitment was established.",
              "evidenceIds": [
                "librechat:librechat:remote",
                "librechat:librechat:license"
              ]
            },
            {
              "id": "residency_plan",
              "question": "Which plan or option provides residency?",
              "support": "supported",
              "answer": "Customer-controlled placement is a self-hosted deployment property, not a separately priced residency licence.",
              "evidenceIds": [
                "librechat:librechat:remote",
                "librechat:librechat:license"
              ]
            }
          ],
          "limitations": [
            "backups_logs_region: Logs and mounted data reside in the configured deployment; backup, telemetry and optional tracing geographies depend on operator choices and were not audited.",
            "support_access_region: From where can vendor staff access data? No vendor or integrator support-access country restriction was reviewed for this customer-operated deployment.",
            "swiss_hosting: A customer may run the software on Swiss infrastructure; no bundled Swiss managed inference/support commitment was established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:compose-pin",
            "librechat:librechat:remote",
            "librechat:librechat:custom",
            "librechat:librechat:bedrock",
            "librechat:librechat:vertex",
            "librechat:librechat:logging",
            "librechat:librechat:license"
          ]
        }
      ]
    },
    {
      "id": "DATA-02",
      "title": "Deployment options",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record multi-tenant SaaS, dedicated single-tenant instance, deployment in the customer's cloud account, on-premise and air-gapped as separate options with plan and availability. Record which features are missing in each mode, who operates it, and the documented seat or contract threshold for each mode, which can differ from the enterprise plan threshold (e.g. dedicated SaaS from 2,000 seats, own cloud from 5,000). A local-network connector or gateway that reaches on-prem data from a vendor-hosted platform is KNOW-03, not on-premise deployment.",
      "questions": [
        {
          "id": "multi_tenant_saas",
          "question": "Is a shared SaaS offered?"
        },
        {
          "id": "dedicated_instance",
          "question": "Is a dedicated single-tenant instance offered, from what size?"
        },
        {
          "id": "customer_cloud",
          "question": "Can it run in the customer's own cloud account, from what size?"
        },
        {
          "id": "on_premise",
          "question": "Can the whole platform run on customer infrastructure, from what size?"
        },
        {
          "id": "air_gapped",
          "question": "Can it run without internet access?"
        },
        {
          "id": "mode_feature_gaps",
          "question": "Which features are missing outside SaaS?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean documents dedicated vendor hosting and Glean-operated deployment in customer cloud accounts.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Glean Hosted single tenant; separately contracted Customer Hosted private-cloud configuration under Core Suite/Enterprise Flex",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "multi_tenant_saas",
              "question": "Is a shared SaaS offered?",
              "support": "unsupported",
              "answer": "Deployment documentation explicitly says Glean uses single-tenant infrastructure in both supported modes. This is not a shared tenant offer.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "dedicated_instance",
              "question": "Is a dedicated single-tenant instance offered, from what size?",
              "support": "supported",
              "answer": "Glean Hosted runs isolated customer infrastructure in Glean cloud accounts; the public guide gives no numerical seat threshold.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "customer_cloud",
              "question": "Can it run in the customer's own cloud account, from what size?",
              "support": "supported",
              "answer": "Customer Hosted, formerly Cloud-Prem, runs a Glean-managed tenant in customer GCP or AWS. Glean handles upgrades and keeps support access; seat/contract minimum is not published.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            },
            {
              "id": "on_premise",
              "question": "Can the whole platform run on customer infrastructure, from what size?",
              "support": "unknown",
              "answer": "Can the whole platform run on customer infrastructure, from what size? The deployment guide and terms describe supported cloud accounts, not a whole-platform on-premises or air-gapped entitlement. Numerical minimums for each mode were not found.",
              "evidenceIds": []
            },
            {
              "id": "air_gapped",
              "question": "Can it run without internet access?",
              "support": "unknown",
              "answer": "Can it run without internet access? The deployment guide and terms describe supported cloud accounts, not a whole-platform on-premises or air-gapped entitlement. Numerical minimums for each mode were not found.",
              "evidenceIds": []
            },
            {
              "id": "mode_feature_gaps",
              "question": "Which features are missing outside SaaS?",
              "support": "partial",
              "answer": "The guide describes the same product in both modes, but key/provider matrices document cloud and feature differences. Customer Hosted cannot be independently patched or re-architected by the customer.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:key-matrix",
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:deploy",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:key-matrix"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The project documents local and customer-cloud installs. A free public demo is separate from a production managed service.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web",
              "public-demo"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              },
              {
                "id": "public-demo",
                "name": "LibreChat public evaluation demo",
                "type": "hosted-demo"
              }
            ]
          },
          "questions": [
            {
              "id": "multi_tenant_saas",
              "question": "Is a shared SaaS offered?",
              "support": "partial",
              "answer": "The project operates a free public evaluation Demo, not a reviewed production business SaaS offer. Its terms permit data cleanups and disclaim persistence.",
              "evidenceIds": [
                "librechat:librechat:demo",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "dedicated_instance",
              "question": "Is a dedicated single-tenant instance offered, from what size?",
              "support": "unknown",
              "answer": "dedicated_instance: Is a dedicated single-tenant instance offered, from what size? A vendor-operated dedicated production service and its contractual size floor were not established.",
              "evidenceIds": []
            },
            {
              "id": "customer_cloud",
              "question": "Can it run in the customer's own cloud account, from what size?",
              "support": "supported",
              "answer": "Remote hosting documentation describes customer-selected servers/cloud hosting without a software seat minimum.",
              "evidenceIds": [
                "librechat:librechat:remote",
                "librechat:librechat:license"
              ]
            },
            {
              "id": "on_premise",
              "question": "Can the whole platform run on customer infrastructure, from what size?",
              "support": "supported",
              "answer": "Docker/npm installation can run the application and dependencies on customer infrastructure.",
              "evidenceIds": [
                "librechat:librechat:local",
                "librechat:librechat:compose-pin"
              ]
            },
            {
              "id": "air_gapped",
              "question": "Can it run without internet access?",
              "support": "partial",
              "answer": "Local chat/embedding routes exist, but a complete disconnected installation and its full dependency behavior were not verified.",
              "evidenceIds": [
                "librechat:librechat:custom",
                "librechat:librechat:ragcfg"
              ]
            },
            {
              "id": "mode_feature_gaps",
              "question": "Which features are missing outside SaaS?",
              "support": "partial",
              "answer": "External APIs, OCR/search services and separate code runtimes need their own availability/networking; there is no verified SaaS/on-prem feature-parity matrix.",
              "evidenceIds": [
                "librechat:librechat:ocr",
                "librechat:librechat:web",
                "librechat:librechat:code"
              ]
            }
          ],
          "limitations": [
            "multi_tenant_saas: The project operates a free public evaluation Demo, not a reviewed production business SaaS offer. Its terms permit data cleanups and disclaim persistence.",
            "dedicated_instance: Is a dedicated single-tenant instance offered, from what size? A vendor-operated dedicated production service and its contractual size floor were not established.",
            "air_gapped: Local chat/embedding routes exist, but a complete disconnected installation and its full dependency behavior were not verified.",
            "mode_feature_gaps: External APIs, OCR/search services and separate code runtimes need their own availability/networking; there is no verified SaaS/on-prem feature-parity matrix."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:demo",
            "librechat:librechat:firstchat",
            "librechat:librechat:remote",
            "librechat:librechat:license",
            "librechat:librechat:local",
            "librechat:librechat:compose-pin",
            "librechat:librechat:custom",
            "librechat:librechat:ragcfg",
            "librechat:librechat:ocr",
            "librechat:librechat:web",
            "librechat:librechat:code"
          ]
        }
      ]
    },
    {
      "id": "DATA-03",
      "title": "Training use and provider retention",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record whether customer content trains vendor or provider models, by plan and default; zero-data-retention arrangements with model providers; abuse-monitoring retention and human review; and the model provider's terms that apply. A \"no training\" claim on a marketing page is `vendor-claimed` until the contract or DPA says so.",
      "questions": [
        {
          "id": "vendor_training",
          "question": "Does the vendor train on customer content?"
        },
        {
          "id": "provider_training",
          "question": "Do model providers train on it under this product's contracts?"
        },
        {
          "id": "provider_retention",
          "question": "How long do model providers keep prompts, including for abuse monitoring?"
        },
        {
          "id": "zero_retention",
          "question": "Is zero data retention available, and on which plan?"
        },
        {
          "id": "human_review",
          "question": "Can provider staff review content?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The AI Addendum prohibits model training and scopes provider retention commitments to Glean-key use, with exceptions.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Any contracted plan incorporating the AI Addendum; Glean model key unless Customer Key explicitly discussed",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "vendor_training",
              "question": "Does the vendor train on customer content?",
              "support": "supported",
              "answer": "AI Addendum section 3(a)(i) prohibits Glean from using Customer Data to train, retrain, improve or fine-tune AI Models.",
              "evidenceIds": [
                "glean:glean:ai-addendum"
              ]
            },
            {
              "id": "provider_training",
              "question": "Do model providers train on it under this product's contracts?",
              "support": "supported",
              "answer": "For Glean model-key service, Glean contracts with providers to prohibit that training. Customer Key access remains the customer responsibility under section 4.",
              "evidenceIds": [
                "glean:glean:ai-addendum"
              ]
            },
            {
              "id": "provider_retention",
              "question": "How long do model providers keep prompts, including for abuse monitoring?",
              "support": "partial",
              "answer": "Glean-key section 3(b) prohibits stored/logged inputs and outputs except legal or trust-and-safety necessity. The Data Analysis guide also describes up to 30-day retention for abuse-flagged files.",
              "evidenceIds": [
                "glean:glean:ai-addendum",
                "glean:glean:analysis"
              ]
            },
            {
              "id": "zero_retention",
              "question": "Is zero data retention available, and on which plan?",
              "support": "partial",
              "answer": "Zero-day retention is a contractual Glean-key commitment subject to law and trust/safety exceptions; it is not a blanket guarantee for Customer Key or every file-processing tool.",
              "evidenceIds": [
                "glean:glean:ai-addendum",
                "glean:glean:analysis"
              ]
            },
            {
              "id": "human_review",
              "question": "Can provider staff review content?",
              "support": "unknown",
              "answer": "Can provider staff review content? The AI Addendum and Data Analysis security text were checked; provider human-review access under each exception was not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:ai-addendum",
            "glean:glean:analysis"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The customer configures model contracts and data paths; a universal no-training or provider-retention promise was not established.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "vendor_training",
              "question": "Does the vendor train on customer content?",
              "support": "partial",
              "answer": "The self-hosted application stores data in the customer’s configured stack; this architecture is not a contractual promise covering every optional external service.",
              "evidenceIds": [
                "librechat:librechat:compose-pin",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "provider_training",
              "question": "Do model providers train on it under this product's contracts?",
              "support": "unknown",
              "answer": "provider_training: Do model providers train on it under this product's contracts? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
              "evidenceIds": []
            },
            {
              "id": "provider_retention",
              "question": "How long do model providers keep prompts, including for abuse monitoring?",
              "support": "unknown",
              "answer": "provider_retention: How long do model providers keep prompts, including for abuse monitoring? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
              "evidenceIds": []
            },
            {
              "id": "zero_retention",
              "question": "Is zero data retention available, and on which plan?",
              "support": "unknown",
              "answer": "zero_retention: Is zero data retention available, and on which plan? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
              "evidenceIds": []
            },
            {
              "id": "human_review",
              "question": "Can provider staff review content?",
              "support": "unknown",
              "answer": "human_review: Can provider staff review content? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "vendor_training: The self-hosted application stores data in the customer’s configured stack; this architecture is not a contractual promise covering every optional external service.",
            "provider_training: Do model providers train on it under this product's contracts? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
            "provider_retention: How long do model providers keep prompts, including for abuse monitoring? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
            "zero_retention: Is zero data retention available, and on which plan? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers.",
            "human_review: Can provider staff review content? No specific customer provider agreement, abuse retention/human-review period or zero-retention entitlement was reviewed. Website and Demo privacy policies do not govern arbitrary self-hosted providers."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:compose-pin",
            "librechat:librechat:firstchat"
          ]
        }
      ]
    },
    {
      "id": "DATA-04",
      "title": "Retention and deletion",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record default retention for chats, files, indexes and logs; admin-configured retention; user deletion; deletion after contract end; and deletion confirmation.",
      "questions": [
        {
          "id": "default_retention",
          "question": "What is retained and for how long by default?"
        },
        {
          "id": "admin_retention",
          "question": "Can admins set retention periods?"
        },
        {
          "id": "user_deletion",
          "question": "Can users delete their chats and files permanently?"
        },
        {
          "id": "contract_end_deletion",
          "question": "What is deleted at contract end, and when?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "User-facing chat/file deletion and contract-end obligations are documented; default and effective admin retention remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex user history controls and applicable Terms/DPA; default/effective configured retention and shared-link lifetime unverified",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "default_retention",
              "question": "What is retained and for how long by default?",
              "support": "unknown",
              "answer": "Default content retention is unknown. Chat Sharing states a fixed 30-day conversation/link lifetime, while Chat History describes organization-configured periods. The relationship between shared links, stored chats, uploads and other retained copies was not reconciled; no universal default is inferred.",
              "evidenceIds": []
            },
            {
              "id": "admin_retention",
              "question": "Can admins set retention periods?",
              "support": "unknown",
              "answer": "The history guide lists Off, 30, 90, 180 and 365 days, but the sharing guide states a fixed 30-day conversation/link lifetime. The effective scope of admin settings versus shared-link/stored-chat retention remains unresolved, so a verified configurable retention entitlement is not asserted.",
              "evidenceIds": []
            },
            {
              "id": "user_deletion",
              "question": "Can users delete their chats and files permanently?",
              "support": "partial",
              "answer": "The history guide lets users remove chats from their history; the upload guide allows file removal before the first query or by deleting the chat afterward. Permanent removal from every copy, backup or event log was not established.",
              "evidenceIds": [
                "glean:glean:history",
                "glean:glean:uploads",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "contract_end_deletion",
              "question": "What is deleted at contract end, and when?",
              "support": "partial",
              "answer": "Terms section 12.3 and DPA section 7 require deletion at termination subject to legal retention. No fixed completion interval or destruction certificate was established.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "User-facing deletion does not establish erasure from every retained copy. Default/effective configured retention, shared-link lifetime and contract-end completion timing remain unknown."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:history",
            "glean:glean:uploads",
            "glean:glean:r2-core-entitlements",
            "glean:glean:terms",
            "glean:glean:dpa",
            "glean:glean:sharing"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Normal chats have no default expiry; temporary chats default to 30 days and admins can configure broader expiry modes.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "default_retention",
              "question": "What is retained and for how long by default?",
              "support": "supported",
              "answer": "The default temporary retention is 720 hours; normal chats persist unless configured under all/ephemeral modes. Memories do not expire with chats.",
              "evidenceIds": [
                "librechat:librechat:retention"
              ]
            },
            {
              "id": "admin_retention",
              "question": "Can admins set retention periods?",
              "support": "supported",
              "answer": "Admins set all or ephemeral retention, regular/temporary deadlines and Agent file retention. New settings apply on later saves rather than rewriting every existing record immediately.",
              "evidenceIds": [
                "librechat:librechat:retention"
              ]
            },
            {
              "id": "user_deletion",
              "question": "Can users delete their chats and files permanently?",
              "support": "partial",
              "answer": "Users can delete conversations/data and retention sweeps remove files. Copies, backups and external provider deletion were not end-to-end verified.",
              "evidenceIds": [
                "librechat:librechat:retention",
                "librechat:librechat:settings"
              ]
            },
            {
              "id": "contract_end_deletion",
              "question": "What is deleted at contract end, and when?",
              "support": "unknown",
              "answer": "contract_end_deletion: What is deleted at contract end, and when? No commercial contract-end purge/confirmation deadline was reviewed; the Demo’s retention terms are a separate offer.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "user_deletion: Users can delete conversations/data and retention sweeps remove files. Copies, backups and external provider deletion were not end-to-end verified.",
            "contract_end_deletion: What is deleted at contract end, and when? No commercial contract-end purge/confirmation deadline was reviewed; the Demo’s retention terms are a separate offer."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:retention",
            "librechat:librechat:settings"
          ]
        }
      ]
    },
    {
      "id": "DATA-05",
      "title": "Sub-processors and foreign-law exposure",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record the published sub-processor list with countries, change-notification rules, the vendor's and parent company's jurisdiction, transfer mechanisms (EU-US Data Privacy Framework, Swiss-US DPF, SCCs) and the vendor's documented position on foreign government access requests (e.g. US CLOUD Act). Record facts, not a legal assessment.",
      "questions": [
        {
          "id": "subprocessor_list",
          "question": "Is a dated sub-processor list published?"
        },
        {
          "id": "subprocessor_countries",
          "question": "Which countries do sub-processors operate in?"
        },
        {
          "id": "change_notification",
          "question": "Are customers notified of sub-processor changes?"
        },
        {
          "id": "parent_jurisdiction",
          "question": "Which jurisdiction governs the vendor and its parent?"
        },
        {
          "id": "transfer_mechanism",
          "question": "Which transfer mechanism applies to non-EU/CH processing?"
        },
        {
          "id": "government_access_policy",
          "question": "Is there a published government-access or transparency policy?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A dated processor list includes US providers and Indian remote support, with DPA transfer and change terms.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex under applicable public Terms, signed DPA and Order Form; no bespoke contract examined",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "subprocessor_list",
              "question": "Is a dated sub-processor list published?",
              "support": "supported",
              "answer": "Public list last updated July 28, 2026 identifies infrastructure, model, support and search subprocessors.",
              "evidenceIds": [
                "glean:glean:subprocessors",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "subprocessor_countries",
              "question": "Which countries do sub-processors operate in?",
              "support": "supported",
              "answer": "The table lists US provider entities and India for Glean Search Technologies remote support; selected cloud/provider processing locations can differ.",
              "evidenceIds": [
                "glean:glean:subprocessors",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "change_notification",
              "question": "Are customers notified of sub-processor changes?",
              "support": "supported",
              "answer": "DPA section 9 specifies at least 30 days notice before a new processor and a 30-day objection period, with a scoped termination remedy if unresolved.",
              "evidenceIds": [
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "parent_jurisdiction",
              "question": "Which jurisdiction governs the vendor and its parent?",
              "support": "partial",
              "answer": "The Terms identify Glean Technologies, Inc. as a Delaware corporation. A separate parent entity was not established.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "transfer_mechanism",
              "question": "Which transfer mechanism applies to non-EU/CH processing?",
              "support": "supported",
              "answer": "The DPA incorporates EU SCCs, Swiss-recognized clauses and the UK Addendum for applicable transfers; SCC law/jurisdiction is Ireland.",
              "evidenceIds": [
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "government_access_policy",
              "question": "Is there a published government-access or transparency policy?",
              "support": "unknown",
              "answer": "Is there a published government-access or transparency policy? DPA, processor list and privacy page were checked. A separate government-access/transparency-request policy was not established; no legal exposure verdict is made.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:subprocessors",
            "glean:glean:r2-core-entitlements",
            "glean:glean:dpa",
            "glean:glean:terms"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "ClickHouse’s acquisition is sourced; the self-hosted deployment still selects its own external processors and contracts.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "subprocessor_list",
              "question": "Is a dated sub-processor list published?",
              "support": "unknown",
              "answer": "subprocessor_list: Is a dated sub-processor list published? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
              "evidenceIds": []
            },
            {
              "id": "subprocessor_countries",
              "question": "Which countries do sub-processors operate in?",
              "support": "unknown",
              "answer": "subprocessor_countries: Which countries do sub-processors operate in? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
              "evidenceIds": []
            },
            {
              "id": "change_notification",
              "question": "Are customers notified of sub-processor changes?",
              "support": "unknown",
              "answer": "change_notification: Are customers notified of sub-processor changes? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
              "evidenceIds": []
            },
            {
              "id": "parent_jurisdiction",
              "question": "Which jurisdiction governs the vendor and its parent?",
              "support": "partial",
              "answer": "ClickHouse, Inc. announced the LibreChat acquisition on 2025-11-04 from San Francisco and brought founder/team into ClickHouse. A self-hosted customer contracting entity/governing jurisdiction was not established from that announcement.",
              "evidenceIds": [
                "librechat:librechat:owner"
              ]
            },
            {
              "id": "transfer_mechanism",
              "question": "Which transfer mechanism applies to non-EU/CH processing?",
              "support": "unknown",
              "answer": "transfer_mechanism: Which transfer mechanism applies to non-EU/CH processing? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
              "evidenceIds": []
            },
            {
              "id": "government_access_policy",
              "question": "Is there a published government-access or transparency policy?",
              "support": "unknown",
              "answer": "government_access_policy: Is there a published government-access or transparency policy? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "subprocessor_list: Is a dated sub-processor list published? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
            "subprocessor_countries: Which countries do sub-processors operate in? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
            "change_notification: Are customers notified of sub-processor changes? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
            "parent_jurisdiction: ClickHouse, Inc. announced the LibreChat acquisition on 2025-11-04 from San Francisco and brought founder/team into ClickHouse. A self-hosted customer contracting entity/governing jurisdiction was not established from that announcement.",
            "transfer_mechanism: Which transfer mechanism applies to non-EU/CH processing? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes.",
            "government_access_policy: Is there a published government-access or transparency policy? No project-wide dated sub-processor/country list, change-notification schedule, transfer instrument or government-access policy was established for arbitrary customer-operated deployments. Website/Demo policies are separate scopes."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:owner"
          ]
        }
      ]
    },
    {
      "id": "DATA-06",
      "title": "Contracts and regulatory coverage",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record DPA availability and form (click-through, negotiable), reference to Swiss revDSG and GDPR, governing law and court, EU AI Act documentation (provider or deployer role, transparency materials), and sector-specific materials (FINMA outsourcing, banking secrecy, public sector). No compliance verdict.",
      "questions": [
        {
          "id": "dpa",
          "question": "Is a DPA available, and is it negotiable?"
        },
        {
          "id": "revdsg_gdpr",
          "question": "Does the DPA cover revDSG and GDPR?"
        },
        {
          "id": "governing_law",
          "question": "Which law and court govern the contract?"
        },
        {
          "id": "ai_act_materials",
          "question": "Is EU AI Act documentation provided?"
        },
        {
          "id": "sector_materials",
          "question": "Are FINMA or other sector materials provided?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public contractual and AI-law materials are available, with Swiss/EU data-law scope.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex applicable public Terms/DPA/AI Addendum; signed Order Form controls actual coverage",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "dpa",
              "question": "Is a DPA available, and is it negotiable?",
              "support": "supported",
              "answer": "A public DPA form takes effect when signed and can sit under a mutually accepted agreement; negotiability was not tested.",
              "evidenceIds": [
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "revdsg_gdpr",
              "question": "Does the DPA cover revDSG and GDPR?",
              "support": "supported",
              "answer": "The DPA defines applicable data-protection law to include Switzerland and GDPR and describes Swiss transfer clauses. Applicability depends on the processing.",
              "evidenceIds": [
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "governing_law",
              "question": "Which law and court govern the contract?",
              "support": "partial",
              "answer": "Main Terms section 13.1 specifies New York and US law; SCCs select Ireland for their own governing law/jurisdiction. A specific court for the main contract was not established.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:dpa",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "ai_act_materials",
              "question": "Is EU AI Act documentation provided?",
              "support": "partial",
              "answer": "The AI Addendum includes applicable EU AI Act commitments and allocation of customer/provider responsibilities; a full procurement technical file was not retrieved.",
              "evidenceIds": [
                "glean:glean:ai-addendum",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "sector_materials",
              "question": "Are FINMA or other sector materials provided?",
              "support": "partial",
              "answer": "The public legal index links HIPAA BAA forms for Glean as Business Associate and as Subcontractor; actual coverage depends on the applicable agreement. The AI Addendum describes assurance commitments. FINMA/banking-secrecy outsourcing materials were not established.",
              "evidenceIds": [
                "glean:glean:r3-legal-index",
                "glean:glean:ai-addendum",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:dpa",
            "glean:glean:r2-core-entitlements",
            "glean:glean:terms",
            "glean:glean:ai-addendum",
            "glean:glean:r3-legal-index"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-06",
          "verificationStatus": "not-published",
          "support": "not-published",
          "answer": "We found no public information on this. A missing finding is not evidence that the product lacks the capability.",
          "availability": null,
          "delivery": null,
          "scope": null,
          "questions": [],
          "limitations": [],
          "checkedAt": null,
          "crossCheckedAt": null,
          "nextCheckAt": null,
          "evidenceIds": []
        }
      ]
    },
    {
      "id": "DATA-07",
      "title": "Certifications and attestations",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record each certificate or report separately: ISO 27001, 27017, 27018, 27701, 42001; SOC 2 Type I/II with period; BSI C5; TISAX; national schemes. Record issuer, scope (which product and entity), validity and access route. A cloud provider's certificate does not certify the product.",
      "questions": [
        {
          "id": "iso_27001",
          "question": "ISO 27001 with scope and validity?"
        },
        {
          "id": "soc2",
          "question": "SOC 2 type, period and covered service?"
        },
        {
          "id": "c5",
          "question": "BSI C5 attestation?"
        },
        {
          "id": "other_certifications",
          "question": "Which other certificates (27701, 42001, TISAX)?"
        },
        {
          "id": "report_access",
          "question": "How can customers obtain reports?"
        },
        {
          "id": "pentest",
          "question": "Are independent penetration test summaries available?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "SOC 2 and ISO badges are vendor claims; issuer, report scope and validity were not independently checked.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect compliance material; vendor badges only, certificate/report scope and validity unverified",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "iso_27001",
              "question": "ISO 27001 with scope and validity?",
              "support": "partial",
              "answer": "Glean claims ISO 27001 on its security page. The actual certificate, issuer, service scope and validity dates were not obtained.",
              "evidenceIds": [
                "glean:glean:security-page",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "soc2",
              "question": "SOC 2 type, period and covered service?",
              "support": "partial",
              "answer": "Glean claims SOC 2 Type II, but auditor, examination period and exact covered service were not verified from a report.",
              "evidenceIds": [
                "glean:glean:security-page",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "c5",
              "question": "BSI C5 attestation?",
              "support": "unknown",
              "answer": "BSI C5 attestation? The public security page and trust.glean.com were checked; trust report content was inaccessible. BSI C5, independent pentest summaries and certificate/report validity were not established.",
              "evidenceIds": []
            },
            {
              "id": "other_certifications",
              "question": "Which other certificates (27701, 42001, TISAX)?",
              "support": "partial",
              "answer": "The security page lists ISO 42001, HIPAA and TX-RAMP Level 2. These are vendor assertions, not verified certificates in this profile.",
              "evidenceIds": [
                "glean:glean:security-page",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "report_access",
              "question": "How can customers obtain reports?",
              "support": "partial",
              "answer": "Security and accessibility material direct evaluators to the public Trust Center, whose report content was not readable without further access.",
              "evidenceIds": [
                "glean:glean:security-page",
                "glean:glean:accessibility",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "pentest",
              "question": "Are independent penetration test summaries available?",
              "support": "unknown",
              "answer": "Are independent penetration test summaries available? The public security page and trust.glean.com were checked; trust report content was inaccessible. BSI C5, independent pentest summaries and certificate/report validity were not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "No evidence is certificate-verified. Cloud-provider certificates are not treated as Glean certificates."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:security-page",
            "glean:glean:r2-core-entitlements",
            "glean:glean:accessibility"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-07",
          "verificationStatus": "not-published",
          "support": "not-published",
          "answer": "We found no public information on this. A missing finding is not evidence that the product lacks the capability.",
          "availability": null,
          "delivery": null,
          "scope": null,
          "questions": [],
          "limitations": [],
          "checkedAt": null,
          "crossCheckedAt": null,
          "nextCheckAt": null,
          "evidenceIds": []
        }
      ]
    },
    {
      "id": "DATA-08",
      "title": "Encryption and key control",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "Record encryption at rest and in transit, customer-managed keys (BYOK/HYOK), key location, and private networking (private link, IP allow-lists, VPN).",
      "questions": [
        {
          "id": "encryption_at_rest",
          "question": "Is data encrypted at rest?"
        },
        {
          "id": "customer_managed_keys",
          "question": "Can the customer manage or hold the keys?"
        },
        {
          "id": "private_networking",
          "question": "Is private connectivity or IP restriction available?"
        },
        {
          "id": "tenant_isolation",
          "question": "How are customers separated in shared SaaS?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Encryption, isolation and network controls are documented. Customer-managed keys are supported for Customer Hosted AWS; other key-custody scopes remain unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Protect encryption and single-tenant Glean Hosted; separately contracted Customer Hosted network configuration",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "encryption_at_rest",
              "question": "Is data encrypted at rest?",
              "support": "supported",
              "answer": "Deployment comparison documents AES-256 at rest and TLS in transit for both deployment modes.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "customer_managed_keys",
              "question": "Can the customer manage or hold the keys?",
              "support": "supported",
              "answer": "For Customer Hosted AWS, Glean supports KMS customer-managed encryption keys owned and controlled by the customer. The FAQ recommends default managed keys; Glean Hosted/GCP key custody and commercial prerequisites were not established.",
              "evidenceIds": [
                "glean:glean:r4-aws-cmk-faq",
                "glean:glean:r4-aws-key-control"
              ]
            },
            {
              "id": "private_networking",
              "question": "Is private connectivity or IP restriction available?",
              "support": "supported",
              "answer": "IP-based access controls and private connectivity for on-prem connectors are documented; customer AWS supports local VPC endpoints.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "tenant_isolation",
              "question": "How are customers separated in shared SaaS?",
              "support": "supported",
              "answer": "Each deployment uses isolated single-tenant infrastructure, including the Glean-managed customer-cloud option.",
              "evidenceIds": [
                "glean:glean:deploy",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "glean:glean:deploy",
            "glean:glean:r2-core-entitlements",
            "glean:glean:r4-aws-cmk-faq",
            "glean:glean:r4-aws-key-control"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Network and storage security depend on the customer’s deployment; application authentication does not certify encryption of all stored content.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "encryption_at_rest",
              "question": "Is data encrypted at rest?",
              "support": "unknown",
              "answer": "encryption_at_rest: Is data encrypted at rest? No default at-rest encryption guarantee covering MongoDB/files/PGVector or audited multi-tenant managed-service isolation was established from the installation guides.",
              "evidenceIds": []
            },
            {
              "id": "customer_managed_keys",
              "question": "Can the customer manage or hold the keys?",
              "support": "partial",
              "answer": "Operators own infrastructure and application secrets; a documented product HYOK/customer-managed content-encryption service was not verified.",
              "evidenceIds": [
                "librechat:librechat:auth",
                "librechat:librechat:compose-pin"
              ]
            },
            {
              "id": "private_networking",
              "question": "Is private connectivity or IP restriction available?",
              "support": "supported",
              "answer": "Operators deploy the stack on their own network and configure reverse proxies/HTTPS for remote access.",
              "evidenceIds": [
                "librechat:librechat:remote",
                "librechat:librechat:local"
              ]
            },
            {
              "id": "tenant_isolation",
              "question": "How are customers separated in shared SaaS?",
              "support": "unknown",
              "answer": "tenant_isolation: How are customers separated in shared SaaS? No default at-rest encryption guarantee covering MongoDB/files/PGVector or audited multi-tenant managed-service isolation was established from the installation guides.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "encryption_at_rest: Is data encrypted at rest? No default at-rest encryption guarantee covering MongoDB/files/PGVector or audited multi-tenant managed-service isolation was established from the installation guides.",
            "customer_managed_keys: Operators own infrastructure and application secrets; a documented product HYOK/customer-managed content-encryption service was not verified.",
            "tenant_isolation: How are customers separated in shared SaaS? No default at-rest encryption guarantee covering MongoDB/files/PGVector or audited multi-tenant managed-service isolation was established from the installation guides."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:auth",
            "librechat:librechat:compose-pin",
            "librechat:librechat:remote",
            "librechat:librechat:local"
          ]
        }
      ]
    },
    {
      "id": "DATA-09",
      "title": "Professional secrecy",
      "group": {
        "id": 6,
        "name": "Data protection and sovereignty"
      },
      "judgment": "For professional secrecy holders (Berufsgeheimnisträger: lawyers, doctors, auditors, tax advisers) under § 203 StGB (DE) and Art. 321 StGB (CH), record whether the vendor signs a contractual secrecy undertaking or a § 203 agreement that binds its staff and its sub-processors; whether this comes as a dedicated offering or a paid add-on, and on which plan; who can access content in plain text (vendor staff, sub-processors, model providers); and the documentation provided. A DPA or a no-training clause alone is not a secrecy undertaking. Banking secrecy and FINMA outsourcing belong to DATA-06, not here. Record contract facts, not a legal assessment.",
      "questions": [
        {
          "id": "secrecy_undertaking",
          "question": "Does the vendor sign a secrecy undertaking or § 203 StGB / Art. 321 StGB agreement covering its own staff?"
        },
        {
          "id": "subprocessor_coverage",
          "question": "Does the undertaking extend to its sub-processors, and is that documented?"
        },
        {
          "id": "secrecy_offering",
          "question": "Is it a dedicated offering or add-on, and on which plan?"
        },
        {
          "id": "content_access",
          "question": "Who can access content in plain text: vendor staff, sub-processors, model providers?"
        },
        {
          "id": "secrecy_documentation",
          "question": "Is the offering publicly documented (contract template, data-flow description, professional-body guidance)?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:DATA-09",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "General DPA confidentiality and provider/support access are documented; a specific German or Swiss professional-secrecy undertaking remains unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex public Terms/DPA confidentiality; no verified professional-secrecy-specific package",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting/provider regions; listed India support affiliate; no DE/CH-specific undertaking verified",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "secrecy_undertaking",
              "question": "Does the vendor sign a secrecy undertaking or § 203 StGB / Art. 321 StGB agreement covering its own staff?",
              "support": "unknown",
              "answer": "Glean DPA section4 binds authorized personnel to confidentiality or statutory duties, but no signed/signon German §203 StGB or Swiss Art321 StGB professional-secrecy undertaking was retrieved. General DPA confidentiality is not treated as that undertaking.",
              "evidenceIds": []
            },
            {
              "id": "subprocessor_coverage",
              "question": "Does the undertaking extend to its sub-processors, and is that documented?",
              "support": "unknown",
              "answer": "DPA section9 requires no-less-protective written subprocessor obligations and necessary access. No flow-down of a specific §203/Art321 professional-secrecy undertaking was established.",
              "evidenceIds": []
            },
            {
              "id": "secrecy_offering",
              "question": "Is it a dedicated offering or add-on, and on which plan?",
              "support": "unknown",
              "answer": "No publicly documented professional-secrecy-specific plan, dedicated package, paid add-on, minimum or regional contract entitlement was established in legal pages, administration docs, pricing or targeted first-party search.",
              "evidenceIds": []
            },
            {
              "id": "content_access",
              "question": "Who can access content in plain text: vendor staff, sub-processors, model providers?",
              "support": "partial",
              "answer": "Contractually authorized Glean personnel and necessary subprocessors may process customer personal data; the processor list names India remote support/security/debugging and model/hosting providers. Model routes receive prompts/context for inference. Exact plaintext privileges, exceptional support approval, provider human-access rights and their differences by key/deployment mode are not fully established.",
              "evidenceIds": [
                "glean:glean:dpa-confidentiality",
                "glean:glean:subprocessors",
                "glean:glean:key-matrix",
                "glean:glean:ai-addendum",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "secrecy_documentation",
              "question": "Is the offering publicly documented (contract template, data-flow description, professional-body guidance)?",
              "support": "unknown",
              "answer": "A public DPA, AI Addendum, deployment docs and processor list were retrieved. No public §203/Art321 contract template, dedicated professional-secrecy data-flow statement or professional-body guidance for this offer was established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "DPA confidentiality and no-training provisions alone do not establish a professional-secrecy undertaking.",
            "No legal suitability or compliance conclusion."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:dpa-confidentiality",
            "glean:glean:subprocessors",
            "glean:glean:key-matrix",
            "glean:glean:ai-addendum",
            "glean:glean:r2-core-entitlements"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:DATA-09",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Customer-operated message storage and configurable local/external inference establish part of the content-access boundary. A LibreChat-scoped staff/sub-processor secrecy undertaking or professional-secrecy offering remains unverified.",
          "availability": "unknown",
          "delivery": "unknown",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; message schema and reference Compose pinned to v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional commercial secrecy terms unverified. Public Demo and website policies checked only to distinguish their scope",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected application, storage and model-service locations; no DE/CH professional-secrecy contract variant verified",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "secrecy_undertaking",
              "question": "Does the vendor sign a secrecy undertaking or § 203 StGB / Art. 321 StGB agreement covering its own staff?",
              "support": "unknown",
              "answer": "No LibreChat-scoped § 203 StGB / Art. 321 StGB undertaking binding vendor staff was obtained from the reviewed project documentation and public legal pages. The website privacy policy expressly excludes the self-hosted application; ClickHouse ownership does not establish a product-specific agreement.",
              "evidenceIds": [
                "librechat:librechat:siteprivacy",
                "librechat:librechat:owner"
              ]
            },
            {
              "id": "subprocessor_coverage",
              "question": "Does the undertaking extend to its sub-processors, and is that documented?",
              "support": "unknown",
              "answer": "No self-hosted LibreChat professional-secrecy annex or documented extension to sub-processors was obtained. The separate Demo policy describes processor instruction/security obligations, which do not establish the undertaking requested here or coverage of a customer deployment.",
              "evidenceIds": [
                "librechat:librechat:secrecy-demo-policy"
              ]
            },
            {
              "id": "secrecy_offering",
              "question": "Is it a dedicated offering or add-on, and on which plan?",
              "support": "unknown",
              "answer": "No dedicated professional-secrecy edition, paid add-on, eligible plan or price was established in the public project/legal materials and targeted searches. The public Demo is evaluation-only and excludes confidential or regulated data; it is a separate surface.",
              "evidenceIds": [
                "librechat:librechat:demo"
              ]
            },
            {
              "id": "content_access",
              "question": "Who can access content in plain text: vendor staff, sub-processors, model providers?",
              "support": "partial",
              "answer": "The pinned reference deployment mounts customer-controlled MongoDB, uploads and logs; the message schema declares ordinary text/content fields. This places host/database operators inside the application trust boundary (an architectural inference, not a permissions audit). The first-chat and endpoint guides route prompts to a selected local or external model with customer credentials. Vendor/support access, optional service operators and provider human access remain deployment- and contract-specific and unverified.",
              "evidenceIds": [
                "librechat:librechat:compose-pin",
                "librechat:librechat:secrecy-message-pin",
                "librechat:librechat:firstchat",
                "librechat:librechat:custom"
              ]
            },
            {
              "id": "secrecy_documentation",
              "question": "Is the offering publicly documented (contract template, data-flow description, professional-body guidance)?",
              "support": "unknown",
              "answer": "Public installation, endpoint and privacy documents describe technical data paths and distinguish website, Demo and self-hosted software. No LibreChat-specific DE/CH secrecy contract template, covered-party annex or professional-body guidance was located in the reviewed sources.",
              "evidenceIds": [
                "librechat:librechat:firstchat",
                "librechat:librechat:siteprivacy"
              ]
            }
          ],
          "limitations": [
            "The secrecy undertaking, sub-processor coverage, offering and professional-secrecy-specific documentation remain unknown.",
            "content_access: Operator permissions, vendor/support grants, optional service access and provider staff access were not tested or contractually verified.",
            "Technical data controls, a DPA, privacy wording and no-training statements do not establish the requested contractual undertaking. No legal compliance assessment is made."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:siteprivacy",
            "librechat:librechat:owner",
            "librechat:librechat:secrecy-demo-policy",
            "librechat:librechat:demo",
            "librechat:librechat:compose-pin",
            "librechat:librechat:secrecy-message-pin",
            "librechat:librechat:firstchat",
            "librechat:librechat:custom"
          ]
        }
      ]
    },
    {
      "id": "VEN-01",
      "title": "Pricing model and list prices",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record pricing unit (per seat, per active user, usage-based, platform fee, hybrid), list prices per plan in original currency with date, included usage and credits, add-on prices (connectors, agents, image generation) and overage rates. Cite public prices or dated quotes. Per-seat versus usage is a fact, not a quality judgment.",
      "questions": [
        {
          "id": "pricing_unit",
          "question": "What is the pricing unit?"
        },
        {
          "id": "list_prices",
          "question": "What are list prices per plan, with date and currency?"
        },
        {
          "id": "included_usage",
          "question": "What usage is included?"
        },
        {
          "id": "add_ons",
          "question": "Which features cost extra?"
        },
        {
          "id": "overage",
          "question": "What do usage beyond limits and premium models cost?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Glean publishes pricing mechanics and usage tables, while contracted seat fees remain quote-only.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Unspecified contracted plan unless Core Suite, Enterprise Flex, key mode or add-on is named below",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "pricing_unit",
              "question": "What is the pricing unit?",
              "support": "supported",
              "answer": "Core Suite is per user/month plus committed Model Hub Usage. Enterprise Flex combines seats with pooled FlexCredits; legacy Enterprise terms differ.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:flex-price"
              ]
            },
            {
              "id": "list_prices",
              "question": "What are list prices per plan, with date and currency?",
              "support": "partial",
              "answer": "On 2026-10-21 no numerical Core Suite/Enterprise Flex seat or platform fee was established. Public model token-rate and credit-consumption tables are available; they are not a complete subscription quote.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:flex-price"
              ]
            },
            {
              "id": "included_usage",
              "question": "What usage is included?",
              "support": "partial",
              "answer": "Core Suite includes platform/search and human-scale APIs in seats; LLM APIs and advanced work consume model usage. Flex uses plan-specific included capabilities and shared credits.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:flex-price"
              ]
            },
            {
              "id": "add_ons",
              "question": "Which features cost extra?",
              "support": "partial",
              "answer": "Protect+ is an add-on and Premium Support is paid; Model Hub usage is separate. Public add-on seat/contract fees were not established.",
              "evidenceIds": [
                "glean:glean:protect",
                "glean:glean:sla"
              ]
            },
            {
              "id": "overage",
              "question": "What do usage beyond limits and premium models cost?",
              "support": "partial",
              "answer": "Core Suite usage follows provider/model API rates with an upfront commitment; machine-scale API use may cost extra. Flex uses credit rate cards. Currency price per contracted FlexCredit is unverified.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:flex-price"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:core-price",
            "glean:glean:flex-price",
            "glean:glean:protect",
            "glean:glean:sla"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "MIT software has no licence subscription; hosting, inference and optional runtime services are separately procured.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "pricing_unit",
              "question": "What is the pricing unit?",
              "support": "supported",
              "answer": "The pinned MIT permission grant has no per-user fee; self-hosting and model accounts are customer responsibilities.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "list_prices",
              "question": "What are list prices per plan, with date and currency?",
              "support": "supported",
              "answer": "The repository’s MIT licence permits use without a software fee as retrieved 2026-10-21; there is no bundled inference subscription in this scope.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "included_usage",
              "question": "What usage is included?",
              "support": "supported",
              "answer": "LibreChat ships with no model API key and no included provider token balance.",
              "evidenceIds": [
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "add_ons",
              "question": "Which features cost extra?",
              "support": "partial",
              "answer": "Optional external code/OCR/search/image services need separately configured endpoints and credentials. Their rates depend on the operator’s contracts.",
              "evidenceIds": [
                "librechat:librechat:code",
                "librechat:librechat:ocr",
                "librechat:librechat:web",
                "librechat:librechat:images"
              ]
            },
            {
              "id": "overage",
              "question": "What do usage beyond limits and premium models cost?",
              "support": "partial",
              "answer": "Provider APIs charge their account holder; internal credit balances are governance configuration rather than a single LibreChat usage tariff.",
              "evidenceIds": [
                "librechat:librechat:balance",
                "librechat:librechat:tokens",
                "librechat:librechat:firstchat"
              ]
            }
          ],
          "limitations": [
            "add_ons: Optional external code/OCR/search/image services need separately configured endpoints and credentials. Their rates depend on the operator’s contracts.",
            "overage: Provider APIs charge their account holder; internal credit balances are governance configuration rather than a single LibreChat usage tariff."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:license",
            "librechat:librechat:firstchat",
            "librechat:librechat:code",
            "librechat:librechat:ocr",
            "librechat:librechat:web",
            "librechat:librechat:images",
            "librechat:librechat:balance",
            "librechat:librechat:tokens"
          ]
        }
      ]
    },
    {
      "id": "VEN-02",
      "title": "Scenario cost",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Price three workloads for 12 months: 200, 1,000 and 5,000 users with a disclosed light/regular/power usage mix, in CHF and EUR excluding VAT. Include licences, platform fees, add-ons, model usage and, for self-hosted options, a stated operating assumption. Separate fixed, variable, included and unknown costs. No invented discounts.",
      "questions": [
        {
          "id": "cost_200",
          "question": "Year-one cost at 200 users?"
        },
        {
          "id": "cost_1000",
          "question": "Year-one cost at 1,000 users?"
        },
        {
          "id": "cost_5000",
          "question": "Year-one cost at 5,000 users?"
        },
        {
          "id": "variable_share",
          "question": "Which part depends on usage?"
        },
        {
          "id": "unknown_parts",
          "question": "Which costs could not be priced?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Core Suite publishes model tariffs, but no public unique routine Auto model or fixed fee; a separate direct-provider Customer Key component is calculable.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted",
              "customer-cloud"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Universal Model Key usage unpriced without a fixed/recommended routine model; separate Customer Key direct-API proxy; Enterprise Flex quote/pool unknown",
            "addOns": [],
            "deploymentMode": null,
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              },
              {
                "id": "customer-cloud",
                "name": "Customer Hosted managed GCP or AWS tenant",
                "type": "managed-server"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_200",
              "question": "Year-one cost at 200 users?",
              "support": "partial",
              "answer": "ALM-14 shared cost assumptions v1.4,2026-10-21:12 months exVAT,list prices,no invented discounts;60% light100/30% regular400/10% power1500 messages/user/month =>330;3000 input+600 output tokens/message. ECB2026-10-20 EUR1=USD1.1215=CHF0.9237. Direct-provider Customer Key comparison uses gpt-6-luna effort none atUSD0.10 input/USD0.50 output per1M,no cache =>USD2.376/user/year. This proxy is not a Glean Universal Model Key tariff/default. For200 Customer Key users: identified direct-model component USD475.20/EUR423.72/CHF391.39 + unknown Core Suite seat fee, Glean-family usage, support/cloud costs. Universal Model Key total and Enterprise Flex total remain unknown.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-auto-policy-and-cloud-conflict",
                "glean:glean:r2-customer-default-example",
                "glean:glean:r2-direct-provider-proxy",
                "glean:glean:r2-proxy-lowest-effort",
                "glean:glean:fx-ecb"
              ]
            },
            {
              "id": "cost_1000",
              "question": "Year-one cost at 1,000 users?",
              "support": "partial",
              "answer": "Same v1.4 assumptions:1000 Customer Key users, identified direct-model component USD2376/EUR2118.59/CHF1956.94 + unknown seat/Glean-family/support/cloud costs. Not an enterprise quote; Universal Model Key and Flex totals remain unknown.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-direct-provider-proxy",
                "glean:glean:r2-proxy-lowest-effort",
                "glean:glean:fx-ecb"
              ]
            },
            {
              "id": "cost_5000",
              "question": "Year-one cost at 5,000 users?",
              "support": "partial",
              "answer": "Same v1.4 assumptions:5000 Customer Key users, identified direct-model component USD11880/EUR10592.96/CHF9784.71 + unknown seat/Glean-family/support/cloud costs. Not an enterprise quote; Universal Model Key and Flex totals remain unknown.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-direct-provider-proxy",
                "glean:glean:r2-proxy-lowest-effort",
                "glean:glean:fx-ecb"
              ]
            },
            {
              "id": "variable_share",
              "question": "Which part depends on usage?",
              "support": "partial",
              "answer": "Core Suite publishes input/output tariffs. Universal Model Key defaults to Balanced Auto, a policy choosing model and effort per request; recommendations are shown in the admin UI, not as a unique public routine model. The Customer Key guide calls GPT5.6 Luna an example, not a recommendation. Under v1.4, vendor-billed usage remains unknown; only the separate direct-API proxy is costed. Enterprise Flex has different mode/credit accounting.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-auto-policy-and-cloud-conflict",
                "glean:glean:r2-customer-default-example",
                "glean:glean:r2-flex-entitlements",
                "glean:glean:r2-direct-provider-proxy",
                "glean:glean:r2-proxy-lowest-effort"
              ]
            },
            {
              "id": "unknown_parts",
              "question": "Which costs could not be priced?",
              "support": "supported",
              "answer": "Unknown: seat/platform quotes, Universal Model Key realized model mix and Auto/tool overhead, FlexCredit purchase price and task consumption, Glean-family calls on Customer Key, Protect+/support fees, cloud operations and implementation. No zero fixed fee, fictitious discount or vendor-billed proxy substitution. Exchange rate is known and explicitly stated; quote-only total is not calculated.",
              "evidenceIds": [
                "glean:glean:r2-core-entitlements",
                "glean:glean:r2-flex-entitlements",
                "glean:glean:deploy",
                "glean:glean:fx-ecb"
              ]
            }
          ],
          "limitations": [
            "The priced Customer Key component is an assumption for direct provider payment, not a complete Glean price or a forecast of Auto routing.",
            "No signed order, fixed fee, actual tenant defaults or task usage fixture."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:r2-core-entitlements",
            "glean:glean:r2-auto-policy-and-cloud-conflict",
            "glean:glean:r2-customer-default-example",
            "glean:glean:r2-direct-provider-proxy",
            "glean:glean:r2-proxy-lowest-effort",
            "glean:glean:fx-ecb",
            "glean:glean:r2-flex-entitlements",
            "glean:glean:deploy"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21: zero standard licence plus a disclosed Swiss infrastructure/operations and direct-BYO-model budget. Annual CHF/EUR figures are floors plus named unknown costs.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [
              "Analyst-selected direct OpenAI API proxy, not a bundled model",
              "Assumed operations staffing; optional commercial services excluded"
            ],
            "deploymentMode": "customer-cloud",
            "region": "Azure Switzerland North for the reference application infrastructure; standard OpenAI API inference has no Swiss/EU residency assumption",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_200",
              "question": "Year-one cost at 200 users?",
              "support": "partial",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. 200 users, 12 months excluding VAT: from CHF 34778.28 / EUR 37651.06 plus unpriced items. Includes zero standard-software licence, reference infrastructure EUR 4749.26, operations CHF 30000.00, and BYO model usage USD 475.20. This is an assumption-based budget floor, not a vendor quote or validated capacity plan.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:cost-vm",
                "librechat:librechat:cost-pg",
                "librechat:librechat:cost-fx",
                "librechat:librechat:cost-model",
                "librechat:librechat:cost-effort"
              ]
            },
            {
              "id": "cost_1000",
              "question": "Year-one cost at 1,000 users?",
              "support": "partial",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. 1,000 users, 12 months excluding VAT: from CHF 88600.40 / EUR 95919.02 plus unpriced items. Includes zero standard-software licence, reference infrastructure EUR 12605.23, operations CHF 75000.00, and BYO model usage USD 2376.00. This is an assumption-based budget floor, not a vendor quote or validated capacity plan.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:cost-vm",
                "librechat:librechat:cost-pg",
                "librechat:librechat:cost-fx",
                "librechat:librechat:cost-model",
                "librechat:librechat:cost-effort"
              ]
            },
            {
              "id": "cost_5000",
              "question": "Year-one cost at 5,000 users?",
              "support": "partial",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. 5,000 users, 12 months excluding VAT: from CHF 189541.24 / EUR 205197.83 plus unpriced items. Includes zero standard-software licence, reference infrastructure EUR 32214.49, operations CHF 150000.00, and BYO model usage USD 11880.00. This is an assumption-based budget floor, not a vendor quote or validated capacity plan.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:cost-vm",
                "librechat:librechat:cost-pg",
                "librechat:librechat:cost-fx",
                "librechat:librechat:cost-model",
                "librechat:librechat:cost-effort"
              ]
            },
            {
              "id": "variable_share",
              "question": "Which part depends on usage?",
              "support": "partial",
              "answer": "Shared mix is 60% light at 100, 30% regular at 400 and 10% power at 1,500 messages/user/month, or 330 weighted messages. Each message is 3,000 input and 600 output tokens. Direct BYO proxy is gpt-6-luna, reasoning effort none, Standard short-context uncached rates USD 0.10/0.50 per million input/output tokens. It costs USD 2.376/user/year before optional tools, embedding, caching or regional processing. This proxy is an analyst assumption, not the product default.",
              "evidenceIds": [
                "librechat:librechat:cost-model",
                "librechat:librechat:cost-effort"
              ]
            },
            {
              "id": "unknown_parts",
              "question": "Which costs could not be priced?",
              "support": "partial",
              "answer": "Unpriced additions are file/object storage beyond the assumed 500 GB PostgreSQL storage, VM OS/data disks, backup excess, egress/load balancers, Redis or additional database services, high availability, embeddings, OCR, search, audio/images, integration work and optional commercial services. MongoDB remains the primary store, so its infrastructure, file storage and other required dependencies are additional unpriced items; PostgreSQL is only the shared RAG/reference compute assumption. The shared VM/PG sizes have not been load-tested and do not replace each product’s documented runtime dependencies.",
              "evidenceIds": [
                "librechat:librechat:cost-vm",
                "librechat:librechat:cost-pg",
                "librechat:librechat:license"
              ]
            }
          ],
          "limitations": [
            "ALM-14 shared cost assumptions v1.4, 2026-10-21 are analyst inputs, not vendor sizing or an uptime promise.",
            "The budget is a floor because named infrastructure and service costs are unpriced."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:license",
            "librechat:librechat:cost-vm",
            "librechat:librechat:cost-pg",
            "librechat:librechat:cost-fx",
            "librechat:librechat:cost-model",
            "librechat:librechat:cost-effort"
          ]
        }
      ]
    },
    {
      "id": "VEN-03",
      "title": "Evaluation access",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Distinguish free tier, self-serve trial, sales-led pilot, paid proof of concept and open-source self-install. Record card requirement, duration, seat limit, and which features (SSO, connectors, admin) the trial includes. Map which shared scenarios can be run without sales approval.",
      "questions": [
        {
          "id": "free_tier",
          "question": "Is there a free tier for business use?"
        },
        {
          "id": "self_serve_trial",
          "question": "Is a self-serve business trial available?"
        },
        {
          "id": "trial_scope",
          "question": "Do trials include SSO, connectors and admin features?"
        },
        {
          "id": "sales_gate",
          "question": "Does meaningful evaluation require sales contact?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public material supports product evaluation, but no unassisted business trial was established.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex prospective customer evaluation; public demo path, no verified self-serve trial entitlement",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "free_tier",
              "question": "Is there a free tier for business use?",
              "support": "unknown",
              "answer": "Is there a free tier for business use? The live product/security site, documentation setup and pricing guides were checked. No public business free-tier entitlement, self-serve trial terms, card/duration/seat limits or SSO/connector trial scope was established. No sales contact or account registration was attempted.",
              "evidenceIds": []
            },
            {
              "id": "self_serve_trial",
              "question": "Is a self-serve business trial available?",
              "support": "unknown",
              "answer": "Is a self-serve business trial available? The live product/security site, documentation setup and pricing guides were checked. No public business free-tier entitlement, self-serve trial terms, card/duration/seat limits or SSO/connector trial scope was established. No sales contact or account registration was attempted.",
              "evidenceIds": []
            },
            {
              "id": "trial_scope",
              "question": "Do trials include SSO, connectors and admin features?",
              "support": "unknown",
              "answer": "Do trials include SSO, connectors and admin features? The live product/security site, documentation setup and pricing guides were checked. No public business free-tier entitlement, self-serve trial terms, card/duration/seat limits or SSO/connector trial scope was established. No sales contact or account registration was attempted.",
              "evidenceIds": []
            },
            {
              "id": "sales_gate",
              "question": "Does meaningful evaluation require sales contact?",
              "support": "partial",
              "answer": "Public Glean pages route prospective customers to Get a demo; meaningful tenant provisioning may require commercial access. This is not proof that every trial is sales-only.",
              "evidenceIds": [
                "glean:glean:security-page",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps.",
            "Core Suite/Enterprise Flex trial and evaluation entitlements were not publicly verified; a demo CTA is not proof of a mandatory sales gate."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:security-page",
            "glean:glean:r2-core-entitlements"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-03",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Customers can self-install without licence payment; the public demo is an evaluation-only alternative.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web",
              "public-demo"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              },
              {
                "id": "public-demo",
                "name": "LibreChat public evaluation demo",
                "type": "hosted-demo"
              }
            ]
          },
          "questions": [
            {
              "id": "free_tier",
              "question": "Is there a free tier for business use?",
              "support": "supported",
              "answer": "MIT self-installation permits organizational use without a software licence fee.",
              "evidenceIds": [
                "librechat:librechat:license"
              ]
            },
            {
              "id": "self_serve_trial",
              "question": "Is a self-serve business trial available?",
              "support": "supported",
              "answer": "Self-installation has no trial clock or software card requirement; the free hosted Demo can be tried separately under its terms.",
              "evidenceIds": [
                "librechat:librechat:local",
                "librechat:librechat:demo"
              ]
            },
            {
              "id": "trial_scope",
              "question": "Do trials include SSO, connectors and admin features?",
              "support": "supported",
              "answer": "Self-installed instances can configure SSO, Agents, file retrieval and administration with their own service accounts. It is not evidence that every experimental add-on is enabled by default.",
              "evidenceIds": [
                "librechat:librechat:auth",
                "librechat:librechat:agents",
                "librechat:librechat:rag"
              ]
            },
            {
              "id": "sales_gate",
              "question": "Does meaningful evaluation require sales contact?",
              "support": "supported",
              "answer": "The documented Docker install does not require sales approval; optional third-party services have separate account requirements.",
              "evidenceIds": [
                "librechat:librechat:local",
                "librechat:librechat:firstchat"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:license",
            "librechat:librechat:local",
            "librechat:librechat:demo",
            "librechat:librechat:auth",
            "librechat:librechat:agents",
            "librechat:librechat:rag",
            "librechat:librechat:firstchat"
          ]
        }
      ]
    },
    {
      "id": "VEN-04",
      "title": "Contract terms and pricing transparency",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record minimum seats or commitment, contract length, monthly versus annual billing, price-change rules, cancellation and downgrade terms, and invoicing in CHF/EUR. Classify pricing as transparent, partially specified, quote-only or unknown, naming the missing fields. Quote-only pricing is a disclosed constraint.",
      "questions": [
        {
          "id": "minimum_commitment",
          "question": "What seat or spend minimum applies?"
        },
        {
          "id": "contract_length",
          "question": "What contract lengths are offered?"
        },
        {
          "id": "cancellation",
          "question": "How can the contract be cancelled or reduced?"
        },
        {
          "id": "local_invoicing",
          "question": "Can it be invoiced in CHF or EUR from a European entity?"
        },
        {
          "id": "transparency_class",
          "question": "Is pricing transparent, partial, quote-only or unknown?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Contract periods and fees depend on orders, with cancellation restricted during the subscription term.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex under Order Form and public Terms; seat commitments/prices and selected currency contractual",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "minimum_commitment",
              "question": "What seat or spend minimum applies?",
              "support": "unknown",
              "answer": "What seat or spend minimum applies? Terms and pricing guides were checked; minimum seat/spend commitment and plan-specific currency invoicing remain unpriced.",
              "evidenceIds": []
            },
            {
              "id": "contract_length",
              "question": "What contract lengths are offered?",
              "support": "partial",
              "answer": "Terms define Subscription Term through the Order Form. No universal monthly or annual term is specified.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "cancellation",
              "question": "How can the contract be cancelled or reduced?",
              "support": "supported",
              "answer": "Except contractual causes and remedies, customers cannot cancel during the subscription term; each order ends at expiry unless otherwise stated.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "local_invoicing",
              "question": "Can it be invoiced in CHF or EUR from a European entity?",
              "support": "partial",
              "answer": "Terms default to USD or the currency in the order and allow Glean affiliates/resellers. CHF/EUR invoicing by a European entity was not confirmed.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "transparency_class",
              "question": "Is pricing transparent, partial, quote-only or unknown?",
              "support": "supported",
              "answer": "Partially specified: public pricing units and consumption tables, but subscription fees, minimum commitments and purchased-credit prices need an order/quote.",
              "evidenceIds": [
                "glean:glean:core-price",
                "glean:glean:flex-price",
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:terms",
            "glean:glean:r2-core-entitlements",
            "glean:glean:core-price",
            "glean:glean:flex-price"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The MIT licence has no seat or contract-term subscription; optional service contracts are outside that licence.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "minimum_commitment",
              "question": "What seat or spend minimum applies?",
              "support": "supported",
              "answer": "The MIT permission grant has no user-count or spending minimum for software use.",
              "evidenceIds": [
                "librechat:librechat:license"
              ]
            },
            {
              "id": "contract_length",
              "question": "What contract lengths are offered?",
              "support": "supported",
              "answer": "There is no monthly/annual licence subscription in the MIT permission grant. External hosting/API contracts are separate.",
              "evidenceIds": [
                "librechat:librechat:license"
              ]
            },
            {
              "id": "cancellation",
              "question": "How can the contract be cancelled or reduced?",
              "support": "partial",
              "answer": "An operator can stop running the application; this does not cancel its separately purchased cloud/model services or establish deletion of all copies.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:local"
              ]
            },
            {
              "id": "local_invoicing",
              "question": "Can it be invoiced in CHF or EUR from a European entity?",
              "support": "unknown",
              "answer": "local_invoicing: Can it be invoiced in CHF or EUR from a European entity? CHF/EUR commercial invoicing from a European entity was not established for optional project services.",
              "evidenceIds": []
            },
            {
              "id": "transparency_class",
              "question": "Is pricing transparent, partial, quote-only or unknown?",
              "support": "partial",
              "answer": "Source licensing is transparent; a complete all-in hosted/support/inference tariff is not included in this self-hosted offer.",
              "evidenceIds": [
                "librechat:librechat:license",
                "librechat:librechat:firstchat"
              ]
            }
          ],
          "limitations": [
            "cancellation: An operator can stop running the application; this does not cancel its separately purchased cloud/model services or establish deletion of all copies.",
            "local_invoicing: Can it be invoiced in CHF or EUR from a European entity? CHF/EUR commercial invoicing from a European entity was not established for optional project services.",
            "transparency_class: Source licensing is transparent; a complete all-in hosted/support/inference tariff is not included in this self-hosted offer."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:license",
            "librechat:librechat:local",
            "librechat:librechat:firstchat"
          ]
        }
      ]
    },
    {
      "id": "VEN-05",
      "title": "Source licence",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record licence per component (client, server, connectors, hosted extensions) and revision. Distinguish OSI open source, source-available with restrictions (branding clauses, user caps), and closed. Repository visibility is not a licence classification. Licences change between releases: record the current terms, and never carry a fork's historical licence over to the upstream product or the reverse.",
      "questions": [
        {
          "id": "licence_type",
          "question": "Which licence applies to each component?"
        },
        {
          "id": "branding_restrictions",
          "question": "Do licence terms restrict branding or user counts?"
        },
        {
          "id": "enterprise_features_closed",
          "question": "Are enterprise features in a separate closed edition?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The hosted platform is provided under restricted commercial terms; public SDK licences are separate.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite/Enterprise Flex proprietary hosted/managed Service under Terms; no public core-source licence inferred",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "licence_type",
              "question": "Which licence applies to each component?",
              "support": "supported",
              "answer": "Terms grant subscription access and prohibit deriving source code, modifying or redistributing the Service. This establishes a proprietary service contract, not an OSI licence for the platform.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "branding_restrictions",
              "question": "Do licence terms restrict branding or user counts?",
              "support": "supported",
              "answer": "Terms prohibit removing proprietary notices and limit use to licensed users/orders; no numerical standard user cap is given.",
              "evidenceIds": [
                "glean:glean:terms",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "enterprise_features_closed",
              "question": "Are enterprise features in a separate closed edition?",
              "support": "unknown",
              "answer": "Are enterprise features in a separate closed edition? Platform terms and the public gleanwork organization were checked; a complete component licence inventory or separate open/closed enterprise edition split was not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:terms",
            "glean:glean:r2-core-entitlements"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The pinned main repository is MIT licensed; no user-count or product-branding clause appears in that licence.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "licence_type",
              "question": "Which licence applies to each component?",
              "support": "supported",
              "answer": "The main client/server repository at v0.8.8 is MIT. Separate Code Interpreter, admin-panel, connector or hosted-service components need their own licence review.",
              "evidenceIds": [
                "librechat:librechat:license"
              ]
            },
            {
              "id": "branding_restrictions",
              "question": "Do licence terms restrict branding or user counts?",
              "support": "supported",
              "answer": "The MIT grant permits use/modification/distribution subject to retaining its copyright and permission notice; it includes no 50-user cap or mandatory UI branding clause.",
              "evidenceIds": [
                "librechat:librechat:license"
              ]
            },
            {
              "id": "enterprise_features_closed",
              "question": "Are enterprise features in a separate closed edition?",
              "support": "partial",
              "answer": "The project documents a separate preview admin panel and optional code services. A closed enterprise-edition boundary for the main repository was not established.",
              "evidenceIds": [
                "librechat:librechat:admin",
                "librechat:librechat:code",
                "librechat:librechat:license"
              ]
            }
          ],
          "limitations": [
            "enterprise_features_closed: The project documents a separate preview admin panel and optional code services. A closed enterprise-edition boundary for the main repository was not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:license",
            "librechat:librechat:admin",
            "librechat:librechat:code"
          ]
        }
      ]
    },
    {
      "id": "VEN-06",
      "title": "Data export and exit",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record admin export of chats, assistants, knowledge bases, prompts and audit logs, formats, export completeness, user self-export, and what survives contract end. Run an admin export on a trial. Exported chats alone do not make assistants and knowledge portable.",
      "questions": [
        {
          "id": "chat_export",
          "question": "Can admins export all chats?"
        },
        {
          "id": "assistant_export",
          "question": "Can assistants and prompts be exported in a reusable format?"
        },
        {
          "id": "knowledge_export",
          "question": "Can knowledge bases and their sources be exported?"
        },
        {
          "id": "export_format",
          "question": "Are formats documented and machine-readable?"
        },
        {
          "id": "post_termination_window",
          "question": "How long can data be retrieved after termination?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Workflow agent configurations are portable as JSON; full tenant chat/knowledge export remains unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Agent Governance import/export in seat; limited Auto ZIP export and complete organization exit separately unverified",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_export",
              "question": "Can admins export all chats?",
              "support": "unknown",
              "answer": "Can admins export all chats? Agent export and contractual termination pages were checked. No trial admin export was run; all-chat export, knowledge/source completeness and a post-termination retrieval window were not established.",
              "evidenceIds": []
            },
            {
              "id": "assistant_export",
              "question": "Can assistants and prompts be exported in a reusable format?",
              "support": "supported",
              "answer": "Workflow-mode agent configuration exports to JSON and imports into another deployment; missing target tools must be reconfigured. Auto-mode ZIP export is limited availability for admins.",
              "evidenceIds": [
                "glean:glean:builder",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "knowledge_export",
              "question": "Can knowledge bases and their sources be exported?",
              "support": "unknown",
              "answer": "Can knowledge bases and their sources be exported? Agent export and contractual termination pages were checked. No trial admin export was run; all-chat export, knowledge/source completeness and a post-termination retrieval window were not established.",
              "evidenceIds": []
            },
            {
              "id": "export_format",
              "question": "Are formats documented and machine-readable?",
              "support": "supported",
              "answer": "Workflow exports use JSON; limited Auto exports contain spec.yaml and instructions.md in ZIP. Admin logs have CSV export.",
              "evidenceIds": [
                "glean:glean:builder",
                "glean:glean:audit",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "post_termination_window",
              "question": "How long can data be retrieved after termination?",
              "support": "unknown",
              "answer": "How long can data be retrieved after termination? Agent export and contractual termination pages were checked. No trial admin export was run; all-chat export, knowledge/source completeness and a post-termination retrieval window were not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps.",
            "Core Suite includes agent import/export, but limited Auto ZIP rollout and complete tenant-export entitlements remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:builder",
            "glean:glean:r2-core-entitlements",
            "glean:glean:audit"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Users can export conversations in machine-readable formats; organization-wide Agent/knowledge exit completeness remains unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_export",
              "question": "Can admins export all chats?",
              "support": "partial",
              "answer": "Pinned client code exports a user-selected conversation, including optional branches/options. A documented admin bulk export of every user’s chats was not established.",
              "evidenceIds": [
                "librechat:librechat:export-pin"
              ]
            },
            {
              "id": "assistant_export",
              "question": "Can assistants and prompts be exported in a reusable format?",
              "support": "partial",
              "answer": "Beta management APIs expose Agent/Skill objects, but a reusable complete assistant/prompt export fixture was not verified.",
              "evidenceIds": [
                "librechat:librechat:api"
              ]
            },
            {
              "id": "knowledge_export",
              "question": "Can knowledge bases and their sources be exported?",
              "support": "unknown",
              "answer": "knowledge_export: Can knowledge bases and their sources be exported? No admin exit fixture, knowledge-source/index portability test or commercial post-termination retrieval window was verified; infrastructure backups are operator-owned.",
              "evidenceIds": []
            },
            {
              "id": "export_format",
              "question": "Are formats documented and machine-readable?",
              "support": "supported",
              "answer": "Conversation export code supports JSON, CSV, Markdown and text. This establishes format availability, not complete organization-data portability.",
              "evidenceIds": [
                "librechat:librechat:export-pin"
              ]
            },
            {
              "id": "post_termination_window",
              "question": "How long can data be retrieved after termination?",
              "support": "unknown",
              "answer": "post_termination_window: How long can data be retrieved after termination? No admin exit fixture, knowledge-source/index portability test or commercial post-termination retrieval window was verified; infrastructure backups are operator-owned.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "chat_export: Pinned client code exports a user-selected conversation, including optional branches/options. A documented admin bulk export of every user’s chats was not established.",
            "assistant_export: Beta management APIs expose Agent/Skill objects, but a reusable complete assistant/prompt export fixture was not verified.",
            "knowledge_export: Can knowledge bases and their sources be exported? No admin exit fixture, knowledge-source/index portability test or commercial post-termination retrieval window was verified; infrastructure backups are operator-owned.",
            "post_termination_window: How long can data be retrieved after termination? No admin exit fixture, knowledge-source/index portability test or commercial post-termination retrieval window was verified; infrastructure backups are operator-owned."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:export-pin",
            "librechat:librechat:api"
          ]
        }
      ]
    },
    {
      "id": "VEN-07",
      "title": "Support and service levels",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record support channels, languages (German, French, Italian), hours and time zone, local or regional presence, documented response times, uptime SLA and credits, public status page and incident history. Popularity is not a reliability score.",
      "questions": [
        {
          "id": "support_channels",
          "question": "Which support channels are available on each plan?"
        },
        {
          "id": "support_languages",
          "question": "Is support available in German, French or Italian?"
        },
        {
          "id": "regional_presence",
          "question": "Is there a DACH or Swiss entity, team or partner?"
        },
        {
          "id": "uptime_sla",
          "question": "Is there an uptime SLA with credits?"
        },
        {
          "id": "status_page",
          "question": "Is there a public status page with history?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Support tiers are documented; a credited 99.9% SLA applies only to paid Premium Support.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Unspecified contracted plan unless Core Suite, Enterprise Flex, key mode or add-on is named below",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "support_channels",
              "question": "Which support channels are available on each plan?",
              "support": "supported",
              "answer": "The support portal is the channel eligible for response targets; Standard Support is included and Premium paid. Other channels do not have trackable SLA response times.",
              "evidenceIds": [
                "glean:glean:sla"
              ]
            },
            {
              "id": "support_languages",
              "question": "Is support available in German, French or Italian?",
              "support": "partial",
              "answer": "The SLA explicitly provides a Japanese support option for Japan and names California/Bangalore operations; German/French/Italian language commitments were not established.",
              "evidenceIds": [
                "glean:glean:sla"
              ]
            },
            {
              "id": "regional_presence",
              "question": "Is there a DACH or Swiss entity, team or partner?",
              "support": "unknown",
              "answer": "Is there a DACH or Swiss entity, team or partner? The SLA, site and status.glean.com were checked. The status URL returned HTTP 403, so incident history was not verified; DACH/Swiss support presence was not established.",
              "evidenceIds": []
            },
            {
              "id": "uptime_sla",
              "question": "Is there an uptime SLA with credits?",
              "support": "supported",
              "answer": "Paid Premium Support has 99.9% monthly uptime. Credits are 10% below 99.9% down to 99.0%, and 20% below 99.0%, subject to exclusions and claim deadlines.",
              "evidenceIds": [
                "glean:glean:sla"
              ]
            },
            {
              "id": "status_page",
              "question": "Is there a public status page with history?",
              "support": "unknown",
              "answer": "Is there a public status page with history? The SLA, site and status.glean.com were checked. The status URL returned HTTP 403, so incident history was not verified; DACH/Swiss support presence was not established.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:sla"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public project/community channels are available; a binding business support SLA was not established.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "support_channels",
              "question": "Which support channels are available on each plan?",
              "support": "partial",
              "answer": "Public GitHub issue reporting and community channels are documented; a supported enterprise channel/response-time matrix was not established for MIT self-hosting.",
              "evidenceIds": [
                "librechat:librechat:logging",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "support_languages",
              "question": "Is support available in German, French or Italian?",
              "support": "unknown",
              "answer": "support_languages: Is support available in German, French or Italian? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
              "evidenceIds": []
            },
            {
              "id": "regional_presence",
              "question": "Is there a DACH or Swiss entity, team or partner?",
              "support": "unknown",
              "answer": "regional_presence: Is there a DACH or Swiss entity, team or partner? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
              "evidenceIds": []
            },
            {
              "id": "uptime_sla",
              "question": "Is there an uptime SLA with credits?",
              "support": "unknown",
              "answer": "uptime_sla: Is there an uptime SLA with credits? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
              "evidenceIds": []
            },
            {
              "id": "status_page",
              "question": "Is there a public status page with history?",
              "support": "unknown",
              "answer": "status_page: Is there a public status page with history? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "support_channels: Public GitHub issue reporting and community channels are documented; a supported enterprise channel/response-time matrix was not established for MIT self-hosting.",
            "support_languages: Is support available in German, French or Italian? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
            "regional_presence: Is there a DACH or Swiss entity, team or partner? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
            "uptime_sla: Is there an uptime SLA with credits? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass.",
            "status_page: Is there a public status page with history? No DE/FR/IT support coverage, CH/DACH legal/partner presence, priced uptime credits or product-service incident-history contract was verified in the public docs, site and release pass."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:logging",
            "librechat:librechat:firstchat"
          ]
        }
      ]
    },
    {
      "id": "VEN-08",
      "title": "Onboarding, training and adoption",
      "group": {
        "id": 7,
        "name": "Commercials and vendor"
      },
      "judgment": "Record vendor-led onboarding, admin training, end-user training (live, e-learning, languages), use-case libraries, champion programmes, change-management materials and their cost. Distinguish included services from paid professional services and partner offerings.",
      "questions": [
        {
          "id": "onboarding_service",
          "question": "Is guided onboarding included?"
        },
        {
          "id": "user_training",
          "question": "Is end-user training offered, in which languages?"
        },
        {
          "id": "use_case_library",
          "question": "Are role-based use cases and templates provided?"
        },
        {
          "id": "adoption_programme",
          "question": "Is there a champion or adoption programme?"
        },
        {
          "id": "service_cost",
          "question": "Which services cost extra?"
        }
      ],
      "products": [
        {
          "productId": "glean",
          "claimId": "glean:VEN-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public training and templates exist; exact onboarding-service entitlements and prices remain open.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "hosted"
            ],
            "version": "Public documentation retrieved 2026-10-21; deployed version not observed",
            "plan": "Core Suite Agent Library/templates and public Academy links; contracted onboarding and Premium Support separately scoped",
            "addOns": [],
            "deploymentMode": "dedicated-instance",
            "region": "Selected hosting and model-provider regions; no blanket EU or Swiss processing claim",
            "os": [],
            "surfaces": [
              {
                "id": "hosted",
                "name": "Glean Hosted web Assistant and Agents",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "onboarding_service",
              "question": "Is guided onboarding included?",
              "support": "unknown",
              "answer": "Is guided onboarding included? Academy, agent library, SLA and legal service links were checked; included vendor-led onboarding, champion/adoption programme terms and localized end-user training were not established.",
              "evidenceIds": []
            },
            {
              "id": "user_training",
              "question": "Is end-user training offered, in which languages?",
              "support": "partial",
              "answer": "Glean documentation links self-paced Agent Builder training through Glean Academy; German/French/Italian course availability was not established.",
              "evidenceIds": [
                "glean:glean:agents",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "use_case_library",
              "question": "Are role-based use cases and templates provided?",
              "support": "supported",
              "answer": "The internal Agent library and documented templates support reusable role/task examples.",
              "evidenceIds": [
                "glean:glean:library",
                "glean:glean:r2-core-entitlements"
              ]
            },
            {
              "id": "adoption_programme",
              "question": "Is there a champion or adoption programme?",
              "support": "unknown",
              "answer": "Is there a champion or adoption programme? Academy, agent library, SLA and legal service links were checked; included vendor-led onboarding, champion/adoption programme terms and localized end-user training were not established.",
              "evidenceIds": []
            },
            {
              "id": "service_cost",
              "question": "Which services cost extra?",
              "support": "partial",
              "answer": "Premium Support is priced separately under the SLA. The legal index directly lists the Technical Services Addendum and named Outcomes Packages. Those listings do not establish included onboarding or complete professional-services fees.",
              "evidenceIds": [
                "glean:glean:sla",
                "glean:glean:r3-legal-index",
                "glean:glean:r2-core-entitlements"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps.",
            "Exact Academy access, included onboarding, language coverage and support/professional-services entitlement under the customer Order Form remain unknown."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "glean:glean:agents",
            "glean:glean:r2-core-entitlements",
            "glean:glean:library",
            "glean:glean:sla",
            "glean:glean:r3-legal-index"
          ]
        },
        {
          "productId": "librechat",
          "claimId": "librechat:VEN-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Self-hosting and Agent use have public setup guides; vendor-led training/adoption packages were not verified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "self-hosted-web"
            ],
            "version": "Public documentation retrieved 2026-10-21; inspected source v0.8.8 / e8f3be08623663d4ad7f7241e693c94469b63bb0",
            "plan": "MIT customer-operated LibreChat; optional separately deployed services identified per answer",
            "addOns": [],
            "deploymentMode": "on-premise",
            "region": "Customer-selected infrastructure; model, OCR, search, observability and support services separately scoped",
            "os": [],
            "surfaces": [
              {
                "id": "self-hosted-web",
                "name": "Customer-operated web application and server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "onboarding_service",
              "question": "Is guided onboarding included?",
              "support": "unknown",
              "answer": "onboarding_service: Is guided onboarding included? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
              "evidenceIds": []
            },
            {
              "id": "user_training",
              "question": "Is end-user training offered, in which languages?",
              "support": "unknown",
              "answer": "user_training: Is end-user training offered, in which languages? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
              "evidenceIds": []
            },
            {
              "id": "use_case_library",
              "question": "Are role-based use cases and templates provided?",
              "support": "partial",
              "answer": "The Agent and setup guides include examples and tutorials; a role-based enterprise training/use-case program was not established.",
              "evidenceIds": [
                "librechat:librechat:agents",
                "librechat:librechat:firstchat"
              ]
            },
            {
              "id": "adoption_programme",
              "question": "Is there a champion or adoption programme?",
              "support": "unknown",
              "answer": "adoption_programme: Is there a champion or adoption programme? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
              "evidenceIds": []
            },
            {
              "id": "service_cost",
              "question": "Which services cost extra?",
              "support": "unknown",
              "answer": "service_cost: Which services cost extra? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "onboarding_service: Is guided onboarding included? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
            "user_training: Is end-user training offered, in which languages? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
            "use_case_library: The Agent and setup guides include examples and tutorials; a role-based enterprise training/use-case program was not established.",
            "adoption_programme: Is there a champion or adoption programme? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site.",
            "service_cost: Which services cost extra? No included guided rollout, local-language end-user training, champion programme, change-management service or professional-service price list was established from the official documentation and site."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "librechat:librechat:agents",
            "librechat:librechat:firstchat"
          ]
        }
      ]
    }
  ],
  "sources": [
    {
      "id": "glean:glean:models",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/llms",
      "title": "Supported LLMs",
      "locator": "Supported models; availability by hosting environment and provider",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Model Hub lists text and image models, manual choice and Auto routing, with provider availability dependent on key and cloud."
    },
    {
      "id": "glean:glean:key-matrix",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/llm-key-feature-availability",
      "title": "Feature availability by LLM key, provider, and cloud",
      "locator": "Provider and feature matrices",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Customer Key restricts cloud-provider routes and excludes Meeting Notes and podcast artifacts; some defaults must use the same provider."
    },
    {
      "id": "glean:glean:uploads",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/file-upload",
      "title": "Upload files in Assistant",
      "locator": "Formats; upload limits; security; limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Uploads support Office documents, PDFs, images and text, with context-dependent file caps and OCR prerequisite."
    },
    {
      "id": "glean:glean:r2-core-entitlements",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/glean-core-suite-pricing",
      "title": "Glean Core Suite entitlements and Model Hub rates",
      "locator": "Seat capabilities, surfaces, APIs, Model Hub Usage and rate table updated10/20/2026",
      "sourceDate": "2026-10-20",
      "retrievedAt": "2026-10-21",
      "finding": "Core Suite separates included platform seats from Model Hub usage, names client/API surfaces, and publishes token rates."
    },
    {
      "id": "glean:glean:r3-october-rollout-migration",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/release-notes/releases/2026-10-15-october-release",
      "title": "October 15, 2026 release, version 563",
      "locator": "AI & Model Updates, Auto mode policies; Deprecations & Sunsets, OpenAI Web Search",
      "sourceDate": "2026-10-15",
      "retrievedAt": "2026-10-21",
      "finding": "Auto policies require rollout opt-in from October 15 with GA scheduled October 29; Brave is the new search default and existing OpenAI search migrates from October 19."
    },
    {
      "id": "librechat:librechat:custom",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/quick_start/custom_endpoints",
      "title": "Custom endpoints",
      "locator": "Endpoint setup; API key; base URL; model list",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Operators configure compatible endpoints and customer-held keys, including local and hosted services."
    },
    {
      "id": "librechat:librechat:azure",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/ai_endpoints/azure",
      "title": "Azure OpenAI configuration",
      "locator": "Deployment groups; API credentials",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Azure OpenAI uses customer deployment groups, instance names and credentials."
    },
    {
      "id": "librechat:librechat:bedrock",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/aws_bedrock",
      "title": "AWS Bedrock object structure",
      "locator": "Region; credentials; model selection",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Bedrock routes use customer AWS configuration and region selection."
    },
    {
      "id": "librechat:librechat:vertex",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/anthropic_vertex",
      "title": "Anthropic Vertex AI configuration",
      "locator": "Project and region configuration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Claude can run through customer Google Vertex AI credentials and regions."
    },
    {
      "id": "librechat:librechat:modelspec",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/model_specs",
      "title": "Model specifications",
      "locator": "enforce; preset; modelSelect; addedEndpoints",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Administrators can enforce configured model presets and defaults; available endpoints still depend on customer credentials."
    },
    {
      "id": "librechat:librechat:agents",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/agents",
      "title": "Agents",
      "locator": "Builder; Capabilities; Version history; Sharing; Activity; tool approval",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents combine instructions, models, files, tools, skills and sharing permissions, with visible execution and configurable approval."
    },
    {
      "id": "librechat:librechat:ocr",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/ocr",
      "title": "OCR for documents",
      "locator": "File Context; Upload as Text; Optional OCR; Limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "OCR can augment text extraction, or files can be sent to compatible provider APIs; format and model limitations remain."
    },
    {
      "id": "librechat:librechat:releases",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://github.com/LibreChat-AI/LibreChat/releases/tag/v0.8.8",
      "title": "LibreChat v0.8.8 release",
      "locator": "Highlights, 2026-10-01",
      "sourceDate": "2026-10-01",
      "retrievedAt": "2026-10-21",
      "finding": "The stable release documents agent controls, current model updates and explicitly experimental schedules/workspaces and beta Agents API."
    },
    {
      "id": "glean:glean:deprecation",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/model-deprecation",
      "title": "Model deprecation",
      "locator": "Customer Key notice schedule; deprecated models",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Customer Key deprecation emails are specified at 60 and 15 days, with removal and replacement behavior."
    },
    {
      "id": "glean:glean:release",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/release-notes/releases/2026-10-15-october-release",
      "title": "October 15, 2026 release notes",
      "locator": "Release entry",
      "sourceDate": "2026-10-15",
      "retrievedAt": "2026-10-21",
      "finding": "Glean publishes dated release notes covering product and model changes."
    },
    {
      "id": "glean:glean:r2-flex-entitlements",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/glean-enterprise-flex-pricing",
      "title": "Glean Enterprise Flex entitlements",
      "locator": "Seats, Developer Tools, Platform, Protect+ and Premium Support",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Enterprise Flex separates seat allowances, metered client APIs/agent runs, included platform governance and annual Protect+/support add-ons."
    },
    {
      "id": "glean:glean:r2-auto-policy-and-cloud-conflict",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/configure-llms",
      "title": "Configure LLMs in the Model Hub",
      "locator": "Auto policies; AWS Vertex note; provider setup headings",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Balanced is the default Auto policy with per-request model choice; the AWS Vertex note conflicts with the supported-provider matrix and GCP-only Vertex setup heading."
    },
    {
      "id": "librechat:librechat:firstchat",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/quick_start/first_chat",
      "title": "Your first chat",
      "locator": "Software you host yourself; endpoint credentials; public demo",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "LibreChat ships without a model key; the public demo is for evaluation rather than private or durable data."
    },
    {
      "id": "librechat:librechat:code",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/code_interpreter",
      "title": "Code Interpreter API",
      "locator": "Setup; self-hosted service; workspace permissions; generated files",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A separate code execution service supports multiple languages and downloadable generated files; stateful/attached modes are experimental."
    },
    {
      "id": "librechat:librechat:license",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/LICENSE",
      "title": "LibreChat v0.8.8 MIT licence",
      "locator": "LICENSE, permission grant and notice requirement",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned repository is MIT licensed with copyright/permission notice preservation and an as-is disclaimer."
    },
    {
      "id": "glean:glean:r4-open-model-inference",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/open-models-by-region",
      "title": "Glean open models by region",
      "locator": "Creator-region controls; Operational details",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Universal Model Key open models are served through LLM providers under zero-retention agreements. Creator-region grouping is not inference location; the page states these models are hosted in the US."
    },
    {
      "id": "librechat:librechat:ragcfg",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/rag_api",
      "title": "RAG API configuration",
      "locator": "Embedding providers; lite image; full image",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "OpenAI, Hugging Face and Ollama embedding configurations are documented; image choice affects local embedding support."
    },
    {
      "id": "glean:glean:model-controls",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/model-exclusion",
      "title": "Exclude or restrict models",
      "locator": "Department and team allow-lists; premium-model toggle",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins can restrict eligible models by department or IdP group, but default models cannot be restricted and hiding premium pickers does not block Auto."
    },
    {
      "id": "glean:glean:model-config",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/configure-llms",
      "title": "Configure LLMs in the Model Hub",
      "locator": "Default models and Auto mode policies",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins configure default models and department Auto policies."
    },
    {
      "id": "glean:glean:restrictions",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/assistant/configuration/content-restrictions",
      "title": "Restrict LLM access to content",
      "locator": "Exclusion and inclusion rules",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins can exclude connectors, containers and documents from LLM use; changes may take up to one hour."
    },
    {
      "id": "glean:glean:limits",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/management/usage/set-usage-limits-and-alerts",
      "title": "Set usage limits and alerts",
      "locator": "Enforcement; organization, user, team and agent limits",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Core Suite and Enterprise Flex limits can alert or block later billable usage after the current run finishes; team defaults are not pooled budgets."
    },
    {
      "id": "librechat:librechat:access",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/access_control",
      "title": "Granular access control",
      "locator": "Feature permissions; Resource ACLs; System grants; Groups",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Roles, groups and resource ACLs govern features and sharing, with Entra groups synchronized at sign-in."
    },
    {
      "id": "librechat:librechat:admin",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/admin_panel",
      "title": "LibreChat Admin Panel",
      "locator": "Status Preview; separate service; admin APIs",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A separate browser management panel is available for testing and uses the underlying LibreChat admin APIs."
    },
    {
      "id": "librechat:librechat:balance",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/balance",
      "title": "Balance configuration",
      "locator": "enabled; startBalance; refill configuration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Optional token-credit balances initialize and refill user credits; tracking is disabled by default."
    },
    {
      "id": "librechat:librechat:mod",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/mod_system",
      "title": "Automated moderation",
      "locator": "Violation scoring and limits",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Moderation scores abusive login/registration/message activity and may ban users; it is not a documented content DLP classifier."
    },
    {
      "id": "librechat:librechat:balance-pin",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/packages/api/src/middleware/checkBalance.ts",
      "title": "LibreChat balance admission implementation",
      "locator": "packages/api/src/middleware/checkBalance.ts, checkBalance",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned middleware reserves user credits and throws a TOKEN_BALANCE error when the reservation cannot be admitted.",
      "commit": "e8f3be08623663d4ad7f7241e693c94469b63bb0",
      "path": "packages/api/src/middleware/checkBalance.ts"
    },
    {
      "id": "glean:glean:analysis",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/assistant/data-analysis/about-data-analysis",
      "title": "Data analysis overview",
      "locator": "Known limitations; code interpreter security",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Uploaded spreadsheets can be analyzed in per-session sandboxes; indexed files can be truncated, and abuse-flagged files may be retained up to 30 days."
    },
    {
      "id": "librechat:librechat:rag",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/rag_api",
      "title": "RAG API",
      "locator": "Architecture; document indexing; embeddings; semantic search",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A separate RAG API indexes uploaded content in PostgreSQL/PGVector for retrieval."
    },
    {
      "id": "librechat:librechat:text",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/upload_as_text",
      "title": "Upload files as text",
      "locator": "Full text extraction and context",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Text upload injects extracted file content rather than relying only on vector retrieval."
    },
    {
      "id": "librechat:librechat:filecfg",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/file_config",
      "title": "File configuration",
      "locator": "File limits; MIME patterns; provider routes",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "File limits and formats are configurable by endpoint and file processing route."
    },
    {
      "id": "librechat:librechat:r4-spreadsheet-parser",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://github.com/LibreChat-AI/LibreChat/blob/a378657583567310c841d652b0f6b00c83e2bd6b/packages/api/src/files/documents/crud.ts",
      "title": "LibreChat spreadsheet text parser",
      "locator": "getParserForMimeType; excelSheetToText, lines 109-129",
      "sourceDate": "2026-10-24",
      "retrievedAt": "2026-10-26",
      "finding": "The built-in parser accepts XLSX/XLS/ODS and serializes each sheet as its name followed by CSV values. It does not establish preserved workbook layout, recalculated formulas or fixture accuracy.",
      "commit": "a378657583567310c841d652b0f6b00c83e2bd6b",
      "path": "packages/api/src/files/documents/crud.ts"
    },
    {
      "id": "librechat:librechat:r4-text-current",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/upload_as_text",
      "title": "LibreChat current Upload as Text guide",
      "locator": "Built-in parser; supported documents; truncation",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "The development guide lists XLSX/XLS/ODS parsing up to 15 MB and token-bounded text injection, not a formatted spreadsheet editor."
    },
    {
      "id": "glean:glean:projects",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/knowledge/projects/how-projects-work",
      "title": "Organize content with Projects",
      "locator": "Create; sharing; access; migration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Projects persist chats and documents, are private by default and replace Collections through a gradual rollout."
    },
    {
      "id": "librechat:librechat:projects",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/projects",
      "title": "Projects",
      "locator": "Availability; personal scope; files and instructions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Projects persist files and instructions across a user’s chats but cannot be shared or transferred."
    },
    {
      "id": "glean:glean:deploy",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/get-started/prepare/about-deployment",
      "title": "Glean deployment models",
      "locator": "Glean Hosted; Customer Hosted; comparison table",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Both modes use single-tenant infrastructure operated by Glean; Customer Hosted runs in customer GCP or AWS accounts with Glean support access."
    },
    {
      "id": "glean:glean:connectors",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors",
      "title": "Connectors hub",
      "locator": "Native connector catalog",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The official catalog lists M365, Google, Atlassian and other business-system connectors."
    },
    {
      "id": "glean:glean:sharepoint",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/sharepoint/about",
      "title": "SharePoint overview",
      "locator": "Access patterns; permissions and security",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SharePoint supports indexed and live retrieval; indexing uses certificate-based application permissions and admin consent."
    },
    {
      "id": "glean:glean:onedrive",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/onedrive/about",
      "title": "OneDrive overview",
      "locator": "Access patterns; permissions and security",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "OneDrive offers indexed and live search under the Microsoft 365 parent connector, with certificate-based application permissions."
    },
    {
      "id": "glean:glean:outlook",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/outlook/about",
      "title": "Outlook overview",
      "locator": "Connector overview",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Outlook connector supports access to Outlook content through Glean."
    },
    {
      "id": "glean:glean:teams-connector",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/teams/about",
      "title": "Teams overview",
      "locator": "Supported content; permissions and security",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams indexes channels and optionally private and meeting chats, with mirrored membership checked at query time."
    },
    {
      "id": "glean:glean:drive",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/gdrive/about",
      "title": "Google Drive overview",
      "locator": "Permissions; crawling and updates",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Drive content and permissions are indexed with directory delegation; documented activity and group-sync schedules are distinct."
    },
    {
      "id": "glean:glean:gmail",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/connectors/native/gmail/about",
      "title": "Gmail overview",
      "locator": "Indexed content and scope",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Gmail has indexed search with source-specific crawl scope and controls."
    },
    {
      "id": "glean:glean:gateway",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/platform/mcp/external-gateway-tools",
      "title": "Set up external tools with MCP Gateway",
      "locator": "Prerequisites; external servers; access control",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins proxy external MCP servers and custom tools with role and group controls and OAuth 2.1."
    },
    {
      "id": "librechat:librechat:sharepoint",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/sharepoint",
      "title": "SharePoint and OneDrive integration",
      "locator": "Prerequisites; delegated permissions; admin consent",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Microsoft file picker uses Entra token reuse and delegated on-behalf-of downloads to attach files."
    },
    {
      "id": "librechat:librechat:mcp",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/mcp",
      "title": "MCP",
      "locator": "YAML/UI setup; authentication; ownership and selection",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "MCP servers can be configured through YAML or the permission-gated UI, including per-user OAuth."
    },
    {
      "id": "librechat:librechat:mcpcfg",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/mcp_servers",
      "title": "MCP server configuration",
      "locator": "Transport examples; headers; OAuth",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Configuration includes stdio, SSE and Streamable HTTP transports and server-specific credentials."
    },
    {
      "id": "glean:glean:r4-purview-label-redlist",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/protect/sensitive-findings/restrict-content-via-sensitivity-labels",
      "title": "Glean O365 sensitivity-label restrictions",
      "locator": "Glean Protect+; setup; label-processing FAQ",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Protect+ can exclude SharePoint/OneDrive items by Purview label priority. Glean configures the redlist after account-team enablement; initial full crawl and later recrawls govern propagation. Teams message text is excluded."
    },
    {
      "id": "librechat:librechat:compose-pin",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/docker-compose.yml",
      "title": "LibreChat Docker service configuration",
      "locator": "docker-compose.yml, api/mongodb/vectordb/rag_api services",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned example runs a MongoDB primary store and a separate PGVector/RAG service with customer-mounted data.",
      "commit": "e8f3be08623663d4ad7f7241e693c94469b63bb0",
      "path": "docker-compose.yml"
    },
    {
      "id": "glean:glean:language",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/management/features/glean-language-support",
      "title": "Glean language support",
      "locator": "Language support matrix; cross-language warning",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "German, French, Italian and English end-user UIs are listed; cross-language retrieval is early access and admin setup is not localized."
    },
    {
      "id": "glean:glean:research",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/deep-research",
      "title": "Use Deep Research",
      "locator": "Key modes; citations; limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Deep Research creates cited read-only reports from company sources and Brave web search; key modes differ."
    },
    {
      "id": "glean:glean:sharing",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/chat-sharing",
      "title": "Share chats",
      "locator": "Viewer controls; uploaded files; retention note",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Viewer chat sharing describes citation redaction and states a fixed 30-day duration."
    },
    {
      "id": "glean:glean:memory",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/memory-personalization",
      "title": "Memory and personalization",
      "locator": "Saved and learned memories; user controls",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Users can manage saved and learned memory in settings and chat."
    },
    {
      "id": "glean:glean:memory-admin",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/assistant/configuration/memory-personalization",
      "title": "Configure memory settings",
      "locator": "Configure memory; billing",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins can disable learned memory but not user-controlled saved memory; pricing differs for legacy customers."
    },
    {
      "id": "librechat:librechat:memory",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/memory",
      "title": "User memory",
      "locator": "Key/value store; controls; disabled by default",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Configured user memory stores cross-chat key/value context with user editing controls; it does not index all past chats."
    },
    {
      "id": "glean:glean:builder",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/concepts/agent-builder",
      "title": "Agent Builder",
      "locator": "Instructions, tools and models; import and export",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents combine configured steps and models; Workflow JSON export is generally available while Auto ZIP export has limited availability."
    },
    {
      "id": "glean:glean:agent-sharing",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/concepts/sharing-permissions",
      "title": "Sharing and permissions",
      "locator": "Agent sharing permissions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents have controlled sharing and edit access."
    },
    {
      "id": "glean:glean:library",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/concepts/agent-library",
      "title": "Agent library",
      "locator": "Browse and discover agents",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Users discover and run accessible agents through the internal library."
    },
    {
      "id": "glean:glean:agents",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/how-agents-work",
      "title": "How agents work",
      "locator": "Auto and Workflow modes; tools; steps",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents support dynamic tool use and structured steps, loops and branches."
    },
    {
      "id": "glean:glean:groups",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/identity/roles/group-based-permissions",
      "title": "Group-based permissions",
      "locator": "Supported providers; sync behavior; limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Glean syncs Entra, Google and Okta group membership with integration-dependent timing; feature flag controls group-derived roles."
    },
    {
      "id": "glean:glean:roles",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/identity/roles/admin-roles",
      "title": "Administrator Roles",
      "locator": "Role matrix",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Setup Admin, Admin, Super Admin and specialized moderators have distinct permissions."
    },
    {
      "id": "glean:glean:sunset",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/release-notes/sunset",
      "title": "Product and feature retirements",
      "locator": "Embedded support integrations; Prompt Library; legacy billing dashboard",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The retirement page records November 13, 2026 end of Glean Assist embedded integrations, past Prompt Library migration and legacy billing-dashboard removal."
    },
    {
      "id": "glean:glean:oauth",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/actions/setup-actions/choose-central-or-custom-oauth",
      "title": "OAuth options for tools",
      "locator": "Central and custom OAuth",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Connector tools support Glean-managed or customer OAuth applications."
    },
    {
      "id": "glean:glean:r3-microsoft-write-confirmation",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/generate-files-from-templates",
      "title": "Create Microsoft 365 files",
      "locator": "Recommended agent instructions, Human approval",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Interactive-agent builders can require write confirmation by disabling Run without user confirmation; confirmation is configurable."
    },
    {
      "id": "librechat:librechat:images",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/image_gen",
      "title": "Image generation and editing",
      "locator": "OpenAI Image Tools; provider setup; admin configuration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents can use configured image tools for generation/editing; provider credentials and model parameters are separate."
    },
    {
      "id": "glean:glean:web",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/tools/setup-tools/web-search-tools-setup",
      "title": "Web Search tools setup",
      "locator": "Providers; surface enablement; data sent",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins configure OpenAI, Brave or Google search tools and publish them to selected Glean interfaces."
    },
    {
      "id": "librechat:librechat:web",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/web_search",
      "title": "Web search",
      "locator": "Provider, scraper and reranker configuration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Search can use Serper, SearXNG, Tavily or Keenable, with independently configured scraping and optional reranking."
    },
    {
      "id": "glean:glean:triggers",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/concepts/triggers",
      "title": "Types of agent triggers",
      "locator": "Content and schedule triggers",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agents can start from messages, forms, connected-system content changes and schedules, subject to admin access."
    },
    {
      "id": "librechat:librechat:schedule",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/scheduled_chats",
      "title": "Scheduled Chats",
      "locator": "Experimental and disabled by default; runtime and permissions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Opt-in experimental schedules execute saved Agents with cron/time zones and recheck access and balance before running."
    },
    {
      "id": "librechat:librechat:api",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/agents_api",
      "title": "Agents API beta",
      "locator": "Inference; management; Agent Events; authentication",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The beta API exposes chat/Responses inference, Agent/Skill management and authenticated event delivery."
    },
    {
      "id": "glean:glean:office-output",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/agents/generate-files-from-templates",
      "title": "Create Microsoft 365 files with agents",
      "locator": "Word, Excel and PowerPoint; template limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Enabled tools create Office files, with limitations on arbitrary templates and output fidelity."
    },
    {
      "id": "glean:glean:r4-cancellation-release",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/release-notes/releases/2026-10-15-october-release",
      "title": "Glean October 15 release notes",
      "locator": "Canceled Assistant responses now stop cleanly",
      "sourceDate": "2026-10-15",
      "retrievedAt": "2026-10-26",
      "finding": "Canceling or interrupting an Assistant response also stops tool calls and background tasks started by that response. This is a documented Assistant run behavior, not a tested universal stop guarantee."
    },
    {
      "id": "glean:glean:mcp",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/platform/mcp/about",
      "title": "About Glean MCP server",
      "locator": "Server capabilities; authentication",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Glean exposes enterprise search, chat, documents and agents to external hosts through MCP."
    },
    {
      "id": "glean:glean:core-price",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/glean-core-suite-pricing",
      "title": "Glean Core Suite",
      "locator": "Seat fee; Model Hub Usage; provider rate table",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Core Suite combines per-user monthly licensing with committed Model Hub consumption; the seat amount is not given."
    },
    {
      "id": "glean:glean:mobile",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/management/features/mobile",
      "title": "iOS and Android",
      "locator": "SSO prerequisites; Intune MAM",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Mobile clients use enterprise SSO and integrate with Intune App Protection."
    },
    {
      "id": "glean:glean:surfaces",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/apps/choose-where-to-use-glean",
      "title": "Choose where to use Glean",
      "locator": "Surface table; browser; desktop; extension",
      "sourceDate": "2026-10-19",
      "retrievedAt": "2026-10-21",
      "finding": "Glean has web, desktop, extension and embedded access points."
    },
    {
      "id": "glean:glean:voice",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/real-time-voice",
      "title": "Use real-time voice",
      "locator": "Where to access; privacy; limitations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Real-time voice works on web, desktop and mobile; raw audio streams to the configured model provider while transcripts follow chat retention."
    },
    {
      "id": "librechat:librechat:retention",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/temporary_chat",
      "title": "Temporary chat and data retention",
      "locator": "Default 30-day temporary retention; all/ephemeral; deadlines; memories",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Operators configure expiry for chats/messages/files/shared links; normal chats do not expire by default and memories are excluded."
    },
    {
      "id": "librechat:librechat:insights",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/insights",
      "title": "Admin Insights",
      "locator": "Opt-in; capabilities; metrics; tenant scope",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Insights reports persisted MongoDB activity and identifiable recent conversations; it is not monetary billing analytics."
    },
    {
      "id": "librechat:librechat:local",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/local/docker",
      "title": "Docker installation",
      "locator": "Installation; configuration; updating",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Docker self-installation runs LibreChat with its configured service dependencies."
    },
    {
      "id": "glean:glean:teams-app",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/platform/embedded-integrations/glean-in-teams/glean-in-microsoft-teams--admin-guide",
      "title": "Glean in Microsoft Teams: Admin guide",
      "locator": "Installation prerequisites and deployment",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Microsoft Teams app requires tenant admin setup and consent."
    },
    {
      "id": "glean:glean:images",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/image-generation",
      "title": "Image Generation in Glean",
      "locator": "Model choice; editing; admin controls",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Glean generates and edits images using enabled image models, independently of the text model."
    },
    {
      "id": "glean:glean:terms",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/terms",
      "title": "Glean Terms of Service v5Jun2026",
      "locator": "Sections 1, 2, 5, 12 and 13",
      "sourceDate": "2026-06-05",
      "retrievedAt": "2026-10-21",
      "finding": "The contract defines customer-cloud hosting, restricted proprietary access, order-specific fees, termination deletion and New York governing law."
    },
    {
      "id": "glean:glean:ai-addendum",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/ai-addendum",
      "title": "Glean AI Addendum v5Jun2026",
      "locator": "Sections 3 and 4",
      "sourceDate": "2026-06-05",
      "retrievedAt": "2026-10-21",
      "finding": "No-training commitments and Glean-key zero-day retention have legal and trust-and-safety exceptions; Customer Key responsibilities remain with the customer."
    },
    {
      "id": "librechat:librechat:speech",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/speech",
      "title": "Speech configuration",
      "locator": "Speech-to-text and text-to-speech engines",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Administrators configure audio provider engines and models separately from text generation."
    },
    {
      "id": "librechat:librechat:speech-conversation-r2",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/stt_tts",
      "title": "LibreChat conversation-mode speech settings",
      "locator": "Speech Tab: conversationMode, autoTranscribeAudio, autoSendText, automaticPlayback; engine and allowedAddresses settings",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Conversation mode chains transcription, auto-send and TTS playback for hands-free turns after microphone activation; engines and audio routing are separately configured."
    },
    {
      "id": "librechat:librechat:artifacts",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/artifacts",
      "title": "Artifacts",
      "locator": "React, HTML and Mermaid previews",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Artifacts render generated React, HTML and Mermaid content in the chat interface."
    },
    {
      "id": "glean:glean:team-chat",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/assistant/team-chat",
      "title": "Team chat",
      "locator": "How permissions work; behavior and limits",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Beta shared Editor chats run each request as its author but expose already-generated answers to all participants."
    },
    {
      "id": "librechat:librechat:share",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/shareable_links",
      "title": "Shareable links",
      "locator": "Authentication defaults; file snapshots; continuation",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Shared links publish a transcript branch and optional file snapshots independently of the owner’s live file ACL."
    },
    {
      "id": "glean:glean:accessibility",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/user-guide/about/accessibility",
      "title": "Accessibility Statement",
      "locator": "Conformance status",
      "sourceDate": "2026-09-25",
      "retrievedAt": "2026-10-21",
      "finding": "Glean says a VPAT 2.5 ACR covering WCAG 2.0, 2.1 and 2.2 A/AA is available through its trust center."
    },
    {
      "id": "librechat:librechat:i18n-pin",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/client/src/locales/i18n.ts",
      "title": "LibreChat locale registration",
      "locator": "client/src/locales/i18n.ts, language resources",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned client registers English, German, French and Italian translations among its supported locales.",
      "commit": "e8f3be08623663d4ad7f7241e693c94469b63bb0",
      "path": "client/src/locales/i18n.ts"
    },
    {
      "id": "glean:glean:sso",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/identity/sso/about",
      "title": "About Glean SSO",
      "locator": "Mandatory SSO; identity providers; access controls",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SSO is mandatory through OIDC or SAML; identity-provider policies enforce authentication conditions."
    },
    {
      "id": "librechat:librechat:auth",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/authentication",
      "title": "Authentication system",
      "locator": "Required two-factor authentication; Registration; User scripts",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Local/LDAP accounts can be required to use TOTP; federated MFA belongs to the identity provider and account creation/deletion scripts are documented."
    },
    {
      "id": "librechat:librechat:openid",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/authentication/OAuth2-OIDC",
      "title": "OAuth2 and OIDC",
      "locator": "Supported providers; setup",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "LibreChat documents OAuth2/OIDC providers including Microsoft Entra, Google, Keycloak and Auth0."
    },
    {
      "id": "librechat:librechat:saml",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/authentication/SAML",
      "title": "SAML authentication",
      "locator": "Overview and requirements",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SAML is a documented authentication option for the self-hosted application."
    },
    {
      "id": "librechat:librechat:entra",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/authentication/OAuth2-OIDC/azure",
      "title": "Azure Entra authentication",
      "locator": "Group claims; token reuse; Microsoft Graph integration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Entra OIDC supports group-based admission and Graph integration using configured scopes and token reuse."
    },
    {
      "id": "glean:glean:users",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/identity/roles/manage-users",
      "title": "Managing Users",
      "locator": "Member permissions; sign out all sessions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins assign roles and feature permissions and can revoke user sessions."
    },
    {
      "id": "glean:glean:insights",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/insights/overview",
      "title": "Insights overview",
      "locator": "Metrics; department filters; CSV; privacy",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Adoption metrics and per-person activity are available; small departments are grouped and CSV export is documented."
    },
    {
      "id": "glean:glean:events",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/gce-logs/data-dictionary",
      "title": "Glean Customer Event log overview",
      "locator": "CHAT events; unified export stream",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Customer Event logs include chats and responses separately from administrative logs and export as an unfiltered stream."
    },
    {
      "id": "librechat:librechat:tokens",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/token_usage",
      "title": "Token usage",
      "locator": "Context cost; transactions; per-endpoint token rates",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Usage and estimated costs use recorded tokens and configured provider rates; transactions are distinct from balance enforcement."
    },
    {
      "id": "glean:glean:audit",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/management/audit-logs/admin-audit-logs",
      "title": "Audit Logs",
      "locator": "Coverage; export; default retention",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admin configuration logs have CSV export and 30-day default retention; ongoing delivery needs account-team configuration."
    },
    {
      "id": "glean:glean:history",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/assistant/configuration/chat-history",
      "title": "Chat History",
      "locator": "Retention choices; Customer Event logs",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins choose Off or 30/90/180/365-day conversation retention, independently of Customer Event logging."
    },
    {
      "id": "librechat:librechat:logging",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/logging",
      "title": "Logging",
      "locator": "Error/debug logs; rotation; external tools",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Backend operational logs are written to customer files and can feed external tools; the guide describes 14-day rotation rather than a compliance archive."
    },
    {
      "id": "glean:glean:pii",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/protect/ai-security/sensitive-content-user-prompt",
      "title": "Sensitive content in user prompt",
      "locator": "Prerequisites; regex templates; enforcement",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Configured prompt-only regex policies can flag or block credentials, PII, IBANs and government IDs; built-in patterns start disabled."
    },
    {
      "id": "glean:glean:protect",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/protect/overview",
      "title": "About Glean Protect and Protect+",
      "locator": "Capability comparison; AI security add-on",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Protect+ adds recurring sensitive-content scanning and AI security guardrails to baseline Protect."
    },
    {
      "id": "glean:glean:subprocessors",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/subprocessors",
      "title": "Glean Subprocessors",
      "locator": "Provider table; affiliate remote support",
      "sourceDate": "2026-07-28",
      "retrievedAt": "2026-10-21",
      "finding": "The list names US providers and an Indian affiliate for remote support, security and debugging."
    },
    {
      "id": "librechat:librechat:r4-content-filter",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/message_filter",
      "title": "LibreChat development content-filter configuration",
      "locator": "Source-Aware Filters; Pattern Configuration; Redaction; File Fields",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Opt-in base-YAML policies inspect selected message/file content; block and audit differ from limited Agent text redaction. This is development documentation, not a hosted DLP assurance."
    },
    {
      "id": "librechat:librechat:r4-pii-runtime",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://github.com/LibreChat-AI/LibreChat/blob/a378657583567310c841d652b0f6b00c83e2bd6b/packages/api/src/protection/runtime.ts",
      "title": "LibreChat content-inspection runtime",
      "locator": "createConfiguredContentInspector; source rule configuration",
      "sourceDate": "2026-10-24",
      "retrievedAt": "2026-10-26",
      "finding": "Source-aware configured inspection executes in the LibreChat API. Missing policy disables that scope; configured actions and fields bound inspection.",
      "commit": "a378657583567310c841d652b0f6b00c83e2bd6b",
      "path": "packages/api/src/protection/runtime.ts"
    },
    {
      "id": "librechat:librechat:r4-patterns",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://github.com/LibreChat-AI/LibreChat/blob/a378657583567310c841d652b0f6b00c83e2bd6b/packages/api/src/protection/detectors/pattern.ts",
      "title": "LibreChat pattern detector",
      "locator": "STARTER_PATTERNS; configured RE2JS rules",
      "sourceDate": "2026-10-24",
      "retrievedAt": "2026-10-26",
      "finding": "Default starter patterns detect credential-shaped tokens/headers. Operator custom patterns use bounded regular expressions; a generic comprehensive PII classifier is not established.",
      "commit": "a378657583567310c841d652b0f6b00c83e2bd6b",
      "path": "packages/api/src/protection/detectors/pattern.ts"
    },
    {
      "id": "librechat:librechat:r4-private-submission",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://github.com/LibreChat-AI/LibreChat/blob/a378657583567310c841d652b0f6b00c83e2bd6b/packages/api/src/protection/private/submission.ts",
      "title": "LibreChat private text submission",
      "locator": "createPrivateTextIngress; fresh Agent text and clientRequestId checks",
      "sourceDate": "2026-10-24",
      "retrievedAt": "2026-10-26",
      "finding": "The private text ingress permits configured redaction only on eligible fresh interactive Agent text. Original content is encrypted; edit/resume/file paths do not gain blanket redaction.",
      "commit": "a378657583567310c841d652b0f6b00c83e2bd6b",
      "path": "packages/api/src/protection/private/submission.ts"
    },
    {
      "id": "librechat:librechat:r4-filter-middleware",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://github.com/LibreChat-AI/LibreChat/blob/a378657583567310c841d652b0f6b00c83e2bd6b/packages/api/src/middleware/messageFilterPii.ts",
      "title": "LibreChat API content-filter middleware",
      "locator": "createMessageFilterPii; contentFilterBlockResponse; uninspectable response",
      "sourceDate": "2026-10-24",
      "retrievedAt": "2026-10-26",
      "finding": "The server middleware applies configured inspection and rejects blocked/uninspectable requests with HTTP 400. No deployment or detection fixture was run.",
      "commit": "a378657583567310c841d652b0f6b00c83e2bd6b",
      "path": "packages/api/src/middleware/messageFilterPii.ts"
    },
    {
      "id": "librechat:librechat:r4-config-1318",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/changelog/config_v1.3.18",
      "title": "LibreChat config v1.3.18 changelog",
      "locator": "October 22, 2026; opt-in PII redaction; retention mode",
      "sourceDate": "2026-10-22",
      "retrievedAt": "2026-10-26",
      "finding": "Dated development config changes add limited Agent text redaction and ephemeral retention mode. These are not a promise of universal redaction or a vendor zero-retention contract."
    },
    {
      "id": "glean:glean:org-instructions",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/assistant/configuration/custom-instructions",
      "title": "Configure custom instructions",
      "locator": "Five custom instructions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins can configure up to five enterprise instructions for Assistant."
    },
    {
      "id": "librechat:librechat:interface",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/interface",
      "title": "Interface configuration",
      "locator": "Feature permissions; custom welcome and terms",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Administrators configure UI feature permissions and usage terms in the self-hosted deployment."
    },
    {
      "id": "glean:glean:regions",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/get-started/prepare/self-hosted-deployment/gcp/supported-gcp-regions",
      "title": "Supported GCP regions",
      "locator": "Preferred regions; EMEA",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The GCP region list includes Netherlands, Belgium, Frankfurt and other regions, subject to required services."
    },
    {
      "id": "glean:glean:sla",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/sla",
      "title": "Glean Customer Support SLA v6Mar2026",
      "locator": "Sections 2, 4, 7 and 8",
      "sourceDate": "2026-03-06",
      "retrievedAt": "2026-10-21",
      "finding": "Standard and paid Premium support differ; only Premium includes 99.9% monthly uptime and 10% or 20% service credits."
    },
    {
      "id": "librechat:librechat:remote",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/remote",
      "title": "Remote hosting",
      "locator": "Hosting options; security considerations",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The application can be deployed on customer-selected remote servers with operator-managed security."
    },
    {
      "id": "librechat:librechat:demo",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/demo/terms",
      "title": "LibreChat Demo terms",
      "locator": "Evaluation scope; retention; disclaimer",
      "sourceDate": "2026-03-12",
      "retrievedAt": "2026-10-21",
      "finding": "The free hosted Demo is offered as-is with possible data cleanups and no durable business-service guarantee."
    },
    {
      "id": "glean:glean:dpa",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/dpa",
      "title": "Glean Data Processing Addendum v6Mar2026",
      "locator": "Sections 1, 7, 9 and 10; SCC annexes",
      "sourceDate": "2026-03-06",
      "retrievedAt": "2026-10-21",
      "finding": "The DPA covers applicable Swiss and EU law, termination erasure, SCCs and 30-day subprocessor notice."
    },
    {
      "id": "librechat:librechat:settings",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/docs/features/settings",
      "title": "Personal settings",
      "locator": "Language; speech; data controls",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Users configure interface language, audio and personal data controls."
    },
    {
      "id": "librechat:librechat:owner",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://clickhouse.com/blog/clickhouse-acquires-librechat",
      "title": "ClickHouse acquisition of LibreChat",
      "locator": "Announcement, November 4, 2025",
      "sourceDate": "2025-11-04",
      "retrievedAt": "2026-10-21",
      "finding": "ClickHouse announced the acquisition of LibreChat and that Danny Avila and the team joined ClickHouse."
    },
    {
      "id": "glean:glean:r3-legal-index",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal",
      "title": "Glean legal",
      "locator": "Glean Customer Agreements and Policies",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The index links both Business Associate Agreement forms, the Technical Services Addendum and named Outcomes Packages; inclusion and pricing depend on the applicable contract."
    },
    {
      "id": "glean:glean:security-page",
      "productId": "glean",
      "kind": "vendor-claimed",
      "url": "https://www.glean.com/platform/security",
      "title": "Glean Protect security page",
      "locator": "Enterprise security and compliance badges",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Glean claims SOC 2 Type II, ISO 27001 and ISO 42001; no issuer-scoped certificate was retrieved."
    },
    {
      "id": "glean:glean:r4-aws-cmk-faq",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/security/cloud-prem/aws/faq",
      "title": "Glean customer-hosted AWS FAQ",
      "locator": "Are customer managed keys supported?",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Customer-managed CMKs are supported for AWS, although the FAQ recommends default AWS-managed KMS keys and documents SCP-based emergency controls."
    },
    {
      "id": "glean:glean:r4-aws-key-control",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/security/cloud-prem/aws/account-access-and-deployment-model",
      "title": "Glean AWS account access and deployment model",
      "locator": "Customer controls",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "The customer-hosted AWS deployment guide says customers own and control KMS customer-managed keys used for data at rest. This does not establish key control for Glean Hosted or GCP."
    },
    {
      "id": "glean:glean:dpa-confidentiality",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.glean.com/legal/dpa",
      "title": "Glean DPA",
      "locator": "Section4 authorized personnel confidentiality; section9 subprocessor written agreement and necessary access",
      "sourceDate": "2026-03-06",
      "retrievedAt": "2026-10-21",
      "finding": "General DPA confidentiality binds authorized personnel and no-less-protective subprocessor agreements; no specific §203/Art321 undertaking was retrieved."
    },
    {
      "id": "librechat:librechat:siteprivacy",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/privacy",
      "title": "LibreChat website privacy policy",
      "locator": "Scope and exclusions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Website, demo and self-hosted software are distinct privacy scopes; website terms do not establish a customer deployment DPA."
    },
    {
      "id": "librechat:librechat:secrecy-message-pin",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/packages/data-schemas/src/schema/message.ts",
      "title": "LibreChat v0.8.8 message storage schema",
      "locator": "packages/data-schemas/src/schema/message.ts, text at lines 55-58 and content at lines 139-143",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned Mongoose schema declares message text as a String and content as mixed fields; this source does not establish operator exclusion from live content.",
      "commit": "e8f3be08623663d4ad7f7241e693c94469b63bb0",
      "path": "packages/data-schemas/src/schema/message.ts"
    },
    {
      "id": "librechat:librechat:secrecy-demo-policy",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.librechat.ai/demo/privacy",
      "title": "LibreChat Demo privacy policy",
      "locator": "Scope; section 4 Third-Party AI Model Providers; section 6 Data Sharing and Sub-Processors",
      "sourceDate": "2026-03-12",
      "retrievedAt": "2026-10-21",
      "finding": "The Demo policy describes model-provider transmission and contractual processor instruction/security duties for the Demo; it does not cover a customer self-hosted deployment."
    },
    {
      "id": "glean:glean:flex-price",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/glean-enterprise-flex-pricing",
      "title": "Glean Enterprise Flex",
      "locator": "Enterprise Flex seats; FlexCredits; rate card",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Enterprise Flex pools credits and separately meters advanced features and premium models; learned-memory billing starts November 7, 2026 for the stated scope."
    },
    {
      "id": "glean:glean:fx-ecb",
      "productId": "glean",
      "kind": "documented",
      "url": "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml",
      "title": "ECB historical euro reference rates",
      "locator": "Cube time=2026-10-20, USD and CHF",
      "sourceDate": "2026-10-20",
      "retrievedAt": "2026-10-21",
      "finding": "The 2026-10-20 reference is EUR 1 = USD 1.1215 = CHF 0.9237."
    },
    {
      "id": "glean:glean:r2-customer-default-example",
      "productId": "glean",
      "kind": "documented",
      "url": "https://docs.glean.com/administration/change-default-model",
      "title": "Change your default model on Customer Key",
      "locator": "Opening note and prerequisites",
      "sourceDate": "2026-10-19",
      "retrievedAt": "2026-10-21",
      "finding": "Customer Key admins choose defaults; GPT5.6 Luna is expressly an example, not a fixed or recommended routine model."
    },
    {
      "id": "glean:glean:r2-direct-provider-proxy",
      "productId": "glean",
      "kind": "documented",
      "url": "https://developers.openai.com/api/docs/pricing",
      "title": "OpenAI direct API pricing",
      "locator": "Standard short-context gpt-6-luna",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The shared direct-provider comparison uses USD0.10 input andUSD0.50 output per1M tokens; vendor usage is not replaced by this proxy."
    },
    {
      "id": "glean:glean:r2-proxy-lowest-effort",
      "productId": "glean",
      "kind": "documented",
      "url": "https://developers.openai.com/api/docs/models/gpt-6-luna",
      "title": "GPT6 Luna model documentation",
      "locator": "Reasoning effort",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Lowest effort none is used only for the direct-provider comparison assumption."
    },
    {
      "id": "librechat:librechat:cost-vm",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://prices.azure.com/api/retail/prices?currencyCode=EUR&%24filter=armRegionName+eq+%27switzerlandnorth%27+and+serviceName+eq+%27Virtual+Machines%27+and+%28armSkuName+eq+%27Standard_D4s_v5%27+or+armSkuName+eq+%27Standard_D8s_v5%27+or+armSkuName+eq+%27Standard_D16s_v5%27%29+and+priceType+eq+%27Consumption%27",
      "title": "Azure Retail Prices, Switzerland North Linux VMs",
      "locator": "Consumption; Virtual Machines Dsv5 Series; Standard_D4s_v5/D8s_v5/D16s_v5",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "EUR hourly PAYG rates retrieved 2026-10-21 are 0.2226, 0.4453 and 0.8905 for D4s, D8s and D16s v5 respectively."
    },
    {
      "id": "librechat:librechat:cost-pg",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://prices.azure.com/api/retail/prices?currencyCode=EUR&%24filter=armRegionName+eq+%27switzerlandnorth%27+and+serviceName+eq+%27Azure+Database+for+PostgreSQL%27+and+priceType+eq+%27Consumption%27",
      "title": "Azure Retail Prices, PostgreSQL Flexible Server",
      "locator": "General Purpose Ddsv5 Series Compute, 2/4/8 vCore; Flex Server Storage",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "EUR hourly PAYG GP compute is 0.2288, 0.4576 and 0.9152 for 2/4/8 vCore; storage is EUR 0.1325 per GB-month."
    },
    {
      "id": "librechat:librechat:cost-fx",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml",
      "title": "ECB euro reference rate history",
      "locator": "Cube time=2026-10-20; USD and CHF",
      "sourceDate": "2026-10-20",
      "retrievedAt": "2026-10-21",
      "finding": "The 2026-10-20 reference rates are EUR 1 = USD 1.1215 and CHF 0.9237."
    },
    {
      "id": "librechat:librechat:cost-model",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://developers.openai.com/api/docs/pricing",
      "title": "OpenAI API pricing",
      "locator": "Standard, short-context gpt-6-luna row",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Standard gpt-6-luna API price is USD 0.10 per million input tokens and USD 0.50 per million output tokens; caching, batch and regional premiums are separate."
    },
    {
      "id": "librechat:librechat:cost-effort",
      "productId": "librechat",
      "kind": "documented",
      "url": "https://developers.openai.com/api/docs/models/gpt-6-luna",
      "title": "GPT-6 Luna model documentation",
      "locator": "Reasoning effort and text-token pricing",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The model accepts reasoning effort none, the lowest documented effort, and lists the same standard text-token rates."
    },
    {
      "id": "librechat:librechat:export-pin",
      "productId": "librechat",
      "kind": "source-inspected",
      "url": "https://raw.githubusercontent.com/LibreChat-AI/LibreChat/e8f3be08623663d4ad7f7241e693c94469b63bb0/client/src/hooks/Conversations/useExportConversation.ts",
      "title": "LibreChat conversation export implementation",
      "locator": "client/src/hooks/Conversations/useExportConversation.ts, export dispatch",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The pinned user conversation exporter supports JSON, CSV, Markdown and text, plus screenshot export.",
      "commit": "e8f3be08623663d4ad7f7241e693c94469b63bb0",
      "path": "client/src/hooks/Conversations/useExportConversation.ts"
    }
  ]
}
