Seedless Seedless Join the Beta

Security Policy

Last updated: July 30, 2026

Seedless is a non-custodial Solana wallet in private mainnet beta. Users hold their own funds. A bug here can cost someone real money, so we treat security reports as the highest-priority work in the project.

If you are here to report something, jump to Reporting a vulnerability.

1. Reporting a vulnerability

Do not open a public GitHub issue for a security problem. Do not post it on X, in a Telegram group, or in a Discord.

Report privately, by either channel:

ChannelAddress
Emailfrancis@seedlesslabs.xyz
Direct message@francis_codex on X

Include as much of the following as you have:

You do not need a polished write-up. A rough report of a real issue is worth far more to us than a well-formatted non-issue.

Our response commitment

SeverityAcknowledged withinAssessment and fix plan within
Critical24 hours72 hours
High48 hours5 days
Medium72 hours10 days
Low / informational5 dayswith the next release

We will keep you updated while a fix is in progress, tell you when it ships, and credit you in the release notes unless you ask us not to.

2. What this policy covers

Seedless follows a partnership-first architecture. Roughly 70% of the load-bearing cryptography and infrastructure is delegated to external systems that carry their own audits. The custom surface is deliberately small: a TypeScript integration layer plus one on-chain Rust program.

This matters for reporting, because sending a report to the wrong party delays the fix. The tables below say who owns what.

In scope — report these to us

AreaWhat it covers
Transaction construction and broadcastInstruction assembly, associated token account creation and idempotency, fee and rent accounting, mint validation, the sponsored versus unsponsored path
Session signer lifecycleStorage, scope, expiry and revocation of session keys, and how they propagate into transaction builders
On-chain authorization programThe custom Rust (Pinocchio) controller that gates MPC dWallet operations behind passkey authorization: signature verification, account validation, CPI safety, replay resistance
Private transfer integrationOur wrapper around the stealth-address protocol: master-seed derivation, UTXO accounting and selection, claim, deposit and withdraw flows, recipient registration
ZK proof integrationOur bindings around partner circuits: proof input integrity, serialization, handling of secret material during proof generation
Cross-chain clientUser-share confidentiality, and construction of authorization payloads against the on-chain controller
Value-movement screensSend and swap state correctness, double-send prevention, honest disclosure of irreversible costs such as account-creation rent
Stealth and token-detection helpersAddress derivation correctness, and any false-positive token surfacing that could enable a phishing interface
Anything that moves user funds without informed consentAlways in scope, wherever it lives

Out of scope — report these to the owning project

These are externally audited and not maintained by us. We are happy to help coordinate if a report reaches us first, and we will forward it rather than sit on it.

SystemOwns
LazorKitPasskey authentication, the smart wallet program, and the integrated Kora paymaster that sponsors fees
UmbraThe stealth-address protocol, the encrypted execution layer, and the ZK circuits themselves
JupiterSwap aggregation and routing
AlchemyRPC infrastructure
IkaThe MPC network protocol and the Ika-owned SDK

Also outside this policy: app store policy compliance, and UI or visual issues with no security consequence. Those are welcome as normal GitHub issues.

3. Trust boundaries

What Seedless implements, versus what it delegates and assumes to be correct.

BoundaryTrust assumption
Passkey signingDelegated to LazorKit. Seedless does not implement WebAuthn or smart-wallet signing
Gas sponsorshipDelegated to LazorKit's integrated Kora paymaster
Stealth-address protocolDelegated to Umbra. Seedless wraps the client SDK
Swap routingDelegated to Jupiter
RPCDelegated to Alchemy
MPC and cross-chainDelegated to Ika. Seedless authorizes operations via its own on-chain controller
Transaction construction, session-key lifecycle, ATA handling, intent routingImplemented by Seedless
Multi-chain authorization via the on-chain controllerImplemented by Seedless

The bottom two rows are ours. That is where we most want your attention.

4. Threat model

Assets being protected

Adversaries considered

Known gaps

We would rather state these than have you waste time discovering them:

5. Coordinated disclosure

We ask for coordinated disclosure, and we commit to the same in return.

If we go quiet on you for more than two weeks without explanation, treat that as a failure on our side and escalate by DM.

6. Safe harbour

We will not pursue legal action, and will not ask a platform to act against you, for security research conducted in good faith under this policy. Good faith means:

Live exploitation against production, the paymaster, or any partner-operated system requires our written consent in advance. Ask first. We will usually say yes and help you set it up safely.

7. Rewards

Seedless is pre-revenue and bootstrapped, so we cannot currently promise a cash bounty, and we would rather be honest about that than imply one.

What we can offer today:

If you find something critical, talk to us anyway. We will do what we can.

8. Supported versions

Only the latest published beta build receives security fixes. Older APKs are not patched and should be replaced. Version history is published with each release.

9. Things we will never do

So you can recognise an impersonation attempt:

Report impersonation to the addresses in Section 1.