Skip to main content

Safe by Default

Intelligence with a conscience.

ShowOps.AI is built for professionals who can't afford a data surprise. Ethical, responsible, secure, private β€” designed in, not bolted on.

The Marquee Claim

Your data trains your system.
Never anyone else's.

ShowOps.AI learns per-tenant β€” your venues, your crew patterns, your workflows. No pooled training. No cross-tenant aggregation. No vendor LLM trained on your data, ever. Learned patterns are deletable with one action, within 24 hours.

Four Pillars

How we think about AI.

Every AI decision at ShowOps.AI runs through these four lenses. When in doubt, the pillars override convenience and velocity.

Ethical

We do not build features whose primary value is monitoring people. We surface bias in ranking β€” every vendor score, crew suggestion, and conflict resolution comes with the features that drove it. We do not automate decisions that meaningfully affect people without a human in the loop.

Responsible

Agents propose; humans decide. Every consequential action creates a proposal (reviewable at /api/agents/proposals), not a direct mutation. Autonomy is earned per capability through explicit review β€” not granted by default.

Secure

Row-Level Security on every table. 3-layer RBAC for agents: role β†’ agent access β†’ venue scope β†’ data filter. Prompt-injection defense on every untrusted input (lib/agent-input-guard.ts). Audit logs with before/after snapshots, 24-month retention.

Private

Per-tenant learning, no pooled training. Your data trains your system, never anyone else's. Data minimization: only collect what the feature needs. Sub-processors (Supabase, Anthropic, Vercel, Resend, Sentry, plus optional integrations like Microsoft Graph) listed in the DPA; each role in the data flow documented. No third-party analytics that fingerprint users.

Per-Tenant Adaptation

What your system learns β€” and what it doesn't.

Adaptation is on by default, disclosed at onboarding, and disableable in one action. Here's the exact scope.

βœ“ What adaptation uses

  • Structural patterns β€” repeat venue layouts, typical crew roles, workflow sequences specific to your organization
  • Corrections and overrides β€” when your team rejects a recommendation, the system notes the signal behind the rejection
  • Preference signals β€” which specialists you accept first, which flags you consistently override
  • Usage patterns β€” sequencing, timing, common fix paths

βœ— What adaptation does NOT use

  • Raw rundowns, LLDs, contracts, chat transcripts, or personally identifying crew data as training signal (referenced at inference time only β€” not used to tune weights)
  • Any other tenant's data, ever, under any circumstance
  • Data that has been deleted at the tenant's request
  • Data from tenants who have turned learning off

The revocability commitment: every tenant has a first-class "Delete my learned patterns" action that returns ShowOps.AI to baseline for their organization within 24 hours. No support ticket. No sales retention conversation. A button.

The Meta-Loop

How your system gets smarter, in four steps.

One event's rhythm is six phases. What happens across events is a loop of four. Every show adds to your tenant's context β€” your system compounds from event to event, and the next one starts sharper than the last.

  1. 01

    Capture

    Every event adds to your tenant's context. Venue layouts, crew patterns, vendor networks, schedule rhythms β€” captured as structural signal, not raw content.

  2. 02

    Learn

    The system adapts inside your boundary. Preferences noted. Corrections absorbed. Patterns recognized. No cross-tenant pooling, ever.

  3. 03

    Deliver

    Next event runs with more of your context embedded. Smarter recommendations from day one. Less time spent teaching the system what your team already knows.

  4. 04

    Measure

    Variance, outcomes, what didn't work. Fed back into the next capture β€” the loop closes and starts again, sharper.

loops Β· every event makes the next one sharper

The motion is real β€” and it's strictly per-tenant. No cross-customer pooling. No industry-wide corpus. Your loop stays inside your boundary, and you can stop it or reset it in one click.

Ten Commitments

Backed by code. Not by marketing.

Every commitment below is traceable to a migration, a library, or a test. If you need the exact file and line, ask your security reviewer to email security@showops.ai β€” we'll send it.

01

Per-tenant learning; no pooled training

Your data trains your ShowOps.AI β€” adapting to your venues, crew patterns, preferences. Never trains a cross-tenant model, never pools with another tenant's data, never feeds an industry-wide corpus.

PROOF β†’lib/anthropic.ts runs under commercial no-training API terms. Per-tenant adaptation state is org-scoped and isolated at the learning layer. No fine-tuning pipeline crosses tenant boundaries.

