Introduction
Immigration records can be highly sensitive. This draft describes the behavior verified in the current local installation of MyCaseTrail. Legal operator name and address: [OPERATOR DETAILS PENDING]. The contact page is linked below; do not include case details in a public inquiry.
Information in the workspace
Registration collects an email address, display name, password, and language preference. The server stores a salted password hash, account and session identifiers, a hashed session token, expiry times, and limited authentication-attempt records. The password itself is not stored as readable text.
You may enter I-485 answers, receipt numbers, notes, checklist marks, and case-status results, and upload supporting PDF or image files. The database also stores document names, descriptions, links to form fields, dates, size, type, checksum, revisions, and original file bytes. A receipt number is optional; no case-status lookup starts merely because you saved it. The app does not ask you for payment details. It does not intentionally collect analytics profiles or advertising identifiers.
How information is used
The local server uses this information to authenticate users, keep separate case workspaces, save and validate drafts, organize documents, generate PDF drafts, show progress, remember language, limit sign-in attempts, and maintain data integrity. Case contents are not used for advertising or AI model training in the inspected code.
Storage, sessions, and backups
Accounts, sessions, case data, version history, and original document bytes are stored in PostgreSQL for this installation. Private PDF exports are generated in memory; downloaded copies are then under your control. The application binds to 127.0.0.1, so access is limited to this computer under the current setup. This does not guarantee that a future hosted deployment would keep data on your device.
The browser stores the chosen language in localStorage and a language cookie. Authentication uses a seven-day HttpOnly, SameSite=Strict session cookie. A manual database backup command writes a full dump, including uploaded files, under the ignored local data/backups directory. Legacy migration copies may also remain under data/. JSON case exports omit uploaded documents.
USCIS updates and case status
A public-update check retrieves public USCIS pages and stores a public-source cache locally. If the optional USCIS case-status integration is configured and you actively request a lookup, the server sends the receipt number to the USCIS case-status API and returns the result. It does not send your I-485 answers or uploaded documents with that request. A returned status is informational and does not establish eligibility or approval.
Security measures and limits
The code uses salted scrypt password hashes, hashed session tokens, account-scoped case and document queries, local Host/Origin checks, schema validation, revision checks, private document responses, file-type and checksum checks, database transactions, and a restricted database runtime role. Application and database query logging are disabled in the inspected configuration. These controls reduce risk but do not guarantee absolute security. The current implementation does not establish end-to-end encryption, zero-knowledge storage, or encryption at rest.
Retention and deletion
The application has no user-facing account deletion workflow or documented retention schedule for accounts, cases, documents, version history, or backups. Expired session rows and authentication-attempt records are removed during related authentication operations; this is not a complete retention program. Do not assume that deleting a downloaded file removes a database record or backup.
Requests to access, correct, or delete stored data can be sent to the email listed on the Account and Data Deletion page and must be handled manually by the installation operator. Backup rotation, deletion timing, and any legally required preservation remain open policy and engineering decisions.
California privacy rights
Whether California’s CCPA/CPRA applies depends on the operator’s legal status, business activity, and statutory thresholds, which have not been verified. This draft does not claim that every CCPA right applies to this installation. Where applicable law grants rights to know, access, correct, delete, opt out of sale or sharing, limit certain sensitive-data uses, or avoid discrimination for exercising rights, the operator must provide a verified request process.
The inspected code does not sell or share case information for cross-context behavioral advertising. You can review and edit many case entries in the workspace and export case JSON, but that export excludes uploaded files. A complete rights-request channel is pending operator confirmation.
Cookies and browser signals
The session cookie is necessary for sign-in. A separate language cookie and localStorage value remember the interface language. The inspected application does not deploy its own advertising or analytics cookies. It has no special response to Do Not Track or Global Privacy Control signals because the inspected code does not sell or share data for behavioral advertising; any applicable legal obligation must be reassessed if deployment or data practices change.
Children
The current product has no verified age eligibility rule or child-specific account flow. An account may contain information about family members, including children, when a user enters it. The operator must decide the intended audience and obtain legal review before publishing an age restriction or child-specific collection statement.
Policy updates and contact
A revised policy will display new update and effective dates here. Material changes should be communicated within the workspace before taking effect. Operator identity, a dedicated privacy contact, and the notification method are pending confirmation. Until then, use the contact page for general inquiries without sending sensitive case records.