Security

Security is foundational to DeerDawn. We implement defense-in-depth strategies across infrastructure, application, and data layers to protect your AI session memory: the brief your tools read before every session.

Infrastructure Security

Encryption: Everything is encrypted in transit using TLS 1.3+, with HTTPS enforced across the API and dashboard and automatic HTTP-to-HTTPS redirects. At rest, your project context — the brief itself — is protected by envelope encryption: AES-256-GCM under a data key unique to your workspace, which is in turn wrapped by a master key held outside the database. We say “project context” rather than “everything” deliberately; we would rather be exact about what is covered than round it up.

Network Isolation: Our API runs in isolated network segments with strict firewall rules. Database connections are encrypted and restricted to authenticated application servers only.

Hosting: We use Fly.io for geographically distributed application hosting with automated failover and Neon for PostgreSQL with continuous backups and point-in-time recovery.

Application Security

Authentication: Multi-mode authentication supports API keys (SHA-256 hashed) for machine-to-machine access and OAuth 2.0 bearer tokens for user sessions. API keys support expiration enforcement and environment scoping (sandbox/production).

Authorization: Three roles, deliberately: owner (billing and membership), member (read and write), viewer (read). Workspaces are strictly isolated, and every request resolves which workspace it may touch through a single membership check before any data is read — one place, so a new endpoint cannot quietly skip it.

Rate Limiting: Redis-backed rate limiting protects against abuse and DoS attacks. Rate limits are enforced per IP address and per API key with configurable thresholds.

Input Validation: All API requests are validated using Zod schemas with strict type checking. Request payloads are limited to 256KB to prevent memory exhaustion attacks.

Security Headers: We enforce Content Security Policy (CSP), X-Frame-Options, X-Content-Type-Options, and other security headers via Helmet middleware.

Session Memory Data

DeerDawn session memory stores structured extractions from your AI conversations, not transcripts. Here is exactly what is and is not stored.

What DeerDawn stores

Stored: Current task, project status, goals, open questions, recent decisions, tech stack notes, file paths, and source/provenance metadata for extracted context.

Not stored: Full conversation transcripts, secrets, passwords, API keys, or payment data. The extraction pipeline only writes structured fields. Raw message content is discarded after extraction.

Encryption: Project context is encrypted at rest with AES-256-GCM under a per-workspace data key, and everything is encrypted in transit with TLS 1.3+.

Auto-cleanup: Completed goals, resolved questions, and replaced tasks are automatically removed from the context graph when DeerDawn detects completion language in a manage_memory call. Stale nodes do not accumulate.

User Data Controls

Every user has direct controls over their context data from the Security tab in the dashboard.

Access log: Every read, write, export or deletion of your context generates an audit entry visible in the dashboard, recording the person responsible, the tool they used, and the time. On a shared workspace it also covers invitations, role changes, removals and project moves — the events an audit log is actually read for.

Field exclusions: Mark specific context fields as excluded in your preferences. Excluded fields are never written to the database, even if detected during extraction.

TTL / auto-expiry: Set a TTL (e.g. 30 days). Projects that have not been updated within that window are automatically and permanently purged.

Data export: Download everything DeerDawn has stored (projects, graph nodes, and your full audit log) as a structured JSON file at any time.

Account deletion: Delete all your data immediately from the Security dashboard. The deletion is permanent.

Shared workspaces

Putting your team’s accumulated knowledge somewhere only works if you can also keep things out of it. Sharing is one setting per project, with three states, and nothing moves between them on its own.

Personal: yours alone. Nobody else in the workspace can open it — including an owner. This is for work that happens to live here but is not the organisation’s.

Private to the organisation: not shared with the team, but the organisation’s work. An owner can read it, so that when somebody leaves their work does not leave with them. Owners can read it; they cannot silently rewrite it.

Shared: everyone in the workspace sees it, and you choose which sections travel.

Nothing is shared by accident. Everything you had before a workspace became a team stays personal until you move it yourself — inviting a colleague never publishes what predates them.

When somebody leaves

Removing a member revokes their API keys immediately and ends their access to the workspace. What they contributed stays, and stays credited to them by name: a decision nobody is named on cannot be trusted, chased, or retired, and a team that lost half its context whenever an engineer left would be the opposite of the product. Their own personal projects go with them.

Data Protection

PII Redaction: DeerDawn is designed to store structured project context rather than raw transcripts. Users should avoid placing secrets or unnecessary personal data into project context, and can delete or export workspace data from the dashboard.

Data Retention: Free workspaces keep short history; paid workspaces keep longer history according to the active plan. Customers can request early deletion or remove workspace data from the dashboard.

Audit Logging: Sensitive administrative actions such as API key creation, user management, export, and deletion are logged with actor and timestamp for security review.

Data Isolation: Each organization's data is logically isolated in the database. Cross-tenant data leakage is prevented by parameterized queries that enforce org_id filtering.

Resilience and Availability

Circuit Breakers: Database calls are wrapped in circuit breakers so transient infrastructure problems fail predictably instead of cascading through the app.

Caching: Selected context and setup status data may be cached briefly to reduce database load and improve latency. Cache invalidation occurs on writes.

Emergency Lockdown: Workspaces can be locked in emergency scenarios to prevent further API access while preserving data for investigation.

Monitoring and Incident Response

Real-time Monitoring: We monitor API health, briefing failures, checkout events, setup status, and service latency.

Status Transparency: Our status page at deerdawn.com/status shows whether the API and the dashboard are reachable right now.

Incident Response: We maintain an incident response plan with defined escalation procedures. Security incidents are reported to affected customers within 72 hours as required by GDPR.

Vulnerability Management: Dependencies are scanned in CI/CD pipelines, and high-severity findings block releases until patched.

Compliance and Certifications

SOC 2 Type II: We are actively pursuing SOC 2 Type II certification, and our current security controls are designed to meet SOC 2 requirements. We’ll publish the certification status here as it’s finalized.

GDPR and CCPA: We provide Data Processing Addendum (DPA) for GDPR compliance and support data subject rights (access, rectification, erasure, portability). See our DPA and Privacy Policy for details.

Data Location: All data processing occurs within the United States. International transfers use Standard Contractual Clauses (SCCs) approved by the European Commission.

Responsible Disclosure

If you discover a security vulnerability in DeerDawn, please report it to [email protected]. We commit to responding within 48 hours and will work with you to understand and address the issue promptly. We do not currently offer a bug bounty program but deeply appreciate responsible disclosure.

Last updated: May 2026

For security inquiries: [email protected]