diff --git a/docs/03-data-model.md b/docs/03-data-model.md index aa7aab5..4380e74 100644 --- a/docs/03-data-model.md +++ b/docs/03-data-model.md @@ -382,6 +382,10 @@ segment (the M1 grounding invariant, asserted by the golden-transcript test). "expose_recordings": false, // never serve .wav unless explicitly true (FR-MCP-3) }, "privacy": { "encrypt_at_rest": false }, + // Launch WhispAssist at login (NFR-RES-4). Opt-in, OFF by default. Toggling this + // via `set_auto_start` also writes a per-user `HKCU\...\Run` entry (no admin); + // startup reconciles the OS entry to this flag (e.g. after a reinstall). + "auto_start": false, // Optional MS Graph calendar source (M4.4, T8.9, FR-CAL-6). Opt-in, explicit consent via OAuth // PKCE — OFF by default. `credential_ref` points into the OS credential store; the token itself // is never written here (same invariant as sync credentials, FR-SYNC-6). @@ -389,6 +393,20 @@ segment (the M1 grounding invariant, asserted by the golden-transcript test). } ``` +## First-run deploy seeding (`wa-defaults.ini`) + +For enterprise mass-deployment, the **first** launch on a machine (before `settings.json` exists) +optionally seeds its defaults from an admin-supplied INI. First file found wins: + +1. `%PROGRAMDATA%\WhispAssist\wa-defaults.ini` — machine-wide (GPO / SCCM / Intune file copy). +2. `\wa-defaults.ini` — the bundled template (shipped fully commented → no-op). + +Keys are flat `key = value` matching `settings.json` field names (bools/ints coerced), plus the +special `auto_download_model = true` which fetches the configured `whisper_model` in the background. +**No secrets** — any key containing `key`/`token`/`secret`/`credential`/`password` is ignored; those +live only in the OS credential store. After first run the file is never read again. See +`docs/enterprise-deployment.md` and `src-tauri/src/deploy.rs`. + ## Retention & recovery semantics - **Retention** (FR-STORE-2): a background job deletes whole meeting folders + rows once a meeting