{
  "schemaVersion": 1,
  "rubricVersion": "1.1",
  "kind": "pair",
  "slug": "swissgpt-vs-typingmind",
  "canonicalUrl": "https://onaihq.com/compare/agents/swissgpt-vs-typingmind/",
  "markdownUrl": "https://onaihq.com/compare/agents/swissgpt-vs-typingmind/index.md",
  "dataUrl": "https://onaihq.com/compare/agents/swissgpt-vs-typingmind/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": "swissgpt",
      "name": "AlpineAI / SwissGPT",
      "website": "https://alpineai.swiss",
      "repository": null,
      "pageUrl": "https://onaihq.com/compare/agents/products/swissgpt/",
      "lifecycle": {
        "status": "unknown",
        "note": null
      },
      "surfaces": [
        {
          "id": "web",
          "name": "AlpineAI platform browser client",
          "type": "web"
        },
        {
          "id": "outlook",
          "name": "AlpineAI Outlook add-in",
          "type": "office-add-in"
        },
        {
          "id": "mobile",
          "name": "AlpineAI iOS and Android apps",
          "type": "mobile"
        },
        {
          "id": "api",
          "name": "AlpineAI API platform",
          "type": "api"
        }
      ],
      "sourcedClaimCount": 30,
      "statedByVendorCount": 0,
      "crossCheckedClaimCount": 30,
      "sourcedOnlyClaimCount": 0,
      "oldestCheckedAt": "2026-10-21",
      "lastCheckedAt": "2026-10-26"
    },
    {
      "id": "typingmind",
      "name": "TypingMind / TypingMind Teams",
      "website": "https://www.typingmind.com",
      "repository": null,
      "pageUrl": "https://onaihq.com/compare/agents/products/typingmind/",
      "lifecycle": {
        "status": "unknown",
        "note": null
      },
      "surfaces": [
        {
          "id": "teams-saas",
          "name": "TypingMind Teams SaaS chat and Admin Panel",
          "type": "web-app"
        },
        {
          "id": "teams-selfhost",
          "name": "Commercial self-hosted TypingMind Teams server",
          "type": "self-hosted-server"
        },
        {
          "id": "teams-api",
          "name": "TypingMind Teams REST API",
          "type": "api"
        },
        {
          "id": "personal",
          "name": "TypingMind personal browser app and PWA",
          "type": "web-app"
        }
      ],
      "sourcedClaimCount": 49,
      "statedByVendorCount": 0,
      "crossCheckedClaimCount": 49,
      "sourcedOnlyClaimCount": 0,
      "oldestCheckedAt": "2026-10-21",
      "lastCheckedAt": "2026-10-26"
    }
  ],
  "coverage": {
    "totalCriteria": 51,
    "sharedCrossCheckedCriteria": 28,
    "sharedSourcedCriteria": 28,
    "crossCheckedCriteriaByProduct": {
      "swissgpt": 30,
      "typingmind": 49
    },
    "sourcedOnlyCriteriaByProduct": {
      "swissgpt": 0,
      "typingmind": 0
    },
    "sourcedCriteriaByProduct": {
      "swissgpt": 30,
      "typingmind": 49
    },
    "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": "swissgpt",
          "claimId": "swissgpt:MOD-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "AlpineAI names Mistral Large 3 as its primary model and says it operates all models itself in Switzerland.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "providers",
              "question": "Which model providers are available?",
              "support": "partial",
              "answer": "Mistral is the named current provider. Other providers are not enumerated.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "current_models",
              "question": "Which current models are selectable on this plan?",
              "support": "partial",
              "answer": "Mistral Large 3 is named as the primary model; this does not establish a user-selectable catalogue.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "user_choice",
              "question": "Can users pick the model per chat?",
              "support": "unknown",
              "answer": "Can users pick the model per chat? Unknown. The FAQ does not enumerate all models, expose a per-chat picker, explain routing visibility or map multimodal inputs to models.",
              "evidenceIds": []
            },
            {
              "id": "auto_routing",
              "question": "Does the product route between models automatically, and is the chosen model shown?",
              "support": "unknown",
              "answer": "Does the product route between models automatically, and is the chosen model shown? Unknown. The FAQ does not enumerate all models, expose a per-chat picker, explain routing visibility or map multimodal inputs to models.",
              "evidenceIds": []
            },
            {
              "id": "multimodal_input",
              "question": "Which models accept images, audio or files?",
              "support": "unknown",
              "answer": "Which models accept images, audio or files? Unknown. The FAQ does not enumerate all models, expose a per-chat picker, explain routing visibility or map multimodal inputs to models.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "The FAQ does not enumerate all models, expose a per-chat picker, explain routing visibility or map multimodal inputs to models."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:MOD-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams is a customer-key multi-provider chat interface, with dated additions and explicit model selection.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "providers",
              "question": "Which model providers are available?",
              "support": "supported",
              "answer": "Teams admin key setup lists OpenAI, Anthropic, Google, OpenRouter, DeepInfra, DeepSeek, Groq, Mistral, Moonshot, Perplexity, xAI and Z.ai, plus custom providers.",
              "evidenceIds": [
                "typingmind:typingmind:set-up-api-keys"
              ]
            },
            {
              "id": "current_models",
              "question": "Which current models are selectable on this plan?",
              "support": "partial",
              "answer": "The dated October changelog records Gemini 4 Argon and Muse Wonder on October 14 and Claude Haiku 5.5, Mistral Large 4 and Nano Banana 2.1 on October 9. Actual availability depends on enabled endpoint and customer account; a complete Teams tenant model catalogue was not observed.",
              "evidenceIds": [
                "typingmind:typingmind:release",
                "typingmind:typingmind:set-up-api-keys"
              ]
            },
            {
              "id": "user_choice",
              "question": "Can users pick the model per chat?",
              "support": "supported",
              "answer": "Users select an available model for a chat; Teams administrators choose which models are exposed.",
              "evidenceIds": [
                "typingmind:typingmind:manage-ai-models",
                "typingmind:typingmind:restrict-model-access"
              ]
            },
            {
              "id": "auto_routing",
              "question": "Does the product route between models automatically, and is the chosen model shown?",
              "support": "unknown",
              "answer": "Does the product route between models automatically, and is the chosen model shown? The first-party Teams documentation, pricing, legal pages and dated changelog retrieved on 2026-10-21 do not establish this detail; no account or bounded fixture was used.",
              "evidenceIds": []
            },
            {
              "id": "multimodal_input",
              "question": "Which models accept images, audio or files?",
              "support": "partial",
              "answer": "Document upload, vision-capable model image input and transcription are documented as separate routes; the docs do not provide a complete per-model Teams image/audio/file matrix.",
              "evidenceIds": [
                "typingmind:typingmind:chat-with-documents",
                "typingmind:typingmind:voice"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:set-up-api-keys",
            "typingmind:typingmind:release",
            "typingmind:typingmind:manage-ai-models",
            "typingmind:typingmind:restrict-model-access",
            "typingmind:typingmind:chat-with-documents",
            "typingmind:typingmind:voice"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:MOD-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": "typingmind",
          "claimId": "typingmind:MOD-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Dated model additions are public; release lag and removal guarantees remain unestablished.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "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? No matched first-party provider release dates for the last three releases, fixed deprecation-notice period or version-retention guarantee was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "changelog",
              "question": "Is there a dated public model changelog?",
              "support": "supported",
              "answer": "The public changelog dates model and Teams feature releases through October 14, 2026 in the retrieved page.",
              "evidenceIds": [
                "typingmind:typingmind:release"
              ]
            },
            {
              "id": "deprecation_notice",
              "question": "How much notice is given before a model is removed?",
              "support": "unknown",
              "answer": "How much notice is given before a model is removed? No matched first-party provider release dates for the last three releases, fixed deprecation-notice period or version-retention guarantee was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "version_pinning",
              "question": "Can an admin keep an older model version?",
              "support": "partial",
              "answer": "Customer custom-model endpoint configuration can name a provider model or deployment, but a contractual right to retain discontinued SaaS wrappers or provider versions is not established.",
              "evidenceIds": [
                "typingmind:typingmind:manage-ai-models",
                "typingmind:typingmind:azure-openai"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:release",
            "typingmind:typingmind:manage-ai-models",
            "typingmind:typingmind:azure-openai"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:MOD-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:MOD-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams uses customer provider keys; its Custom Admin documentation also describes Claude via the customer AWS Bedrock account.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS Starter/Growth/Professional custom-model setup; Bedrock Custom Admin route has no verified exact tier mapping. Separate Teams self-host licence for private endpoint configuration.",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "own_api_keys",
              "question": "Can the customer use its own provider API keys?",
              "support": "supported",
              "answer": "Admins preset the organization’s provider keys. End users cannot supply separate personal keys in the Teams chat UI.",
              "evidenceIds": [
                "typingmind:typingmind:set-up-api-keys"
              ]
            },
            {
              "id": "own_cloud_contract",
              "question": "Can it use its own Azure OpenAI, Bedrock or Vertex deployment?",
              "support": "partial",
              "answer": "Teams documents Azure OpenAI custom-model setup. Its AWS Bedrock guide explicitly applies to TypingMind Custom Admin at custom.typingmind.com/manage and configures Claude via Bedrock using the customer AWS keys, region and approved model access. Exact Bedrock tier/current-model coverage and Vertex support remain unknown.",
              "evidenceIds": [
                "typingmind:typingmind:r2-teams-custom-models",
                "typingmind:typingmind:r3-custom-admin-bedrock",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "custom_endpoint",
              "question": "Can an admin add any OpenAI-compatible endpoint?",
              "support": "partial",
              "answer": "Teams Admin Panel supports Add Custom Model, naming Azure OpenAI, Hugging Face and Ollama. This does not establish an arbitrary-endpoint compatibility guarantee. Separately, commercial Teams self-host operators can enable otherwise-blocked private/localhost custom endpoints; connectivity and model feature parity were not tested.",
              "evidenceIds": [
                "typingmind:typingmind:r2-teams-custom-models",
                "typingmind:typingmind:r2-plan-matrix",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "byo_pricing",
              "question": "Does BYO change the licence price?",
              "support": "supported",
              "answer": "Teams subscription excludes API usage and requires customer keys; BYO is the standard paid model route, not an evidenced licence discount.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:set-up-api-keys"
              ]
            },
            {
              "id": "byo_restrictions",
              "question": "Which features stop working with BYO?",
              "support": "partial",
              "answer": "Capabilities depend on the selected model and provider API supporting files, tool use and related features; there is no complete feature-by-provider parity matrix.",
              "evidenceIds": [
                "typingmind:typingmind:manage-ai-models",
                "typingmind:typingmind:toolbox"
              ]
            }
          ],
          "limitations": [
            "Bedrock is documented for Custom Admin; no all-tier, all-Claude-model or self-host Bedrock entitlement is inferred. Provider-route feature parity was not tested."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:set-up-api-keys",
            "typingmind:typingmind:r2-teams-custom-models",
            "typingmind:typingmind:r3-custom-admin-bedrock",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:manage-ai-models",
            "typingmind:typingmind:toolbox"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:MOD-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "AlpineAI says it hosts open models on its own Swiss hardware.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "self_hosted_chat",
              "question": "Can chat use a customer-hosted model?",
              "support": "unknown",
              "answer": "Can chat use a customer-hosted model? Unknown. Customer-hosted chat and embedding routes, supported runtimes and their feature parity are not documented in the reviewed current offer.",
              "evidenceIds": []
            },
            {
              "id": "self_hosted_embeddings",
              "question": "Can retrieval use customer-hosted embeddings?",
              "support": "unknown",
              "answer": "Can retrieval use customer-hosted embeddings? Unknown. Customer-hosted chat and embedding routes, supported runtimes and their feature parity are not documented in the reviewed current offer.",
              "evidenceIds": []
            },
            {
              "id": "feature_parity",
              "question": "Which features fail with self-hosted models?",
              "support": "unknown",
              "answer": "Which features fail with self-hosted models? Unknown. Customer-hosted chat and embedding routes, supported runtimes and their feature parity are not documented in the reviewed current offer.",
              "evidenceIds": []
            },
            {
              "id": "vendor_hosted_open_models",
              "question": "Does the vendor host open-weight models in EU/CH?",
              "support": "supported",
              "answer": "The vendor identifies Mistral Large 3 as its current primary open model, operated on AlpineAI-owned hardware in Switzerland without foreign model APIs.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "Customer-hosted chat and embedding routes, supported runtimes and their feature parity are not documented in the reviewed current offer."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:MOD-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Customer model endpoints are supported; optional self-host knowledge uses documented OpenAI embeddings.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "personal",
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Personal app local-model guides; Teams SaaS custom-model setup on Starter/Growth/Professional; separate annual commercial Teams self-host package",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "Personal browser/local network; US/EU Teams SaaS; customer-selected self-host placement and external API routes",
            "os": [],
            "surfaces": [
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              },
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "self_hosted_chat",
              "question": "Can chat use a customer-hosted model?",
              "support": "partial",
              "answer": "Personal typingmind.com has Ollama and LM Studio guides. Teams-specific Admin Panel instructions independently name Ollama custom models, but do not establish the personal local-connection procedure for Teams SaaS. Commercial Teams self-host can explicitly enable private endpoints; no hosted-to-local connectivity fixture was run.",
              "evidenceIds": [
                "typingmind:typingmind:r2-teams-custom-models",
                "typingmind:typingmind:r2-plan-matrix",
                "typingmind:typingmind:ollama",
                "typingmind:typingmind:lmstudio",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "self_hosted_embeddings",
              "question": "Can retrieval use customer-hosted embeddings?",
              "support": "partial",
              "answer": "The optional KB module in the separately quoted annual Teams self-host package requires an OpenAI embeddings key and PostgreSQL pgvector. A customer-hosted embedding substitution is unverified. This is separate from personal local chat models.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-self-host-installation-instruct",
                "typingmind:typingmind:cloud-host-vs-self-host"
              ]
            },
            {
              "id": "feature_parity",
              "question": "Which features fail with self-hosted models?",
              "support": "partial",
              "answer": "Toolbox needs a model capable of calling tools; other multimodal capabilities depend on the custom model. Complete parity and failure behaviour are undocumented.",
              "evidenceIds": [
                "typingmind:typingmind:toolbox",
                "typingmind:typingmind:manage-ai-models"
              ]
            },
            {
              "id": "vendor_hosted_open_models",
              "question": "Does the vendor host open-weight models in EU/CH?",
              "support": "unknown",
              "answer": "Does the vendor host open-weight models in EU/CH? No vendor-hosted open-weight EU/CH model service, supported embedding substitution or full self-host-model parity matrix was 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": [
            "typingmind:typingmind:r2-teams-custom-models",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:ollama",
            "typingmind:typingmind:lmstudio",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:cloud-host-vs-self-host",
            "typingmind:typingmind:toolbox",
            "typingmind:typingmind:manage-ai-models"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:MOD-05",
          "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": "typingmind",
          "claimId": "typingmind:MOD-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Professional administrators govern model access and configurable consumption limits.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional for governance; customer-configured limits",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "model_allowlist_by_group",
              "question": "Can admins limit models per group?",
              "support": "supported",
              "answer": "Admins restrict model availability by user group; the limits guide still points availability controls to the legacy model-limits section.",
              "evidenceIds": [
                "typingmind:typingmind:restrict-model-access",
                "typingmind:typingmind:usage-limits"
              ]
            },
            {
              "id": "data_bound_models",
              "question": "Can admins restrict which models receive connector or knowledge content?",
              "support": "partial",
              "answer": "Admins configure the models available to agents and their knowledge access. No content-classification or connector-label-based model egress rule was established.",
              "evidenceIds": [
                "typingmind:typingmind:roles-and-permissions",
                "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents"
              ]
            },
            {
              "id": "default_model",
              "question": "Can admins set the default model?",
              "support": "unknown",
              "answer": "No Teams administrator control setting the default model for new chats was established. The October multi-model finalization default is a different feature; the plan matrix and model-management documents do not resolve this atom.",
              "evidenceIds": []
            },
            {
              "id": "user_limits",
              "question": "What per-user message or token limits apply, and are they published?",
              "support": "supported",
              "answer": "Reusable limit groups configure message, character and token limits per time period, across users/groups, models, agents and plugins. Published examples are admin settings, not plan-wide quotas.",
              "evidenceIds": [
                "typingmind:typingmind:usage-limits"
              ]
            },
            {
              "id": "limit_behaviour",
              "question": "What happens when a limit is reached?",
              "support": "partial",
              "answer": "Users see a configurable limitation notice and can inspect details. Exact block, downgrade, overshoot and reset semantics at exhaustion were not established.",
              "evidenceIds": [
                "typingmind:typingmind:usage-limits"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:restrict-model-access",
            "typingmind:typingmind:usage-limits",
            "typingmind:typingmind:roles-and-permissions",
            "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Document upload is advertised for assistants and chat.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "formats",
              "question": "Which formats are accepted?",
              "support": "partial",
              "answer": "PDF, Word, text and Excel are named across the product and sector pages. This is not an exhaustive format matrix.",
              "evidenceIds": [
                "swissgpt:swissgpt:product",
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "limits",
              "question": "What size and count limits apply per file and chat?",
              "support": "unknown",
              "answer": "What size and count limits apply per file and chat? Unknown. The published 50-document/100 MB assistant limit does not define per-file and per-chat limits. OCR, embedded images, formula/table fidelity and full-file versus chunked processing need technical documentation or the shared upload fixture.",
              "evidenceIds": []
            },
            {
              "id": "ocr",
              "question": "Are scanned PDFs read?",
              "support": "unknown",
              "answer": "Are scanned PDFs read? Unknown. The published 50-document/100 MB assistant limit does not define per-file and per-chat limits. OCR, embedded images, formula/table fidelity and full-file versus chunked processing need technical documentation or the shared upload fixture.",
              "evidenceIds": []
            },
            {
              "id": "spreadsheets",
              "question": "Are Excel tables read with structure intact?",
              "support": "unknown",
              "answer": "Are Excel tables read with structure intact? Unknown. The published 50-document/100 MB assistant limit does not define per-file and per-chat limits. OCR, embedded images, formula/table fidelity and full-file versus chunked processing need technical documentation or the shared upload fixture.",
              "evidenceIds": []
            },
            {
              "id": "full_vs_chunked",
              "question": "Is the whole file used or only retrieved parts, and does the user see which?",
              "support": "unknown",
              "answer": "Is the whole file used or only retrieved parts, and does the user see which? Unknown. The published 50-document/100 MB assistant limit does not define per-file and per-chat limits. OCR, embedded images, formula/table fidelity and full-file versus chunked processing need technical documentation or the shared upload fixture.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "The published 50-document/100 MB assistant limit does not define per-file and per-chat limits. OCR, embedded images, formula/table fidelity and full-file versus chunked processing need technical documentation or the shared upload fixture."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product",
            "swissgpt:swissgpt:university"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:KNOW-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Document text can be attached to chat; full-context training files and RAG are distinct.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "formats",
              "question": "Which formats are accepted?",
              "support": "supported",
              "answer": "The chat guide lists PDF, Markdown, CSV, XLSX, TXT, DOCX, JSON and HTML. Images require a suitable vision model.",
              "evidenceIds": [
                "typingmind:typingmind:chat-with-documents"
              ]
            },
            {
              "id": "limits",
              "question": "What size and count limits apply per file and chat?",
              "support": "partial",
              "answer": "Chat uploads are bounded by the selected model’s context, but a numeric per-chat file-count/size limit was not established. The separate KB documents 50MB uploads.",
              "evidenceIds": [
                "typingmind:typingmind:chat-with-documents",
                "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team"
              ]
            },
            {
              "id": "ocr",
              "question": "Are scanned PDFs read?",
              "support": "unknown",
              "answer": "Are scanned PDFs read? No scanned-PDF OCR accuracy, spreadsheet-preservation fixture or numerical ordinary-chat upload matrix was established.",
              "evidenceIds": []
            },
            {
              "id": "spreadsheets",
              "question": "Are Excel tables read with structure intact?",
              "support": "partial",
              "answer": "XLSX and CSV are accepted; Toolbox executes local Python/JavaScript analysis. Preservation of merged cells, formula results and workbook structure was not tested.",
              "evidenceIds": [
                "typingmind:typingmind:chat-with-documents",
                "typingmind:typingmind:toolbox"
              ]
            },
            {
              "id": "full_vs_chunked",
              "question": "Is the whole file used or only retrieved parts, and does the user see which?",
              "support": "supported",
              "answer": "Ordinary chat document text enters chat context and can later leave the model window; agent training files are injected into system context, while KB access retrieves relevant chunks. These are separate modes.",
              "evidenceIds": [
                "typingmind:typingmind:chat-with-documents",
                "typingmind:typingmind:training-files-vs-knowledge-base"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:chat-with-documents",
            "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team",
            "typingmind:typingmind:toolbox",
            "typingmind:typingmind:training-files-vs-knowledge-base"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Standard and Premium include document-backed assistants with published collection limits.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "persistent_collections",
              "question": "Can users keep document collections across chats?",
              "support": "supported",
              "answer": "Assistants retain their own reference-document workspace for later questions.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can collections be shared with users, groups or the whole organisation?",
              "support": "unknown",
              "answer": "Can collections be shared with users, groups or the whole organisation? Unknown. User/group/organisation sharing and Enterprise collection limits are not specified. The wording does not clearly distinguish per-file from aggregate 100 MB.",
              "evidenceIds": []
            },
            {
              "id": "size_limits",
              "question": "What are the collection limits?",
              "support": "partial",
              "answer": "Standard has 2 assistants and Premium 5; each is listed as 50 documents / max. 100 MB. Enterprise limits are not published.",
              "evidenceIds": [
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "assistant_binding",
              "question": "Can collections be bound to an assistant?",
              "support": "supported",
              "answer": "Users place documents in an assistant workspace and questions use those sources.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "User/group/organisation sharing and Enterprise collection limits are not specified. The wording does not clearly distinguish per-file from aggregate 100 MB."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product",
            "swissgpt:swissgpt:university"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:KNOW-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Growth and above provide a tagged organization KB bound to agents; the technical guide still labels it Early Access.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Growth/Professional: RAG and tagged agent KB; Professional additionally supplies group/resource visibility restrictions",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "persistent_collections",
              "question": "Can users keep document collections across chats?",
              "support": "supported",
              "answer": "The organization KB persists documents and connected data across conversations; this differs from temporary chat uploads and full-context agent training files.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-knowledge-base",
                "typingmind:typingmind:training-files-vs-knowledge-base"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can collections be shared with users, groups or the whole organisation?",
              "support": "partial",
              "answer": "Growth/Professional support tagged KB data bound to agents. Per-user/group agent restrictions require Professional governance; these restrictions do not establish per-document source ACL mirroring.",
              "evidenceIds": [
                "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents",
                "typingmind:typingmind:restrict-ai-agents-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "size_limits",
              "question": "What are the collection limits?",
              "support": "supported",
              "answer": "The KB guide states 50MB per upload and one million included training characters with extra capacity purchasable; indexed chunks are about 3,000 words and retrieval is up to five chunks.",
              "evidenceIds": [
                "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team"
              ]
            },
            {
              "id": "assistant_binding",
              "question": "Can collections be bound to an assistant?",
              "support": "supported",
              "answer": "Knowledge Base Access in an agent selects tags identifying the accessible data.",
              "evidenceIds": [
                "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents"
              ]
            }
          ],
          "limitations": [
            "Current plan matrix sells RAG in Growth/Professional, while the technical KB guide (updated2025-11-10) still labels it Early Access. No dated GA transition or tenant rollout was verified; findings retain beta/Early Access qualification.",
            "No source-user permission fixture was run."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:get-started-with-knowledge-base",
            "typingmind:typingmind:training-files-vs-knowledge-base",
            "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents",
            "typingmind:typingmind:restrict-ai-agents-access",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Enterprise sector pages name production REST integrations with eGeKo and five healthcare systems. A public standard connector matrix for M365, Google, Atlassian and on-premise sources remains unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "microsoft_365",
              "question": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected?",
              "support": "unknown",
              "answer": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected? Unknown. The current FAQ does not identify shipped SharePoint, OneDrive, Outlook-search, Teams, Google, Atlassian or on-prem-source connectors, their consent scopes or maintainers. The Outlook add-in is recorded under WORK-02. Rechecked 2026-10-26 in AlpineAI product, public-administration and healthcare feature/licence FAQs and Security page. No extra technical/admin documentation was identified in official links or targeted first-party searches; no account fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "google_workspace",
              "question": "Which Google sources are connected?",
              "support": "unknown",
              "answer": "Which Google sources are connected? Unknown. The current FAQ does not identify shipped SharePoint, OneDrive, Outlook-search, Teams, Google, Atlassian or on-prem-source connectors, their consent scopes or maintainers. The Outlook add-in is recorded under WORK-02. Rechecked 2026-10-26 in AlpineAI product, public-administration and healthcare feature/licence FAQs and Security page. No extra technical/admin documentation was identified in official links or targeted first-party searches; no account fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "atlassian",
              "question": "Confluence and Jira?",
              "support": "unknown",
              "answer": "Confluence and Jira? Unknown. The current FAQ does not identify shipped SharePoint, OneDrive, Outlook-search, Teams, Google, Atlassian or on-prem-source connectors, their consent scopes or maintainers. The Outlook add-in is recorded under WORK-02. Rechecked 2026-10-26 in AlpineAI product, public-administration and healthcare feature/licence FAQs and Security page. No extra technical/admin documentation was identified in official links or targeted first-party searches; no account fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "other_systems",
              "question": "Which other business systems?",
              "support": "partial",
              "answer": "The public-administration FAQ names eGeKo as an integration in production. The healthcare FAQ names Axenita, Aeskulap, Ines, Logival and Mediway as production integrations through the AlpineAI REST API. Individual integrations are part of Enterprise from 10 licences and planned with the customer IT team. Public consent scopes, per-system configuration and a self-service connector matrix are not supplied.",
              "evidenceIds": [
                "swissgpt:swissgpt:public-pricing-20261026",
                "swissgpt:swissgpt:health-pricing-20261026"
              ]
            },
            {
              "id": "on_prem_sources",
              "question": "Can on-prem file shares or databases be connected?",
              "support": "unknown",
              "answer": "Can on-prem file shares or databases be connected? Unknown. The current FAQ does not identify shipped SharePoint, OneDrive, Outlook-search, Teams, Google, Atlassian or on-prem-source connectors, their consent scopes or maintainers. The Outlook add-in is recorded under WORK-02. Rechecked 2026-10-26 in AlpineAI product, public-administration and healthcare feature/licence FAQs and Security page. No extra technical/admin documentation was identified in official links or targeted first-party searches; no account fixture was run.",
              "evidenceIds": []
            },
            {
              "id": "connector_provider",
              "question": "Who builds and maintains each connector?",
              "support": "partial",
              "answer": "AlpineAI plans custom Enterprise integrations with the institution IT team. The university FAQ mentions expanding prebuilt connectors without naming them.",
              "evidenceIds": [
                "swissgpt:swissgpt:university"
              ]
            }
          ],
          "limitations": [
            "The production integration names are vendor claims on the sector pages, not a tested connector inventory.",
            "Individual integrations require the Enterprise package from 10 licences; no API account, customer deployment or fixture was accessed."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:public-pricing-20261026",
            "swissgpt:swissgpt:health-pricing-20261026",
            "swissgpt:swissgpt:product-20261026",
            "swissgpt:swissgpt:security-20261026"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:KNOW-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Named knowledge integrations and extensible tools exist; broad source mentions lack enterprise permission detail.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Growth/Professional SaaS RAG; separate annual commercial Teams self-host licence with optional KB and customer-managed connector credentials",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "microsoft_365",
              "question": "Which M365 sources (SharePoint, OneDrive, Outlook, Teams) are connected?",
              "support": "partial",
              "answer": "The training-files comparison mentions OneDrive as a possible KB source; no retrieved setup guide establishes SharePoint, Outlook or Teams ingestion, permissions or maintenance.",
              "evidenceIds": [
                "typingmind:typingmind:training-files-vs-knowledge-base"
              ]
            },
            {
              "id": "google_workspace",
              "question": "Which Google sources are connected?",
              "support": "partial",
              "answer": "Growth/Professional SaaS RAG names Google Drive. In the separate commercial Teams self-host package, external KB connectors require the operator’s OAuth configuration. Gmail and the full Workspace source set remain unverified.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-knowledge-base",
                "typingmind:typingmind:setup-external-connectors-for-knowledge-base",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "atlassian",
              "question": "Confluence and Jira?",
              "support": "unknown",
              "answer": "Confluence and Jira? No first-party Confluence/Jira connector setup, complete M365 connector matrix or maintained on-prem file-share connector was established.",
              "evidenceIds": []
            },
            {
              "id": "other_systems",
              "question": "Which other business systems?",
              "support": "supported",
              "answer": "KB documentation names Notion and GitHub; admins select Notion pages/databases. Separate MCP/HTTP plugins can query other systems without proving a maintained KB connector.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-knowledge-base",
                "typingmind:typingmind:connect-with-your-notion-pages",
                "typingmind:typingmind:mcp"
              ]
            },
            {
              "id": "on_prem_sources",
              "question": "Can on-prem file shares or databases be connected?",
              "support": "partial",
              "answer": "Self-host operators can explicitly permit private custom-model/plugin/agent endpoints; custom database actions are described. A supported file-share crawler is not established.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-self-host-installation-instruct",
                "typingmind:typingmind:overview"
              ]
            },
            {
              "id": "connector_provider",
              "question": "Who builds and maintains each connector?",
              "support": "partial",
              "answer": "TypingMind documents built-in KB setup; external self-host sources need operator-managed OAuth credentials and Firecrawl for web scraping. MCP servers and custom plugins have separate maintainers.",
              "evidenceIds": [
                "typingmind:typingmind:setup-external-connectors-for-knowledge-base",
                "typingmind:typingmind:mcp"
              ]
            }
          ],
          "limitations": [
            "Current plan matrix sells RAG in Growth/Professional, while the technical KB guide (updated2025-11-10) still labels it Early Access. No dated GA transition or tenant rollout was verified; findings retain beta/Early Access qualification.",
            "A reachable self-host plugin endpoint is not a native file-share crawler."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:training-files-vs-knowledge-base",
            "typingmind:typingmind:get-started-with-knowledge-base",
            "typingmind:typingmind:setup-external-connectors-for-knowledge-base",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:connect-with-your-notion-pages",
            "typingmind:typingmind:mcp",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:overview"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-04",
          "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": "typingmind",
          "claimId": "typingmind:KNOW-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Documented access control is by tagged knowledge and agent/group visibility; per-user source ACL enforcement is unproven.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Growth/Professional RAG data/tag selection; Professional adds group-based resource restrictions",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "source_permissions_respected",
              "question": "Are source permissions enforced per user?",
              "support": "unknown",
              "answer": "Are source permissions enforced per user? No two-user permission/revocation fixture, source ACL mirror, revocation SLA or Microsoft Purview-label enforcement documentation was retrieved. Do not equate agent access with source-user permissions.",
              "evidenceIds": []
            },
            {
              "id": "enforcement_point",
              "question": "Does the source system, a mirrored index or nothing enforce them?",
              "support": "partial",
              "answer": "Growth/Professional bind data tags to agents; Professional adds agent availability by user/group. This application-side mechanism does not establish synchronized source-user ACLs.",
              "evidenceIds": [
                "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents",
                "typingmind:typingmind:restrict-ai-agents-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "revocation_delay",
              "question": "How quickly does a removed permission take effect?",
              "support": "unknown",
              "answer": "How quickly does a removed permission take effect? No two-user permission/revocation fixture, source ACL mirror, revocation SLA or Microsoft Purview-label enforcement documentation was retrieved. Do not equate agent access with source-user permissions.",
              "evidenceIds": []
            },
            {
              "id": "admin_scope_controls",
              "question": "Can admins exclude sites, folders or labels?",
              "support": "supported",
              "answer": "Admins choose the Notion pages/databases to ingest and select knowledge tags for each agent.",
              "evidenceIds": [
                "typingmind:typingmind:connect-with-your-notion-pages",
                "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents"
              ]
            },
            {
              "id": "sensitivity_labels",
              "question": "Are Microsoft Purview or similar labels respected?",
              "support": "unknown",
              "answer": "Are Microsoft Purview or similar labels respected? No two-user permission/revocation fixture, source ACL mirror, revocation SLA or Microsoft Purview-label enforcement documentation was retrieved. Do not equate agent access with source-user permissions.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Current plan matrix sells RAG in Growth/Professional, while the technical KB guide (updated2025-11-10) still labels it Early Access. No dated GA transition or tenant rollout was verified; findings retain beta/Early Access qualification.",
            "No two-user source-permission or revocation fixture."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents",
            "typingmind:typingmind:restrict-ai-agents-access",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:connect-with-your-notion-pages"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-05",
          "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": "typingmind",
          "claimId": "typingmind:KNOW-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The KB indexes copies, refreshes connected content daily and uses selected SaaS or customer-hosted storage.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Growth/Professional SaaS RAG; separately quoted annual Teams self-host licence and optional PostgreSQL KB",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "live_or_indexed",
              "question": "Is content searched live or copied into an index?",
              "support": "supported",
              "answer": "RAG splits and embeds copied source text in a knowledge index; full-context training files and live custom tools are separate.",
              "evidenceIds": [
                "typingmind:typingmind:training-files-vs-knowledge-base"
              ]
            },
            {
              "id": "sync_interval",
              "question": "How often does an index refresh?",
              "support": "supported",
              "answer": "The KB guide describes daily connected-source refresh; Notion initial sync takes a few minutes. Neither is a permission-revocation guarantee.",
              "evidenceIds": [
                "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team",
                "typingmind:typingmind:connect-with-your-notion-pages"
              ]
            },
            {
              "id": "deletion_propagation",
              "question": "How quickly does a deleted document disappear?",
              "support": "unknown",
              "answer": "How quickly does a deleted document disappear? Deleted-document propagation and exact SaaS index/backup location were not established.",
              "evidenceIds": []
            },
            {
              "id": "index_location",
              "question": "Where is indexed content stored?",
              "support": "partial",
              "answer": "Opt-in EU SaaS uses Vercel/AWS EU resources; optional self-host KB uses the operator’s PostgreSQL pgvector database and blob configuration. Exact SaaS index, backup and telemetry placement is not itemized.",
              "evidenceIds": [
                "typingmind:typingmind:eu-data-center",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            }
          ],
          "limitations": [
            "Current plan matrix sells RAG in Growth/Professional, while the technical KB guide (updated2025-11-10) still labels it Early Access. No dated GA transition or tenant rollout was verified; findings retain beta/Early Access qualification.",
            "No synchronization/deletion latency fixture."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:training-files-vs-knowledge-base",
            "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team",
            "typingmind:typingmind:connect-with-your-notion-pages",
            "typingmind:typingmind:eu-data-center",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:cloud-host-vs-self-host"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The vendor describes source citations in Listener transcript search; retrieval accuracy was not tested.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "citations",
              "question": "Are answers linked to specific sources?",
              "support": "partial",
              "answer": "The Listener FAQ advertises full-text search with source references over transcribed recordings. General document-RAG citation coverage is unspecified.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "citation_accuracy",
              "question": "Do the cited passages support the answer?",
              "support": "unknown",
              "answer": "Do the cited passages support the answer? Unknown. No shared corpus was loaded. Citation correctness, cross-language retrieval, refusal behaviour and observed question-set accuracy remain unmeasured.",
              "evidenceIds": []
            },
            {
              "id": "cross_language",
              "question": "Does a question in one language find documents in another?",
              "support": "unknown",
              "answer": "Does a question in one language find documents in another? Unknown. No shared corpus was loaded. Citation correctness, cross-language retrieval, refusal behaviour and observed question-set accuracy remain unmeasured.",
              "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? Unknown. No shared corpus was loaded. Citation correctness, cross-language retrieval, refusal behaviour and observed question-set accuracy 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? Unknown. No shared corpus was loaded. Citation correctness, cross-language retrieval, refusal behaviour and observed question-set accuracy remain unmeasured.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "No shared corpus was loaded. Citation correctness, cross-language retrieval, refusal behaviour and observed question-set accuracy remain unmeasured."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:KNOW-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Clickable source references are documented, but retrieval quality has no observed multilingual fixture.",
          "availability": "beta",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Growth/Professional SaaS RAG and reference display; model-followed instructions separate from retrieval guarantees",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "citations",
              "question": "Are answers linked to specific sources?",
              "support": "supported",
              "answer": "Admins may enable reference display for knowledge responses so users can follow source links.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-knowledge-base"
              ]
            },
            {
              "id": "citation_accuracy",
              "question": "Do the cited passages support the answer?",
              "support": "unknown",
              "answer": "Do the cited passages support the answer? No shared German/French/English question set, source-support check, cross-language retrieval test or measured answer count was run.",
              "evidenceIds": []
            },
            {
              "id": "cross_language",
              "question": "Does a question in one language find documents in another?",
              "support": "unknown",
              "answer": "Does a question in one language find documents in another? No shared German/French/English question set, source-support check, cross-language retrieval test or measured answer count was run.",
              "evidenceIds": []
            },
            {
              "id": "no_answer_behaviour",
              "question": "Does it say when the corpus has no answer?",
              "support": "partial",
              "answer": "Admins can instruct the model to refrain from answering when knowledge is insufficient; the system-prompt guide gives an example. This is prompt configuration, not a tested no-answer guarantee.",
              "evidenceIds": [
                "typingmind:typingmind:system-prompts-on-admin-panel"
              ]
            },
            {
              "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 German/French/English question set, source-support check, cross-language retrieval test or measured answer count was run.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Current plan matrix sells RAG in Growth/Professional, while the technical KB guide (updated2025-11-10) still labels it Early Access. No dated GA transition or tenant rollout was verified; findings retain beta/Early Access qualification.",
            "No shared multilingual/citation-accuracy fixture."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:get-started-with-knowledge-base",
            "typingmind:typingmind:system-prompts-on-admin-panel",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:KNOW-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:KNOW-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Persistent agent and global admin instructions are documented; named-tier cross-chat memory and its controls remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS Starter/Growth/Professional instructions and shared agents; exact commercial entitlement for non-project memory and its controls unverified",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "custom_instructions",
              "question": "Can users set persistent instructions?",
              "support": "supported",
              "answer": "Persistent agent instructions and global admin instructions are documented; agents can include full-context training files.",
              "evidenceIds": [
                "typingmind:typingmind:system-prompts-on-admin-panel",
                "typingmind:typingmind:training-files-vs-knowledge-base"
              ]
            },
            {
              "id": "cross_chat_memory",
              "question": "Does the product remember facts across chats?",
              "support": "unknown",
              "answer": "The October 14 Teams release and Memory guide describe cross-chat memory, but no named Starter/Growth/Professional entitlement for that capability was established. The Growth/Professional Projects gate does not establish non-project memory availability.",
              "evidenceIds": []
            },
            {
              "id": "user_memory_controls",
              "question": "Can users view, edit and delete memories?",
              "support": "unknown",
              "answer": "The Memory guide describes saved-memory settings, but their named Teams tier entitlement and complete edit/delete behavior remain unverified. No personal-app control is inferred to be a Teams entitlement.",
              "evidenceIds": []
            },
            {
              "id": "admin_memory_controls",
              "question": "Can admins turn memory off?",
              "support": "unknown",
              "answer": "The October 14 Teams release describes an admin Memory switch, but the current plan matrix does not map it to a named tier. Organization-wide memory-control entitlement remains unknown.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Persistent instructions are distinct from learned cross-chat memory. The Memory guide and release do not establish its named-tier entitlement."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:system-prompts-on-admin-panel",
            "typingmind:typingmind:training-files-vs-knowledge-base",
            "typingmind:typingmind:release",
            "typingmind:typingmind:memory",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Users can create document-backed assistants and use prompt templates.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "create_assistants",
              "question": "Can users create assistants with instructions, knowledge and tools?",
              "support": "partial",
              "answer": "Users create workspaces with their own reference documents; configurable instructions and external tools are not described.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "creator_permissions",
              "question": "Can admins limit who creates them?",
              "support": "unknown",
              "answer": "Can admins limit who creates them? Unknown. Creator restrictions, sharing boundaries, versioning, tool configuration and an organisation-managed directory are not established in the public pages.",
              "evidenceIds": []
            },
            {
              "id": "sharing_scope",
              "question": "Can assistants be shared with users, groups or everyone?",
              "support": "unknown",
              "answer": "Can assistants be shared with users, groups or everyone? Unknown. Creator restrictions, sharing boundaries, versioning, tool configuration and an organisation-managed directory are not established in the public pages.",
              "evidenceIds": []
            },
            {
              "id": "catalogue",
              "question": "Is there an internal assistant directory?",
              "support": "partial",
              "answer": "Premium adds preconfigured assistants; an organisation directory is not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "prompt_library",
              "question": "Are shared prompt templates available?",
              "support": "partial",
              "answer": "Chat includes prompt templates for recurring tasks; shared-team template administration is not specified.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "Creator restrictions, sharing boundaries, versioning, tool configuration and an organisation-managed directory are not established in the public pages."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:AGT-01",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Teams admins publish agents and prompts, with delegated creation permissions and group access.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Starter/Growth/Professional shared agents and prompts; Growth/Professional RAG; Professional delegated roles and resource visibility",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "create_assistants",
              "question": "Can users create assistants with instructions, knowledge and tools?",
              "support": "supported",
              "answer": "All SaaS tiers include shared agents and configured models/plugins; tagged RAG knowledge requires Growth/Professional.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-ai-agent-collection",
                "typingmind:typingmind:training-files-vs-knowledge-base",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "creator_permissions",
              "question": "Can admins limit who creates them?",
              "support": "supported",
              "answer": "Professional custom roles delegate AI Agent management separately from other Admin Panel permissions.",
              "evidenceIds": [
                "typingmind:typingmind:roles-and-permissions",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "sharing_scope",
              "question": "Can assistants be shared with users, groups or everyone?",
              "support": "supported",
              "answer": "All tiers publish shared agent collections; Professional adds per-user/group resource restrictions.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-ai-agent-collection",
                "typingmind:typingmind:restrict-ai-agents-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "catalogue",
              "question": "Is there an internal assistant directory?",
              "support": "supported",
              "answer": "The shared agent collection is displayed in the team chat UI.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-ai-agent-collection"
              ]
            },
            {
              "id": "prompt_library",
              "question": "Are shared prompt templates available?",
              "support": "supported",
              "answer": "All SaaS tiers provide a shared prompt library; Professional adds per-user prompt visibility controls.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-prompt-library",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:build-a-shared-ai-agent-collection",
            "typingmind:typingmind:training-files-vs-knowledge-base",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:roles-and-permissions",
            "typingmind:typingmind:restrict-ai-agents-access",
            "typingmind:typingmind:build-a-shared-prompt-library"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-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": "typingmind",
          "claimId": "typingmind:AGT-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Built-in plugins and custom HTTP/JavaScript/MCP tools are available; authentication varies by connector.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "personal"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Starter/Growth/Professional plugins and remote MCP; Professional group restrictions; personal Private MCP Connector route separate",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "Remote server/provider regions depend on configuration; personal local MCP is not a verified Teams local route",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "builtin_tools",
              "question": "Which tools are built in?",
              "support": "supported",
              "answer": "Documented tools include Toolbox, web/deep research, image generation and voice services; optional third-party API keys may be required.",
              "evidenceIds": [
                "typingmind:typingmind:toolbox",
                "typingmind:typingmind:deep-research",
                "typingmind:typingmind:image",
                "typingmind:typingmind:voice"
              ]
            },
            {
              "id": "custom_actions",
              "question": "Can admins add API actions?",
              "support": "supported",
              "answer": "Custom actions can be implemented as JavaScript, HTTP actions or MCP integrations.",
              "evidenceIds": [
                "typingmind:typingmind:overview"
              ]
            },
            {
              "id": "mcp_client",
              "question": "Can it use remote MCP servers, and with what admin control?",
              "support": "partial",
              "answer": "Teams pricing lists MCP integration and the MCP guide explicitly gives Team OAuth callbacks and per-user/per-chat sessions for remote HTTP MCP. The Private MCP Connector and local terminal-command procedure are explicitly personal-app routes; Teams local MCP support is unverified.",
              "evidenceIds": [
                "typingmind:typingmind:mcp",
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "tool_auth",
              "question": "Do tools act as the user or as a shared account?",
              "support": "partial",
              "answer": "Teams remote MCP supports user OAuth and per-user sessions; separately configured plugins may use shared keys. The personal Private MCP Connector is not claimed for Teams.",
              "evidenceIds": [
                "typingmind:typingmind:mcp",
                "typingmind:typingmind:deep-research",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "tool_approval",
              "question": "Can admins approve or block tools, and can users confirm actions before they run?",
              "support": "partial",
              "answer": "Professional admins restrict plugin visibility/usage by group. The MCP guide allows tools to be disabled individually; a mandatory per-action side-effect confirmation policy and Teams local connector are unverified.",
              "evidenceIds": [
                "typingmind:typingmind:restrict-plugin-access",
                "typingmind:typingmind:mcp",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:toolbox",
            "typingmind:typingmind:deep-research",
            "typingmind:typingmind:image",
            "typingmind:typingmind:voice",
            "typingmind:typingmind:overview",
            "typingmind:typingmind:mcp",
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:restrict-plugin-access"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Web search is included but requires organisation activation and user consent; queries can leave AlpineAI infrastructure.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "web_search",
              "question": "Is web search available?",
              "support": "supported",
              "answer": "Included across licence models and optional at use time.",
              "evidenceIds": [
                "swissgpt:swissgpt:product",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "admin_toggle",
              "question": "Can admins disable it per organisation or group?",
              "support": "supported",
              "answer": "Administrator must enable the instance; can disable it instance-wide. Users consent per search and again for detected sensitive content.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "search_provider",
              "question": "Which search provider handles queries, and where?",
              "support": "supported",
              "answer": "DPA Annex 3 names Brave Software, Inc., US, for Brave Search API; activated search sends query/chat content outside AlpineAI infrastructure.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "deep_research",
              "question": "Is multi-step research with a report available?",
              "support": "unknown",
              "answer": "Is multi-step research with a report available? Unknown. Group-specific controls, a multi-step research/report mode and general web citation behaviour are not documented.",
              "evidenceIds": []
            },
            {
              "id": "web_citations",
              "question": "Are web sources cited?",
              "support": "unknown",
              "answer": "Are web sources cited? Unknown. Group-specific controls, a multi-step research/report mode and general web citation behaviour are not documented.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Group-specific controls, a multi-step research/report mode and general web citation behaviour are not documented."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product",
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:dpa"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:AGT-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Deep Research is a configurable search/read/report plugin with separate provider accounts.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams plugin access on Starter/Growth/Professional; Professional for group availability/limits",
            "addOns": [
              "Customer SerpAPI and Firecrawl keys; model API charges"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "web_search",
              "question": "Is web search available?",
              "support": "supported",
              "answer": "The Deep Research plugin performs iterative web search and page reading.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research"
              ]
            },
            {
              "id": "admin_toggle",
              "question": "Can admins disable it per organisation or group?",
              "support": "supported",
              "answer": "Professional admins restrict the research/search plugin to selected user groups through Plugin Access and Limits.",
              "evidenceIds": [
                "typingmind:typingmind:restrict-plugin-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "search_provider",
              "question": "Which search provider handles queries, and where?",
              "support": "partial",
              "answer": "This plugin requires SerpAPI for search and Firecrawl for page retrieval; processing countries for queries/content were not established.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research"
              ]
            },
            {
              "id": "deep_research",
              "question": "Is multi-step research with a report available?",
              "support": "supported",
              "answer": "The plugin plans and iterates search/reading into a report, within its documented two-minute execution bound.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research"
              ]
            },
            {
              "id": "web_citations",
              "question": "Are web sources cited?",
              "support": "partial",
              "answer": "The research plugin produces a sourced report, but link completeness and citation accuracy were not independently checked.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:deep-research",
            "typingmind:typingmind:restrict-plugin-access",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-04",
          "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": "typingmind",
          "claimId": "typingmind:AGT-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The documented automation layer uses agents and plugins rather than an established visual scheduling system.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-api"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams plugins/agents on Starter/Growth/Professional; Professional external REST API integration",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-api",
                "name": "TypingMind Teams REST API",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "workflow_builder",
              "question": "Is there a workflow or chain builder?",
              "support": "partial",
              "answer": "Docs describe composing AI interactions with JavaScript/HTTP/MCP plugins and business automation examples. A visual DAG/chain builder was not established.",
              "evidenceIds": [
                "typingmind:typingmind:overview"
              ]
            },
            {
              "id": "scheduled_tasks",
              "question": "Can prompts or assistants run on a schedule?",
              "support": "unknown",
              "answer": "Can prompts or assistants run on a schedule? No native recurring scheduler, durable workflow engine or supported event trigger setup was established.",
              "evidenceIds": []
            },
            {
              "id": "event_triggers",
              "question": "Can external events start a workflow?",
              "support": "partial",
              "answer": "Professional external REST integration lets an external application call a Teams chat/agent API. This is a developer invocation route, not an established native managed trigger engine.",
              "evidenceIds": [
                "typingmind:typingmind:api-integration-overview",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "builder_audience",
              "question": "Is building aimed at business users, IT or developers?",
              "support": "supported",
              "answer": "Team users use shared agents; technical builders configure JavaScript/HTTP plugins and credentials. Professional custom roles delegate administration, and its API supports developer integrations.",
              "evidenceIds": [
                "typingmind:typingmind:overview",
                "typingmind:typingmind:roles-and-permissions",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:overview",
            "typingmind:typingmind:api-integration-overview",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:roles-and-permissions"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-05",
          "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": "typingmind",
          "claimId": "typingmind:AGT-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Multi-step tool workflows exist; universal side-effect confirmation and run controls remain unproven.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "agent_mode",
              "question": "Is there an agent mode for multi-step tasks?",
              "support": "supported",
              "answer": "The Deep Research plugin repeatedly searches/reads, and automation docs describe tool-driven multistep business actions.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research",
                "typingmind:typingmind:overview"
              ]
            },
            {
              "id": "visible_steps",
              "question": "Are steps and tool calls shown?",
              "support": "partial",
              "answer": "The research workflow is described as iterative search and page reading, but a complete visible execution trace for all agents/tools was not established.",
              "evidenceIds": [
                "typingmind:typingmind:deep-research"
              ]
            },
            {
              "id": "side_effect_confirmation",
              "question": "Must the user confirm actions with side effects?",
              "support": "unknown",
              "answer": "Must the user confirm actions with side effects? No bounded run verified visible traces, stop behaviour, rollback or mandatory side-effect confirmation for all custom tools.",
              "evidenceIds": []
            },
            {
              "id": "stop_control",
              "question": "Can the user stop a running task?",
              "support": "unknown",
              "answer": "Can the user stop a running task? No bounded run verified visible traces, stop behaviour, rollback or mandatory side-effect confirmation for all custom tools.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:deep-research",
            "typingmind:typingmind:overview"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:AGT-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A separate AlpineAI API platform is advertised. Custom application integrations are explicitly offered under Enterprise from 10 licences; standalone API entitlement remains unknown and new accounts are activated gradually.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "api"
            ],
            "version": null,
            "plan": "Enterprise custom application integrations from 10 licences; standalone API tariff/entitlement not established",
            "addOns": [
              "Individually contracted integration; API account activation required"
            ],
            "deploymentMode": null,
            "region": "API portal advertises Swiss processing; endpoint-specific processing and contractual entitlement unverified",
            "os": [],
            "surfaces": [
              {
                "id": "api",
                "name": "AlpineAI API platform",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_api",
              "question": "Is there an API for chat and assistants?",
              "support": "partial",
              "answer": "The product page describes requests/results through its separate API platform and explicitly places custom integrations in Enterprise. The public API landing page supports REST/SDK positioning but requires sign-in and gradual account activation. Specific chat/assistant endpoints, auth methods, standalone licensing and inclusion in Standard/Premium were not verified.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-product",
                "swissgpt:swissgpt:review2-api-access",
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "knowledge_api",
              "question": "Can documents be loaded through an API?",
              "support": "unknown",
              "answer": "No unauthenticated document-ingestion endpoint reference was retrieved from the API portal; naming general integrations is not proof of an ingestion API.",
              "evidenceIds": []
            },
            {
              "id": "api_governance",
              "question": "Do audit, budgets and model rules apply to API use?",
              "support": "unknown",
              "answer": "The API landing page advertises monitoring of usage and costs, but scope of chat audit, budgets and model rules for API calls was not established without authenticated documentation.",
              "evidenceIds": []
            },
            {
              "id": "mcp_server",
              "question": "Does the product expose itself to other agents over MCP?",
              "support": "unknown",
              "answer": "No AlpineAI-provided MCP server exposing the product to external agents was documented in the retrieved product or API landing pages.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Enterprise custom integration is documented; a universal API entitlement across chat licence tiers is not.",
            "No authenticated endpoint documentation, API account, rate-limit data or governance fixture was accessed."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:review2-product",
            "swissgpt:swissgpt:review2-api-access",
            "swissgpt:swissgpt:university"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:AGT-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The Teams REST API creates chat/agent responses with governed api-users.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-api"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional API integration",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-api",
                "name": "TypingMind Teams REST API",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_api",
              "question": "Is there an API for chat and assistants?",
              "support": "supported",
              "answer": "Teams REST endpoints produce model or agent responses, including configured plugins, KB and MCP capabilities.",
              "evidenceIds": [
                "typingmind:typingmind:api-integration-overview"
              ]
            },
            {
              "id": "knowledge_api",
              "question": "Can documents be loaded through an API?",
              "support": "unknown",
              "answer": "Can documents be loaded through an API? The retrieved API overview did not establish a supported knowledge-upload API or an MCP server exposing TypingMind itself.",
              "evidenceIds": []
            },
            {
              "id": "api_governance",
              "question": "Do audit, budgets and model rules apply to API use?",
              "support": "partial",
              "answer": "An API key creates an api-user subject to the same user restrictions and usage limits. Complete audit coverage, currency budgets and all API routes were not established.",
              "evidenceIds": [
                "typingmind:typingmind:api-integration-overview"
              ]
            },
            {
              "id": "mcp_server",
              "question": "Does the product expose itself to other agents over MCP?",
              "support": "unknown",
              "answer": "Does the product expose itself to other agents over MCP? The retrieved API overview did not establish a supported knowledge-upload API or an MCP server exposing TypingMind itself.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:api-integration-overview"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The FAQ lists web and iOS/Android access.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "mobile"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland; mobile clients on user devices",
            "os": [
              "iOS",
              "Android"
            ],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "mobile",
                "name": "AlpineAI iOS and Android apps",
                "type": "mobile"
              }
            ]
          },
          "questions": [
            {
              "id": "web",
              "question": "Is a full web client available?",
              "support": "supported",
              "answer": "Works in Chrome, Firefox, Safari or Edge on internet-connected computers and mobile devices.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "desktop_apps",
              "question": "Windows and macOS apps?",
              "support": "unknown",
              "answer": "Windows and macOS apps? Unknown. Desktop OS support is only package-dependent in AGB 2.1. Browser extension, MDM/Intune deployment and mobile parity are not documented.",
              "evidenceIds": []
            },
            {
              "id": "mobile_apps",
              "question": "iOS and Android apps with SSO?",
              "support": "partial",
              "answer": "iOS and Android apps are advertised; company SSO in those apps was not verified.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "browser_extension",
              "question": "Is there a browser extension or sidebar?",
              "support": "unknown",
              "answer": "Is there a browser extension or sidebar? Unknown. Desktop OS support is only package-dependent in AGB 2.1. Browser extension, MDM/Intune deployment and mobile parity are not documented.",
              "evidenceIds": []
            },
            {
              "id": "managed_deployment",
              "question": "Can IT deploy and configure clients through MDM?",
              "support": "unknown",
              "answer": "Can IT deploy and configure clients through MDM? Unknown. Desktop OS support is only package-dependent in AGB 2.1. Browser extension, MDM/Intune deployment and mobile parity are not documented.",
              "evidenceIds": []
            },
            {
              "id": "client_feature_gaps",
              "question": "Which features are missing on mobile?",
              "support": "unknown",
              "answer": "Which features are missing on mobile? Unknown. Desktop OS support is only package-dependent in AGB 2.1. Browser extension, MDM/Intune deployment and mobile parity are not documented.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Desktop OS support is only package-dependent in AGB 2.1. Browser extension, MDM/Intune deployment and mobile parity are not documented."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The primary client is a browser app; installable PWAs are documented separately from native apps.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "personal"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS Starter/Growth/Professional browser chat; PWA installation findings only for personal typingmind.com (licence feature gates separate)",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "web",
              "question": "Is a full web client available?",
              "support": "supported",
              "answer": "Teams supplies a branded browser chat interface and separate Admin Panel.",
              "evidenceIds": [
                "typingmind:typingmind:typingmind-vs-typingmind-team"
              ]
            },
            {
              "id": "desktop_apps",
              "question": "Windows and macOS apps?",
              "support": "partial",
              "answer": "The personal typingmind.com app has browser-PWA installation instructions for Windows/macOS; this is not evidence of a Teams native desktop app or Teams PWA deployment entitlement.",
              "evidenceIds": [
                "typingmind:typingmind:install",
                "typingmind:typingmind:r2-personal-bulk-licence"
              ]
            },
            {
              "id": "mobile_apps",
              "question": "iOS and Android apps with SSO?",
              "support": "partial",
              "answer": "Personal typingmind.com can be added to iOS/Android home screens as a browser PWA. Teams Professional SSO is a separate entitlement; no Teams installable mobile client or mobile SSO fixture was verified.",
              "evidenceIds": [
                "typingmind:typingmind:install",
                "typingmind:typingmind:r2-personal-bulk-licence",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "browser_extension",
              "question": "Is there a browser extension or sidebar?",
              "support": "unknown",
              "answer": "Is there a browser extension or sidebar? No MDM packaging/configuration, supported browser sidebar/extension or mobile feature-parity matrix was established.",
              "evidenceIds": []
            },
            {
              "id": "managed_deployment",
              "question": "Can IT deploy and configure clients through MDM?",
              "support": "unknown",
              "answer": "Can IT deploy and configure clients through MDM? No MDM packaging/configuration, supported browser sidebar/extension or mobile feature-parity matrix was established.",
              "evidenceIds": []
            },
            {
              "id": "client_feature_gaps",
              "question": "Which features are missing on mobile?",
              "support": "unknown",
              "answer": "Which features are missing on mobile? No MDM packaging/configuration, supported browser sidebar/extension or mobile feature-parity matrix was 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": [
            "typingmind:typingmind:typingmind-vs-typingmind-team",
            "typingmind:typingmind:install",
            "typingmind:typingmind:r2-personal-bulk-licence",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Standard and Premium include an Outlook add-in for reading, drafting and translating email.",
          "availability": "generally-available",
          "delivery": "official-integration",
          "scope": {
            "surfaceIds": [
              "outlook"
            ],
            "version": null,
            "plan": "Standard and Premium; Enterprise packaging unspecified",
            "addOns": [],
            "deploymentMode": null,
            "region": "Content processed on AlpineAI hardware in Switzerland",
            "os": [],
            "surfaces": [
              {
                "id": "outlook",
                "name": "AlpineAI Outlook add-in",
                "type": "office-add-in"
              }
            ]
          },
          "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? Unknown. Word, Excel, PowerPoint, Teams and Google application integrations are not specified. Outlook add-in consent and compatibility requirements remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "outlook",
              "question": "Does it work inside Outlook?",
              "support": "supported",
              "answer": "Add-in summarises messages/threads, drafts replies and translates within Outlook. The FAQ describes Get Add-Ins installation.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "teams",
              "question": "Is there a Teams app or bot?",
              "support": "unknown",
              "answer": "Is there a Teams app or bot? Unknown. Word, Excel, PowerPoint, Teams and Google application integrations are not specified. Outlook add-in consent and compatibility requirements remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "google_workspace_apps",
              "question": "Does it work inside Docs, Sheets or Gmail?",
              "support": "unknown",
              "answer": "Does it work inside Docs, Sheets or Gmail? Unknown. Word, Excel, PowerPoint, Teams and Google application integrations are not specified. Outlook add-in consent and compatibility requirements remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "licence_prerequisites",
              "question": "Which licences or consents are needed?",
              "support": "partial",
              "answer": "Included with Standard and Premium. Microsoft licence/version prerequisites and tenant consent requirements are not stated.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "Word, Excel, PowerPoint, Teams and Google application integrations are not specified. Outlook add-in consent and compatibility requirements remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind: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": "swissgpt",
          "claimId": "swissgpt:WORK-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The platform and Outlook add-in offer drafting, summaries and translations.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "document_translation",
              "question": "Can whole documents be translated with formatting kept?",
              "support": "unknown",
              "answer": "Can whole documents be translated with formatting kept? Unknown. Whole-document layout preservation, a dedicated translation engine, company glossaries, formality and de-CH controls were not specified or tested.",
              "evidenceIds": []
            },
            {
              "id": "translation_engine",
              "question": "Which engine translates?",
              "support": "unknown",
              "answer": "Which engine translates? Unknown. Whole-document layout preservation, a dedicated translation engine, company glossaries, formality and de-CH controls were not specified or tested.",
              "evidenceIds": []
            },
            {
              "id": "glossaries",
              "question": "Are company glossaries supported?",
              "support": "unknown",
              "answer": "Are company glossaries supported? Unknown. Whole-document layout preservation, a dedicated translation engine, company glossaries, formality and de-CH controls were not specified or tested.",
              "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? Unknown. Whole-document layout preservation, a dedicated translation engine, company glossaries, formality and de-CH controls were not specified or tested.",
              "evidenceIds": []
            },
            {
              "id": "writing_tools",
              "question": "Are dedicated rewrite and proofreading tools available?",
              "support": "partial",
              "answer": "The FAQ advertises drafting and replying to email, summaries and translations into Swiss national languages and English. Proofreading controls are not detailed.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "Whole-document layout preservation, a dedicated translation engine, company glossaries, formality and de-CH controls were not specified or tested."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Configurable model instructions support writing workflows; dedicated translation fidelity is unestablished.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "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? No whole-document formatting-preserving translation fixture, company glossary engine or Swiss language-quality test was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "translation_engine",
              "question": "Which engine translates?",
              "support": "partial",
              "answer": "Writing/translation prompts are handled by the customer-selected LLM; no separate translation engine or formatting-preserving document pipeline was established.",
              "evidenceIds": [
                "typingmind:typingmind:manage-ai-models",
                "typingmind:typingmind:system-prompts-on-admin-panel"
              ]
            },
            {
              "id": "glossaries",
              "question": "Are company glossaries supported?",
              "support": "unknown",
              "answer": "Are company glossaries supported? No whole-document formatting-preserving translation fixture, company glossary engine or Swiss language-quality test was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "formality_and_variants",
              "question": "Can formality and regional variants (de-CH) be set?",
              "support": "partial",
              "answer": "Global and agent instructions can specify tone and language, but no dedicated de-CH/formality switch or quality guarantee was established.",
              "evidenceIds": [
                "typingmind:typingmind:system-prompts-on-admin-panel"
              ]
            },
            {
              "id": "writing_tools",
              "question": "Are dedicated rewrite and proofreading tools available?",
              "support": "partial",
              "answer": "Shared prompts and marketing-writing workflows support rewriting tasks; a dedicated proofreading interface and correction-quality fixture were not established.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-prompt-library",
                "typingmind:typingmind:ad-creative-generator"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:manage-ai-models",
            "typingmind:typingmind:system-prompts-on-admin-panel",
            "typingmind:typingmind:build-a-shared-prompt-library",
            "typingmind:typingmind:ad-creative-generator"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-04",
          "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": "typingmind",
          "claimId": "typingmind:WORK-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "GPT Image generation and editing use customer API credentials and controllable plugins.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams plugin access on Starter/Growth/Professional; Professional for group-based image-plugin governance",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "image_generation",
              "question": "Can users generate images, with which models?",
              "support": "supported",
              "answer": "The GPT Image 2.5 plugin documents image generation through the customer’s OpenAI API.",
              "evidenceIds": [
                "typingmind:typingmind:image"
              ]
            },
            {
              "id": "image_editing",
              "question": "Can users edit uploaded images?",
              "support": "supported",
              "answer": "The October 2 changelog says GPT Image editing accepts any image in a chat, including attachments and artifact images.",
              "evidenceIds": [
                "typingmind:typingmind:release",
                "typingmind:typingmind:image"
              ]
            },
            {
              "id": "admin_control",
              "question": "Can admins restrict image generation?",
              "support": "partial",
              "answer": "Professional admins restrict the image plugin by user group. Coverage of every provider-native image route remains unverified.",
              "evidenceIds": [
                "typingmind:typingmind:restrict-plugin-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "usage_terms",
              "question": "What usage rights apply to output?",
              "support": "partial",
              "answer": "The Terms say users own their content, subject to provider terms. No independent clearance of third-party rights or all model-provider output licences was performed.",
              "evidenceIds": [
                "typingmind:typingmind:terms-of-service"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:image",
            "typingmind:typingmind:release",
            "typingmind:typingmind:restrict-plugin-access",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:terms-of-service"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Premium Listener records audio, transcribes Swiss German and creates minutes or summaries.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "mobile"
            ],
            "version": null,
            "plan": "Premium Listener; Enterprise inclusion per order",
            "addOns": [],
            "deploymentMode": null,
            "region": "Audio processing on AlpineAI-owned hardware in Switzerland",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "mobile",
                "name": "AlpineAI iOS and Android apps",
                "type": "mobile"
              }
            ]
          },
          "questions": [
            {
              "id": "dictation",
              "question": "Can users dictate prompts?",
              "support": "partial",
              "answer": "Listener records dictation through the microphone and accepts existing audio files. Direct dictation into a chat prompt was not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "read_aloud",
              "question": "Can answers be read aloud?",
              "support": "unknown",
              "answer": "Can answers be read aloud? Unknown. Read-aloud and live bidirectional voice conversation are undocumented; recognition quality was not independently tested.",
              "evidenceIds": []
            },
            {
              "id": "voice_conversation",
              "question": "Is a live voice mode available?",
              "support": "unknown",
              "answer": "Is a live voice mode available? Unknown. Read-aloud and live bidirectional voice conversation are undocumented; recognition quality was not independently tested.",
              "evidenceIds": []
            },
            {
              "id": "meeting_summaries",
              "question": "Are meetings transcribed and summarised?",
              "support": "supported",
              "answer": "Advertises complete transcripts and structured minutes, summaries, key facts and to-dos; recordings process on AlpineAI hardware in Switzerland.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "swiss_german_speech",
              "question": "Is Swiss German speech recognised?",
              "support": "supported",
              "answer": "Vendor claims Swiss German and other dialect recognition, with transcript output in German, English, French or Italian.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            }
          ],
          "limitations": [
            "Read-aloud and live bidirectional voice conversation are undocumented; recognition quality was not independently tested."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Dictation, read-aloud and audio-summary workflows are documented; live meetings and Swiss German quality are unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "dictation",
              "question": "Can users dictate prompts?",
              "support": "supported",
              "answer": "Dictation uses browser speech recognition or customer OpenAI Whisper, Groq or Azure transcription credentials; Teams admins configure keys.",
              "evidenceIds": [
                "typingmind:typingmind:voice"
              ]
            },
            {
              "id": "read_aloud",
              "question": "Can answers be read aloud?",
              "support": "supported",
              "answer": "Browser speech, ElevenLabs or OpenAI TTS reads answers aloud with playback/autoplay controls.",
              "evidenceIds": [
                "typingmind:typingmind:tts"
              ]
            },
            {
              "id": "voice_conversation",
              "question": "Is a live voice mode available?",
              "support": "unknown",
              "answer": "Is a live voice mode available? No full-duplex live voice mode, Swiss German audio fixture or native meeting-attendance integration was established.",
              "evidenceIds": []
            },
            {
              "id": "meeting_summaries",
              "question": "Are meetings transcribed and summarised?",
              "support": "partial",
              "answer": "The meeting-summarizer workflow uses recorded audio transcription and LLM summaries; Whisper upload is capped at 25MB. No live meeting bot or diarization quality test was established.",
              "evidenceIds": [
                "typingmind:typingmind:meeting-summarizer",
                "typingmind:typingmind:voice"
              ]
            },
            {
              "id": "swiss_german_speech",
              "question": "Is Swiss German speech recognised?",
              "support": "unknown",
              "answer": "Is Swiss German speech recognised? No full-duplex live voice mode, Swiss German audio fixture or native meeting-attendance integration was 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": [
            "typingmind:typingmind:voice",
            "typingmind:typingmind:tts",
            "typingmind:typingmind:meeting-summarizer"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-06",
          "verificationStatus": "agent-cross-checked",
          "support": "supported",
          "answer": "Toolbox executes code locally and produces charts and Office documents; Growth includes Canvas.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Growth/Professional for Canvas; Toolbox on tool-capable models with separate API usage",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "data_analysis",
              "question": "Can it analyse spreadsheets with executed code?",
              "support": "supported",
              "answer": "Toolbox runs Python/JavaScript in the browser, including tabular analysis libraries. Network is disabled by default; analysis is not a vendor EU code-execution guarantee.",
              "evidenceIds": [
                "typingmind:typingmind:toolbox"
              ]
            },
            {
              "id": "charts",
              "question": "Can it produce charts?",
              "support": "supported",
              "answer": "Toolbox supports chart generation with Plotly and Bokeh.",
              "evidenceIds": [
                "typingmind:typingmind:toolbox"
              ]
            },
            {
              "id": "office_file_output",
              "question": "Can it create Word, Excel or PowerPoint files?",
              "support": "supported",
              "answer": "Toolbox creates/edits documents, spreadsheets, presentations and PDFs, including Office formats.",
              "evidenceIds": [
                "typingmind:typingmind:toolbox"
              ]
            },
            {
              "id": "canvas_editing",
              "question": "Is there a document or canvas editor for iterating on output?",
              "support": "supported",
              "answer": "The Teams plan comparison lists Canvas and Artifacts for Growth and Professional.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans"
              ]
            }
          ],
          "limitations": [],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:toolbox",
            "typingmind:typingmind:compare-typingmind-team-plans"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Shared agents and prompt libraries are documented, but collaborative project/chat boundaries are not established.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "share_chats",
              "question": "Can chats be shared inside the organisation?",
              "support": "unknown",
              "answer": "Can chats be shared inside the organisation? No Teams-specific shared-chat recipient ACL/redaction guarantee, simultaneous multi-person AI conversation or source-permission sharing fixture was established.",
              "evidenceIds": []
            },
            {
              "id": "team_spaces",
              "question": "Are shared projects or workspaces available?",
              "support": "partial",
              "answer": "Teams share an agent catalogue and prompt library; project-scoped memory is documented. Shared project membership and cross-user workspace semantics were not established.",
              "evidenceIds": [
                "typingmind:typingmind:build-a-shared-ai-agent-collection",
                "typingmind:typingmind:build-a-shared-prompt-library",
                "typingmind:typingmind:release"
              ]
            },
            {
              "id": "group_chat",
              "question": "Can several people chat together with the AI?",
              "support": "unknown",
              "answer": "Can several people chat together with the AI? No Teams-specific shared-chat recipient ACL/redaction guarantee, simultaneous multi-person AI conversation or source-permission sharing fixture was established.",
              "evidenceIds": []
            },
            {
              "id": "share_permission_boundary",
              "question": "Does sharing respect the recipient's access to sources?",
              "support": "unknown",
              "answer": "Does sharing respect the recipient's access to sources? No Teams-specific shared-chat recipient ACL/redaction guarantee, simultaneous multi-person AI conversation or source-permission sharing fixture was 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": [
            "typingmind:typingmind:build-a-shared-ai-agent-collection",
            "typingmind:typingmind:build-a-shared-prompt-library",
            "typingmind:typingmind:release"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:WORK-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Terms specify a German and English interface; language quality was not observed.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "ui_languages",
              "question": "Which UI languages are offered?",
              "support": "partial",
              "answer": "AGB 2.1 explicitly names German and English UI. Sector pages advertise processing of Swiss national languages and English; that does not establish French/Italian UI coverage.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "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? Unknown. No authenticated German/French/Italian UI review, WCAG conformance statement or German admin-interface specification was located.",
              "evidenceIds": []
            },
            {
              "id": "accessibility_statement",
              "question": "Is there a WCAG conformance statement?",
              "support": "unknown",
              "answer": "Is there a WCAG conformance statement? Unknown. No authenticated German/French/Italian UI review, WCAG conformance statement or German admin-interface specification was located.",
              "evidenceIds": []
            },
            {
              "id": "admin_ui_languages",
              "question": "Is the admin interface available in German?",
              "support": "unknown",
              "answer": "Is the admin interface available in German? Unknown. No authenticated German/French/Italian UI review, WCAG conformance statement or German admin-interface specification was located.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "No authenticated German/French/Italian UI review, WCAG conformance statement or German admin-interface specification was located."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:WORK-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Multilingual capability is advertised without a verified DACH UI or accessibility matrix.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "ui_languages",
              "question": "Which UI languages are offered?",
              "support": "partial",
              "answer": "Teams plan documentation advertises a multilingual chat interface and a public translation collaboration project exists. A complete current language list was not established.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans",
                "typingmind:typingmind:translations"
              ]
            },
            {
              "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? No complete German/French/Italian UI review, German Admin Panel guarantee, WCAG conformance statement or assistive-technology fixture was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "accessibility_statement",
              "question": "Is there a WCAG conformance statement?",
              "support": "unknown",
              "answer": "Is there a WCAG conformance statement? No complete German/French/Italian UI review, German Admin Panel guarantee, WCAG conformance statement or assistive-technology fixture was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "admin_ui_languages",
              "question": "Is the admin interface available in German?",
              "support": "unknown",
              "answer": "Is the admin interface available in German? No complete German/French/Italian UI review, German Admin Panel guarantee, WCAG conformance statement or assistive-technology fixture was retrieved.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:compare-typingmind-team-plans",
            "typingmind:typingmind:translations"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-01",
          "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": "typingmind",
          "claimId": "typingmind:ADM-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams Professional provides SAML SSO and OAuth/OIDC options.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional identity features",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "sso_protocols",
              "question": "Which SSO protocols and identity providers work?",
              "support": "supported",
              "answer": "SAML SSO accepts IdP metadata and multiple connections; OAuth/OIDC includes Microsoft, Google and custom provider configuration.",
              "evidenceIds": [
                "typingmind:typingmind:sso",
                "typingmind:typingmind:o-auth-2-0"
              ]
            },
            {
              "id": "sso_plan",
              "question": "Which plan includes SSO?",
              "support": "supported",
              "answer": "The plan comparison places SSO/OAuth and Directory Sync in Professional.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans"
              ]
            },
            {
              "id": "mfa",
              "question": "Can MFA be enforced?",
              "support": "partial",
              "answer": "The DPA security measures mention MFA and SSO; documented tenant-level enforcement settings and IdP MFA propagation were not verified.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "conditional_access",
              "question": "Do Entra conditional-access policies apply?",
              "support": "unknown",
              "answer": "Do Entra conditional-access policies apply? No Entra conditional-access test or verified-domain capture/mandatory login policy was established.",
              "evidenceIds": []
            },
            {
              "id": "domain_capture",
              "question": "Can the company claim its email domain?",
              "support": "unknown",
              "answer": "Can the company claim its email domain? No Entra conditional-access test or verified-domain capture/mandatory login policy was 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": [
            "typingmind:typingmind:sso",
            "typingmind:typingmind:o-auth-2-0",
            "typingmind:typingmind:compare-typingmind-team-plans",
            "typingmind:typingmind:data-processing-agreement"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt: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": "typingmind",
          "claimId": "typingmind:ADM-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Professional supports SCIM, group sync and JIT; OAuth revocation alone does not remove a seat.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional Directory Sync; distinguish SCIM suspension from OAuth revocation",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "scim",
              "question": "Is SCIM provisioning supported?",
              "support": "supported",
              "answer": "SCIM v2 creates, updates and suspends users from a compatible IdP.",
              "evidenceIds": [
                "typingmind:typingmind:scim"
              ]
            },
            {
              "id": "group_sync",
              "question": "Are identity-provider groups synced?",
              "support": "supported",
              "answer": "Directory Sync assigns users to corresponding groups received from the identity provider.",
              "evidenceIds": [
                "typingmind:typingmind:scim"
              ]
            },
            {
              "id": "jit_provisioning",
              "question": "Are users created at first login?",
              "support": "supported",
              "answer": "OAuth login can create a user on first sign-in and consumes an available seat; creation fails without a free seat.",
              "evidenceIds": [
                "typingmind:typingmind:o-auth-2-0"
              ]
            },
            {
              "id": "deprovisioning",
              "question": "What happens to a removed user's data and shared assets?",
              "support": "partial",
              "answer": "SCIM suspends users; separate OAuth docs warn that revoking IdP authorization alone does not remove an existing user, requiring admin removal. Shared asset ownership, deletion and session-revocation timing are not established.",
              "evidenceIds": [
                "typingmind:typingmind:scim",
                "typingmind:typingmind:o-auth-2-0"
              ]
            },
            {
              "id": "seat_assignment",
              "question": "Can admins assign and reclaim seats?",
              "support": "partial",
              "answer": "Admins invite/manage users and JIT consumes purchased seats. Exact seat reclamation timing, licence proration and asset transfer were not established.",
              "evidenceIds": [
                "typingmind:typingmind:invite-team-members",
                "typingmind:typingmind:o-auth-2-0"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:scim",
            "typingmind:typingmind:o-auth-2-0",
            "typingmind:typingmind:invite-team-members"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:ADM-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Custom admin roles and user groups provide delegated management and feature availability controls.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional custom roles, resource groups and usage limits",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_roles",
              "question": "Which admin roles exist, and can admin rights be delegated?",
              "support": "supported",
              "answer": "Default Admin has highest permissions. Owners create custom roles for models, plugins, agents, reporting, billing, users, keys, KB and portal settings. Users may hold multiple roles; the former Content Moderator preset was removed.",
              "evidenceIds": [
                "typingmind:typingmind:roles-and-permissions"
              ]
            },
            {
              "id": "groups",
              "question": "Can permissions be set per group?",
              "support": "supported",
              "answer": "User groups govern resource visibility and limits. Admin roles are assigned to individual members; assigning roles to groups is still described as coming soon.",
              "evidenceIds": [
                "typingmind:typingmind:roles-and-permissions",
                "typingmind:typingmind:create-and-manage-user-groups"
              ]
            },
            {
              "id": "feature_toggles",
              "question": "Which features can be switched on or off per group?",
              "support": "supported",
              "answer": "Professional provides model, agent and plugin group availability/usage controls through resource Access/Limit settings; the plan matrix separately lists per-user prompt visibility. CSS/themes are excluded from this permission finding.",
              "evidenceIds": [
                "typingmind:typingmind:restrict-model-access",
                "typingmind:typingmind:restrict-ai-agents-access",
                "typingmind:typingmind:restrict-plugin-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "multi_entity",
              "question": "Can subsidiaries or departments be separated within one contract?",
              "support": "unknown",
              "answer": "Can subsidiaries or departments be separated within one contract? No multi-subsidiary legal/entity separation, independent subtenant keys or consolidated contract administration was 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": [
            "typingmind:typingmind:roles-and-permissions",
            "typingmind:typingmind:create-and-manage-user-groups",
            "typingmind:typingmind:restrict-model-access",
            "typingmind:typingmind:restrict-ai-agents-access",
            "typingmind:typingmind:restrict-plugin-access",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-04",
          "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": "typingmind",
          "claimId": "typingmind:ADM-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams analytics reports adoption and consumption, including identifiable user breakdowns.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional analytics",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "adoption_dashboard",
              "question": "Is there an adoption dashboard?",
              "support": "supported",
              "answer": "Dashboard counts active users, messages, conversations, characters and estimated tokens over a selected period.",
              "evidenceIds": [
                "typingmind:typingmind:chatbot-analytics"
              ]
            },
            {
              "id": "breakdowns",
              "question": "Can usage be broken down by group, model, feature and assistant?",
              "support": "supported",
              "answer": "Reporting filters by user, group, model and agent; a complete per-feature cost map was not established.",
              "evidenceIds": [
                "typingmind:typingmind:chatbot-analytics"
              ]
            },
            {
              "id": "export",
              "question": "Can usage data be exported?",
              "support": "partial",
              "answer": "Charts can be downloaded; a complete raw usage ledger export format was not established.",
              "evidenceIds": [
                "typingmind:typingmind:chatbot-analytics"
              ]
            },
            {
              "id": "privacy_modes",
              "question": "Can per-person reporting be limited or pseudonymised?",
              "support": "unknown",
              "answer": "Can per-person reporting be limited or pseudonymised? No pseudonymised reporting mode or enforceable per-person aggregation threshold was 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": [
            "typingmind:typingmind:chatbot-analytics"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-05",
          "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": "typingmind",
          "claimId": "typingmind:ADM-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Admins can inspect estimated consumption and set token/message limits; monetary budgets are unestablished.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional; API charges billed directly by customer providers",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_visibility",
              "question": "Can admins see cost or consumption per user and group?",
              "support": "partial",
              "answer": "Analytics shows estimated token and character usage per user/group/model/agent. Customer model bills remain external; reconciled currency cost is not established.",
              "evidenceIds": [
                "typingmind:typingmind:chatbot-analytics"
              ]
            },
            {
              "id": "budgets",
              "question": "Can budgets be set per user or group?",
              "support": "partial",
              "answer": "Admins configure reusable token/message/character limits for users/groups and resources, rather than an evidenced currency-denominated budget.",
              "evidenceIds": [
                "typingmind:typingmind:usage-limits"
              ]
            },
            {
              "id": "budget_enforcement",
              "question": "Does reaching a budget alert, block or downgrade?",
              "support": "partial",
              "answer": "Users are shown applicable limits, but hard monetary blocking, alerts, downgrade and in-flight overshoot semantics were not established.",
              "evidenceIds": [
                "typingmind:typingmind:usage-limits"
              ]
            },
            {
              "id": "chargeback",
              "question": "Can costs be exported per cost centre?",
              "support": "unknown",
              "answer": "Can costs be exported per cost centre? No cost-centre chargeback ledger or exact monetary budget-enforcement documentation was retrieved.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:chatbot-analytics",
            "typingmind:typingmind:usage-limits"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:ADM-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Optional chat recording exposes prompts and answers to authorized admins with retention and JSON export.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional chat logs; logging must be enabled",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "admin_events",
              "question": "Are admin and security events logged?",
              "support": "unknown",
              "answer": "Are admin and security events logged? No first-party security/admin event catalogue, legal hold or eDiscovery workflow was established.",
              "evidenceIds": []
            },
            {
              "id": "content_logging",
              "question": "Can prompts and answers be retained for compliance, and is it configurable?",
              "support": "supported",
              "answer": "Record all chats is opt-in and off by default; authorized Admin Panel roles can view saved user prompts and model responses.",
              "evidenceIds": [
                "typingmind:typingmind:view-and-export-user-chat-logs",
                "typingmind:typingmind:export-chat-logs",
                "typingmind:typingmind:roles-and-permissions"
              ]
            },
            {
              "id": "siem_export",
              "question": "Can logs stream to a SIEM or be exported?",
              "support": "partial",
              "answer": "An API exports recorded chats as JSON, last 100 matching conversations per request with date filtering. Native SIEM streaming and complete audit-event export were not established.",
              "evidenceIds": [
                "typingmind:typingmind:export-chat-logs"
              ]
            },
            {
              "id": "ediscovery",
              "question": "Are eDiscovery and legal hold supported?",
              "support": "unknown",
              "answer": "Are eDiscovery and legal hold supported? No first-party security/admin event catalogue, legal hold or eDiscovery workflow was established.",
              "evidenceIds": []
            },
            {
              "id": "log_retention",
              "question": "How long are logs kept?",
              "support": "partial",
              "answer": "Admins set chat retention and old records are permanently deleted. A default duration and separate admin/security log retention were not established.",
              "evidenceIds": [
                "typingmind:typingmind:view-and-export-user-chat-logs"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:view-and-export-user-chat-logs",
            "typingmind:typingmind:export-chat-logs",
            "typingmind:typingmind:roles-and-permissions"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:ADM-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Web search has a sensitive-content consent step; general PII/DLP handling is unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "pii_detection",
              "question": "Is personal data detected in prompts and files?",
              "support": "partial",
              "answer": "AGB 2.5 says the system can detect potentially sensitive search-query content; it does not specify personal-data types or uploaded-file detection.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "pii_action",
              "question": "Is it redacted, masked, blocked or only warned?",
              "support": "partial",
              "answer": "Detected potentially sensitive web-search content requires renewed user consent before transmission. Redaction or blocking is not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "custom_patterns",
              "question": "Can admins add custom patterns or terms?",
              "support": "unknown",
              "answer": "Can admins add custom patterns or terms? Unknown. Custom patterns, external DLP integration, detection coverage and filter location are not documented; no AHV/IBAN fixture was used.",
              "evidenceIds": []
            },
            {
              "id": "dlp_integration",
              "question": "Does it integrate with an existing DLP product?",
              "support": "unknown",
              "answer": "Does it integrate with an existing DLP product? Unknown. Custom patterns, external DLP integration, detection coverage and filter location are not documented; no AHV/IBAN fixture was used.",
              "evidenceIds": []
            },
            {
              "id": "filter_location",
              "question": "Where does filtering run?",
              "support": "unknown",
              "answer": "Where does filtering run? Unknown. Custom patterns, external DLP integration, detection coverage and filter location are not documented; no AHV/IBAN fixture was used.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Custom patterns, external DLP integration, detection coverage and filter location are not documented; no AHV/IBAN fixture was used."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:ADM-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": "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": "swissgpt",
          "claimId": "swissgpt:ADM-08",
          "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": "typingmind",
          "claimId": "typingmind:ADM-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Global instructions can govern chat behaviour, but policy acceptance and violation reporting remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS global instructions; Professional for group/resource plugin restrictions",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "org_instructions",
              "question": "Can admins set organisation-wide instructions?",
              "support": "supported",
              "answer": "Admins set hidden global system instructions, few-shot examples and post-message reminders across chats and agents.",
              "evidenceIds": [
                "typingmind:typingmind:system-prompts-on-admin-panel"
              ]
            },
            {
              "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? No mandatory policy-acceptance record, enforcement-grade content filter or admin policy-hit report was established.",
              "evidenceIds": []
            },
            {
              "id": "content_filters",
              "question": "Are content filters configurable?",
              "support": "partial",
              "answer": "Admins configure model-followed instructions; Professional separately restricts plugin availability by group. Neither establishes deterministic PII/content filtering or a policy-enforcement engine.",
              "evidenceIds": [
                "typingmind:typingmind:system-prompts-on-admin-panel",
                "typingmind:typingmind:restrict-plugin-access",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "violation_reporting",
              "question": "Are policy hits visible to admins?",
              "support": "unknown",
              "answer": "Are policy hits visible to admins? No mandatory policy-acceptance record, enforcement-grade content filter or admin policy-hit report was 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": [
            "typingmind:typingmind:system-prompts-on-admin-panel",
            "typingmind:typingmind:restrict-plugin-access",
            "typingmind:typingmind:r2-plan-matrix"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Swiss RIZ application hosting is consistently described. Green/RZO Swiss inference is a vendor security-page statement; a current contracted inference-site schedule is unverified because the July DPA does not list RZO. Storage, inference, support and optional search are scoped separately.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "api"
            ],
            "version": "Public infrastructure page and DPA Annex 3 dated 10 July 2026; no tenant contract inspected",
            "plan": "Current AlpineAI sector offer; contract-specific residency and secret-data supplement conditional on signature",
            "addOns": [],
            "deploymentMode": null,
            "region": "Advertised Swiss application hosting; current contracted inference map unverified; DPA CH/EEA with conditional third-country processing and optional external search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "api",
                "name": "AlpineAI API platform",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "storage_region",
              "question": "Where are chats, files and indexes stored?",
              "support": "partial",
              "answer": "The security page describes application/data storage on AlpineAI hardware at two Swiss RIZ sites. July DPA Annex 3 independently lists RIZ CH for platform hosting and support. Separate per-index/log topology and a tenant-specific deployment schedule were not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-security",
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "inference_region",
              "question": "Where do model calls run, per provider?",
              "support": "unknown",
              "answer": "The security page names Swiss Green and RZO GPU colocation on AlpineAI-owned/operated hardware without logical access by site operators. July DPA Annex 3 names Green and expressly describes pure colocation, but omits RZO. No newer public annex or contract-specific RZO authorisation was retrieved. The currently contracted complete inference-site map is therefore unknown; the marketing statement is not a verified current contract commitment.",
              "evidenceIds": []
            },
            {
              "id": "backups_logs_region",
              "question": "Where are backups, logs and telemetry?",
              "support": "partial",
              "answer": "July DPA Annex 3 lists cloudscale.ch CH for backup; Annex 2 describes daily offsite backups. This dated schedule does not establish every current log/telemetry or backup location.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "support_access_region",
              "question": "From where can vendor staff access data?",
              "support": "partial",
              "answer": "The dated annex assigns RIZ CH to customer support and EU Atlassian/Custify to helpdesk/account functions. Physical staff access countries are not fully mapped. A separately signed secret-data supplement requires Swiss services where secret data is in plaintext.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa",
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "swiss_hosting",
              "question": "Is Swiss hosting available?",
              "support": "partial",
              "answer": "Swiss application hosting at RIZ is supported by both public sources. The full current inference-site inventory is withheld pending a current applicable schedule, so this is not an all-processing CH-residency assurance.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-security",
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "residency_plan",
              "question": "Which plan or option provides residency?",
              "support": "partial",
              "answer": "DPA 1.5 permits CH/EEA processing with conditional third-country safeguards. Optional Brave search is separately listed with US processing. The secret-data supplement, only when signed and applicable, narrows plaintext services including APIs to Switzerland. A current tenant-specific inference schedule is still missing.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa",
                "swissgpt:swissgpt:secrecy"
              ]
            }
          ],
          "limitations": [
            "RZO is described as colocation, not as a foreign model API. Its absence from the July annex is not evidence of overseas inference or unauthorised processing.",
            "The currently contracted complete inference-site list, per-index/log/telemetry locations and exhaustive staff access countries remain unknown."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:review2-security",
            "swissgpt:swissgpt:review2-dpa",
            "swissgpt:swissgpt:secrecy"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "EU SaaS storage is optional; inference, tools and support are separate residency questions.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "storage_region",
              "question": "Where are chats, files and indexes stored?",
              "support": "partial",
              "answer": "Teams offers US and opt-in EU instances. The EU guide names Vercel web hosting and AWS database resources; exact file/index/backup components are not fully enumerated.",
              "evidenceIds": [
                "typingmind:typingmind:eu-data-center",
                "typingmind:typingmind:privacy-policy"
              ]
            },
            {
              "id": "inference_region",
              "question": "Where do model calls run, per provider?",
              "support": "supported",
              "answer": "The EU guide explicitly warns model calls may go outside the EU. Customers can choose an EU Azure endpoint or private/local model; this is not an all-provider EU inference promise.",
              "evidenceIds": [
                "typingmind:typingmind:eu-data-center"
              ]
            },
            {
              "id": "backups_logs_region",
              "question": "Where are backups, logs and telemetry?",
              "support": "unknown",
              "answer": "Where are backups, logs and telemetry? Backup, telemetry, support-access country matrix and contractual Swiss-only end-to-end processing were not established.",
              "evidenceIds": []
            },
            {
              "id": "support_access_region",
              "question": "From where can vendor staff access data?",
              "support": "partial",
              "answer": "The DPA identifies the processor at a Da Nang, Vietnam address and requires need-to-know confidentiality; actual operational staff access countries and restrictions were not established.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "swiss_hosting",
              "question": "Is Swiss hosting available?",
              "support": "partial",
              "answer": "Customer self-host can run on operator-selected infrastructure, but no vendor-operated Swiss SaaS region or complete CH-only processing undertaking was established.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "residency_plan",
              "question": "Which plan or option provides residency?",
              "support": "supported",
              "answer": "The EU instance is an account/instance choice for Teams SaaS. Self-host is a separate quoted annual commercial licence, not the personal licence.",
              "evidenceIds": [
                "typingmind:typingmind:eu-data-center",
                "typingmind:typingmind:selfhost"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:eu-data-center",
            "typingmind:typingmind:privacy-policy",
            "typingmind:typingmind:data-processing-agreement",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-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": "typingmind",
          "claimId": "typingmind:DATA-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams offers multitenant SaaS and a separate commercial self-host package; offline operation is not established.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "multi_tenant_saas",
              "question": "Is a shared SaaS offered?",
              "support": "supported",
              "answer": "The privacy policy explicitly describes Teams as server-stored multitenant SaaS, unlike the default local-storage personal app.",
              "evidenceIds": [
                "typingmind:typingmind:privacy-policy"
              ]
            },
            {
              "id": "dedicated_instance",
              "question": "Is a dedicated single-tenant instance offered, from what size?",
              "support": "partial",
              "answer": "Self-host permits one customer-operated instance with five included users. A separate vendor-operated dedicated SaaS service and its minimum were not established.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "customer_cloud",
              "question": "Can it run in the customer's own cloud account, from what size?",
              "support": "supported",
              "answer": "A quoted self-host licence runs the NodeJS service, MySQL, optional PostgreSQL KB and blob store in the customer’s cloud account.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "on_premise",
              "question": "Can the whole platform run on customer infrastructure, from what size?",
              "support": "supported",
              "answer": "The self-host package can run on customer infrastructure with Docker/NodeJS and required databases; five users and one instance are included under the annual quote.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "air_gapped",
              "question": "Can it run without internet access?",
              "support": "partial",
              "answer": "The self-host FAQ lists external model requests plus update and licence checks. Private models reduce model egress, while the optional KB guide still requires OpenAI embeddings. A supported air-gapped licence was not established.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "mode_feature_gaps",
              "question": "Which features are missing outside SaaS?",
              "support": "supported",
              "answer": "Self-host releases lag cloud by approximately one to three weeks; optional KB needs additional infrastructure, external OAuth setup and OpenAI embeddings. SLA/dedicated support is a separate paid option.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:setup-external-connectors-for-knowledge-base",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            }
          ],
          "limitations": [
            "Marketing language about data staying on customer infrastructure must be read with model, embedding, licence and update egress requirements."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:privacy-policy",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:setup-external-connectors-for-knowledge-base"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The terms prohibit model training on customer inputs. API zero retention has a narrow signed secrecy-agreement scope.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "api"
            ],
            "version": null,
            "plan": "Current hosted plans; zero retention only AI API services under signed secret-data supplement",
            "addOns": [
              "Signed supplementary agreement for legally secret data, where applicable"
            ],
            "deploymentMode": null,
            "region": "CH for plaintext secret-data services; general DPA CH/EEA with conditional third countries",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "api",
                "name": "AlpineAI API platform",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "vendor_training",
              "question": "Does the vendor train on customer content?",
              "support": "supported",
              "answer": "AGB 4.4 says customer inputs do not feed back into language-model development. DPA 2.4 separately permits anonymisation and use for service/product development; this is not a blanket prohibition on every secondary use.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms",
                "swissgpt:swissgpt:dpa"
              ]
            },
            {
              "id": "provider_training",
              "question": "Do model providers train on it under this product's contracts?",
              "support": "partial",
              "answer": "Vendor says models run on AlpineAI hardware without foreign model APIs; a separate third-party model-provider training contract is not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "provider_retention",
              "question": "How long do model providers keep prompts, including for abuse monitoring?",
              "support": "partial",
              "answer": "Signed secrecy agreement forbids storing/logging AI API input and output for secret data. Ordinary web-chat and general API retention periods are unspecified.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "zero_retention",
              "question": "Is zero data retention available, and on which plan?",
              "support": "supported",
              "answer": "Available contractually for AI API services processing legally secret data when the supplementary agreement is signed. It is not a general chat-history promise.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "human_review",
              "question": "Can provider staff review content?",
              "support": "supported",
              "answer": "For secret data under the signed supplement, plaintext access needs individual approval, unavoidable BCM emergency or a binding Swiss order; staff abuse monitoring with plaintext access is forbidden.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            }
          ],
          "limitations": [
            "Ordinary-chat/provider retention and general staff-review practice outside the signed secret-data scope are not documented. DPA anonymised-data use must be read alongside the narrower no-training clause."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:dpa",
            "swissgpt:swissgpt:product",
            "swissgpt:swissgpt:secrecy"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "TypingMind asserts no vendor training; customer provider contracts control training and retention.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "vendor_training",
              "question": "Does the vendor train on customer content?",
              "support": "supported",
              "answer": "The published policy says TypingMind does not use conversations for AI training. This is a vendor policy assertion, not an independently verified contract-wide audit.",
              "evidenceIds": [
                "typingmind:typingmind:data-usage-and-model-training-policy"
              ]
            },
            {
              "id": "provider_training",
              "question": "Do model providers train on it under this product's contracts?",
              "support": "partial",
              "answer": "Teams uses customer provider keys and direct customer provider contracts. The policy summarizes provider-specific training defaults; this pass did not verify every provider contract or free/paid API variant.",
              "evidenceIds": [
                "typingmind:typingmind:set-up-api-keys",
                "typingmind:typingmind:data-usage-and-model-training-policy"
              ]
            },
            {
              "id": "provider_retention",
              "question": "How long do model providers keep prompts, including for abuse monitoring?",
              "support": "partial",
              "answer": "The policy discusses provider-dependent abuse monitoring, retention and paid/unpaid distinctions; no uniform current retention duration applies to every customer-selected route.",
              "evidenceIds": [
                "typingmind:typingmind:data-usage-and-model-training-policy"
              ]
            },
            {
              "id": "zero_retention",
              "question": "Is zero data retention available, and on which plan?",
              "support": "partial",
              "answer": "A customer may select a provider/endpoint with suitable terms, but no TypingMind-wide ZDR entitlement, plan or complete exception matrix was established.",
              "evidenceIds": [
                "typingmind:typingmind:data-usage-and-model-training-policy",
                "typingmind:typingmind:eu-data-center"
              ]
            },
            {
              "id": "human_review",
              "question": "Can provider staff review content?",
              "support": "partial",
              "answer": "TypingMind’s provider summary says OpenAI authorized employees may review API data for abuse/legal compliance. Its Gemini section distinguishes paid no-training from unpaid improvement use and says human reviewers may read/annotate/process inputs and outputs for quality improvement. These are qualified vendor summaries, not verified terms for every customer paid/unpaid endpoint, ZDR approval or actual account.",
              "evidenceIds": [
                "typingmind:typingmind:data-usage-and-model-training-policy"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:data-usage-and-model-training-policy",
            "typingmind:typingmind:set-up-api-keys",
            "typingmind:typingmind:eu-data-center"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The DPA requires deletion after contract end with a backup-cycle exception.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "default_retention",
              "question": "What is retained and for how long by default?",
              "support": "unknown",
              "answer": "What is retained and for how long by default? Unknown. Default chat/file/index/log periods, customer retention settings, permanent user deletion and the backup-cycle deadline are not specified.",
              "evidenceIds": []
            },
            {
              "id": "admin_retention",
              "question": "Can admins set retention periods?",
              "support": "unknown",
              "answer": "Can admins set retention periods? Unknown. Default chat/file/index/log periods, customer retention settings, permanent user deletion and the backup-cycle deadline are not specified.",
              "evidenceIds": []
            },
            {
              "id": "user_deletion",
              "question": "Can users delete their chats and files permanently?",
              "support": "unknown",
              "answer": "Can users delete their chats and files permanently? Unknown. Default chat/file/index/log periods, customer retention settings, permanent user deletion and the backup-cycle deadline are not specified.",
              "evidenceIds": []
            },
            {
              "id": "contract_end_deletion",
              "question": "What is deleted at contract end, and when?",
              "support": "partial",
              "answer": "DPA 9.1 requires deletion of provided customer data on termination. Backup copies delete on restoration and ultimately as backup cycles expire; no cycle duration is given. AGB 7.5 offers written confirmation on request with legal-retention exceptions.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa",
                "swissgpt:swissgpt:terms"
              ]
            }
          ],
          "limitations": [
            "Default chat/file/index/log periods, customer retention settings, permanent user deletion and the backup-cycle deadline are not specified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:dpa",
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Admins control recorded chat retention; termination deletion/return is contractual without a fixed public completion window.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional for admin chat recording/retention; general service privacy/DPA rights separate from personal/local history",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "default_retention",
              "question": "What is retained and for how long by default?",
              "support": "partial",
              "answer": "Professional admin chat recording is off by default; that is separate from user-visible history and personal browser storage. The privacy policy separately mentions90-day unpaid-account inactivity deletion with warning; a paid Teams history lifetime is not specified.",
              "evidenceIds": [
                "typingmind:typingmind:export-chat-logs",
                "typingmind:typingmind:privacy-policy",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "admin_retention",
              "question": "Can admins set retention periods?",
              "support": "supported",
              "answer": "Professional chat-log settings set recorded-chat retention, with permanent deletion of older records. No personal/local or backup deletion interval is inferred.",
              "evidenceIds": [
                "typingmind:typingmind:view-and-export-user-chat-logs",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "user_deletion",
              "question": "Can users delete their chats and files permanently?",
              "support": "partial",
              "answer": "The privacy policy provides data-erasure rights; immediate permanent deletion across Teams files, backups and logs by the user UI was not established.",
              "evidenceIds": [
                "typingmind:typingmind:privacy-policy"
              ]
            },
            {
              "id": "contract_end_deletion",
              "question": "What is deleted at contract end, and when?",
              "support": "partial",
              "answer": "The DPA permits customer-choice deletion or return and certification on request, subject to legal retention; a fixed completion deadline and self-serve export window are not specified.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:export-chat-logs",
            "typingmind:typingmind:privacy-policy",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:view-and-export-user-chat-logs",
            "typingmind:typingmind:data-processing-agreement"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A public July 2026 DPA annex lists operational suppliers and contract notification/transfer terms. It is a dated source, not proof of the complete current provider list: RZO appears only on the security page and its current contractual status remains unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "api"
            ],
            "version": "DPA Annex 3 dated 10 July 2026; re-retrieved 21 October 2026",
            "plan": "AlpineAI platform contracts; current tenant-specific supplier schedule not inspected",
            "addOns": [],
            "deploymentMode": null,
            "region": "Dated annex CH/EU/US supplier locations; current complete country/supplier schedule unverified",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "api",
                "name": "AlpineAI API platform",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "subprocessor_list",
              "question": "Is a dated sub-processor list published?",
              "support": "partial",
              "answer": "A public Annex 3 dated 10 July 2026 is downloadable through /avv/. It includes RIZ hosting/support and Green colocation. The security page additionally names RZO. No updated public annex, RZO approval notice or tenant-specific schedule was obtained, so completeness/current applicability is unknown.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa",
                "swissgpt:swissgpt:review2-security"
              ]
            },
            {
              "id": "subprocessor_countries",
              "question": "Which countries do sub-processors operate in?",
              "support": "partial",
              "answer": "The dated annex lists CH data locations for RIZ, Green, cloudscale, accounting and IT operations; EU for helpdesk/payments/customer success; US for CRM and opt-in Brave search. Green is described as rack/power/network colocation without logical access, not model-provider API processing. These are the annex entries, not an exhaustive current content-processing country map.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "change_notification",
              "question": "Are customers notified of sub-processor changes?",
              "support": "supported",
              "answer": "DPA 7.3 requires text notice of intended additions/replacements and gives 14 days for an objection supported by an important reason. No customer-specific change notice was inspected.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "parent_jurisdiction",
              "question": "Which jurisdiction governs the vendor and its parent?",
              "support": "partial",
              "answer": "The contracting entity is AlpineAI AG in Davos, Switzerland; ultimate parent/beneficial-owner jurisdiction was not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:imprint",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "transfer_mechanism",
              "question": "Which transfer mechanism applies to non-EU/CH processing?",
              "support": "partial",
              "answer": "DPA 1.5 conditions third-country processing on prior written notice and adequate safeguards such as SCCs or adequacy. It does not map a particular transfer instrument to each US supplier.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa"
              ]
            },
            {
              "id": "government_access_policy",
              "question": "Is there a published government-access or transparency policy?",
              "support": "supported",
              "answer": "DPA 2.1 requires notice of legally mandated processing unless prohibited. The separately signed secret-data supplement adds Swiss-order notice, challenge assistance and minimal disclosure, within its Swiss secret-data scope.",
              "evidenceIds": [
                "swissgpt:swissgpt:review2-dpa",
                "swissgpt:swissgpt:secrecy"
              ]
            }
          ],
          "limitations": [
            "No current complete provider/country schedule or RZO-specific authorisation was retrieved; no inference is made that RZO is approved, unauthorised or a separate model provider.",
            "Ultimate ownership and supplier-specific US transfer instruments remain unknown."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:review2-dpa",
            "swissgpt:swissgpt:review2-security",
            "swissgpt:swissgpt:imprint",
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:secrecy"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A public DPA lists processors and transfer measures; vendor legal jurisdiction differs from hosting region.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "subprocessor_list",
              "question": "Is a dated sub-processor list published?",
              "support": "partial",
              "answer": "DPA Appendix II publishes a subprocessor list; no standalone dated list revision was visible in the retrieved document.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "subprocessor_countries",
              "question": "Which countries do sub-processors operate in?",
              "support": "supported",
              "answer": "The list includes AWS US/Germany, Render US, Vercel US/EU, US services including Sentry/Axiom/Customer.io/Stripe/HelpScout/Mailgun and Paddle US/UK. EU storage does not remove these separate vendor paths.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "change_notification",
              "question": "Are customers notified of sub-processor changes?",
              "support": "supported",
              "answer": "DPA 7.8 says the processor will endeavor to give 30 days’ notice of additions/replacements, with 15 days for objections; preserve the qualified notice wording.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "parent_jurisdiction",
              "question": "Which jurisdiction governs the vendor and its parent?",
              "support": "partial",
              "answer": "Terms identify Typing Technology Co Ltd with Singapore governing law; the DPA gives a Vietnam processor address. Parent ownership/jurisdiction and actual staff locations were not independently established.",
              "evidenceIds": [
                "typingmind:typingmind:terms-of-service",
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "transfer_mechanism",
              "question": "Which transfer mechanism applies to non-EU/CH processing?",
              "support": "supported",
              "answer": "DPA 7.9 and its SCC appendix provide EU transfer safeguards, subject to actual processing configuration; a Swiss-specific addendum was not established.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "government_access_policy",
              "question": "Is there a published government-access or transparency policy?",
              "support": "partial",
              "answer": "The privacy policy allows disclosures for authorized legal requests; no separate transparency report or detailed government-request policy was retrieved.",
              "evidenceIds": [
                "typingmind:typingmind:privacy-policy"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:data-processing-agreement",
            "typingmind:typingmind:terms-of-service",
            "typingmind:typingmind:privacy-policy"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public DPA and secrecy supplement address Swiss data protection and professional/official secrecy.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "dpa",
              "question": "Is a DPA available, and is it negotiable?",
              "support": "partial",
              "answer": "A public DPA applies to individuals without AlpineAI signature; companies may obtain a countersigned copy. Negotiation rights are not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa"
              ]
            },
            {
              "id": "revdsg_gdpr",
              "question": "Does the DPA cover revDSG and GDPR?",
              "support": "supported",
              "answer": "DPA expressly cites Art. 9 Swiss DSG and Art. 28 GDPR and defines controller/processor roles.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa"
              ]
            },
            {
              "id": "governing_law",
              "question": "Which law and court govern the contract?",
              "support": "supported",
              "answer": "DPA 11.4 specifies Swiss law and exclusive Zürich jurisdiction; AGB 11.4 preserves AlpineAI rights to sue elsewhere.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "ai_act_materials",
              "question": "Is EU AI Act documentation provided?",
              "support": "unknown",
              "answer": "Is EU AI Act documentation provided? Unknown. DPA negotiability, EU AI Act provider/deployer documents and a FINMA-specific pack are not provided in the reviewed public materials.",
              "evidenceIds": []
            },
            {
              "id": "sector_materials",
              "question": "Are FINMA or other sector materials provided?",
              "support": "partial",
              "answer": "Public signed supplement covers legally secret data including official/professional secrecy, CH plaintext services and annual assurance evidence. No FINMA-specific outsourcing dossier was located.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            }
          ],
          "limitations": [
            "DPA negotiability, EU AI Act provider/deployer documents and a FINMA-specific pack are not provided in the reviewed public materials."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:dpa",
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:secrecy"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A public GDPR DPA and Singapore-law business terms are available; Swiss and sector-specific undertakings remain gaps.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "dpa",
              "question": "Is a DPA available, and is it negotiable?",
              "support": "partial",
              "answer": "A public fillable GDPR Article 28 DPA names the processor, security measures and SCCs. Whether bespoke negotiation is available was not established.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "revdsg_gdpr",
              "question": "Does the DPA cover revDSG and GDPR?",
              "support": "partial",
              "answer": "The DPA expressly addresses GDPR and SCCs; explicit revised Swiss FADP/revDSG coverage was not established.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "governing_law",
              "question": "Which law and court govern the contract?",
              "support": "supported",
              "answer": "The September 17, 2026 Terms use Singapore law, with SIAC English-language business arbitration; the DPA SCC appendix separately uses EU exporter-state law/forum where applicable.",
              "evidenceIds": [
                "typingmind:typingmind:terms-of-service",
                "typingmind:typingmind:data-processing-agreement"
              ]
            },
            {
              "id": "ai_act_materials",
              "question": "Is EU AI Act documentation provided?",
              "support": "unknown",
              "answer": "Is EU AI Act documentation provided? No EU AI Act compliance package, FINMA outsourcing materials or dedicated professional-secrecy agreement was retrieved.",
              "evidenceIds": []
            },
            {
              "id": "sector_materials",
              "question": "Are FINMA or other sector materials provided?",
              "support": "unknown",
              "answer": "Are FINMA or other sector materials provided? No EU AI Act compliance package, FINMA outsourcing materials or dedicated professional-secrecy agreement was retrieved.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:data-processing-agreement",
            "typingmind:typingmind:terms-of-service"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "AlpineAI claims ISO 27001:2022 and VDSZ issued by SQS; certificates were not inspected.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "iso_27001",
              "question": "ISO 27001 with scope and validity?",
              "support": "partial",
              "answer": "Vendor identifies AlpineAI AG, SQS and ISO 27001:2022. Certificate scope and validity were not retrieved, so this remains vendor-claimed.",
              "evidenceIds": [
                "swissgpt:swissgpt:security"
              ]
            },
            {
              "id": "soc2",
              "question": "SOC 2 type, period and covered service?",
              "support": "unknown",
              "answer": "SOC 2 type, period and covered service? Unknown. No issuer certificate or full report was obtained. ISO/VDSZ validity and scope, SOC 2 type/period, C5 and independent penetration-test summary remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "c5",
              "question": "BSI C5 attestation?",
              "support": "unknown",
              "answer": "BSI C5 attestation? Unknown. No issuer certificate or full report was obtained. ISO/VDSZ validity and scope, SOC 2 type/period, C5 and independent penetration-test summary remain unverified.",
              "evidenceIds": []
            },
            {
              "id": "other_certifications",
              "question": "Which other certificates (27701, 42001, TISAX)?",
              "support": "partial",
              "answer": "Vendor claims VDSZ, issued by SQS. No certificate number, scope or expiry was retrieved.",
              "evidenceIds": [
                "swissgpt:swissgpt:security"
              ]
            },
            {
              "id": "report_access",
              "question": "How can customers obtain reports?",
              "support": "supported",
              "answer": "DPA 6.1 permits documentary assurance such as ISO records/internal audits; signed secret-data supplement promises annual certification/report covering the processing without extra charge.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa",
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "pentest",
              "question": "Are independent penetration test summaries available?",
              "support": "partial",
              "answer": "DPA Annex 2 promises regular penetration testing; independence and a public summary are not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:dpa"
              ]
            }
          ],
          "limitations": [
            "No issuer certificate or full report was obtained. ISO/VDSZ validity and scope, SOC 2 type/period, C5 and independent penetration-test summary remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:security",
            "swissgpt:swissgpt:dpa",
            "swissgpt:swissgpt:secrecy"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The self-host page claims SOC 2 Type II. A report with auditor, period and covered-service scope was not retrieved, and other attestations remain unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-selfhost"
            ],
            "version": "Public self-host page retrieved 2026-10-26; no certificate verified",
            "plan": "Commercial Teams self-host marketing assurance claim; no customer report or SaaS certificate scope inferred",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "iso_27001",
              "question": "ISO 27001 with scope and validity?",
              "support": "unknown",
              "answer": "ISO 27001 with scope and validity? Trust Center access returned HTTP 403. The retrieved DPA security appendix is not an ISO/SOC/C5 certificate. Issuer, service scope, validity/report period, report-access process and independent penetration-test summary were not retrieved.",
              "evidenceIds": []
            },
            {
              "id": "soc2",
              "question": "SOC 2 type, period and covered service?",
              "support": "partial",
              "answer": "The vendor advertises SOC 2 Type II on the Teams self-host page. Auditor, report period, covered entity/service and applicability to a customer-operated deployment are unverified.",
              "evidenceIds": [
                "typingmind:typingmind:r4-soc2-selfhost-claim"
              ]
            },
            {
              "id": "c5",
              "question": "BSI C5 attestation?",
              "support": "unknown",
              "answer": "BSI C5 attestation? Trust Center access returned HTTP 403. The retrieved DPA security appendix is not an ISO/SOC/C5 certificate. Issuer, service scope, validity/report period, report-access process and independent penetration-test summary were not retrieved.",
              "evidenceIds": []
            },
            {
              "id": "other_certifications",
              "question": "Which other certificates (27701, 42001, TISAX)?",
              "support": "unknown",
              "answer": "Which other certificates (27701, 42001, TISAX)? Trust Center access returned HTTP 403. The retrieved DPA security appendix is not an ISO/SOC/C5 certificate. Issuer, service scope, validity/report period, report-access process and independent penetration-test summary were not retrieved.",
              "evidenceIds": []
            },
            {
              "id": "report_access",
              "question": "How can customers obtain reports?",
              "support": "unknown",
              "answer": "How can customers obtain reports? Trust Center access returned HTTP 403. The retrieved DPA security appendix is not an ISO/SOC/C5 certificate. Issuer, service scope, validity/report period, report-access process and independent penetration-test summary were not retrieved.",
              "evidenceIds": []
            },
            {
              "id": "pentest",
              "question": "Are independent penetration test summaries available?",
              "support": "unknown",
              "answer": "Are independent penetration test summaries available? Trust Center access returned HTTP 403. The retrieved DPA security appendix is not an ISO/SOC/C5 certificate. Issuer, service scope, validity/report period, report-access process and independent penetration-test summary were not retrieved.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Vendor assertion only. No independently verified report, certificate scope or validity was accessed; trust.typingmind.com returned HTTP 403."
          ],
          "checkedAt": "2026-10-26",
          "crossCheckedAt": "2026-10-26",
          "nextCheckAt": "2026-12-25",
          "evidenceIds": [
            "typingmind:typingmind:r4-soc2-selfhost-claim"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "The vendor describes AES-256 at rest, TLS in transit and isolation on its own hardware.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "encryption_at_rest",
              "question": "Is data encrypted at rest?",
              "support": "supported",
              "answer": "Security page names AES-256 at rest and TLS between clients and platform; DPA Annex 2 requires encryption.",
              "evidenceIds": [
                "swissgpt:swissgpt:security",
                "swissgpt:swissgpt:dpa"
              ]
            },
            {
              "id": "customer_managed_keys",
              "question": "Can the customer manage or hold the keys?",
              "support": "unknown",
              "answer": "Can the customer manage or hold the keys? Unknown. Customer-managed or customer-held keys, key location, customer private connectivity and technical tenant-isolation model remain unspecified.",
              "evidenceIds": []
            },
            {
              "id": "private_networking",
              "question": "Is private connectivity or IP restriction available?",
              "support": "partial",
              "answer": "GPU partners are described as VPN-only infrastructure. A customer Private Link, VPN or IP allow-list option is not established.",
              "evidenceIds": [
                "swissgpt:swissgpt:security"
              ]
            },
            {
              "id": "tenant_isolation",
              "question": "How are customers separated in shared SaaS?",
              "support": "partial",
              "answer": "Vendor claims isolated/private-cloud environments and least-privilege RBAC. Exact shared-SaaS tenant separation and single-tenancy guarantees are not documented.",
              "evidenceIds": [
                "swissgpt:swissgpt:security"
              ]
            }
          ],
          "limitations": [
            "Customer-managed or customer-held keys, key location, customer private connectivity and technical tenant-isolation model remain unspecified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:security",
            "swissgpt:swissgpt:dpa"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Encryption and private self-host infrastructure are documented without a SaaS customer-key guarantee.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost",
              "personal"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS US/EU storage; separately quoted annual Teams self-host network controls; personal local-key claims explicitly separate",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              },
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "encryption_at_rest",
              "question": "Is data encrypted at rest?",
              "support": "partial",
              "answer": "The EU guide says stored information is encrypted; exact cipher, key ownership and component coverage were not established. Personal optional cloud encryption is a different surface.",
              "evidenceIds": [
                "typingmind:typingmind:eu-data-center",
                "typingmind:typingmind:privacy-policy"
              ]
            },
            {
              "id": "customer_managed_keys",
              "question": "Can the customer manage or hold the keys?",
              "support": "unknown",
              "answer": "Can the customer manage or hold the keys? No Teams SaaS customer-managed/held encryption-key option or complete private-connectivity configuration was established.",
              "evidenceIds": []
            },
            {
              "id": "private_networking",
              "question": "Is private connectivity or IP restriction available?",
              "support": "partial",
              "answer": "Self-host permits customer network placement; localhost/private custom endpoints require ALLOW_UNSAFE_USER_ENDPOINTS. SaaS private links, IP allowlisting and private model routing were not established.",
              "evidenceIds": [
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "tenant_isolation",
              "question": "How are customers separated in shared SaaS?",
              "support": "partial",
              "answer": "The privacy policy calls Teams multitenant; logical isolation implementation and independent tenant-boundary testing were not established.",
              "evidenceIds": [
                "typingmind:typingmind:privacy-policy"
              ]
            }
          ],
          "limitations": [
            "Teams OpenAI route: server requests using centrally configured admin keys. Personal direct-browser/local-key assertions are not inherited by Teams.",
            "The generic policy versus Teams FAQ scope discrepancy remains visible pending policy clarification."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:eu-data-center",
            "typingmind:typingmind:privacy-policy",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:r2-teams-server-route"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:DATA-09",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "AlpineAI publishes a separate bilateral undertaking for Swiss official, professional and other statutory secret data. It binds staff and subcontractors, restricts plaintext access and requires Swiss plaintext services when signed. Plan eligibility, any supplement fee and German § 203 coverage remain unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web",
              "api"
            ],
            "version": "Supplement printed 30 March 2026",
            "plan": "AlpineAI platform under a signed main contract and supplementary secrecy agreement; eligible plan tiers unpublished",
            "addOns": [
              "Signed supplementary secrecy agreement; price unpublished"
            ],
            "deploymentMode": null,
            "region": "Swiss statutory secrecy; services exposing secret data in plaintext, including APIs, exclusively in Switzerland",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              },
              {
                "id": "api",
                "name": "AlpineAI API platform",
                "type": "api"
              }
            ]
          },
          "questions": [
            {
              "id": "secrecy_undertaking",
              "question": "Does the vendor sign a secrecy undertaking or § 203 StGB / Art. 321 StGB agreement covering its own staff?",
              "support": "supported",
              "answer": "The public two-party signature template supplements the platform main contract and DPA. It takes effect on the last signature and only while the customer processes data subject to Swiss official, professional or other statutory secrecy (example: Art. 320 ff. Swiss StGB). Section 3 requires equivalent contractual obligations for AlpineAI staff who may access plaintext. This establishes a published undertaking for signature, not an inspected executed customer agreement or an express German § 203 instrument.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "subprocessor_coverage",
              "question": "Does the undertaking extend to its sub-processors, and is that documented?",
              "support": "supported",
              "answer": "Section 3 requires AlpineAI to impose at least equivalent contractual obligations on its subcontractors and staff who may access secret data in plaintext. The DPA safeguards also apply to secret data, with the stronger secrecy supplement taking priority. Actual downstream signed agreements were not public and were not inspected.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "secrecy_offering",
              "question": "Is it a dedicated offering or add-on, and on which plan?",
              "support": "partial",
              "answer": "The security page offers corporate customers an additional secrecy agreement; the public template is separate from the main contract and DPA and requires both parties to sign. No named eligible package, paid add-on tariff or general supplement fee was established. The annual assurance evidence is promised without extra cost, which does not establish that the agreement itself is free.",
              "evidenceIds": [
                "swissgpt:swissgpt:security",
                "swissgpt:swissgpt:secrecy"
              ]
            },
            {
              "id": "content_access",
              "question": "Who can access content in plain text: vendor staff, sub-processors, model providers?",
              "support": "supported",
              "answer": "Under the signed supplement, AlpineAI and subcontractor staff may access plaintext only on a need-to-know basis plus individual prior customer approval, an unavoidable urgent business-continuity emergency, or a binding Swiss authority order. AlpineAI must take reasonable measures to prevent third-party plaintext access. AI API inputs and outputs must not be stored or logged, human abuse monitoring with plaintext access is prohibited, and plaintext services including APIs must remain in Switzerland. The security page separately says AlpineAI operates the models and colocation providers have no logical access to systems or data. These are contract terms and vendor disclosures, not a hands-on verification of every data flow.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy",
                "swissgpt:swissgpt:security"
              ]
            },
            {
              "id": "secrecy_documentation",
              "question": "Is the offering publicly documented (contract template, data-flow description, professional-body guidance)?",
              "support": "supported",
              "answer": "A public two-page contract template, printed 30 March 2026, sets scope, precedence, secrecy duties, staff/subcontractor flow-down, plaintext access, Swiss processing, API retention and signature blocks. Section 3 also promises annual assurance evidence covering secret-data processing at no extra cost and a customer audit right at customer expense. The security page explains the supplementary agreement. No executed customer contract was inspected.",
              "evidenceIds": [
                "swissgpt:swissgpt:secrecy",
                "swissgpt:swissgpt:security"
              ]
            }
          ],
          "limitations": [
            "The supplement is conditional on both signatures and processing Swiss legally secret data. Its Swiss Art. 320 ff. reference is not evidence of a German § 203 agreement or a legal suitability assessment for a particular profession.",
            "Plan eligibility, any supplement fee, executed customer agreements and the actual downstream staff/subcontractor agreements remain unverified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:secrecy",
            "swissgpt:swissgpt:security"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:DATA-09",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "General GDPR confidentiality and configurable admin/model access are documented; a specific §203 or Art321 undertaking is unverified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS Professional chat governance and separately quoted self-host licence; ordinary public DPA",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US/EU SaaS or customer self-host placement; customer provider contracts separate",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams 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": "DPA7.4(c) limits personnel access and requires confidentiality/statutory duties. No signed/signon §203 StGB or Art321 StGB professional-secrecy undertaking was retrieved; ordinary GDPR confidentiality is not treated as that agreement.",
              "evidenceIds": []
            },
            {
              "id": "subprocessor_coverage",
              "question": "Does the undertaking extend to its sub-processors, and is that documented?",
              "support": "unknown",
              "answer": "DPA7.8(d)-(e) requires substantially equivalent data-protection obligations and allows a redacted subprocessor agreement on request. A dedicated professional-secrecy undertaking flowing to subprocessors was not established.",
              "evidenceIds": []
            },
            {
              "id": "secrecy_offering",
              "question": "Is it a dedicated offering or add-on, and on which plan?",
              "support": "unknown",
              "answer": "No specific professional-secrecy package/add-on or SaaS/self-host plan entitlement was established. Customer-operated infrastructure and the commercial self-host licence do not by themselves prove that undertaking.",
              "evidenceIds": []
            },
            {
              "id": "content_access",
              "question": "Who can access content in plain text: vendor staff, sub-processors, model providers?",
              "support": "partial",
              "answer": "SaaS authorized personnel may access data only as needed under the DPA; customer admins with chat-log permission may inspect recorded prompts/answers when logging is enabled. Selected customer API providers process content; self-host placement changes operator access but model/embedding/blob routes remain relevant. A complete plaintext support/subprocessor/provider human-access matrix was not retrieved.",
              "evidenceIds": [
                "typingmind:typingmind:dpa-confidentiality",
                "typingmind:typingmind:view-and-export-user-chat-logs",
                "typingmind:typingmind:roles-and-permissions",
                "typingmind:typingmind:set-up-api-keys",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct"
              ]
            },
            {
              "id": "secrecy_documentation",
              "question": "Is the offering publicly documented (contract template, data-flow description, professional-body guidance)?",
              "support": "unknown",
              "answer": "Public DPA, security appendix, processor list and self-host data-flow guides were retrieved. Targeted first-party search did not establish a professional-secrecy contract template, DE/CH-specific data-flow addendum or professional-body guidance.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "DPA confidentiality, direct provider contracts and self-host placement alone do not establish professional-secrecy suitability.",
            "No legal suitability or compliance conclusion."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:dpa-confidentiality",
            "typingmind:typingmind:view-and-export-user-chat-logs",
            "typingmind:typingmind:roles-and-permissions",
            "typingmind:typingmind:set-up-api-keys",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Prices differ by sector and billing period; Enterprise is quoted from 10 licences.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "pricing_unit",
              "question": "What is the pricing unit?",
              "support": "supported",
              "answer": "Standard/Premium price per individual user licence. Enterprise package starts at 10 licences.",
              "evidenceIds": [
                "swissgpt:swissgpt:public-pricing",
                "swissgpt:swissgpt:health-pricing",
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "list_prices",
              "question": "What are list prices per plan, with date and currency?",
              "support": "partial",
              "answer": "As retrieved 2026-10-21: administration Standard/Premium CHF 79/89 per user/month with monthly billing, CHF 74/80 per month with annual billing. Healthcare CHF 89/99 monthly or CHF 80/90 per month annual. University page displays annual CHF 74/80; monthly amounts were not independently toggled. Tax inclusion is not stated clearly, so no ex-VAT conversion is asserted.",
              "evidenceIds": [
                "swissgpt:swissgpt:public-pricing",
                "swissgpt:swissgpt:health-pricing",
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "included_usage",
              "question": "What usage is included?",
              "support": "partial",
              "answer": "Standard has chat/search, uploads, Outlook and 2 assistants; Premium adds Listener, prebuilt assistants and 5 assistants, each listed at 50 documents / max. 100 MB. General inference/search token allowances are not published.",
              "evidenceIds": [
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "add_ons",
              "question": "Which features cost extra?",
              "support": "partial",
              "answer": "Premium adds Listener and preconfigured assistants; Enterprise covers custom integrations. AGB 2.3 permits charges for new major functionality; numeric integration/service fees are unspecified.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "overage",
              "question": "What do usage beyond limits and premium models cost?",
              "support": "unknown",
              "answer": "What do usage beyond limits and premium models cost? Unknown. Enterprise rates, VAT treatment, university monthly-toggle verification, model/search quotas, overage prices and integration charges are not established. Do not treat the annual default shown by text extraction as monthly billing.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Enterprise rates, VAT treatment, university monthly-toggle verification, model/search quotas, overage prices and integration charges are not established. Do not treat the annual default shown by text extraction as monthly billing."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:public-pricing",
            "swissgpt:swissgpt:health-pricing",
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-01",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams subscriptions, personal one-time licences and self-host annual quotes are separate cost structures.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost",
              "personal"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams SaaS Starter/Growth/Professional/quoted Business; separate annual Teams self-host quote; personal Standard/Extended/Premium one-time licences and separate bulk pack",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              },
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "pricing_unit",
              "question": "What is the pricing unit?",
              "support": "supported",
              "answer": "Teams SaaS uses recurring instance/seats billing; commercial Teams self-host is an annual quoted licence per instance. Personal one-time licences, including the separate shareable bulk pack, do not establish a Teams administration entitlement.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:cloud-host-vs-self-host",
                "typingmind:typingmind:r2-personal-bulk-licence"
              ]
            },
            {
              "id": "list_prices",
              "question": "What are list prices per plan, with date and currency?",
              "support": "supported",
              "answer": "As retrieved October 21, annual-selected landing cards display USD83/166/249 per month Starter/Growth/Professional (Professional crossed-out USD499). The documentation’s monthly table lists USD99/199/299 plus USD8/additional user/month. Business starts USD18,700/year by quote; conditional “as low as USD4/user/month” is not a universal rate.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:compare-typingmind-team-plans"
              ]
            },
            {
              "id": "included_usage",
              "question": "What usage is included?",
              "support": "supported",
              "answer": "All SaaS tiers include five users and unlimited configured models/agents/plugins/prompts, excluding provider API usage. One million KB training characters belongs to the Growth/Professional RAG guide, still labeled Early Access; no Starter KB allowance is inferred.",
              "evidenceIds": [
                "typingmind:typingmind:r2-plan-matrix",
                "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team"
              ]
            },
            {
              "id": "add_ons",
              "question": "Which features cost extra?",
              "support": "supported",
              "answer": "Additional seats, KB character capacity, model APIs and third-party plugin services are separate; self-host SLA/dedicated support is an add-on.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:deep-research"
              ]
            },
            {
              "id": "overage",
              "question": "What do usage beyond limits and premium models cost?",
              "support": "partial",
              "answer": "Model usage is billed by the customer’s chosen provider. No unified TypingMind premium-model tariff applies; extra KB capacity and Business/self-host scope require current checkout or quote.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:set-up-api-keys"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:cloud-host-vs-self-host",
            "typingmind:typingmind:r2-personal-bulk-licence",
            "typingmind:typingmind:compare-typingmind-team-plans",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:deep-research",
            "typingmind:typingmind:set-up-api-keys"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. The required 200, 1,000 and 5,000-seat annual scenarios cannot be priced from the public individual plans.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "cost_200",
              "question": "Year-one cost at 200 users?",
              "support": "unknown",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. Horizon 12 months, list prices excluding VAT, no invented discounts. Mix 60% light at 100 messages/user/month, 30% regular at 400, 10% power at 1,500. Where model usage is separately billed, each message has 3,000 input and 600 output tokens, giving 990k input plus 198k output per user/month. At 200/1,000/5,000 users this is 198m/990m/4.95bn input and 39.6m/198m/990m output per month. All three seat counts require an unpublished enterprise/custom price; no quote was requested. CHF and EUR ex-VAT totals, fixed charges, variable charges and add-ons remain unknown. FX dated 2026-10-20: EUR 1 = CHF 0.9237 and USD 1.1215; CHF to EUR divide by 0.9237, USD to EUR divide by 1.1215, source ECB. No numeric conversion or proxy model tariff is applied because there is no applicable public enterprise base/usage rate.",
              "evidenceIds": []
            },
            {
              "id": "cost_1000",
              "question": "Year-one cost at 1,000 users?",
              "support": "unknown",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. Horizon 12 months, list prices excluding VAT, no invented discounts. Mix 60% light at 100 messages/user/month, 30% regular at 400, 10% power at 1,500. Where model usage is separately billed, each message has 3,000 input and 600 output tokens, giving 990k input plus 198k output per user/month. At 200/1,000/5,000 users this is 198m/990m/4.95bn input and 39.6m/198m/990m output per month. All three seat counts require an unpublished enterprise/custom price; no quote was requested. CHF and EUR ex-VAT totals, fixed charges, variable charges and add-ons remain unknown. FX dated 2026-10-20: EUR 1 = CHF 0.9237 and USD 1.1215; CHF to EUR divide by 0.9237, USD to EUR divide by 1.1215, source ECB. No numeric conversion or proxy model tariff is applied because there is no applicable public enterprise base/usage rate.",
              "evidenceIds": []
            },
            {
              "id": "cost_5000",
              "question": "Year-one cost at 5,000 users?",
              "support": "unknown",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. Horizon 12 months, list prices excluding VAT, no invented discounts. Mix 60% light at 100 messages/user/month, 30% regular at 400, 10% power at 1,500. Where model usage is separately billed, each message has 3,000 input and 600 output tokens, giving 990k input plus 198k output per user/month. At 200/1,000/5,000 users this is 198m/990m/4.95bn input and 39.6m/198m/990m output per month. All three seat counts require an unpublished enterprise/custom price; no quote was requested. CHF and EUR ex-VAT totals, fixed charges, variable charges and add-ons remain unknown. FX dated 2026-10-20: EUR 1 = CHF 0.9237 and USD 1.1215; CHF to EUR divide by 0.9237, USD to EUR divide by 1.1215, source ECB. No numeric conversion or proxy model tariff is applied because there is no applicable public enterprise base/usage rate.",
              "evidenceIds": []
            },
            {
              "id": "variable_share",
              "question": "Which part depends on usage?",
              "support": "unknown",
              "answer": "ALM-14 shared cost assumptions v1.4, 2026-10-21. Horizon 12 months, list prices excluding VAT, no invented discounts. Mix 60% light at 100 messages/user/month, 30% regular at 400, 10% power at 1,500. Where model usage is separately billed, each message has 3,000 input and 600 output tokens, giving 990k input plus 198k output per user/month. At 200/1,000/5,000 users this is 198m/990m/4.95bn input and 39.6m/198m/990m output per month. All three seat counts require an unpublished enterprise/custom price; no quote was requested. CHF and EUR ex-VAT totals, fixed charges, variable charges and add-ons remain unknown. FX dated 2026-10-20: EUR 1 = CHF 0.9237 and USD 1.1215; CHF to EUR divide by 0.9237, USD to EUR divide by 1.1215, source ECB. No numeric conversion or proxy model tariff is applied because there is no applicable public enterprise base/usage rate.",
              "evidenceIds": []
            },
            {
              "id": "unknown_parts",
              "question": "Which costs could not be priced?",
              "support": "supported",
              "answer": "Enterprise applies from 10 licences and is quote-only; fixed package, usage, integrations, service charges and tax treatment remain unknown. No sales quote was requested.",
              "evidenceIds": [
                "swissgpt:swissgpt:university"
              ]
            }
          ],
          "limitations": [
            "ALM-14 shared cost assumptions v1.4, 2026-10-21. Horizon 12 months, list prices excluding VAT, no invented discounts. Mix 60% light at 100 messages/user/month, 30% regular at 400, 10% power at 1,500. Where model usage is separately billed, each message has 3,000 input and 600 output tokens, giving 990k input plus 198k output per user/month. At 200/1,000/5,000 users this is 198m/990m/4.95bn input and 39.6m/198m/990m output per month. All three seat counts require an unpublished enterprise/custom price; no quote was requested. CHF and EUR ex-VAT totals, fixed charges, variable charges and add-ons remain unknown. FX dated 2026-10-20: EUR 1 = CHF 0.9237 and USD 1.1215; CHF to EUR divide by 0.9237, USD to EUR divide by 1.1215, source ECB. No numeric conversion or proxy model tariff is applied because there is no applicable public enterprise base/usage rate."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:ecb-fx"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-02",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "A conditional Professional monthly licence-plus-BYOK floor is calculable; Business and self-host totals remain unknown.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Conditional documented Professional monthly list route; not a large-scale quote",
            "addOns": [
              "Model usage proxy; other add-ons unknown"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "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 ex VAT, 60% light100/30% regular400/10% power1500 messages per user/month, hence330; 3000 input+600 output tokens/message. Conditional undiscounted Teams Professional monthly route USD299 + USD8*(N−5) monthly, not the annual promotion or a Business quote. Direct-provider BYOK proxy gpt-6-luna, reasoning effort none, Standard short context USD0.10 input/USD0.50 output per million; no cache => USD2.376/user/year. ECB2026-10-20 EUR1=USD1.1215=CHF0.9237; USD/EUR divide1.1215, EUR/CHF multiply0.9237. For200 users: licence USD22,308 + model proxy USD475.20 = from USD22,783.20 / EUR20,314.94 / CHF18,764.91 + unknown components. Not a 200-seat quote.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans",
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:openai-price",
                "typingmind:typingmind:openai-model",
                "typingmind:typingmind:fx"
              ]
            },
            {
              "id": "cost_1000",
              "question": "Year-one cost at 1,000 users?",
              "support": "partial",
              "answer": "Same assumptions:1000 users licence USD99,108 + model USD2,376 = from USD101,484 / EUR90,489.52 / CHF83,585.17 + unknown components. Scale entitlement and negotiated Business alternative unverified.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans",
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:openai-price",
                "typingmind:typingmind:openai-model",
                "typingmind:typingmind:fx"
              ]
            },
            {
              "id": "cost_5000",
              "question": "Year-one cost at 5,000 users?",
              "support": "partial",
              "answer": "Same assumptions:5000 users licence USD483,108 + model USD11,880 = from USD494,988 / EUR441,362.46 / CHF407,686.51 + unknown components. Scale entitlement and Business alternative unverified.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans",
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:openai-price",
                "typingmind:typingmind:openai-model",
                "typingmind:typingmind:fx"
              ]
            },
            {
              "id": "variable_share",
              "question": "Which part depends on usage?",
              "support": "supported",
              "answer": "The disclosed model proxy contributes USD2.376/user/year. Actual provider model mix, tools, images, audio, embeddings, cached/context tokens and regional API uplifts change usage. This proxy is a comparison assumption, not a vendor default or invoice.",
              "evidenceIds": [
                "typingmind:typingmind:set-up-api-keys",
                "typingmind:typingmind:openai-price",
                "typingmind:typingmind:openai-model"
              ]
            },
            {
              "id": "unknown_parts",
              "question": "Which costs could not be priced?",
              "support": "supported",
              "answer": "Unknown: large-scale SaaS entitlement/Business quote, current checkout promotion terms, extra KB capacity, connectors/search/plugin bills, embeddings, support/implementation and optional regional processing uplift. Self-host annual commercial licence/support quote plus MySQL, optional PostgreSQL/blob/network infrastructure and operator effort are unpriced; no zero-licence OSS assumption applies.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:get-started-with-self-host-installation-instruct",
                "typingmind:typingmind:deep-research"
              ]
            }
          ],
          "limitations": [
            "Known price floor plus explicitly unpriced parts; no complete year-one TCO or negotiated price claim."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:compare-typingmind-team-plans",
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:openai-price",
            "typingmind:typingmind:openai-model",
            "typingmind:typingmind:fx",
            "typingmind:typingmind:set-up-api-keys",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:get-started-with-self-host-installation-instruct",
            "typingmind:typingmind:deep-research"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Sector pages offer online free tests; Enterprise evaluation scope is not published.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "free_tier",
              "question": "Is there a free tier for business use?",
              "support": "unknown",
              "answer": "Is there a free tier for business use? Unknown. A permanent business free tier, trial duration/card requirements, Enterprise SSO/admin/connector coverage and fixture access are not established.",
              "evidenceIds": []
            },
            {
              "id": "self_serve_trial",
              "question": "Is a self-serve business trial available?",
              "support": "partial",
              "answer": "Standard/Premium pages link free testing through Stripe and AGB 3.1 allows self-registration. Trial duration, card requirement and quotas were not verified.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "trial_scope",
              "question": "Do trials include SSO, connectors and admin features?",
              "support": "unknown",
              "answer": "Do trials include SSO, connectors and admin features? Unknown. A permanent business free tier, trial duration/card requirements, Enterprise SSO/admin/connector coverage and fixture access are not established.",
              "evidenceIds": []
            },
            {
              "id": "sales_gate",
              "question": "Does meaningful evaluation require sales contact?",
              "support": "partial",
              "answer": "Individual plans can be purchased by self-registration; the Enterprise integration offer routes to consultation. No account or sales contact was used.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:terms"
              ]
            }
          ],
          "limitations": [
            "A permanent business free tier, trial duration/card requirements, Enterprise SSO/admin/connector coverage and fixture access are not established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-03",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Teams SaaS has a self-serve trial; self-host evaluation is a separate sales-gated route.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "TypingMind Teams SaaS; Starter, Growth and Professional prerequisites stated per answer; Business quote not obtained",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": "multi-tenant-saas",
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "free_tier",
              "question": "Is there a free tier for business use?",
              "support": "partial",
              "answer": "The cloud offer advertises a time-limited trial rather than a documented permanent free business tier. Personal free-use rights do not supply Teams governance.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:typingmind-vs-typingmind-team"
              ]
            },
            {
              "id": "self_serve_trial",
              "question": "Is a self-serve business trial available?",
              "support": "supported",
              "answer": "The cloud-vs-self-host comparison offers a 14-day self-serve cloud trial with no upfront payment.",
              "evidenceIds": [
                "typingmind:typingmind:cloud-host-vs-self-host"
              ]
            },
            {
              "id": "trial_scope",
              "question": "Do trials include SSO, connectors and admin features?",
              "support": "partial",
              "answer": "The trial provides cloud evaluation; exact trial entitlements for SSO, SCIM, connectors and API quotas were not independently established.",
              "evidenceIds": [
                "typingmind:typingmind:cloud-host-vs-self-host"
              ]
            },
            {
              "id": "sales_gate",
              "question": "Does meaningful evaluation require sales contact?",
              "support": "supported",
              "answer": "Cloud starts self-serve; Business and annual self-host require a quote, and self-host has no free trial.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:cloud-host-vs-self-host"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:typingmind-vs-typingmind-team",
            "typingmind:typingmind:cloud-host-vs-self-host",
            "typingmind:typingmind:selfhost"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Small plans renew monthly or yearly; Enterprise starts at 10 licences with quoted terms.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "minimum_commitment",
              "question": "What seat or spend minimum applies?",
              "support": "supported",
              "answer": "Standard/Premium cover up to 9 individual licences; Enterprise starts at 10.",
              "evidenceIds": [
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "contract_length",
              "question": "What contract lengths are offered?",
              "support": "supported",
              "answer": "AGB 3.1 defaults to one calendar month or twelve months with renewal for the same term; an order may set other terms.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "cancellation",
              "question": "How can the contract be cancelled or reduced?",
              "support": "partial",
              "answer": "Either party may cancel for term end through the platform where available or support; prepaid fees are not refunded. Downgrade rules are not specified.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "local_invoicing",
              "question": "Can it be invoiced in CHF or EUR from a European entity?",
              "support": "partial",
              "answer": "Prices are displayed in CHF and AlpineAI AG is Swiss. Standard offers use credit card; invoices can be offered case by case with 14-day payment. EUR invoicing is unverified.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms",
                "swissgpt:swissgpt:public-pricing"
              ]
            },
            {
              "id": "transparency_class",
              "question": "Is pricing transparent, partial, quote-only or unknown?",
              "support": "supported",
              "answer": "Partially specified individual-sector prices; quote-only Enterprise from 10 licences. Public prices do not establish tax or all usage/service charges.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:public-pricing",
                "swissgpt:swissgpt:health-pricing"
              ]
            }
          ],
          "limitations": [
            "Seat-reduction/downgrade timing, future price-change rules, EUR invoicing and complete Enterprise commitments are not specified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:public-pricing",
            "swissgpt:swissgpt:health-pricing"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-04",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Cloud supports monthly/annual subscriptions; self-host is annual and commercial.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Starter/Growth/Professional monthly or annual SaaS; quoted Business and separate annual commercial Teams self-host",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "minimum_commitment",
              "question": "What seat or spend minimum applies?",
              "support": "supported",
              "answer": "Cloud plan cards and self-host licence include five users. Business advertises a USD18,700/year starting quote; no all-scenario minimum was established.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "contract_length",
              "question": "What contract lengths are offered?",
              "support": "supported",
              "answer": "Cloud-host vs Self-host explicitly describes monthly SaaS and annual quoted self-host subscriptions; the current SaaS landing also offers annual billing. Teams Terms specify renewal of the agreed term.",
              "evidenceIds": [
                "typingmind:typingmind:cloud-host-vs-self-host",
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:terms-of-service"
              ]
            },
            {
              "id": "cancellation",
              "question": "How can the contract be cancelled or reduced?",
              "support": "partial",
              "answer": "Cloud billing settings manage subscriptions; Terms make fixed-term Teams/self-host fees generally nonrefundable. Exact mid-term seat-reduction proration and notice deadline were not established.",
              "evidenceIds": [
                "typingmind:typingmind:manage-your-subscription",
                "typingmind:typingmind:terms-of-service"
              ]
            },
            {
              "id": "local_invoicing",
              "question": "Can it be invoiced in CHF or EUR from a European entity?",
              "support": "unknown",
              "answer": "Can it be invoiced in CHF or EUR from a European entity? CHF/EUR invoicing from a European entity, tax handling and bespoke contract negotiation were not established.",
              "evidenceIds": []
            },
            {
              "id": "transparency_class",
              "question": "Is pricing transparent, partial, quote-only or unknown?",
              "support": "supported",
              "answer": "Partial: public small-plan SaaS seat pricing with separate API bills, quote-only Business and self-host, and unpriced optional support/knowledge services.",
              "evidenceIds": [
                "typingmind:typingmind:pricing",
                "typingmind:typingmind:selfhost"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:cloud-host-vs-self-host",
            "typingmind:typingmind:terms-of-service",
            "typingmind:typingmind:manage-your-subscription"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Terms grant a contractual right to use a proprietary platform.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "licence_type",
              "question": "Which licence applies to each component?",
              "support": "supported",
              "answer": "AGB 4.1-4.3 grants non-exclusive, non-transferable access during the contract and reserves platform software, algorithms, documentation and branding rights to AlpineAI. Open-model use is separate.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "branding_restrictions",
              "question": "Do licence terms restrict branding or user counts?",
              "support": "unknown",
              "answer": "Do licence terms restrict branding or user counts? Unknown. Component licences, branding or user-count restrictions beyond purchased licences, and a separate enterprise source edition are not published. No public implementation repository was identified.",
              "evidenceIds": []
            },
            {
              "id": "enterprise_features_closed",
              "question": "Are enterprise features in a separate closed edition?",
              "support": "unknown",
              "answer": "Are enterprise features in a separate closed edition? Unknown. Component licences, branding or user-count restrictions beyond purchased licences, and a separate enterprise source edition are not published. No public implementation repository was identified.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Component licences, branding or user-count restrictions beyond purchased licences, and a separate enterprise source edition are not published. No public implementation repository was identified."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:terms"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-05",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "TypingMind is commercial proprietary software; self-host access is not an open-source licence.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "personal",
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Commercial personal licence, separate bulk pack, Teams SaaS Starter/Growth/Professional and separate commercial Teams self-host licence; personal user/device allowance unverified",
            "addOns": [
              "Customer-paid model APIs; optional knowledge-base capacity and third-party plugin services"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              },
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "licence_type",
              "question": "Which licence applies to each component?",
              "support": "supported",
              "answer": "The personal app and Teams operate under commercial Terms/EULA. Self-host provides compiled/minified code in a private repository with no analysis, modification, resale, sharing or redistribution rights; white-box review is by arrangement.",
              "evidenceIds": [
                "typingmind:typingmind:end-user-license-agreement",
                "typingmind:typingmind:terms-of-service",
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "branding_restrictions",
              "question": "Do licence terms restrict branding or user counts?",
              "support": "partial",
              "answer": "Teams SaaS provides custom branding; the separate commercial Teams self-host licence includes one instance with five seats. Personal user/device allowance remains unknown because the generic five-device-or-user comparison conflicts with the one-user Terms. The separate bulk pack does not establish the default personal allowance.",
              "evidenceIds": [
                "typingmind:typingmind:custom-branding",
                "typingmind:typingmind:r2-plan-matrix",
                "typingmind:typingmind:selfhost",
                "typingmind:typingmind:terms-of-service",
                "typingmind:typingmind:r2-personal-bulk-licence"
              ]
            },
            {
              "id": "enterprise_features_closed",
              "question": "Are enterprise features in a separate closed edition?",
              "support": "supported",
              "answer": "Teams administration is part of the commercial service; SSO/SCIM, analytics, roles, logs and API are in Professional rather than an open-source core edition.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans"
              ]
            }
          ],
          "limitations": [
            "The personal user/device allowance is unknown. No five-user or one-user allowance is published as a reconciled finding; Teams and annual self-host seat rights remain separate."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:end-user-license-agreement",
            "typingmind:typingmind:terms-of-service",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:custom-branding",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:r2-personal-bulk-licence",
            "typingmind:typingmind:compare-typingmind-team-plans"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-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": []
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-06",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Recorded Teams chats have a JSON API export; generic app exports do not prove full organizational portability.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-api",
              "teams-saas",
              "personal"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Professional recorded-chat API/export; separate personal app JSON backups (feature licence gate not mapped)",
            "addOns": [
              "Professional chat recording enabled before export; authorized API key"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-api",
                "name": "TypingMind Teams REST API",
                "type": "api"
              },
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "personal",
                "name": "TypingMind personal browser app and PWA",
                "type": "web-app"
              }
            ]
          },
          "questions": [
            {
              "id": "chat_export",
              "question": "Can admins export all chats?",
              "support": "partial",
              "answer": "Professional includes chat logs/data export and API integration. Authorized admins export recorded conversation JSON via the API, last100 matching conversations/request plus date filters; complete tenant history and pagination were not tested.",
              "evidenceIds": [
                "typingmind:typingmind:export-chat-logs",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "assistant_export",
              "question": "Can assistants and prompts be exported in a reusable format?",
              "support": "partial",
              "answer": "The personal-app backup guide exports user agents, prompts/plugins/model settings as JSON. That is not evidence of bulk centrally managed Teams asset export; its personal feature gate is not mapped here.",
              "evidenceIds": [
                "typingmind:typingmind:export-import-data"
              ]
            },
            {
              "id": "knowledge_export",
              "question": "Can knowledge bases and their sources be exported?",
              "support": "unknown",
              "answer": "Can knowledge bases and their sources be exported? A bulk reusable organization KB/source export and complete centrally managed agent/prompt export were not established.",
              "evidenceIds": []
            },
            {
              "id": "export_format",
              "question": "Are formats documented and machine-readable?",
              "support": "supported",
              "answer": "Professional recorded-chat API responses are JSON; the separate personal backup/import also uses JSON. Formats do not establish complete organization portability.",
              "evidenceIds": [
                "typingmind:typingmind:export-chat-logs",
                "typingmind:typingmind:export-import-data",
                "typingmind:typingmind:r2-plan-matrix"
              ]
            },
            {
              "id": "post_termination_window",
              "question": "How long can data be retrieved after termination?",
              "support": "partial",
              "answer": "The DPA allows deletion/return at termination but does not publish a fixed retrieval grace period. Terms allow content deletion after termination.",
              "evidenceIds": [
                "typingmind:typingmind:data-processing-agreement",
                "typingmind:typingmind:terms-of-service"
              ]
            }
          ],
          "limitations": [
            "Documented findings only; unestablished atomic questions remain explicit gaps."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:export-chat-logs",
            "typingmind:typingmind:r2-plan-matrix",
            "typingmind:typingmind:export-import-data",
            "typingmind:typingmind:data-processing-agreement",
            "typingmind:typingmind:terms-of-service"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Support uses a service portal and email fallback; terms promise 99% availability.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "support_channels",
              "question": "Which support channels are available on each plan?",
              "support": "supported",
              "answer": "Service Desk/email is listed in sector plans. AGB 9.2 requires support-portal tickets, with email when the portal is technically unreachable.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "support_languages",
              "question": "Is support available in German, French or Italian?",
              "support": "unknown",
              "answer": "Is support available in German, French or Italian? Unknown. DE/FR/IT support guarantees, support hours, response times, SLA credits and an official public status/incident history were not located.",
              "evidenceIds": []
            },
            {
              "id": "regional_presence",
              "question": "Is there a DACH or Swiss entity, team or partner?",
              "support": "supported",
              "answer": "AlpineAI AG lists a Davos, Switzerland address.",
              "evidenceIds": [
                "swissgpt:swissgpt:imprint"
              ]
            },
            {
              "id": "uptime_sla",
              "question": "Is there an uptime SLA with credits?",
              "support": "partial",
              "answer": "AGB 9.1 promises 99% availability during the licence term with planned/urgent maintenance exceptions. No credit schedule or response-time commitment was located.",
              "evidenceIds": [
                "swissgpt:swissgpt:terms"
              ]
            },
            {
              "id": "status_page",
              "question": "Is there a public status page with history?",
              "support": "unknown",
              "answer": "Is there a public status page with history? Unknown. DE/FR/IT support guarantees, support hours, response times, SLA credits and an official public status/incident history were not located.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "DE/FR/IT support guarantees, support hours, response times, SLA credits and an official public status/incident history were not located."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:terms",
            "swissgpt:swissgpt:imprint"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-07",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Email support is documented; self-host SLA is optional and public incident data was inaccessible.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Starter/Growth/Professional public email support/material; separate quoted annual Teams self-host Enterprise Support add-on",
            "addOns": [
              "Commercial Teams self-host Enterprise Support (SLA/SLO/dedicated queue), separately quoted"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "support_channels",
              "question": "Which support channels are available on each plan?",
              "support": "supported",
              "answer": "Cloud plan comparison lists email support. Self-host dedicated support/SLA is a separate option; exact Business response targets were not established.",
              "evidenceIds": [
                "typingmind:typingmind:compare-typingmind-team-plans",
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "support_languages",
              "question": "Is support available in German, French or Italian?",
              "support": "unknown",
              "answer": "Is support available in German, French or Italian? No German/French/Italian support commitment, DACH/Swiss support entity or public credit-bearing SLA terms were retrieved.",
              "evidenceIds": []
            },
            {
              "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? No German/French/Italian support commitment, DACH/Swiss support entity or public credit-bearing SLA terms were retrieved.",
              "evidenceIds": []
            },
            {
              "id": "uptime_sla",
              "question": "Is there an uptime SLA with credits?",
              "support": "partial",
              "answer": "Self-host marketing offers a paid SLA/SLO/dedicated-support add-on; a public uptime percentage, credit schedule or standard SaaS SLA was not retrieved.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost"
              ]
            },
            {
              "id": "status_page",
              "question": "Is there a public status page with history?",
              "support": "partial",
              "answer": "A public status site loads but returned an error fetching status data in this pass, so history and measured availability are unknown.",
              "evidenceIds": [
                "typingmind:typingmind:status"
              ]
            }
          ],
          "limitations": [
            "Self-host support package is distinct from SaaS support/onboarding; no public numerical uptime/credit or adoption-service tariff established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:compare-typingmind-team-plans",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:status",
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:cloud-host-vs-self-host"
          ]
        }
      ]
    },
    {
      "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": "swissgpt",
          "claimId": "swissgpt:VEN-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Sector offers describe guided rollout, workshops and a six-lesson e-learning course.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "web"
            ],
            "version": null,
            "plan": "Standard and Premium, up to 9 licences; Enterprise from 10 licences. Current healthcare, public-administration and university offer.",
            "addOns": [],
            "deploymentMode": null,
            "region": "Switzerland infrastructure; contract permits CH/EEA and conditional third-country processing; optional external web search",
            "os": [],
            "surfaces": [
              {
                "id": "web",
                "name": "AlpineAI platform browser client",
                "type": "web"
              }
            ]
          },
          "questions": [
            {
              "id": "onboarding_service",
              "question": "Is guided onboarding included?",
              "support": "partial",
              "answer": "University and healthcare pages offer implementation help and onsite team training; inclusion in licence price is not stated.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:health-pricing"
              ]
            },
            {
              "id": "user_training",
              "question": "Is end-user training offered, in which languages?",
              "support": "partial",
              "answer": "Six e-learning lessons and prompting/use-case workshops are offered; delivery languages are not specified.",
              "evidenceIds": [
                "swissgpt:swissgpt:product",
                "swissgpt:swissgpt:university"
              ]
            },
            {
              "id": "use_case_library",
              "question": "Are role-based use cases and templates provided?",
              "support": "supported",
              "answer": "Sector pages describe university, authority and healthcare use cases; Premium adds preconfigured assistants.",
              "evidenceIds": [
                "swissgpt:swissgpt:university",
                "swissgpt:swissgpt:product"
              ]
            },
            {
              "id": "adoption_programme",
              "question": "Is there a champion or adoption programme?",
              "support": "unknown",
              "answer": "Is there a champion or adoption programme? Unknown. Champion programmes, training languages, mandatory onboarding scope and separate professional-service charges are not published.",
              "evidenceIds": []
            },
            {
              "id": "service_cost",
              "question": "Which services cost extra?",
              "support": "unknown",
              "answer": "Which services cost extra? Unknown. Champion programmes, training languages, mandatory onboarding scope and separate professional-service charges are not published.",
              "evidenceIds": []
            }
          ],
          "limitations": [
            "Champion programmes, training languages, mandatory onboarding scope and separate professional-service charges are not published."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "swissgpt:swissgpt:university",
            "swissgpt:swissgpt:health-pricing",
            "swissgpt:swissgpt:product"
          ]
        },
        {
          "productId": "typingmind",
          "claimId": "typingmind:VEN-08",
          "verificationStatus": "agent-cross-checked",
          "support": "partial",
          "answer": "Public setup guides and role examples exist; managed adoption services are not fully specified.",
          "availability": "generally-available",
          "delivery": "native",
          "scope": {
            "surfaceIds": [
              "teams-saas",
              "teams-selfhost"
            ],
            "version": "Public documentation and changelog retrieved 2026-10-21; no deployed tenant observed",
            "plan": "Teams Starter/Growth/Professional public email support/material; separate quoted annual Teams self-host Enterprise Support add-on",
            "addOns": [
              "Commercial Teams self-host Enterprise Support (SLA/SLO/dedicated queue), separately quoted"
            ],
            "deploymentMode": null,
            "region": "US or opt-in EU SaaS storage; inference and tools depend on customer-selected providers",
            "os": [],
            "surfaces": [
              {
                "id": "teams-saas",
                "name": "TypingMind Teams SaaS chat and Admin Panel",
                "type": "web-app"
              },
              {
                "id": "teams-selfhost",
                "name": "Commercial self-hosted TypingMind Teams server",
                "type": "self-hosted-server"
              }
            ]
          },
          "questions": [
            {
              "id": "onboarding_service",
              "question": "Is guided onboarding included?",
              "support": "unknown",
              "answer": "Is guided onboarding included? No included guided-onboarding scope, multilingual training commitment or champion/adoption programme was established.",
              "evidenceIds": []
            },
            {
              "id": "user_training",
              "question": "Is end-user training offered, in which languages?",
              "support": "partial",
              "answer": "Public documentation teaches setup, use, agents and workflows. A contracted live user-training service and languages were not established.",
              "evidenceIds": [
                "typingmind:typingmind:typingmind-vs-typingmind-team",
                "typingmind:typingmind:overview"
              ]
            },
            {
              "id": "use_case_library",
              "question": "Are role-based use cases and templates provided?",
              "support": "supported",
              "answer": "The documentation provides marketing ad creation, meeting-summary and business automation examples and role/permission examples.",
              "evidenceIds": [
                "typingmind:typingmind:ad-creative-generator",
                "typingmind:typingmind:meeting-summarizer",
                "typingmind:typingmind:overview",
                "typingmind:typingmind:roles-and-permissions"
              ]
            },
            {
              "id": "adoption_programme",
              "question": "Is there a champion or adoption programme?",
              "support": "unknown",
              "answer": "Is there a champion or adoption programme? No included guided-onboarding scope, multilingual training commitment or champion/adoption programme was established.",
              "evidenceIds": []
            },
            {
              "id": "service_cost",
              "question": "Which services cost extra?",
              "support": "partial",
              "answer": "Self-host dedicated support/SLA is an optional extra; onboarding/training/adoption-program prices were not established.",
              "evidenceIds": [
                "typingmind:typingmind:selfhost"
              ]
            }
          ],
          "limitations": [
            "Self-host support package is distinct from SaaS support/onboarding; no public numerical uptime/credit or adoption-service tariff established."
          ],
          "checkedAt": "2026-10-21",
          "crossCheckedAt": "2026-10-21",
          "nextCheckAt": "2026-12-20",
          "evidenceIds": [
            "typingmind:typingmind:typingmind-vs-typingmind-team",
            "typingmind:typingmind:overview",
            "typingmind:typingmind:ad-creative-generator",
            "typingmind:typingmind:meeting-summarizer",
            "typingmind:typingmind:roles-and-permissions",
            "typingmind:typingmind:selfhost",
            "typingmind:typingmind:pricing",
            "typingmind:typingmind:cloud-host-vs-self-host"
          ]
        }
      ]
    }
  ],
  "sources": [
    {
      "id": "swissgpt:swissgpt:product",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/produkt/",
      "title": "AlpineAI product and FAQ",
      "locator": "Chat; Assistants; Listener; FAQs on models, Outlook, licences",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Describes browser and mobile access, Mistral Large 3 on AlpineAI hardware, document assistants, Outlook, Listener and Enterprise integrations."
    },
    {
      "id": "typingmind:typingmind:set-up-api-keys",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/getting-started/set-up-api-keys.md",
      "title": "Set up API Keys",
      "locator": "Set up API Keys",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams admins preset customer provider keys; end users cannot enter their own key in the chat interface."
    },
    {
      "id": "typingmind:typingmind:manage-ai-models",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/manage-and-connect-ai-models/manage-ai-models.md",
      "title": "Manage AI Models",
      "locator": "Manage AI Models",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The app has a per-chat model selector and configurable model endpoints; provider examples are not a complete current catalogue."
    },
    {
      "id": "typingmind:typingmind:release",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://feedback.typingmind.com/changelog/",
      "title": "TypingMind changelog",
      "locator": "2026-10-14 Memory for Teams and new models; 2026-10-13 Toolbox; 2026-10-02 image editing",
      "sourceDate": "2026-10-14",
      "retrievedAt": "2026-10-21",
      "finding": "Dated releases include Teams memory administration, new models, browser-local code and office outputs, and GPT Image editing."
    },
    {
      "id": "typingmind:typingmind:restrict-model-access",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/restrict-model-access.md",
      "title": "Restrict Model access",
      "locator": "Restrict Model access",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams admins restrict available models by user group."
    },
    {
      "id": "typingmind:typingmind:chat-with-documents",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/upload-and-chat-with-files/chat-with-documents.md",
      "title": "Chat with documents",
      "locator": "Chat with documents",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Uploads accept PDF, Markdown, CSV, XLSX, TXT, DOCX, JSON and HTML, with document text added as chat context."
    },
    {
      "id": "typingmind:typingmind:voice",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/voice-input",
      "title": "Voice input",
      "locator": "Transcription models and Teams configuration",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Browser speech recognition or customer OpenAI, Groq and Azure transcription keys enable dictation; uploaded Whisper recordings have a 25MB limit."
    },
    {
      "id": "typingmind:typingmind:azure-openai",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/manage-and-connect-ai-models/azure-openai.md",
      "title": "Azure OpenAI",
      "locator": "Azure OpenAI",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A customer Azure OpenAI endpoint and deployment can be configured."
    },
    {
      "id": "typingmind:typingmind:pricing",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://custom.typingmind.com/pricing",
      "title": "TypingMind Teams pricing",
      "locator": "Annual selector, plan cards, Add-ons and Business card",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Annual selected prices display USD83/166/249 per month for Starter/Growth/Professional, five users, USD8 extra seats; Business starts USD18,700/year."
    },
    {
      "id": "typingmind:typingmind:get-started-with-self-host-installation-instruct",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/self-host-guides/get-started-with-self-host-installation-instruct.md",
      "title": "Self-host installation instructions",
      "locator": "Self-host installation instructions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A NodeJS service needs MySQL 8, optional PostgreSQL 16 pgvector KB, OpenAI embeddings and S3-compatible blobs; private endpoints are blocked by default."
    },
    {
      "id": "typingmind:typingmind:toolbox",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/plugins/toolbox",
      "title": "Toolbox",
      "locator": "Local execution, network control and file capabilities",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A free built-in plugin executes Python and JavaScript locally in the browser with network disabled by default and creates Office/PDF files and charts."
    },
    {
      "id": "typingmind:typingmind:r2-teams-custom-models",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/getting-started/set-up-api-keys.md",
      "title": "Teams API Keys Setup",
      "locator": "Use with other models; Add Custom Model in Admin Panel",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams-specific instructions name Azure OpenAI, Hugging Face and Ollama custom-model setup in the Admin Panel; this is distinct from personal local-server guides."
    },
    {
      "id": "typingmind:typingmind:r2-plan-matrix",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/getting-started/compare-typingmind-team-plans.md",
      "title": "Compare Teams Plans",
      "locator": "Full Feature Comparison",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "All SaaS tiers list custom models and shared resources; Growth adds RAG/projects; Professional adds roles, restrictions, logs and external API integration."
    },
    {
      "id": "typingmind:typingmind:r3-custom-admin-bedrock",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/manage-and-connect-ai-models/aws-bedrock-anthropic",
      "title": "AWS Bedrock Anthropic",
      "locator": "Custom Admin restriction and steps 2-4, including custom.typingmind.com/manage",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Custom Admin route configures Claude via Bedrock with customer AWS access/secret keys, region and approved model access; current model and commercial tier coverage are not enumerated."
    },
    {
      "id": "typingmind:typingmind:ollama",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/manage-and-connect-ai-models/ollama.md",
      "title": "Ollama",
      "locator": "Ollama",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A customer Ollama model endpoint can be added; network accessibility must be configured."
    },
    {
      "id": "typingmind:typingmind:lmstudio",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/manage-and-connect-ai-models/lmstudio.md",
      "title": "LM Studio",
      "locator": "LM Studio",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Customer local LM Studio can supply an OpenAI-compatible model endpoint."
    },
    {
      "id": "typingmind:typingmind:cloud-host-vs-self-host",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/getting-started/cloud-host-vs-self-host.md",
      "title": "Cloud host vs self host",
      "locator": "Cloud host vs self host",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SaaS has a self-serve 14-day trial; self-host has no free trial and carries a quoted annual licence and update/support conditions."
    },
    {
      "id": "typingmind:typingmind:usage-limits",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/usage-limits.md",
      "title": "Usage limits",
      "locator": "Usage limits",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Reusable limit groups cover messages, characters and tokens by period, applicable globally or to users, groups, models, agents and plugins."
    },
    {
      "id": "typingmind:typingmind:connect-knowledge-base-to-your-ai-agents",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/connect-knowledge-base-to-your-ai-agents.md",
      "title": "Connect Knowledge Base to your AI Agents",
      "locator": "Connect Knowledge Base to your AI Agents",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Tagged knowledge is assigned to agents through Knowledge Base Access."
    },
    {
      "id": "typingmind:typingmind:roles-and-permissions",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/roles-and-permissions.md",
      "title": "Roles and Permissions",
      "locator": "Roles and Permissions",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Owners delegate granular Admin Panel permissions through custom roles; group-role assignment is described as coming soon."
    },
    {
      "id": "swissgpt:swissgpt:university",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/en/universities/",
      "title": "AlpineAI universities",
      "locator": "Prices; Integration & Licenses; Features & Languages",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Lists licence limits and Enterprise threshold, university integration process and onboarding."
    },
    {
      "id": "typingmind:typingmind:how-knowledge-base-works-in-typingmind-team",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/how-knowledge-base-works-in-typingmind-team.md",
      "title": "How Knowledge Base works in TypingMind Team",
      "locator": "Early Access; indexing; limits and refresh",
      "sourceDate": "2025-11-10",
      "retrievedAt": "2026-10-21",
      "finding": "The early-access KB uses RAG, about 3,000-word chunks and up to five retrieved chunks, 50MB uploads and daily source refresh."
    },
    {
      "id": "typingmind:typingmind:training-files-vs-knowledge-base",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/training-files-vs-knowledge-base.md",
      "title": "Training Files vs Knowledge Base",
      "locator": "Training Files vs Knowledge Base",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agent training-file text is injected into system context; the separate KB retrieves chunks and advertises multiple source integrations."
    },
    {
      "id": "typingmind:typingmind:get-started-with-knowledge-base",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/get-started-with-knowledge-base.md",
      "title": "Get started with Knowledge Base",
      "locator": "Get started with Knowledge Base",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins add documents or connected sources, tag data, bind tags to agents and optionally show clickable references."
    },
    {
      "id": "typingmind:typingmind:restrict-ai-agents-access",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/restrict-ai-agents-access.md",
      "title": "Restrict AI Agents access",
      "locator": "Restrict AI Agents access",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Agent access and usage can be limited for groups."
    },
    {
      "id": "swissgpt:swissgpt:product-20261026",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/produkt/",
      "title": "AlpineAI product and FAQ",
      "locator": "Chat; Assistants; Listener; FAQs on models, Outlook, licences",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Describes browser and mobile access, Mistral Large 3 on AlpineAI hardware, document assistants, Outlook, Listener and Enterprise integrations."
    },
    {
      "id": "swissgpt:swissgpt:security-20261026",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/sicherheit/",
      "title": "AlpineAI security and compliance",
      "locator": "Infrastructure; isolation; encryption; security FAQ",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Separates RIZ application hosting from Green and RZO inference and describes encryption, access restrictions and external-search opt-in."
    },
    {
      "id": "swissgpt:swissgpt:public-pricing-20261026",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/behoerden/",
      "title": "AlpineAI authorities and institutions",
      "locator": "Prices; pricing-toggle applyMode(monthly/yearly) and billing labels in delivered HTML",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Monthly billing is CHF 79 Standard or CHF 89 Premium per user; annual billing displays CHF 74 or CHF 80 per month; Enterprise is quoted from 10 licences."
    },
    {
      "id": "swissgpt:swissgpt:health-pricing-20261026",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/gesundheitswesen/",
      "title": "AlpineAI healthcare",
      "locator": "Prices; pricing-toggle applyMode(monthly/yearly) and billing labels in delivered HTML",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "Healthcare monthly billing is CHF 89 Standard or CHF 99 Premium per user; annual billing displays CHF 80 or CHF 90 per month."
    },
    {
      "id": "typingmind:typingmind:connect-with-your-notion-pages",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/connect-with-your-notion-pages.md",
      "title": "Connect with Notion pages",
      "locator": "Connect with Notion pages",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins select Notion pages/databases for an instance, with initial sync taking a few minutes."
    },
    {
      "id": "typingmind:typingmind:setup-external-connectors-for-knowledge-base",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/self-host-guides/setup-external-connectors-for-knowledge-base.md",
      "title": "Self-host external knowledge connectors",
      "locator": "Self-host external knowledge connectors",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Optional self-host KB external connectors need separate OAuth configuration and Firecrawl for web scraping."
    },
    {
      "id": "typingmind:typingmind:overview",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/llm-automated-workflows/overview.md",
      "title": "LLM Automated Workflows overview",
      "locator": "LLM Automated Workflows overview",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "JavaScript, HTTP and MCP plugins can perform multi-step business actions; example flows are not evidence of a scheduler."
    },
    {
      "id": "typingmind:typingmind:mcp",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/model-context-protocol-(mcp)-in-typingmind",
      "title": "MCP in TypingMind",
      "locator": "Remote and local connectors; Teams sessions; tool control",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The client connects remote HTTP or local-command MCP servers, supports OAuth and individual tool controls, and separates Teams sessions per user/chat."
    },
    {
      "id": "typingmind:typingmind:eu-data-center",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/account-management/eu-data-center.md",
      "title": "EU data center",
      "locator": "EU data center",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "EU instances use Vercel and AWS EU storage but model API calls may leave the EU."
    },
    {
      "id": "typingmind:typingmind:system-prompts-on-admin-panel",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/system-prompts-on-admin-panel.md",
      "title": "System Prompts on Admin Panel",
      "locator": "System Prompts on Admin Panel",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Global system instructions, few-shot examples and post-message reminders apply across chats and agents."
    },
    {
      "id": "typingmind:typingmind:memory",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/memory.md",
      "title": "Memory",
      "locator": "Memory",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Users can enable memory globally or for an agent/project and inspect saved memories."
    },
    {
      "id": "typingmind:typingmind:build-a-shared-ai-agent-collection",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/build-a-shared-ai-agent-collection.md",
      "title": "Build a Shared AI Agent collection",
      "locator": "Build a Shared AI Agent collection",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins create an agent collection exposed in the team chat interface and control group access."
    },
    {
      "id": "typingmind:typingmind:build-a-shared-prompt-library",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/build-a-shared-prompt-library.md",
      "title": "Build a Shared Prompt Library",
      "locator": "Build a Shared Prompt Library",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Admins can publish reusable prompts to the team interface."
    },
    {
      "id": "typingmind:typingmind:restrict-plugin-access",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/restrict-plugin-access.md",
      "title": "Restrict Plugin access",
      "locator": "Restrict Plugin access",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Plugins can be made available or unavailable to specified user groups."
    },
    {
      "id": "typingmind:typingmind:deep-research",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/plugins/deep-research",
      "title": "Deep Research plugin",
      "locator": "Requirements and operation",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A multi-step search/read/report plugin requires customer SerpAPI and Firecrawl keys and has a two-minute execution limit."
    },
    {
      "id": "typingmind:typingmind:image",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/plugins/gpt-image-2-5",
      "title": "GPT Image 2.5 plugin",
      "locator": "Image generation, editing and API key",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The plugin generates and edits images using the customer OpenAI API route."
    },
    {
      "id": "swissgpt:swissgpt:terms",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/agb/",
      "title": "AlpineAI general terms",
      "locator": "Sections 2.1-2.5, 3, 4, 7.5, 9 and 11",
      "sourceDate": "2026-05-25",
      "retrievedAt": "2026-10-21",
      "finding": "Defines cloud licensing, no-training promise, web-search consent and quotas, subscription cancellation, 99 percent availability and Swiss law."
    },
    {
      "id": "swissgpt:swissgpt:dpa",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/wp-content/uploads/2026/07/AlpineAI-AVV_zu_GTC_2026-07-10.pdf",
      "title": "AlpineAI data processing agreement",
      "locator": "Pages 1-4 sections 1.5, 2.4, 7, 9 and 11; pages 6-7 Annexes 2-3",
      "sourceDate": "2026-07-10",
      "retrievedAt": "2026-10-21",
      "finding": "Sets CH/EEA processing with a third-country exception, anonymised-data use, deletion and backup exception, safeguards and a dated subprocessor list."
    },
    {
      "id": "typingmind:typingmind:api-integration-overview",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/integrations/api-integration-overview.md",
      "title": "API integration overview",
      "locator": "API integration overview",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "REST chat/agent API uses API-key-associated api-users subject to user restrictions and usage limits."
    },
    {
      "id": "swissgpt:swissgpt:review2-product",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/produkt/",
      "title": "AlpineAI product and FAQ",
      "locator": "Integrations; Assistants & Agents; Operations & Licences",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The product page assigns Standard/Premium to assistants, not autonomous agents; it explicitly assigns custom integrations to Enterprise."
    },
    {
      "id": "swissgpt:swissgpt:review2-api-access",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://platform.prod.alpineai.ch/",
      "title": "AlpineAI API platform",
      "locator": "Authentication landing page; limited access notice",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Public API portal redirects to authentication and states that access is limited with gradual account activation; no authenticated endpoint/entitlement documentation was accessed."
    },
    {
      "id": "typingmind:typingmind:typingmind-vs-typingmind-team",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/quickstart/typingmind-vs-typingmind-team.md",
      "title": "TypingMind vs TypingMind Team",
      "locator": "TypingMind vs TypingMind Team",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The personal app and Teams with an Admin Panel, managed users and centrally preset keys are separate offerings."
    },
    {
      "id": "typingmind:typingmind:install",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/install-typingmind-app",
      "title": "Install TypingMind app",
      "locator": "PWA installation on Windows, Mac, iOS and Android",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Installation uses browser PWA technology; browser storage remains separate and this does not establish native app-store clients."
    },
    {
      "id": "typingmind:typingmind:r2-personal-bulk-licence",
      "productId": "typingmind",
      "kind": "vendor-claimed",
      "url": "https://checkout.typingmind.com/buy",
      "title": "TypingMind personal licence checkout",
      "locator": "How many devices/users? and Team/Bulk License FAQ; self-host FAQ",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Personal licences normally cover five devices for one user; a separate shareable Bulk License is offered, without establishing a Teams Admin Panel entitlement."
    },
    {
      "id": "typingmind:typingmind:ad-creative-generator",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/llm-automated-workflows/ad-creative-generator.md",
      "title": "Ad creative generator workflow",
      "locator": "Ad creative generator workflow",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Public examples include marketing automation built with AI and plugins."
    },
    {
      "id": "typingmind:typingmind:terms-of-service",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/security-and-compliance/terms-of-service.md",
      "title": "Terms of Service",
      "locator": "Sections 1, 4-6, 13 and 16",
      "sourceDate": "2026-09-17",
      "retrievedAt": "2026-10-21",
      "finding": "Typing Technology Co Ltd contracts under Singapore law and business SIAC arbitration; Teams renews and self-host code has restricted licence rights."
    },
    {
      "id": "typingmind:typingmind:tts",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/use-text-to-speech",
      "title": "Text to speech",
      "locator": "Browser, ElevenLabs and OpenAI options",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Answers can be read aloud using browser speech, ElevenLabs or OpenAI TTS."
    },
    {
      "id": "typingmind:typingmind:meeting-summarizer",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/llm-automated-workflows/meeting-summarizer.md",
      "title": "Meeting summarizer workflow",
      "locator": "Meeting summarizer workflow",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The guide offers an audio-transcription and summarisation workflow, not a demonstrated meeting bot."
    },
    {
      "id": "typingmind:typingmind:compare-typingmind-team-plans",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/getting-started/compare-typingmind-team-plans.md",
      "title": "Compare TypingMind Team plans",
      "locator": "Compare TypingMind Team plans",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The comparison lists monthly USD99/199/299, five users plus USD8 additional users, Growth knowledge and Professional identity/governance."
    },
    {
      "id": "typingmind:typingmind:translations",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/app-translation/translation-collaboration",
      "title": "Translation collaboration",
      "locator": "Multilingual app translation project",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "A translation project exists, but the retrieved page does not establish completeness of German, French, Italian or Admin Panel translations."
    },
    {
      "id": "typingmind:typingmind:sso",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/single-sign-on-(sso)",
      "title": "Single Sign-On (SSO)",
      "locator": "SAML configuration and multiple connections",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SAML identity-provider metadata, entity ID and reply URL are configured in Teams."
    },
    {
      "id": "typingmind:typingmind:o-auth-2-0",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/o-auth-2-0.md",
      "title": "OAuth 2.0",
      "locator": "OAuth 2.0",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "OAuth/OIDC supports built-in Microsoft and Google logins and JIT seats; revoking IdP authorization alone does not remove the user."
    },
    {
      "id": "typingmind:typingmind:data-processing-agreement",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/security-and-compliance/data-processing-agreement.md",
      "title": "Data Processing Agreement",
      "locator": "Clauses 7.4, 7.8-7.10 and Appendices I-IV",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The public GDPR processor form includes confidentiality, subprocessor flow-down, SCC transfers and customer-choice deletion or return."
    },
    {
      "id": "typingmind:typingmind:scim",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/directory-sync-(scim-v2)",
      "title": "Directory Sync (SCIM v2)",
      "locator": "Create, update, suspend users and groups",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "SCIM sync creates and suspends users, updates profiles and assigns corresponding groups from the IdP."
    },
    {
      "id": "typingmind:typingmind:invite-team-members",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/invite-team-members.md",
      "title": "Invite team members",
      "locator": "Invite team members",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams admins invite members to the instance and manage seats."
    },
    {
      "id": "typingmind:typingmind:create-and-manage-user-groups",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/user-management/create-and-manage-user-groups.md",
      "title": "Create and manage user groups",
      "locator": "Create and manage user groups",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Groups control access and are usable for limits and analytics."
    },
    {
      "id": "typingmind:typingmind:chatbot-analytics",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/analytics/chatbot-analytics.md",
      "title": "Chatbot analytics",
      "locator": "Chatbot analytics",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Reporting covers active users, messages, conversations, estimated tokens and characters, with model/agent/group/user breakdowns and chart downloads."
    },
    {
      "id": "typingmind:typingmind:view-and-export-user-chat-logs",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/analytics/view-and-export-user-chat-logs.md",
      "title": "View and export user chat logs",
      "locator": "View and export user chat logs",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Opt-in Record all chats exposes user prompts and responses to authorized admins and configurable retention permanently deletes old records."
    },
    {
      "id": "typingmind:typingmind:export-chat-logs",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/integrations/export-chat-logs.md",
      "title": "Export chat logs",
      "locator": "Export chat logs",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Chat logging is off by default; the API exports JSON conversation content and dates, limited to the last 100 matching conversations per request."
    },
    {
      "id": "swissgpt:swissgpt:secrecy",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/wp-content/uploads/2026/03/AlpineAI_Zusatzvereinbarung_Geheimnisdaten.2025-03-30-1.pdf",
      "title": "AlpineAI supplementary agreement for secret data",
      "locator": "Printed version 30 March 2026; section 3 on both pages",
      "sourceDate": "2026-03-30",
      "retrievedAt": "2026-10-21",
      "finding": "When signed for legally secret data, requires Swiss plaintext services, restricted access and zero prompt/response retention for AI API services."
    },
    {
      "id": "swissgpt:swissgpt:review2-security",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/sicherheit/",
      "title": "AlpineAI security and compliance",
      "locator": "Certified infrastructure; FAQ on storage and processing",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Security page describes RIZ application hosting and Green/RZO inference as colocation on AlpineAI-owned/operated hardware, without logical access by site operators. This is a vendor infrastructure disclosure, not an updated DPA schedule."
    },
    {
      "id": "swissgpt:swissgpt:review2-dpa",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/wp-content/uploads/2026/07/AlpineAI-AVV_zu_GTC_2026-07-10.pdf",
      "title": "AlpineAI data processing agreement",
      "locator": "Annex 3 page 7, dated 10 July 2026; section 1.5 and 7.3",
      "sourceDate": "2026-07-10",
      "retrievedAt": "2026-10-21",
      "finding": "Re-retrieved July 10 Annex 3 lists RIZ hosting/support and Green pure colocation with no logical data access, plus CH/EU/US operational suppliers; RZO is not listed. No newer public schedule or RZO approval was retrieved."
    },
    {
      "id": "typingmind:typingmind:selfhost",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://custom.typingmind.com/self-host",
      "title": "TypingMind Teams Self Host",
      "locator": "Technical requirements, licensing, network, updates and pricing FAQ",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Commercial self-host requires an annual quote, includes five users, uses compiled/minified code, checks licence/updates externally and can use customer model endpoints."
    },
    {
      "id": "typingmind:typingmind:privacy-policy",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/security-and-compliance/privacy-policy.md",
      "title": "Privacy policy",
      "locator": "Storage scope, API keys and section on account deletion",
      "sourceDate": "2026-09-19",
      "retrievedAt": "2026-10-21",
      "finding": "The policy distinguishes personal local storage from Teams multitenant server storage, and lists inactive unpaid account deletion."
    },
    {
      "id": "typingmind:typingmind:data-usage-and-model-training-policy",
      "productId": "typingmind",
      "kind": "vendor-claimed",
      "url": "https://docs.typingmind.com/security-and-compliance/data-usage-and-model-training-policy.md",
      "title": "Data Usage and Model Training Policy",
      "locator": "TypingMind role and provider API comparison",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The vendor says it does not train on conversations; customers contract directly with model providers and their retention/training terms vary."
    },
    {
      "id": "swissgpt:swissgpt:imprint",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/impressum/",
      "title": "AlpineAI imprint",
      "locator": "Address",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Identifies AlpineAI AG at Obere Strasse 22b in Davos, Switzerland."
    },
    {
      "id": "swissgpt:swissgpt:security",
      "productId": "swissgpt",
      "kind": "vendor-claimed",
      "url": "https://alpineai.swiss/sicherheit/",
      "title": "AlpineAI security and compliance",
      "locator": "Infrastructure; isolation; encryption; security FAQ",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Separates RIZ application hosting from Green and RZO inference and describes encryption, access restrictions and external-search opt-in."
    },
    {
      "id": "typingmind:typingmind:r4-soc2-selfhost-claim",
      "productId": "typingmind",
      "kind": "vendor-claimed",
      "url": "https://custom.typingmind.com/self-host",
      "title": "TypingMind Teams self-host",
      "locator": "Maximum security, SOC 2 Type II badge; updates and licence checks",
      "sourceDate": null,
      "retrievedAt": "2026-10-26",
      "finding": "The self-host marketing page claims SOC 2 Type II; no auditor, reporting period, covered legal entity or report was retrieved. This is a vendor claim rather than verified attestation."
    },
    {
      "id": "typingmind:typingmind:r2-teams-server-route",
      "productId": "typingmind",
      "kind": "vendor-claimed",
      "url": "https://custom.typingmind.com/pricing",
      "title": "TypingMind Teams pricing FAQ",
      "locator": "Do my users see my OpenAI API key?",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The Teams-specific FAQ says users do not see the key and OpenAI requests are sent from the Teams server."
    },
    {
      "id": "typingmind:typingmind:dpa-confidentiality",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/security-and-compliance/data-processing-agreement.md",
      "title": "TypingMind DPA confidentiality",
      "locator": "7.4(c),7.8(d)-(e); AppendixII andIII",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Staff have need-to-know confidentiality duties and subprocessor contracts carry substantially the same data-protection obligations; a specific professional-secrecy agreement is not established."
    },
    {
      "id": "swissgpt:swissgpt:public-pricing",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/behoerden/",
      "title": "AlpineAI authorities and institutions",
      "locator": "Prices; pricing-toggle applyMode(monthly/yearly) and billing labels in delivered HTML",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Monthly billing is CHF 79 Standard or CHF 89 Premium per user; annual billing displays CHF 74 or CHF 80 per month; Enterprise is quoted from 10 licences."
    },
    {
      "id": "swissgpt:swissgpt:health-pricing",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://alpineai.swiss/gesundheitswesen/",
      "title": "AlpineAI healthcare",
      "locator": "Prices; pricing-toggle applyMode(monthly/yearly) and billing labels in delivered HTML",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Healthcare monthly billing is CHF 89 Standard or CHF 99 Premium per user; annual billing displays CHF 80 or CHF 90 per month."
    },
    {
      "id": "swissgpt:swissgpt:ecb-fx",
      "productId": "swissgpt",
      "kind": "documented",
      "url": "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml",
      "title": "ECB euro foreign exchange reference rates, 20 October 2026",
      "locator": "Cube time=\"2026-10-20\": USD and CHF",
      "sourceDate": "2026-10-20",
      "retrievedAt": "2026-10-21",
      "finding": "ECB records EUR 1 = USD 1.1215 and CHF 0.9237 on 20 October 2026; derived USD to EUR is 1/1.1215 and CHF to EUR is 1/0.9237."
    },
    {
      "id": "typingmind:typingmind:openai-price",
      "productId": "typingmind",
      "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": "gpt-6-luna Standard input is USD0.10 and output USD0.50 per million tokens, excluding cache and optional regional uplifts."
    },
    {
      "id": "typingmind:typingmind:openai-model",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://developers.openai.com/api/docs/models/gpt-6-luna",
      "title": "GPT-6 Luna model documentation",
      "locator": "Reasoning effort and API support",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Reasoning effort none is the lowest option; the shared cost proxy does not use reasoning tokens."
    },
    {
      "id": "typingmind:typingmind:fx",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml",
      "title": "ECB reference exchange rates",
      "locator": "Cube time=2026-10-20",
      "sourceDate": "2026-10-20",
      "retrievedAt": "2026-10-21",
      "finding": "EUR1 equals USD1.1215 and CHF0.9237."
    },
    {
      "id": "typingmind:typingmind:manage-your-subscription",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/account-management/manage-your-subscription.md",
      "title": "Manage your subscription",
      "locator": "Manage your subscription",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Cloud customers manage the recurring subscription through billing settings."
    },
    {
      "id": "typingmind:typingmind:end-user-license-agreement",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/security-and-compliance/end-user-license-agreement.md",
      "title": "End User License Agreement",
      "locator": "End User License Agreement",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The software is commercially licensed with restrictions on redistribution and modification."
    },
    {
      "id": "typingmind:typingmind:custom-branding",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/typingmind-team/branding-and-customizations/custom-branding.md",
      "title": "Custom branding",
      "locator": "Custom branding",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "Teams supports instance logo, theme and branded presentation within its commercial licence."
    },
    {
      "id": "typingmind:typingmind:export-import-data",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://docs.typingmind.com/cloud-sync-and-backup/export-import-data.md",
      "title": "Export and import data",
      "locator": "Export and import data",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "User app settings export/import chats, prompts, plugins, folders, agents and model settings as JSON."
    },
    {
      "id": "typingmind:typingmind:status",
      "productId": "typingmind",
      "kind": "documented",
      "url": "https://status.typingmind.ai",
      "title": "TypingMind status",
      "locator": "Public status shell",
      "sourceDate": null,
      "retrievedAt": "2026-10-21",
      "finding": "The status site loaded a status shell but reported an error fetching data; incident history and measured uptime were not retrieved."
    }
  ]
}
