Skip to content

ci(windows): compile test apps as a check, drop artifacts + release bundle#423

Merged
dfattal merged 1 commit into
mainfrom
ci/test-apps-compile-only
Jun 4, 2026
Merged

ci(windows): compile test apps as a check, drop artifacts + release bundle#423
dfattal merged 1 commit into
mainfrom
ci/test-apps-compile-only

Conversation

@dfattal
Copy link
Copy Markdown
Collaborator

@dfattal dfattal commented Jun 4, 2026

Closes #422.

Keeps test apps as a compile check in CI but stops packaging them — no per-CI artifacts, no DisplayXR-TestApps-*.zip on releases. Follows the OneDrive-removal work (ci/onedrive-on-release-only, already on main).

Rationale

Test-app binaries served consumers who are going away: end users don't run cube apps, developers build locally via the dev orchestrator, and anyone authoring a display-processor plug-in already has MSVC. The compile + dumpbin arch-verify is the real signal — it's the only CI step that compiles the app-facing OpenXR/extension surface (client_*_compositor, xrSet*EXT, handle/texture/hosted paths) that the headless selftest gate can't reach.

Changes

  • DetectChanges — gate on test_apps/ only; drop the dead demos/ watch (demos live in displayxr-demo-* repos; in-tree demos/ has no tracked files). Stop forcing test_apps=true on tags (only fed the bundle); still force docs_only=false so Runtime + installer build.
  • Test-app jobs — removed all 11 upload-artifact steps. Jobs still checkout → download runtime → compile → copy DLLs → dumpbin-verify.
  • Removed BundleTestApps entirely (download → zip → upload → versioned re-zip → release attach). BumpVersionsJsonOnTag now needs: [Runtime].
  • DocsCLAUDE.md, .claude/skills/release/SKILL.md (summary, workflow list, asset-verify check, final-report template), docs/specs/runtime/versions-json-autobump.md.

Conscious tradeoff

Dropping the release-attached DisplayXR-TestApps-*.zip removes the only prebuilt smoke-test cubes a toolchain-less vendor integrator could use. Accepted — DP-plugin authors have a C++ toolchain. Re-adding a tag-only attach later is ~10 lines.

Not in scope

Broadening the compile-check trigger to fire on runtime/extension-header changes (would add CI cost to every runtime PR). Can revisit with a small 2-app subset for a true ABI compile-gate.

Diff: +25 / −230. YAML validated.

🤖 Generated with Claude Code

…undle [#422]

Test-app binaries served consumers who are going away: users don't run
cube apps, devs build locally via the orchestrator, and DP-plugin authors
have MSVC. Keep the apps as a compile check (they exercise the app-facing
OpenXR/extension surface the headless selftest gate can't), but stop
packaging them.

- DetectChanges: gate test_apps on `test_apps/` only — drop the dead
  `demos/` watch (demos live in their own displayxr-demo-* repos). Stop
  forcing test_apps=true on tags (only fed the bundle); keep docs_only=false.
- Remove all 11 per-app upload-artifact steps; jobs still compile +
  dumpbin-verify, just emit no binary.
- Remove the BundleTestApps job (zip → upload → DisplayXR-TestApps-*.zip
  release attach). BumpVersionsJsonOnTag now needs: [Runtime].
- Doc consistency: CLAUDE.md, release/SKILL.md, versions-json-autobump.md.

Conscious tradeoff: drops the prebuilt test-apps zip a toolchain-less
vendor integrator could smoke-test against — accepted, DP authors build.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dfattal dfattal merged commit de8f560 into main Jun 4, 2026
21 checks passed
@dfattal dfattal deleted the ci/test-apps-compile-only branch June 4, 2026 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI: stop packaging test apps — compile-only check, drop artifacts + release bundle

1 participant