feat(enterprise): serve desktop releases without public egress#2631
feat(enterprise): serve desktop releases without public egress#2631benjaminshafii wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Fraimz proof — airgapped-desktop-deliveryVerdict: Passed on commit Command: Temporary rendered report: fraimz.html Frame-by-frame assertions
Backward-compatibility assertions
Separate Windows Daytona executionA Bun-cross-compiled PE32+ x64 installer was downloaded into the existing Windows Daytona VM under isolated Observable output: The Den fixture log recorded exactly the expected Windows requests: This is installer-resolution/bootstrap proof, not a claim that a production-signed desktop EXE was installed in the VM; signing is intentionally owned by #2633. |
Terminology cleanup validationValidated commit
|
73f8d23 to
a317262
Compare
What changed
This makes Mac and Windows desktop delivery work without required public release egress:
OPENWORK_DESKTOP_RELEASES_DIR/<version>/./v1/app-versionnow advertises deployment-owned installer and updater URLs.win-arm64when published. Existing x64-only mounts remain valid and omit the optional ARM64 URL.OPENWORK_DESKTOP_ALPHA_UPDATE_FEED_URL.OPENWORK_INSTALLER_RELEASE_FALLBACK_ENABLED=true.Root cause
The generic installer and Electron updater each independently constructed upstream GitHub release URLs. Den could serve a stamped organization installer, but it did not own the signed desktop release or updater feed, and its generic-installer cache fetched GitHub implicitly when a local artifact was absent. That made a fully private install/update path impossible.
Operator rollout
For zero-egress delivery, mount:
OPENWORK_INSTALLER_ARTIFACTS_DIROPENWORK_DESKTOP_RELEASES_DIR/<latestAppVersion>/The desktop release directory must include
latest-mac.yml,latest.yml, both Mac DMGs and updater ZIPs, the Windows x64 EXE, and all referenced blockmaps. To support Windows ARM64, also mountopenwork-win-arm64-<version>.exeand reference it fromlatest.yml; Den advertises ARM64 only when both are present. Keep public fallback disabled.Connected deployments can opt in explicitly with
OPENWORK_INSTALLER_RELEASE_FALLBACK_ENABLED=trueand/orOPENWORK_DESKTOP_RELEASES_PUBLIC_BASE_URL.Integration with #2633
This PR remains based directly on
devand is independently mergeable. It was audited against #2633's overlapping installer, environment, artifact-resolver, test, documentation, Docker, and Helm edits.The intended combined behavior is:
OPENWORK_INSTALLER_RELEASE_BASE_URL-> GitHub only whenOPENWORK_INSTALLER_ALLOW_GITHUB_FALLBACK=true./v1/app-versionfor its architecture-specific URL. Den serves a mounted versioned release or an explicitly configured desktop mirror; the installer and stable updater never invent a GitHub URL.When resolving the textual conflicts, keep #2633's durable ZIP/signing flow and canonical outer-wrapper environment names, while keeping #2631's
OPENWORK_DESKTOP_RELEASES_*settings, Den release routes, manifest validation, range serving, and Den-owned release URL API. Inrelease-asset.ts, retain #2631's caller-supplied Den URL and #2633's x64/ARM64 filename support—do not restore the old hardcoded GitHub URL. Documentation and Helm changes are additive: describe both the outer private wrapper base and the inner private desktop/update repository.Validation
All feature validation ran in Daytona sandboxes.
Linux build/test sandbox
pnpm --filter @openwork/installer test— 29 passed, 0 failed.pnpm --filter @openwork/desktop test— 46 passed, 0 failed, 1 macOS-only skip.pnpm --filter @openwork/desktop typecheck:electron— passed.pnpm --filter @openwork-ee/den-api exec bun test test/desktop-releases.test.ts test/installer-artifacts.test.ts— 12 passed, 0 failed.pnpm --filter @openwork-ee/den-api exec tsc --noEmit— passed.origin/dev; this PR does not broaden those exceptions.helm lint packaging/helm/openwork-ee— passed.Daytona Windows x64
The compiled Windows installer ran in headless dry-run mode from an isolated
C:\ow\airgapped-evaldirectory. It:/v1/app-versionendpoint,openwork-win-x64-0.17.19.exe,requireSignin=true, andResult:
WINDOWS_DRY_RUN_PASS.Fraimz
pnpm fraimz --flow airgapped-desktop-delivery— Passed, 6/6 frames plus voiceover coverage.The report proves mounted-byte preservation, Den GET/HEAD/range delivery, disabled public wrapper fallback, x64 and ARM64 installer resolution through Den, sign-in-required bootstrap, internal stable updater feed, alpha fail-closed behavior, and the approved-host allowlist.
/workspace/evals/results/2026-07-10T03-25-39-952Z/fraimz.htmlThe Daytona preview URL is temporary; the full assertions are also summarized in the follow-up PR comment.