02

Human-in-the-loop by default

Every consequential agent action creates a proposal, not a direct mutation. Proposals expire in 7 days. Role-gated approve/reject.

PROOF β†’vip.agent_proposals (migration 022), /api/agents/proposals endpoint.

03

Least-privilege context

Agents receive only the data their role and scope allow β€” not a tenant-wide data fishing license.

PROOF β†’lib/agent-rbac.ts β€” 3-layer RBAC (role β†’ agent β†’ venue β†’ data filter). getChatContextDepth(role) limits LLM input by role.

04

Prompt injection defense

Untrusted input (user text, imported files, vendor data) is treated as hostile. Sanitized and flagged before reaching any model.

PROOF β†’lib/agent-input-guard.ts + tests/lib/agent-input-guard.test.ts.

05

Traceable reasoning

Every agent invocation is logged with inputs, outputs, prompt version, token counts, and model. Outputs link back to the source data they cited.

PROOF β†’vip.agent_runs + lib/agent-run.ts wrapper. Audit log in lib/audit.ts with before/after snapshots (24-month retention).

06

Explicit AI labeling

Anything written by an agent is visibly labeled in the UI. Users always know when they're reading machine output vs. human output.

PROOF β†’components/lld/agents/agent-results.tsx renders the "AI-generated, pending review" badge. Proposals carry status pills through the review flow.

07

No autonomous financial decisions

Budget commits, SOW signatures, work-order dispatch, and change-order approvals all require human sign-off. Agents recommend; humans commit.

PROOF β†’Budget agent (platform:margin_advisor) is advisory only. SOW signature gated by canSignSow (exec-only). Actualization triggered by human-confirmed WO completion.

08

Bias awareness & transparency

Ranking features expose their signals and allow override. Every vendor score comes with the features that drove it.

PROOF β†’lib/supplier-scoring.ts returns { score, signals }. Staffing optimizer surfaces "why this suggestion" to the reviewer.

09

No surveillance of workers

Staffing tracks certifications, availability, and costs β€” not location, keystrokes, or behavior.

PROOF β†’staffing schema has no location, screenshot, or activity-tracking columns. PR-template checklist on every staffing migration.

10

Reversibility

Every agent-initiated mutation has an undo path: a revert action, an audit-log-backed manual reversal, or an explicit out-of-band process.

PROOF β†’lib/audit.ts captures before/after snapshots on every mutation. Proposal rejection is zero-cost (nothing mutated).

Sub-Processors

Every vendor. Every role.

The full list of third-party services that process ShowOps.AI customer data, what each one does, and where it runs. Full terms live in our DPA.

VendorRoleRegion
SupabaseDatabase, authentication, file storageUS (East)
AnthropicLLM API (commercial no-training terms)US
VercelApplication hosting, edge networkGlobal CDN, US primary
ResendTransactional email deliveryUS
SentryError monitoring, performance tracingUS
Google CloudService-account-backed Google Sheets sync for venue LLD dataUS
Microsoft (Graph API)Optional, per-tenant β€” OneDrive / SharePoint speaker content ingestionUS / EU (tenant region)

Known Limits

Here's what we're not claiming today.

Honest assessment. Every item below is a gap we're actively working on β€” and a promise we'll tell you before we claim to have closed it.

Learned-state reset coverage

DELETE /api/admin/learned-patterns currently resets adaptive thresholds (the tunable parameters that learn from your team’s overrides) within 24 hours. As additional learned-state tables ship in upcoming phases (metric baselines, template suggestions), the same endpoint extends to cover them.

Third-party penetration testing

Internal quarterly; external annual on the roadmap.

SOC 2 attestation

SOC 2-aligned architecture with completed internal gap analysis. Type 1 attestation on the roadmap.

EU data residency

Today the production platform runs on Vercel us-east-1 and Supabase us-east-2. EU residency available on request for enterprise tenants β€” contact security@showops.ai.

SSO (Okta / SAML)

On the roadmap for enterprise tenants. Contact security@showops.ai for availability.

Security Contact

Security questions?
Security researcher?
Same address β€” we read it.

We respond to security reports within one business day. Coordinated disclosure welcomed. If a claim on this page doesn't match what you've found in the product or the DPA, we want to know β€” and we'll fix the claim or the product.

Safe by default β€” ShowOps.AI Β· ShowOps.AI