Bridgit

Incident Response Policy

Bridgit Platform (https://askbridgit.ai)
Version: 1.1 · Effective: October 16, 2026 · Next Review: October 16, 2027

1. Purpose and Scope

This policy governs how Bridgit identifies, responds to, recovers from and communicates about security and privacy incidents affecting the Bridgit platform, its infrastructure, and the data of its users and customer organizations.

Applies to: all Bridgit personnel and contractors with access to Bridgit production systems, source code or cloud infrastructure.

In scope: the Bridgit web application and API, its staging environment, the Google Cloud services they run on (Cloud Run, Cloud SQL, Cloud Storage, Cloud Logging, Secret Manager), third-party services the platform sends data to, and all data processed through the platform.

Alignment: ISO 27001 incident management principles, SOC 2 CC7, GDPR Articles 33 and 34, PIPEDA and its Breach of Security Safeguards Regulations, and Ontario's PHIPA as it applies to our customers. Bridgit is not certified to ISO 27001 or SOC 2.

2. Incident Classification

2.1 Severity levels

Severity Examples Escalation
P1 Critical Confirmed data breach, system-wide compromise, ransomware, production database exposure Yes, all personnel with production access
P2 High Confirmed unauthorized access, cross-organization data exposure, compromised credentials or API keys, critical service failure Yes
P3 Medium Suspicious activity, access anomaly, minor compromise, policy violation No
P4 Low Informational reports, false positives, minor policy deviations No

Bridgit does not operate a formal on-call rotation and does not publish response-time targets. Incidents are handled in order of severity once Bridgit becomes aware of them.

2.2 Incident categories

Category Examples
Data exposure One organization's records visible to another; files accessible to the wrong users
Unauthorized access Permission bypass; use of a stolen session token; administrative functions reachable by regular users
System compromise Cloud Run service compromise; unauthorized database access; Google Cloud IAM escalation
Third-party incident Breach at a subprocessor (for example an AI provider, Google, Stripe) affecting data sent to it
Credential exposure Secrets or API keys exposed in source code or logs; Secret Manager misconfiguration; OAuth token leak
Service disruption Cloud Run or Cloud SQL outage; database connection exhaustion
Phishing and social engineering Targeted attempts against Bridgit personnel or customer administrators
AI-related Personal health information or other restricted data entered into an AI feature; seriously wrong or harmful AI output that was relied on; on-submission AI writing unintended content into forms; a provider model update that makes output unsafe or unusable

A cross-organization data exposure is always classified P2 or higher. Personal health information entered into an AI feature is also classified P2 or higher (section 9.3).

3. Detection and Reporting

3.1 How to report

3.2 How incidents are detected

Bridgit does not operate a security information and event management (SIEM) system, an intrusion detection system or automated alerting. Incidents are identified from:

3.3 Incident Response Lead

Incident Response Lead: Matthew Bromwich, CEO and Privacy Officer.
Responsibilities: triage all reported incidents, coordinate the response, authorize containment actions, decide on notifications, and maintain the breach register.

3.4 Initial triage

  1. Receive the report.
  2. Verify it: reproduce the issue or confirm it from logs.
  3. Assign a severity (P1 to P4) and a category.
  4. For P1 or P2: begin containment immediately and inform all personnel with production access.
  5. If personal information or customer data may be involved: record the time Bridgit confirmed the incident; this starts the customer and regulator notification timelines in section 5.
  6. Record the incident in the breach register (section 6).

4. Response Procedures

4.1 Containment

Incident type Immediate actions
Cross-organization data exposure Identify the endpoint or query; deploy a fix or disable the feature; use the audit log and request logs to establish scope
Compromised API key or secret Rotate the secret in Google Secret Manager; redeploy affected services
Unauthorized account access Deactivate the account (rejected on its next request); remove its memberships; reset its password and MFA; review the audit log. Because signing out does not currently revoke tokens on the server, if session tokens may be stolen, rotate the token-signing key so that all existing sessions end
Service compromise Redeploy from a known-good release; rotate all secrets; review service logs
Third-party breach Rotate the affected credentials; establish what data was sent to that service; notify affected customers per section 5
Database exposure Rotate database credentials; review Google Cloud IAM and database access; establish the data in scope

Evidence preservation: before any destructive containment step (redeployment, credential rotation that ends sessions, data restore), export the relevant Google Cloud logs, the application audit log entries, and the Report a Problem submission.

4.2 Eradication

  1. Identify the root cause (code defect, misconfiguration, credential leak or dependency vulnerability).
  2. Develop and test the fix in staging.
  3. Run the automated checks (linting, unit and access-control tests) required before every production deployment.
  4. Deploy the fix through the standard pipeline: staging first, then production.

4.3 Recovery

  1. If data integrity is affected, restore from the most recent Google Cloud SQL automated daily backup or from the full database export taken before each production release. Point-in-time recovery is not enabled, so up to 24 hours of changes may need to be re-entered. Automated database backups are stored in the Montréal region. Full database exports taken before each production release are stored in Montréal and are kept with no automatic expiry today.
  2. Validate the restored data against a known-good state.
  3. Confirm all rotated credentials are in place in staging and production.
  4. Watch service logs and user reports closely after recovery until the service is stable.
  5. Declare the incident resolved only after that period passes without recurrence.

Bridgit has not tested or committed to a recovery time objective.

5. Notification

5.1 Triggers

Notification is considered whenever an incident involves, or may involve, unauthorized access to, disclosure of, or loss of personal information or customer data. When in doubt, Bridgit notifies.

5.2 Customer organizations

5.3 Regulators and individuals

Law Obligation Deadline Who is notified
GDPR Art. 33 Notify the supervisory authority Within 72 hours of becoming aware, where the breach is likely to result in a risk to individuals The relevant EU data protection authority
GDPR Art. 34 Notify affected individuals Without undue delay, where the risk is high Affected individuals
PIPEDA (Breach of Security Safeguards Regulations) Report to the Commissioner and notify affected individuals where there is a real risk of significant harm As soon as feasible Office of the Privacy Commissioner of Canada and affected individuals; other organizations that can reduce the harm
Provincial laws (for example Quebec Law 25, Alberta PIPA) Varies Generally as soon as feasible Provincial commissioner and affected individuals

Where Bridgit processes data on behalf of a customer, Bridgit notifies the customer under section 5.2 and supports the customer's own notifications.

5.4 Content of notifications

Every notification includes: a description of the incident and the data involved; the date or period of the incident; the steps taken to contain and remediate it; what affected people can do to protect themselves (for example, changing passwords); and a contact for questions (info@askbridgit.ai).

5.5 Decision authority

The Incident Response Lead decides whether notification thresholds are met. For PIPEDA the test is a real risk of significant harm; for GDPR, a risk to the rights and freedoms of individuals. Customer notification under section 5.2 does not depend on these thresholds.

6. Breach Register

Every incident, including those that do not require notification, is recorded with:

The register is maintained by the Incident Response Lead with access restricted to Bridgit personnel who need it.

7. Post-Incident Review

After closing a P1 or P2 incident, Bridgit records a short review in the breach register that:

  1. reconstructs the timeline from logs, reports and communications;
  2. identifies the root cause;
  3. records what worked and what did not;
  4. defines corrective actions;
  5. updates this policy, the platform code or the infrastructure configuration as needed.

Corrective actions are tracked to completion.

8. Communication

Internal

External

9. Platform-Specific Considerations

9.1 Data

Customer content is stored as structured form data in the Bridgit database. The service is not designed to hold personal health information, and customers must not enter it or patient identifiers. Bridgit has no technical filter that detects such information, so incident scoping must check what was actually entered in the affected records.

9.2 Organization isolation

Organizations are isolated by membership-based, default-deny access control. Any case where one organization can see another's data is at least P2.

9.3 AI and other subprocessors

Prompts, relevant form content and attached documents sent to AI features are processed by Anthropic (AI model) and OpenAI (document indexing and fallback model) in the United States. Search queries go to Tavily and to NCBI PubMed, also in the United States, and AI-generated search query text goes to public research and data services (OpenAlex, CanLII, CourtListener, openFDA, FRED, Alpha Vantage, SEC EDGAR, YouTube) in the United States or Canada. Where a user has connected their own Google Workspace account (Drive, Gmail, Calendar, Sheets), AI features can read the content they make available from it. A breach at any of these requires establishing what data was sent. AI request metadata (time, user, organization, AI provider and model, token counts, cost, IP address and browser; not the text of prompts or responses) is recorded in Bridgit's AI usage records.

AI-related incidents. Users report these through Report a Problem or to info@askbridgit.ai, like any other incident. Containment can include disabling AI providers for the affected organization, or for the platform, and disabling an on-submission AI field in the affected template. Bridgit's AI usage records show who made each request, when, and with which provider and model, but not the text of prompts or responses, so what was sent must be established from the affected records and from the user. Data already sent to an AI provider is held under that provider's terms (currently up to 30 days by default); Bridgit cannot delete it from the provider's systems. Personal health information entered into an AI feature is assessed as a possible privacy breach and classified P2 or higher, and the customer is notified as set out in section 5.

9.4 Infrastructure

Component Location Access control
Cloud Run (web application and API) Google Cloud, Montréal Google Cloud IAM; deployments through the CI pipeline
Cloud SQL (PostgreSQL 15) Google Cloud, Montréal Private IP only; Google Cloud IAM; credentials in Secret Manager
Cloud Storage (uploaded files) Google Cloud, Montréal Google Cloud IAM
Cloud Logging Google Cloud, Montréal Google Cloud IAM
Secrets Google Secret Manager Google Cloud IAM; not in source code

Production and staging share one Google Cloud project. Public traffic uses HTTPS. A minimum of TLS 1.2 is enforced. Stored OAuth and integration tokens are additionally encrypted with AES-256-GCM.

10. Policy Administration

Contacts: Security reports and Privacy Officer: info@askbridgit.ai