Mask names
Keep structure visible while hiding business identifiers.
privacy
The formatter is designed with a clear separation between internal training examples and visitor input. Any public launch should make the processing path visible and predictable for the user.
User input stays separate from training examples.Local mode should work without sending code away.Future server mode should explain what is processed.Sensitive identifiers can be masked before processing.
The hosted application processes submitted code on the server. Activity records link a visitor session to page visits, controls used, settings, output copying, imports, formatting and export outcomes, and operation times. Formatting activity records store the exact submitted code, its length and operation outcome. Code is captured when formatting is requested, rather than on individual keystrokes. Setting changes identify the control and its previous and new values. Password fields, individual keystrokes, box folding and decorative controls are not recorded.
When a connection fails, pending activity is kept in browser storage and retried. A unique event identifier prevents duplicate database rows. Opening the project directly from local files remains available for offline training and does not send activity to a server.
Language workspaces retain separate input drafts in this browser tab's session storage so returning to a language restores your work. Drafts are not sent to the server as you type. Closing the tab ends that session; resetting a workspace clears its current draft.
A privacy-focused screen can mask identifiers before server-side processing. For example, table names, column names, and literal values can be replaced with neutral placeholders while preserving structure.
Keep structure visible while hiding business identifiers.
Keep joins, clauses, blocks, and nesting useful for tracing.
Tell the visitor exactly which mode is active before formatting.