add windows desktop client shell
CI / compose (push) Successful in 7m48s

This commit is contained in:
Marco0300
2026-09-03 14:33:27 +02:00
parent 856625bd93
commit 4dfabf6433
14 changed files with 716 additions and 0 deletions
+11
View File
@@ -194,6 +194,16 @@ Suppression is a tenant-scoped deny list for email, domain, phone, and other app
Phase 12 remains pilot-grade until transition validation, immutable interaction/outcome history, suppression precedence, report definitions/timezones, retention/deletion jobs, export controls, idempotent writes, and cross-tenant regression tests are exercised end to end. The current Compose stack still has no durable CRM worker, scheduler, delivery provider, or outreach capability.
## Windows desktop client
The Windows client is specified as a thin WebView/WebView2 shell over the same authenticated `apps/web` UI and remote API; it does not fork dashboard options or own a local database. The repository currently contains the desktop source contract and cross-platform asset/route smoke check, not a signed native installer. See [`apps/desktop/README.md`](apps/desktop/README.md) and run:
```bash
node apps/desktop/scripts/smoke-desktop.mjs
```
The desktop uses the same server-side session cookie, tenant authorization, suppression/no-send boundaries, and `apiBase`/`assetVersion` runtime configuration as web. A future Windows release additionally requires a pinned shell/toolchain, clean-room staging checks, Authenticode signing with a hardware-backed or managed key, exact CORS configuration, artifact hashes, and a rollback/revocation owner.
## Verification
```bash
@@ -201,6 +211,7 @@ python3 -m unittest discover -v -s apps/api/tests -t apps/api
python3 -m compileall -q apps/api apps/web
git diff --check
docker compose config --quiet
node apps/desktop/scripts/smoke-desktop.mjs
```
## Phase 13 optional AI assistance boundary