Security

Built for teams
that ask hard questions.

Security teams should ask hard questions before adopting new tooling. Here are our honest answers โ€” what we do, what we don't, and where the boundaries are.

๐Ÿ”’
Your code never leaves your infrastructure

Stoney is a binary that runs inside your own CI runners. It makes HTTP requests against your staging environment and checks the responses. No source code, no secrets, and no HTTP payloads are ever transmitted to Stoney's servers.

๐Ÿช™
Tokens are never stored in plaintext

When you generate an API token, we display it exactly once. What we store is the SHA-256 hash โ€” never the token itself. There is no recovery path; if you lose it, you revoke it and generate a new one.

๐Ÿ“‹
Minimal Jira and Slack scopes

The Jira integration requests only read:jira-work and write:jira-work. Slack requests only the ability to post to a chosen channel. We never request admin, deletion, or workspace management permissions.

๐Ÿงฑ
Role-based access within your org

Every action is gated by role. Owners manage billing and org settings. Admins invite members and manage tokens. Members can view runs. There are no escalation paths between roles.

๐Ÿ“
Append-only audit log

Every security-relevant action โ€” token creation, revocation, member changes, plan changes โ€” is written to an append-only audit log. You can see who did what and when. (Audit log available on Pro plan.)

๐ŸŒ
No third-party trackers or ad networks

We use Vercel Analytics for anonymized, aggregate performance metrics only. No Google Analytics, no Facebook Pixel, no ad networks. Your usage data is not sold or shared with any third party.

Implementation
Token storageSHA-256 hash only โ€” raw value shown once, never persisted
TransportTLS 1.3 enforced ยท HTTP โ†’ HTTPS permanent redirect
AuthOAuth 2.0 (Google, GitHub) + magic-link via NextAuth
Data at restAES-256 encryption via managed Postgres infrastructure
Code accessNone โ€” contracts run in your CI runners, not our servers
Secret isolationEnv vars and CI secrets never leave your environment
Access controlRole-based (owner / admin / member) with least privilege
Dependency auditAutomated via Dependabot + GitHub Advisory Database
Error trackingSentry โ€” sanitized stack traces only, no personal data
BackupsEncrypted daily database backups, 7-day retention
Responsible disclosure

Found a vulnerability? Please email us before public disclosure so we can address it responsibly.

We acknowledge reports within 48 hours and aim to resolve critical issues within 7 days.

security@stoneydev.com
Vulnerability disclosure โ†’ security@stoneydev.comLast updated: March 18, 2026