trust
Privacy and local data policy
Core learning state, SQL drafts, progress, query history, and dataset execution stay on the learner device in the first release.

Core learning without an account
No account is required for lessons, reviews, projects, Playground, local saves, progress, Run, or Check.
Guest progress is local by default and remains usable without PostgreSQL or account configuration.
Optional accounts add backup and cross-device sync only after explicit authentication and scope choice.
Local execution and no telemetry SDK
Run and Check SQL execute in the browser worker; SQL Trail has no remote SQL execution path for arbitrary learner SQL.
Arbitrary Run/Check SQL and query history never enter server logs, route parameters, error reporting, metadata, or default cloud sync.
SQL Trail does not include telemetry or analytics SDKs in this phase.
Sync, diagnostics, assets, and consent
Progress, mastery, and preferences may sync for authenticated users. Drafts, saved queries, and project notes sync only by separate opt-in.
No remote fonts, icons, lessons, datasets, or image dependencies are required at runtime.
Diagnostic reports exclude learner SQL, notes, query history text, result rows, and account secrets by default.
Account security email, learning reminders, and product updates are separate purposes with separate consent states.
Export and deletion exist for both local browser state and cloud account state.