Parts bin
Every Governance part, rendered live on the same world as the mocks (the MOCK bar's knobs drive them all), with where it came from and the delivery phase it ships in. To compose, drop a part into a mock's LandingMockSlot; to offer a choice, give the slot variants.
<GovernanceMockModeUntil>shared control · delivery phase 2 · from c121 #6 — the Logseq sketch (2026-10-21): one mode control with an optional Until; Snooze goesOff · Observe · Enforce (UxTabGroup) and an optional Until (a native date). v-model { mode, until? }; `replaces` is the mode it replaces (the policy's live mode, or the mode an exception overrides): it decides the loosening hint and, with a date, the quiet "then Enforce" (D6). Empty Until is fine (D7): "optional: it holds until revoked", or, when it loosens, a rose "No end date: this stays open until someone revokes it" that never blocks. `enforceable: false` hides Enforce. The #reason slot ({ direction, loosens }) is where the editor puts its reason field; required when loosening (D1) is the editor's rule, not this control's.
Used by S3 Mode (02), the exception editor (02).
<GovernanceMockBlastRadius>shared control · delivery phase 2 · from c121 #5 — Logseq 10-21, Rob's summary, intents PR #4: one visual for what a change doesRenders an Impact (governance-impact.ts; the fixture's previewChange / previewDraft build it). `full`: a sentence of facts ("Loosens P-MCP for 3 people in Finance."; no size judgement, D19) over rows: People (transitions as chips, blue when tightened, red when loosened, D8; an avatar per person, ringed sky (stricter), rose (looser) or ink (both), with the path on hover), Teams (per team, the share of members getting looser (rose) and stricter (sky) restrictions), Out of visibility (D9: set to Off, so no findings or notifications; only when any), Tightened / Loosened (policy · scope chips), Findings (resolve · reopen · resolve, now enforced (D16: they stay Observed), ids linking to S1). `inline`: a direction dot and one line.
Used by the exception editor and S3 Mode (02), the draft review on Changes and the tray (03).
This change willtightenP-PROVIDERSfor 1 person in Engineering.
| Direction | People | |
|---|---|---|
| Engineering | 11% stricter | 1 J Jordan |
Tightened 1 policy
- Findings
- No findings change · 1 open in scope
This change willloosenP-MCPfor 3 people in Finance.
| Direction | People | |
|---|---|---|
| Finance | 75% looser | 3 D DevC CaseyM Morgan |
Loosened 1 policy
- Findings
- No findings change · 4 open in scope
This change willloosenP-TOOL-APPROVALfor 64 people across 7 teams.
| Direction | People | |
|---|---|---|
| Engineering | 92% looser | 22 AE Ana EBE Ben ECE Cy EDE Dee E+18 more |
| Finance | 100% looser | 9 AF Ana FBF Ben FCF Cy FDF Dee F+5 more |
| GRC | 86% looser | 6 AG Ana GBG Ben GCG Cy GDG Dee G+2 more |
| Sales | 80% looser | 12 AS Ana SBS Ben SCS Cy SDS Dee S+8 more |
| Support | 73% looser | 8 AS Ana SBS Ben SCS Cy SDS Dee S+4 more |
Loosened 1 policy
- Findings
- No findings change · 31 open in scope
These changes willtightenP-SANDBOXand loosen
P-PROVIDERSfor 6 people across 3 teams.
| Direction | People | |
|---|---|---|
| Engineering | 11% looser · 22% stricter | 12 P PriyaA AlexJ Jordan |
| Finance | 25% stricter | 1 D Dev |
| GRC | 40% stricter | 2 M MarkR Riley |
Tightened 1 policy
·Loosened 1 policy
- Out of visibility
- Jordan · Off: no findings or notifications from them
No one's mode changes.
<GovernancePartTeamPolicies>T1 · delivery phase 4 · from c118 L5 — the Oct 19 model: a view under the team replaces policy groups (A5)What applies to one team now, derived: per policy, its mode for the team (the policy's, or the team's exception; the policy's Until shown, "until Nov 15, then Enforce", D6), what sets it (team exception: mode over the policy's, reason, until; advanced allows), the members it differs for (a person's own exception, A4, or a second team's, the stricter winning, D9), and the team's open findings. A posture bar on top and a note on the shared draft's pending changes that move the team. Policies off for the team fold behind a toggle. Read-only; rows link to S3's Exceptions, counts to S2 (outcome=all).
Policies
14 on · 2 enforcing · 2 team exceptionsWhat applies to Engineering now: each policy's mode for the team, the exception that sets it, and the members a narrower exception or a second team changes it for. Nothing here is stored as a group. It follows from the policies and their exceptions, so change it on the policy.
Policy | For Engineering | Set by | Members who differ | Open |
|---|---|---|---|---|
Providers & models | Enforcestricter | Team exception · Enforce over observe Engineering ships to production; approved providers only. | Jordan → Observe · own exception | 0 |
MCP servers & tools | Observelooser | Team exception · Observe over enforce Engineering is evaluating MCP servers; observe only while the sanctioned list settles. | Alex → Enforce · Team: Finance, the stricter | 0 |
Data handling | Enforce | the policy's mode | — | 1 open |
Sessions & transcripts | Observe | the policy's mode | — | 0 |
Agents & harnesses | Observe until Nov 15, then Enforce | the policy's mode | — | 0 |
Agents & harnesses | Observe | the policy's mode | — | 0 |
Agents & harnesses | Observe | the policy's mode | — | 1 open |
Data handling | Observe | the policy's mode | — | 1 open |
Identity | Observe | the policy's mode | — | 0 |
Agents & harnesses | Observe | the policy's mode | — | 0 |
Identity | Observe | the policy's mode | — | 0 |
Data handling | Observe | the policy's mode | — | 1 open |
Data handling | Observe | the policy's mode | — | 0 |
MCP servers & tools | Observe | the policy's mode | — | 0 |
Data handling | Off | the policy's mode | Alex → Enforce · Team: Finance | 0 |
Files & directories | Off | the policy's mode | Alex → Enforce · Team: Finance | 0 |
<GovernancePartPolicyMode>S3 · delivery phase 2 · from c118 L2 — the Oct 19 model: one mode per policy (A2); c121 #6: an optional Until replaces the snoozeThe policy's mode as GovernanceMockModeUntil (Off · Observe · Enforce and an optional Until; Observe is the ceiling where Qpoint can't enforce) over what live is now ("Observe until Nov 15, then Enforce", D6; or the rollout, D3) and what the mode does. Editing it shows the reason (required when it loosens, D1), the change's impact (GovernanceMockBlastRadius) and Stage: a mode-set through stage(), held in the tray until Save to draft (D4). Links to Exceptions when they vary it.
Enforce: Qpoint will block the MCP connection.
- Each blocked attempt is recorded as an Enforced finding.
- Findings from before stay Observed.
- They resolve once the block is confirmed on that person's endpoint.
<GovernancePartPolicyConfiguration>S3 · delivery phase 2 · from phase4/policy-detail · Configuration (G7), the qdash policy listing expand-row editorsWhat the policy matches, set for the organisation: the layer's PolicyConfig list / detector / level / threshold editor on World.configs, with "Seen, not on the list" from the policy's findings. An edit stages through stage() (c121: held in the tray until Save to draft, D4), and the view re-evaluates with it (D2); the line under the editor says what changed.
Configuration
What this policy matches, set for your organisation on top of Qpoint's definition. A change is a policy change: it is recorded in History and re-evaluates the open findings it touches (D2).
Seen, not on the list
servers this policy has found, most findings firstSanctioned MCP servers
3 entries · patterns supported (* and ?)
| Server | Scope | Added by | Last matched | |
|---|---|---|---|---|
| GitHub MCPreviewed 2026-08 | global | Dana (security admin) | 2026-10-08 | |
| Atlassian MCP | global | Dana (security admin) | 2026-10-07 | |
| Postgres MCP (read-only)analytics harnesses only | agent | Sam (GRC lead) | 2026-10-02 | |
| you |
from qdash P6 MCP Server Allow-List
<GovernancePartPolicyScope>S3 · delivery phase 4 · from phase4/policy-detail · Where it applies + Enforcement, merged (Mark, 2026-10-18)superseded 2026-10-20Retired from the composed mocks — c118 · A2, the 2026-10-19 product session: the mode is the policy's; per-context differences are exceptions. Rendered on the c114 world, as it was drawn.
One UxTableList row per scope path, scope (flagged when it reaches no one), policy group (or — set on this policy / — none), enforcement (an Observe / Enforce select), endpoints enforcing (97% 97/100), and an X that removes a scope assigned here. Overlaps resolve by D1 (more specific wins) and ties by D9 (stricter wins); a tie is noted on the rows it touches. Groups are folded in: a hover card on each group link, draft / retired groups as dimmed rows, membership rows at delivery phase 3, and Add to policy group. Before delivery phase 4 it is one organization-wide row.
Scope + enforcement
Every scope is observed. Where enforcement is on, Qpoint will block the MCP connection; the more specific scope decides (D1).
Scope | Policy group | Enforcement | Endpoints | |
|---|---|---|---|---|
| Organization-wide | — set on this policy | Observe | — | |
| Team: Engineering | Engineering AI Controls →Policy groupEngineering AI ControlsEngineering may use more tools, under tighter MCP rules.Team: Engineering · 4 policies · activewith Approved model providers only, Sensitive information sanitized before transmission, Enterprise accounts required | Observe Team: Finance is stricter · overrides this for 1 person | — | |
| Team: Finance | Finance AI Controls →Policy groupFinance AI ControlsStricter controls for regulated data.Team: Finance · 5 policies · activewith Enterprise accounts required, Sensitive information sanitized before transmission, Approved model providers only and 1 more | Enforce stricter than Team: Engineering · wins for 1 person | 95% 38/40 | |
| Team: Legalreaches no one | Legal AI Controls →Policy groupLegal AI ControlsStarted from Finance; file access removed.Team: Legal · 4 policies · activewith Enterprise accounts required, Sensitive information sanitized before transmission, Approved model providers only | Observe | — | |
<GovernancePartPolicyExceptions>S3 · delivery phase 4 · from phase4/policy-detail · Exceptions (G1), on UxTableList (Mark, 2026-10-18); redrawn for the Oct 19 model (c118 L2, 2026-10-20)The only way to vary a policy (A3). One UxTableList row per exception: context (with whom it overrides, or a D9 tie) · sets (a mode over the mode it replaces, its rollout when it enforces; or an advanced allow, after beta) · reaches (people, and for how many it decides) · reason (and a revoke's reason, D1; an edited one's previous value, D17) · until · set by · revoke. Live first, broadest context first; revoked and lapsed rows dimmed. One exception per policy and context: adding one where a context has one edits it (D17). Before delivery phase 4, one line.
Exceptions
The policy is in Enforce for everyone unless an exception says otherwise. An exception sets the mode for an organization, a team or a person; the narrowest one wins, so a person's own exception beats their team's. A person in two teams whose exceptions disagree gets the stricter (D9).
Context | Sets | Reaches | Reason | Until | Set by | |
|---|---|---|---|---|---|---|
Team: GRC | Offover enforce | 2 people decides for 2 | Approved GRC workflow with the vendor (Vanta MCP). | indefinite | Dana (security admin) 2026-09-28 | |
Team: Engineering ties for Alex: the stricter wins | Observeover enforce | 9 people decides for 8 | Engineering is evaluating MCP servers; observe only while the sanctioned list settles. | indefinite | Dana (security admin) 2026-09-26 | |
Team: Finance ties for Alex: the stricter wins | Enforceover enforce confirmed · 38 of 40 endpoints | 2 people decides for 2 | Regulated data: Finance blocks unsanctioned MCP servers. | indefinite | Dana (security admin) 2026-09-24 | |
Team: Team A | Offover enforce | 1 person | Team A owns the Vanta integration. Revoked by Dana (security admin): “Team A moved off Vanta.” | revoked | Dana (security admin) 2026-10-09 | |
<GovernancePartPolicyFindings>S3 · delivery phase 2 · from phase4/findings · S2's member table and adjudication card (the live qdash listing's pieces), scoped to the policy (Mark, 2026-10-18)The findings listing's table for one policy: severity · finding · subject · detected · status · last event · SLA, with Open / Resolved toggles (Open by default) and the Adjudicate expand row: the card with subject, applies via, the clock and verbs, the Resolve capture (a reason and an explanation, then a follow-on link to the policy or an exception; it never adds one, c121 #14), evidence and lifecycle; each row carries its outcome at detection, Enforced or Observed (D16). A row resolved here stays listed until the toggles change. Links to the full listing filtered to the policy.
No open findings for this policy.
<GovernancePartPolicyHistory>S3 · delivery phase 2 · from phase4/policy-detail · History (the organ), on UxTableList (Mark, 2026-10-18)Every auditable change to the policy (policyHistory: its Change records plus the severity override) as a UxTableList with column-header sorters: when (newest first) · by · change · detail · id. A row's DOM id is its change id, so a finding lifecycle's cause can link to it.
History
5 changesEvery auditable change to this policy's configuration. Finding lifecycles point at these rows as their cause.
When | By | Change | Detail | Id |
|---|---|---|---|---|
| 2026-10-14 08:00 | Dana (security admin) | exception revoke | Exception E-A revoked: Team A moved off Vanta | CH-5 |
| 2026-10-09 11:05 | qdash | enforcement confirm | Enforcement confirmed on 97 of 100 devices (Vanta MCP blocked on mac-b1 at 11:05) | CH-3 |
| 2026-10-09 09:40 | Dana (security admin) | mode set | Mode set to Enforce: block the MCP connection | CH-2 |
| 2026-10-09 09:15 | Dana (security admin) | exception add | Exception: Off for Team A — Team A owns the Vanta integration | CH-1 |
| 2026-09-30 15:10 | Dana (security admin) | severity override | Configured high (recommended medium) | — |
<GovernancePartPolicyOverview>S3 · delivery phase 2 · from phase4/policy-detail · Definition + band, as the overview strip (Mark's screenshot, 2026-10-19)The strip in place of the band: What it tests · Why it matters · What fails it · What happens on failure (derived from the enforcement action), then Framework(s) as ComplianceTags, Organization Severity editable in place (GovernanceMockSeverityPicker) over "Qpoint recommendation: …", and Findings as the open count, coloured and labelled by the most severe open finding.
Findings
0openWhat it tests
Detect use of an MCP server that is not sanctioned for the applicable user, team, device, or other governed scope.
Why it matters
MCP servers load tools and context into an agent without review; an unsanctioned one can read, write or exfiltrate on the user's behalf.
What fails it
An agent connects to an MCP server that is not on the sanctioned list for the subject's scope.
What happens on failure
Qpoint will block the MCP connection, and a finding records the attempt.
<GovernancePartPolicySeverity>S3 · delivery phase 2 · from phase4/policy-detail · Severity (the recommended / organization pair), on UxTableList (2026-10-19)Two UxTableList rows: Qpoint recommended (definition version) and Organization (the in-place picker, who set it, when, stricter or softer), with "clear" back to the recommendation (severity-reset). Under it, the open findings generated at another severity: they keep theirs (D2).
Severity
new findings are generated at high · set by the organizationLevel | Severity | Set by | When | Note | |
|---|---|---|---|---|---|
| Qpoint recommended | medium | Qpoint | definition v3 | overridden by the organization | |
| Organization | high | Dana (security admin) | 2026-09-30 15:10 | in effect · stricter than recommended | |
A change reprioritises only: it never re-evaluates (D2) and never touches scope, enforcement or exceptions. Findings keep the severity they were generated with.
<GovernancePartPolicyFrameworks>S3 · delivery phase 3 · from phase4/policy-detail · Frameworks (requirement mappings), on UxTableList (2026-10-19)One UxTableList row per mapped control, with sorters: framework item (ComplianceTag, grey when the framework is untracked) · control id and label, with why it's mapped · shared with (the other policies mapped) · tracked · framework →.
Frameworks
14 controls in 4 frameworksFramework | Control | Shared with | Tracked | |
|---|---|---|---|---|
LLM03:2025Supply Chain Partial — pin at load; sourcing is build-time | 1 other policy | Tracked | framework → | |
GOVERN 1.6Mechanisms are in place to inventory AI systems Strong — Qpoint's live inventory is the mechanism | 1 other policy | Untracked | framework → | |
GOVERN 6.1Policies and procedures address third-party AI risks Partial — enforcement records prove the policy runs; writing it is yours | 3 other policies | Untracked | framework → | |
GOVERN 6.2Contingency processes handle failures in high-risk third-party data or AI systems Partial — block a failing provider or server; the contingency plan is yours | 1 other policy | Untracked | framework → | |
MANAGE 2.4Mechanisms supersede, disengage or deactivate AI systems that act outside intended use Strong — block a provider, model or MCP server, with timestamped enforcement | 2 other policies | Untracked | framework → | |
MANAGE 3.1Third-party AI risks are monitored and controls applied and documented Strong — third-party AI use is what Qpoint sees | 3 other policies | Untracked | framework → | |
MAP 4.1Risks of AI components, including third-party data and software, are mapped Partial — which data reaches which provider and tool feeds the map | 2 other policies | Untracked | framework → | |
MAP 4.2Internal risk controls for AI components, including third-party, are documented Addressable — the Policy Config is the documented control set | 2 other policies | Untracked | framework → | |
MEASURE 3.1Existing, unanticipated and emergent AI risks are tracked Strong — first-seen tools and models, shadow AI | 3 other policies | Untracked | framework → | |
ASI04Agentic Supply Chain Vulnerabilities Addressable — inventory, pinning, kill switch | 2 other policies | Untracked | framework → | |
ASI10Rogue Agents Partial — expected vs observed, and the kill switch | 2 other policies | Untracked | framework → | |
CC3.2Identify and analyze risks Partial — the inventory feeds the risk assessment | 1 other policy | Untracked | framework → | |
CC6.8Prevent or detect unauthorized or malicious software Strong — for unapproved agents, harnesses and MCP servers | 2 other policies | Untracked | framework → | |
CC7.1Detect configuration changes and new vulnerabilities Partial — new tools and versions, first seen | 1 other policy | Untracked | framework → | |
Rows for an untracked framework are dimmed. Tracking one changes no policy and re-evaluates nothing.
<GovernancePartFindingHistory>S1 · delivery phase 2 · from phase4/finding-detail · Lifecycle (the organ), on UxTableList (Mark's screenshot, 2026-10-19)The finding's lifecycle, append-only, as a UxTableList with column-header sorters: time (oldest first) · actor · what → state · cause. A cause is a change id (linking to S3's History row) with its summary, policy evaluation for the detection, or the person's reason.
History
4 rows · append-onlyTime | Kind | Actor | What → State | Cause |
|---|---|---|---|---|
| 2026-10-08 14:09 | System | qdash | detected → open | policy evaluation · Policy Config v12 |
| 2026-10-09 09:15 | Re-evaluationv12 | qdash | re-evaluated → resolved: allowed | CH-1Exception: Off for Team A — Team A owns the Vanta integration |
| 2026-10-14 08:00 | Re-evaluationv12 | qdash | reopened → open | CH-5Exception E-A revoked: Team A moved off Vanta |
| 2026-10-14 08:00 | Re-evaluationv12 | qdash | enforcement confirmed → resolved: now enforced | CH-5Now enforced on mac-a1 · Exception E-A revoked: Team A moved off Vanta |
<GovernancePartFindingDetails>S1 · delivery phase 2 · from phase4/finding-detail · the band, as a strip of layer items (Mark's screenshot, 2026-10-19)Severity (SecuritySeverityTag; at detection, and now when the policy changed it) · Status · User (UxAvatar) · Team · Endpoint (EndpointPawn) · Policy (links to S3) · Applies via (c118, the Oct 19 world: the policy’s own mode or the exception for the person’s narrowest context, its trail on hover, linking to S3’s Mode or the exception’s row; the c114 world shows Policy group(s) with S3’s hover card, Mark 2026-10-19) · Framework(s): ComplianceTag for each framework that maps the policy.
Details
<GovernancePartFindingSession>S1 · delivery phase 2 · from layer TranscriptPanel (c85) on sessionTranscript() (Mark, 2026-10-19)The session that generated the finding, read in place: View Full Session over the layer's TranscriptPanel. The world records sessions but not turns, so governance-transcript.ts builds them: an opening turn, a turn per finding the session generated at its evidence moment, a closing turn.
Session
S-1 · 2026-10-08 14:02Chat Transcript
4 turnsI need help with compliance evidence export. Start by looking at what's in the repo.
I'll read the project layout first.
Before we start, which account is this running under?
Pull the current control list and the evidence for each one, and put it in a table I can send.
I'll use the Vanta MCP tools to read the controls and their evidence.
Is that everything?
Yes. That's the change, and I've left a note on what still needs a decision.