diff --git a/CAMPUS_DATA_OWNERSHIP.md b/CAMPUS_DATA_OWNERSHIP.md index 2fb69da..bb5424b 100644 --- a/CAMPUS_DATA_OWNERSHIP.md +++ b/CAMPUS_DATA_OWNERSHIP.md @@ -1,12 +1,12 @@ # Campus data ownership -Canonical public University of Toronto campus facts and geometry live in `GapwiseHQ/data`. UTM's reviewed entrance/routing dataset lives under `data/utm`; UTSG and UTSC identities and geometry live in their own campus directories. +Canonical public campus facts and geometry across all 11 supported Canadian universities (13 campus models) live in `GapwiseHQ/data`. University datasets live under their canonical identifiers (e.g. `universities/carleton`, `universities/queens`, etc.); UTM's reviewed entrance/routing dataset lives under `data/utm`, and UTSG and UTSC identities and geometry live in their respective campus directories. `gapwise` consumes a validated build-time snapshot and remains authoritative for deterministic routing/gap-planning behavior, the public API/OpenAPI contract, SDK semantics, and product presentation. `docs` documents released contracts; it must not become an independent source of campus facts or product behavior. ## Documentation rules -- Link raw UTM data, provenance, confidence/evidence, geometry, entrances, and routing graph sources to `data`. +- Link raw campus data, provenance, confidence/evidence, geometry, entrances, and routing graph sources to `data`. - Document routing behavior, API response semantics, OpenAPI, and SDK behavior from released `gapwise` contracts. - Do not copy a campus dataset into this repository merely to make documentation convenient. - Do not imply that `data.gapwise.ca` must be reachable for the product/API to route; core uses a vendored build-time snapshot. diff --git a/ECOSYSTEM.md b/ECOSYSTEM.md index 8d59014..1e5362a 100644 --- a/ECOSYSTEM.md +++ b/ECOSYSTEM.md @@ -12,7 +12,7 @@ All seven first-party product repositories are owned by the **Gapwise** GitHub o | `GapwiseHQ/android` | native Android implementation, Android device integration, persistence adapters, and Android distribution behavior | | `GapwiseHQ/ios` | native iOS implementation, Apple-platform integration, persistence adapters, and iOS distribution behavior | | `GapwiseHQ/ai` | OAuth/MCP delegation, tool schemas, permissions, bounded mutations, AI compatibility evidence | -| `GapwiseHQ/data` | **canonical public University of Toronto campus facts and geometry**, entrances, routing graph data, provenance, schemas, evidence, attribution, validation, and reuse | +| `GapwiseHQ/data` | **canonical public campus facts and geometry across 11 supported universities (13 campus models)**, entrances, routing graph data, provenance, schemas, evidence, attribution, validation, and reuse | | `GapwiseHQ/docs` | released public developer documentation and documentation information architecture | | `GapwiseHQ/status` | operational health and incident communication | @@ -20,7 +20,7 @@ All seven first-party product repositories are owned by the **Gapwise** GitHub o ## Product scope -Gapwise timetable identity and web building maps support UTM, UTSG, UTSC, and mixed-campus schedules. The first-party public campus API, reviewed entrance and pedestrian route graph, places, and production raw-data distribution currently cover UTM. Documentation must preserve that specific boundary instead of implying equivalent routing coverage at all three campuses. +Gapwise supports 11 Canadian universities across 13 campus models. The first-party public campus API, reviewed building/entrance and pedestrian route graph, places, and production data support multi-university discovery and campus models, with full deterministic routing available for supported institutions including UTM and Carleton. Documentation must preserve specific campus routing coverage instead of implying identical entrance/routing graph depth across all campuses. ## Current developer-platform state @@ -43,7 +43,7 @@ TypeScript and Python are equal first-party SDKs. Documentation should provide c ## Documentation rules 1. OpenAPI + core implementation own public HTTP behavior and deterministic calculations. -2. `data` owns raw public University of Toronto campus facts, geometry, routing graph data, provenance, and evidence. +2. `data` owns raw public campus facts across 11 supported universities, geometry, routing graph data, provenance, and evidence. 3. SDK docs follow released package/source behavior and never invent methods or types. 4. Registry claims are evidence-based: reserved/configured is not the same as published. 5. Runtime claims are evidence-based: Node/Bun/Deno/browser support should reflect CI/release verification rather than assumptions. diff --git a/contracts/mcp-live-surface.json b/contracts/mcp-live-surface.json index 54570a6..e9aa9df 100644 --- a/contracts/mcp-live-surface.json +++ b/contracts/mcp-live-surface.json @@ -1,6 +1,6 @@ { "contractVersion": 2, - "registeredToolCount": 20, + "registeredToolCount": 25, "registeredTools": { "publicRead": [ "list_utm_buildings", @@ -9,7 +9,12 @@ "search_utm_places", "get_utm_place", "route_between_utm_buildings", - "plan_utm_gap_window" + "plan_utm_gap_window", + "list_supported_universities", + "list_campus_buildings", + "search_campus_buildings", + "get_campus_building", + "route_between_campus_buildings" ], "privateRead": [ "get_ai_delegation_status", diff --git a/src/content/docs/ai/connect.md b/src/content/docs/ai/connect.md index 3158b6c..aae638e 100644 --- a/src/content/docs/ai/connect.md +++ b/src/content/docs/ai/connect.md @@ -15,7 +15,7 @@ Private student-context tools use OAuth. Protected-resource metadata is publishe https://ai.gapwise.ca/.well-known/oauth-protected-resource ``` -A client can discover and use stateless public UTM campus tools without private Gapwise account access. To use private schedule/planning tools, the client must follow protected-resource discovery, complete browser-based authorization, and retain the resulting authorization securely. +A client can discover and use stateless public campus tools across supported universities without private Gapwise account access. To use private schedule/planning tools, the client must follow protected-resource discovery, complete browser-based authorization, and retain the resulting authorization securely. ## Connection workflow @@ -33,6 +33,6 @@ Authorization happens at the Gapwise boundary. A legitimate integration does not The MCP transport permits unauthenticated initialization and tool discovery. Protected private tool execution remains fail-closed until the caller presents a verified OAuth credential and the student has an active delegation with the required capability. -The service exposes 20 tools: seven stateless public campus reads, twelve permissioned private reads/status/planning tools, and one bounded private write. See [Tools](/ai/tools/) for the catalog and [Authentication & delegation](/ai/authentication/) for the authorization boundaries. +The service exposes 25 tools: twelve stateless public campus reads, twelve permissioned private reads/status/planning tools, and one bounded private write. See [Tools](/ai/tools/) for the catalog and [Authentication & delegation](/ai/authentication/) for the authorization boundaries. Before connecting a particular product, check [Client compatibility](/ai/compatibility/). Broad named-client support is not claimed until the real production OAuth/read/write/revoke matrices are complete. diff --git a/src/content/docs/ai/index.md b/src/content/docs/ai/index.md index 614188b..d3c43f0 100644 --- a/src/content/docs/ai/index.md +++ b/src/content/docs/ai/index.md @@ -1,9 +1,9 @@ --- title: Gapwise AI & MCP -description: Connect AI clients to public UTM campus intelligence and explicitly delegated Gapwise context without turning deterministic facts into model guesses. +description: Connect AI clients to public campus intelligence across 11 supported universities and explicitly delegated Gapwise context without turning deterministic facts into model guesses. --- -Gapwise AI is the **remote Model Context Protocol (MCP) integration boundary** between an AI client and Gapwise. It exposes stateless public UTM campus intelligence plus narrowly permissioned private student context without giving a client unrestricted account access. +Gapwise AI is the **remote Model Context Protocol (MCP) integration boundary** between an AI client and Gapwise. It exposes stateless public campus intelligence plus narrowly permissioned private student context without giving a client unrestricted account access. The client supplies the model and reasoning layer. **Gapwise supplies the canonical facts, permissions, and bounded actions.** @@ -44,9 +44,9 @@ Implementation source: [github.com/GapwiseHQ/ai](https://github.com/GapwiseHQ/ai ## Current live surface -The release surface registers **20 tools**: +The release surface registers **25 tools**: -- seven stateless public UTM campus-intelligence reads; +- twelve stateless public campus-intelligence reads (including multi-university discovery, buildings, and routing); - twelve OAuth-protected private schedule/status/planning reads; and - one bounded OAuth-protected private write. @@ -60,7 +60,7 @@ Important boundaries: ## API or AI & MCP? -Use the **public API / SDKs** when a conventional application integration needs UTM buildings, places, deterministic routes, or gap assessment without an MCP client. +Use the **public API / SDKs** when a conventional application integration needs campus buildings, places, deterministic routes, or gap assessment across supported universities without an MCP client. Use **Gapwise AI & MCP** when an AI client should access the same public campus intelligence and/or explicitly delegated Gapwise student context through one tool-oriented protocol surface. diff --git a/src/content/docs/ai/support.md b/src/content/docs/ai/support.md index 1e4f387..3c51bd7 100644 --- a/src/content/docs/ai/support.md +++ b/src/content/docs/ai/support.md @@ -33,7 +33,7 @@ Revoke AI access from Gapwise to remove delegated connector state/actions and cl ## Public campus tools -The UTM building/routing/gap-window tools are stateless public campus intelligence. They do not indicate that a client has access to the user's private timetable or live location. +The public building, routing, and gap-window tools across supported universities are stateless public campus intelligence. They do not indicate that a client has access to the user's private timetable or live location. ## Service health diff --git a/src/content/docs/ai/tools.md b/src/content/docs/ai/tools.md index 07cd51f..d5663f2 100644 --- a/src/content/docs/ai/tools.md +++ b/src/content/docs/ai/tools.md @@ -1,9 +1,9 @@ --- title: Tools -description: "The 20 tools in the Gapwise AI MCP surface: seven public UTM campus tools and thirteen permissioned student-context tools." +description: "The 25 tools in the Gapwise AI MCP surface: twelve public campus tools and thirteen permissioned student-context tools." --- -The Gapwise AI MCP surface contains **20 tools**: seven stateless public UTM campus-intelligence tools, twelve permissioned private read/status/planning tools, and one bounded private write tool. +The Gapwise AI MCP surface contains **25 tools**: twelve stateless public campus-intelligence tools, twelve permissioned private read/status/planning tools, and one bounded private write tool. This catalog is checked against a synchronized copy of AI's [machine-readable live-surface manifest](https://github.com/GapwiseHQ/ai/blob/main/contracts/mcp-live-surface.json). The AI runtime remains authoritative for schemas returned by MCP discovery. @@ -22,6 +22,11 @@ Public tools do **not** require a Gapwise account and do not read a student's ti | `get_utm_place` | Retrieve a canonical place by stable identifier without inventing missing access or location facts. | | `route_between_utm_buildings` | Run Gapwise's deterministic building-to-building routing engine and preserve routed/approximate/unavailable status, verification, time/distance, accessibility state, confidence, and warnings. | | `plan_utm_gap_window` | Run Gapwise's deterministic gap-assessment engine for an explicit free window between two UTM buildings and explicit supplied preferences. It does not discover a user's private free time. | +| `list_supported_universities` | List all supported universities and campus editions across the Gapwise platform with capabilities and status. | +| `list_campus_buildings` | List canonical buildings for any supported university and campus with coverage and metadata. | +| `search_campus_buildings` | Search canonical buildings across any supported university and campus by code, official name, or alias. | +| `get_campus_building` | Resolve a canonical building for any supported university and campus; unknown values fail closed. | +| `route_between_campus_buildings` | Calculate deterministic building-to-building routes across any supported university and campus with confidence and verification status. | ## Private read, status, and planning tools diff --git a/src/content/docs/api.md b/src/content/docs/api.md index 584db43..2f7f9f0 100644 --- a/src/content/docs/api.md +++ b/src/content/docs/api.md @@ -3,11 +3,11 @@ title: API overview description: The public Gapwise campus intelligence API v1. --- -Gapwise exposes public UTM campus primitives over HTTPS. The canonical production base URL is `https://api.gapwise.ca/v1`. The API is intentionally unauthenticated and preserves provenance, verification state, and uncertainty instead of fabricating missing facts. +Gapwise exposes public campus primitives across 11 supported Canadian universities (and 13 campus models) over HTTPS. The canonical production base URL is `https://api.gapwise.ca/v1`. The API is intentionally unauthenticated and preserves provenance, verification state, and uncertainty instead of fabricating missing facts. ## Public API or AI & MCP? -Use this API when you need **public campus intelligence**: buildings, places, deterministic routes, or route-aware assessment of an explicit free interval your application already knows. +Use this API when you need **public campus intelligence**: universities, campuses, buildings, places, deterministic routes, or route-aware assessment of an explicit free interval your application already knows. If a compatible AI client needs **private student context or bounded personal actions**, use the separate [Gapwise AI & MCP](/ai/) integration. That boundary is OAuth-protected, explicitly delegated, permissioned, and revocable. @@ -23,11 +23,13 @@ The two surfaces are intentionally separate: | Method | Endpoint | Purpose | | --- | --- | --- | | `GET` | `/v1` | API capabilities, versions, and privacy boundary | -| `GET` | `/v1/buildings` | Search and list canonical UTM buildings | +| `GET` | `/v1/universities` | Discover all 11 supported universities, editions, and capabilities | +| `GET` | `/v1/campuses` | Discover all 13 supported campus models and metadata | +| `GET` | `/v1/buildings` | Search and list canonical buildings for any supported university/campus | | `GET` | `/v1/buildings/:building` | Resolve one building by code, exact name, or recognized alias | | `GET` | `/v1/places` | Search and list campus places | | `GET` | `/v1/places/:placeId` | Resolve one canonical place | -| `POST` | `/v1/routes` | Calculate a deterministic building-level route | +| `POST` | `/v1/routes` | Calculate a deterministic building-level route for any supported university | | `POST` | `/v1/gaps/plan` | Assess a route-aware explicit free interval | All canonical endpoints live under `https://api.gapwise.ca`. diff --git a/src/content/docs/api/buildings.md b/src/content/docs/api/buildings.md index bb423ac..9432dc8 100644 --- a/src/content/docs/api/buildings.md +++ b/src/content/docs/api/buildings.md @@ -1,9 +1,9 @@ --- title: Buildings -description: Canonical UTM building identity, discovery, pagination, and provenance. +description: Canonical building identity, discovery, pagination, and provenance across supported universities. --- -The v1 building resources expose stable Gapwise identities for recognized UTM buildings. Identity/search coverage does not imply that every entrance, indoor path, floor, or accessibility detail has been surveyed. +The v1 building resources expose stable Gapwise identities for recognized campus buildings across 11 supported universities. Identity/search coverage does not imply that every entrance, indoor path, floor, or accessibility detail has been surveyed. ## List and search @@ -15,12 +15,20 @@ Supported query parameters: | Parameter | Meaning | | --- | --- | +| `university` | Target university identifier (e.g. `carleton`, `uoft`, `tmu`, `mcmaster`, etc.; defaults to `uoft`) | +| `campus` | Target campus identifier (e.g. `carleton`, `utm`, `st-george`, `scarborough`; defaults to `utm`) | | `q` | Case-insensitive substring search across canonical code, name, and aliases | | `category` | `academic`, `residence`, or `facility` | | `limit` | Page size, 1–100; defaults to 50 | | `offset` | Zero-based collection offset | -Example: +Example for Carleton University: + +```bash +curl 'https://api.gapwise.ca/v1/buildings?university=carleton&limit=20' +``` + +Example for U of T Mississauga (default): ```bash curl 'https://api.gapwise.ca/v1/buildings?q=instructional&category=academic&limit=20&offset=0' @@ -34,7 +42,15 @@ Search normalizes Unicode before matching. Filters combine deterministically, an GET https://api.gapwise.ca/v1/buildings/:building ``` -The identifier may be a canonical Gapwise code, exact canonical name, or recognized alias. Ambiguous identifiers return HTTP `409` with error code `ambiguous_building` and candidate codes in `error.details`. +The identifier may be a canonical Gapwise code, exact canonical name, or recognized alias. Ambiguous identifiers return HTTP `409` with error code `ambiguous_building` and candidate codes in `error.details`. Supply `university` (and optionally `campus`) as a query parameter if querying a non-default institution. + +Carleton University example: + +```bash +curl 'https://api.gapwise.ca/v1/buildings/ML?university=carleton' +``` + +UTM example: ```bash curl https://api.gapwise.ca/v1/buildings/MN diff --git a/src/content/docs/api/routing.md b/src/content/docs/api/routing.md index efc487e..545abf7 100644 --- a/src/content/docs/api/routing.md +++ b/src/content/docs/api/routing.md @@ -1,9 +1,9 @@ --- title: Routing -description: Deterministic UTM building-to-building routing and uncertainty semantics. +description: Deterministic building-to-building routing and uncertainty semantics across supported universities. --- -Gapwise v1 exposes deterministic building-level campus routing. It uses the project's bundled campus graph and source-backed routing facts; it does not ask an LLM to invent paths. +Gapwise v1 exposes deterministic building-level campus routing. It uses the project's bundled campus graphs and source-backed routing facts; it does not ask an LLM to invent paths. ## Calculate a route @@ -12,7 +12,17 @@ POST https://api.gapwise.ca/v1/routes Content-Type: application/json ``` -Minimal request: +Minimal request for Carleton University: + +```json +{ + "from": "TB", + "to": "ML", + "university": "carleton" +} +``` + +Request for UTM (default university and campus): ```json { @@ -21,14 +31,15 @@ Minimal request: } ``` -Optional route preferences can select a supported mode and tune walking/transition assumptions: +You can explicitly specify `university` (defaults to `uoft`) and `campus` (defaults to `utm`). Optional route preferences can select a supported mode and tune walking/transition assumptions: ```json { - "from": "MN", - "to": "IB", + "from": "TB", + "to": "ML", + "university": "carleton", "preferences": { - "mode": "prefer-indoor", + "mode": "fastest", "walkingSpeedMps": 1.2, "transitionBufferMinutes": 2 } diff --git a/src/content/docs/data/datasets.md b/src/content/docs/data/datasets.md index fa93059..5130319 100644 --- a/src/content/docs/data/datasets.md +++ b/src/content/docs/data/datasets.md @@ -1,9 +1,9 @@ --- title: Dataset catalog -description: Major canonical UTM campus datasets published by Gapwise Data. +description: Canonical campus datasets and raw artifacts published by Gapwise Data. --- -The currently published canonical UTM subtree lives under `data/utm`. Production Data builds distribute that validated tree at `https://data.gapwise.ca/datasets/utm/latest/`. Canonical UTSG and UTSC identity and geometry datasets live in their own repository directories but are not yet included in this raw production channel. +Gapwise Data publishes canonical campus datasets across 11 supported universities (13 campus models). Campus-wide models are maintained under `universities//campus.json` containing buildings, coordinates, and navigation metadata. In addition, the reviewed UTM subtree lives under `data/utm`, distributed as raw artifacts at `https://data.gapwise.ca/datasets/utm/latest/`. Additional university datasets (such as Carleton, Queen's, Western, Ottawa, McMaster, Laurier, York, Guelph, Brock, UTSG, and UTSC) live in their own canonical directories. ## Major surfaces diff --git a/src/content/docs/data/distribution.md b/src/content/docs/data/distribution.md index cbb719e..b372202 100644 --- a/src/content/docs/data/distribution.md +++ b/src/content/docs/data/distribution.md @@ -5,9 +5,23 @@ description: How raw Gapwise campus data is published without becoming a runtime Gapwise separates **canonical ownership**, **public distribution**, and **runtime consumption**. +## Multi-university dataset discovery + +To discover available universities and campus models programmatically, use the public API discovery endpoints: + +```bash +# Discover 11 supported universities +curl https://api.gapwise.ca/v1/universities + +# Discover 13 campus models and metadata +curl https://api.gapwise.ca/v1/campuses +``` + +In the canonical `GapwiseHQ/data` repository, each supported university maintains its campus-wide dataset at `universities//campus.json` (e.g. `universities/carleton/campus.json`), containing canonical building identities, coordinates, and navigation metadata. + ## Raw first-party distribution -The current canonical channel is published under: +The current canonical raw distribution channel for detailed UTM exterior entrance geometry, routing graphs, and access audits is published under: ```text https://data.gapwise.ca/datasets/utm/latest/ diff --git a/src/content/docs/data/index.md b/src/content/docs/data/index.md index 16ca0bf..c438dd6 100644 --- a/src/content/docs/data/index.md +++ b/src/content/docs/data/index.md @@ -1,15 +1,15 @@ --- title: Gapwise Data -description: Canonical University of Toronto campus data, schemas, provenance, distribution, and reuse. +description: Canonical multi-university campus data, schemas, provenance, distribution, and reuse. --- -Gapwise Data is the canonical public source for University of Toronto campus facts and geometry used across the Gapwise ecosystem. Building identity and map geometry cover UTM, UTSG, and UTSC; the current reviewed entrance/routing pipeline and production raw-data distribution are UTM-specific. +Gapwise Data is the canonical public source for campus facts and geometry across 11 supported Canadian universities (13 campus models) used throughout the Gapwise ecosystem. Building identity, footprints, and metadata cover all supported institutions; additional reviewed exterior entrance registries and routing graphs are maintained for institutions like UTM and Carleton. - **Portal:** `https://data.gapwise.ca` -- **Entrance contributor:** `https://data.gapwise.ca/contribute` +- **Entrance contributor (UTM):** `https://data.gapwise.ca/contribute` - **Canonical repository:** `GapwiseHQ/data` -- **Raw distribution:** `https://data.gapwise.ca/datasets/utm/latest/` -- **Distribution manifest:** `https://data.gapwise.ca/datasets/utm/latest/manifest.json` +- **Raw UTM distribution:** `https://data.gapwise.ca/datasets/utm/latest/` +- **UTM distribution manifest:** `https://data.gapwise.ca/datasets/utm/latest/manifest.json` - **Stable application API:** `https://api.gapwise.ca/v1` ## Source of truth diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index 9d9bc98..93ec7ae 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -25,12 +25,12 @@ Pick the interface that matches the semantics and trust boundary your project ac - Use the unauthenticated public platform for canonical UTM buildings and places, deterministic routing, and route-aware gap planning. It never exposes a student's timetable, account, friends, private sync state, or precise live location. + Use the unauthenticated public platform for canonical building and place intelligence, deterministic routing, and route-aware gap planning across supported universities. It never exposes a student's timetable, account, friends, private sync state, or precise live location. **[Start with the public API →](/quickstart/#public-api-quickstart)** - Use canonical raw UTM campus artifacts when you need GeoJSON, building/entrance records, routing graph inputs, provenance, audits, checksums, or your own derivation pipeline. Raw files are distributed from a first-party Gapwise domain. + Use canonical campus data artifacts when you need GeoJSON, building/entrance records, routing graph inputs, provenance, audits, checksums, or your own derivation pipeline across supported universities and campuses. Raw files are distributed from a first-party Gapwise domain. **[Explore Gapwise Data →](/data/)** · **[Open the Data portal →](https://data.gapwise.ca)** @@ -73,7 +73,7 @@ Pick the interface that matches the semantics and trust boundary your project ac ### Public campus platform -The canonical public API exposes versioned UTM buildings and places, deterministic building-to-building routing, and route-aware assessment of an explicitly supplied free interval. +The canonical public API exposes versioned buildings and places across 11 supported Canadian universities (and 13 campus models), deterministic building-to-building routing, and route-aware assessment of an explicitly supplied free interval. - API base: `https://api.gapwise.ca/v1` - OpenAPI 3.1: `https://api.gapwise.ca/openapi.json` @@ -88,7 +88,7 @@ Successful responses use `{ data, meta }`; errors use a nested structured error ### Canonical open campus data -Gapwise Data is the canonical repository for public University of Toronto campus facts and geometry. It owns campus-scoped building identity and footprints across UTM, UTSG, and UTSC. Its current production distribution adds reviewed UTM entrances, routing graph inputs, provenance, evidence state, uncertainty, and generated data audits. +Gapwise Data is the canonical repository for public campus facts and geometry across 11 supported universities (13 campus models). It owns university- and campus-scoped building identity, footprints, and metadata. Its production distribution includes reviewed entrances, routing graph inputs, provenance, evidence state, uncertainty, and generated data audits, with specialized raw artifacts for campuses such as UTM. Raw artifacts are published under: @@ -107,9 +107,9 @@ Gapwise AI is a separate provider-neutral remote MCP service. The client supplie - AI service: `https://ai.gapwise.ca` - Source: `https://github.com/GapwiseHQ/ai` -The live release surface exposes **20 tools total**: +The live release surface exposes **25 tools total**: -- **7 stateless public campus reads** for UTM building, place, route, and gap-window context; +- **12 stateless public campus reads** for multi-university campus discovery, buildings, places, routes, and gap-window context; - **12 permissioned private reads/planning tools** over explicitly delegated student context; - **1 permissioned private write tool** for a bounded gap-preference update. @@ -117,4 +117,4 @@ Public campus tools do not authenticate or expose a student's private timetable, Broad named-client compatibility is still a release gate. These docs do not claim ChatGPT, Claude, or another named client as fully verified until the production OAuth/read/write/revoke matrices are complete. See [Client compatibility](/ai/compatibility/). -> Gapwise is an independent student-built project. It is not affiliated with, endorsed by, or an official service of the University of Toronto. +> Gapwise is an independent student-built project and is not affiliated with, endorsed by, or an official service of any supported university unless explicitly stated otherwise. diff --git a/src/content/docs/platform/security.md b/src/content/docs/platform/security.md index 337cbbb..2c76bec 100644 --- a/src/content/docs/platform/security.md +++ b/src/content/docs/platform/security.md @@ -7,7 +7,7 @@ import { Aside, Card, CardGrid } from '@astrojs/starlight/components'; **Document status:** public technical overview · **Reviewed:** 2026-08-28 · **Scope:** Gapwise web/PWA, public API, and optional Gapwise AI/MCP service -This overview is for students, developers, and institutional privacy or security reviewers. It describes controls supported by the current public implementation record without representing Gapwise as independently audited, certified, or endorsed by the University of Toronto. +This overview is for students, developers, and institutional privacy or security reviewers. It describes controls supported by the current public implementation record without representing Gapwise as independently audited, certified, or endorsed by the University of Toronto or any other supported university.