Tossprig Privacy Policy
com.servenzo.tossprig · Servenzo
Implementation disclosure updated: 2026-10-20 App: Tossprig (com.servenzo.tossprig) Publisher/developer: Servenzo Privacy contact: [email protected] Public policy address: https://servenzo.com/apps/tossprig/privacy-policy
This disclosure describes Tossprig R1 local tools and the separately labelled previous draft with optional shared platform controls. Cloud availability depends on the publisher’s configured deployment. A build without a backend URL works locally. No sign-in or upload is performed automatically.
Operator, hosting and internal testing
Servenzo operates this app and its optional cloud service. Contact [email protected] for privacy questions or requests. The app service is hosted on a Servenzo-operated VPS in the United Kingdom at https://apps-api.servenzo.com. The shared sign-in service is operated there using Keycloak; app accounts and access tokens remain scoped to their own app. Quizlilt child cloud accounts remain disabled.
Cloudflare provides DNS and the traffic proxy for the public website and API. It processes network addresses, request timing and security information through its global infrastructure. Choosing an online service sends the selected information over the network; core local features do not upload your records automatically. Google Play separately handles app distribution, tester accounts and any authorized store purchases.
Account and synchronized information is retained while you keep the app cloud account, subject to the app's export and deletion controls. Requesting account deletion blocks app access and queues scoped cleanup. The shared identity-provider profile has separate controls; contact [email protected] to request its removal, with identity verification where needed. Files expire at the time you select; expiry blocks access before background cleanup removes stored versions. Independent exports and copies are outside that cleanup.
API access logs contain network address, request path without query parameters, status and timing. They rotate daily with fourteen retained rotations; service diagnostic logs rotate by size. The internal-testing service has no automated off-server backup or guaranteed recovery. Keep independent copies of information you need. Optional cloud files use private encrypted storage that the server operator can read. This test deployment uses a locally held encryption key and is not end-to-end encrypted; a maintained key-management service is required before public cloud use.
Local information and use
Quick-tool drafts, named choice kits, ticket identities and labels, integer weights, immutable configuration revisions, active session/bag state, committed outcomes, source/algorithm/hash metadata, administrative corrections, imported receipts and retention preferences are stored in the app-local transactional database (native private file; IndexedDB on web). A result is stored before it is revealed. The previous preferences are preserved separately as an upgrade draft; no historical draws are invented.
Optional account and snapshot sync
You may use the local demo without creating an account. If you choose sign-in, the configured identity provider processes authentication in your browser. The backend verifies a provider subject and app-specific access token, and stores a separate app account and workspace. Native session tokens use platform secure storage; the web session token is kept in memory. Connection drafts and revision metadata may be stored locally to preserve retries, without saving the access token in ordinary preferences.
Snapshot data eligible for explicit upload from Previous draft & cloud controls: only the original integer range inputs, choice text and selected die sides. New R1 kits, outcomes, receipts and active sessions are not uploaded through that endpoint.
You choose whether to upload the allowed local fields or replace them from cloud state. A conflict requires an explicit choice rather than silently overwriting newer work. Shared infrastructure does not give one app’s account access to another app’s private workspace. Operational requests necessarily reach the configured server/provider and can expose network information such as IP address and request timing to that infrastructure.
Other optional platform controls
Cloud file controls transfer only files you deliberately select, together with bounded filename/type/size, checksum and expiry metadata. These server-readable files are not end-to-end encrypted vault storage. Expiry and deletion block future authorized access before eventual physical cleanup; previously downloaded copies cannot be recalled.
Notification controls store the schedule, message and inbox record you submit. If push delivery is configured and you register a device, the service stores its app-scoped push token and sends the message through the configured push provider. Provider acceptance does not establish that the device displayed it. In-app inbox delivery and local phone reminder scheduling have different behavior.
Google Play billing controls, where configured, send the selected product and purchase token for server verification and store verification/entitlement status. Payment details are handled by Google Play rather than entered into this app. No paid entitlement is granted just because a device claims a purchase. Development adapters are identified as development features; they do not establish a paid purchase.
The app does not include advertising or product analytics in this implementation. Future ads, child profiles, additional SDK collection or other new processing need separate disclosure and review before being enabled.
Storage, retention and deletion
The local transactional database, recovery exports and previous preferences are not encrypted by an app-level data layer. Browser data belongs to its origin/profile and may be removed by browser storage policies. Device/browser security provides platform protection; this app is not an encrypted vault. Android automatic app backup is disabled to avoid restoring encrypted authentication tokens on another device; this also excludes other app-private data from that automatic backup mechanism. Device manufacturers or separately selected document providers can operate independent services.
Optional retained history has age/count controls and can be turned off. With history off, a committed pending result stays recoverable until Done; acknowledged outcome payloads are removed while the active configuration, bag identities and minimal reversal/deduplication lineage remain until the session finishes. Saved kits and deliberately imported archives are separate library data. Retention is evaluated during writes and reopening; it protects a pending result and active bag recovery. A bounded active session must be finished before further operations when its limit is reached.
Deleting saved kits does not erase retained session snapshots. Lists, history and imported archives have deliberate deletion and a 30-second undo window. Expired undo payloads and old deletion metadata are cleaned on subsequent operations or reopening, rather than a promise of immediate physical erasure. Damaged rows are isolated for recovery. The separately preserved previous draft remains until app/site storage is cleared.
Import is an explicit preview-and-confirm operation. A received session is an inert foreign record, never proof of a result generated by this installation; it cannot replace an active session. Local export/share previews offer label aliases for supported kit/session copies. Aliases are pseudonyms, not anonymity: IDs, timing, hashes and separately retained external copies may still link people or records. Raw foreign archive export preserves the received labels and displays a separate warning. Recovery exports can include private labels, drafts and quarantined rows.
Copy, paste, file import/export and system share occur only after your action. The selected recipient or document provider may process external copies under its own controls. JSON is unencrypted; a local receipt is not independent certification. There is no automatic general recovery import/restore. Participant names, list text, seeds and outcomes are not sent as analytics or optional diagnostics; no such telemetry queue is enabled in this version.
You can remove app-local data with Android Settings > Apps > Tossprig > Storage > Clear storage (labels vary). Clearing local data or uninstalling does not by itself delete an optional cloud account, cancel a Google Play subscription or erase a file you exported.
Cloud account export/deletion are separate account controls and require recent sign-in. Account deletion applies to this app’s account and workspace, rather than silently deleting all Servenzo app accounts. It ends access and initiates scoped cleanup; a queued or partially completed cleanup is not a claim of immediate forensic erasure. Identity-provider accounts, Google Play purchase records, mandatory provider retention and independent external copies have separate controls. See the operator and hosting section of this policy for the current deployment and retention settings.
Device access
The app does not request camera, microphone, contacts or location access. INTERNET allows an explicitly configured HTTPS service connection. Native browser sign-in returns through this app’s unique callback scheme.
Children and audience
The publisher intends this app for users aged 13 and older. The app does not ask for a date of birth or build an account-based age profile.
Contact
Contact [email protected] for privacy questions. Do not include private files, child information, habit details or financial records in an initial support message. Sending support email uses your chosen email provider and is separate from this app’s feature data. No support message is sent automatically.
Current local R2 increment — 20 October 2026
The new local facilitator workspace stores batch/range/replacement choices, participant stable IDs and private labels, exclusions, shuffle/team snapshots, remainder policies, turn queues and explicit skip/absence/rejoin administration. Random outputs are acknowledged before reveal. Administrative actions are distinguished from random selection. Explicit alias copies are pseudonyms, not anonymity; recovery exports can include original labels and captured failed operations. No betting, paid selection or externally certified draw is introduced.
The new feature state remains app-scoped and local. Explicit JSON/file/clipboard exports are independent private copies; recovery can contain active or captured unacknowledged inputs. Deleting local feature data does not erase exports, OS/provider originals, separate app accounts or another product. Provider, installed-device, signed-release and store/public-policy qualification are not inferred from local tests.
Contact [email protected] for support or privacy questions.