---
phase: 03.2-integrate-into-official-beyond-driver-package
plan: 01
subsystem: build
tags: [cmake, steamvr, driver-manifest, deployment, powershell]

# Dependency graph
requires:
  - phase: 03.1-remove-virtual-tracker
    provides: Driver with no virtual tracker device, HMD property write mechanism
provides:
  - Build producing driver_bigscreenbeyond.dll in bigscreenbeyond package structure
  - New manifest with resourceOnly=false, alwaysActivate=true, hmd_presence
  - Deploy script targeting Steam install path with admin elevation
  - Updated verification scripts for bigscreenbeyond paths
affects: [03.2-02, deployment, verification]

# Tech tracking
tech-stack:
  added: []
  patterns: [Steam install path deployment, admin-elevated deploy scripts]

key-files:
  created:
    - driver/bigscreenbeyond/driver.vrdrivermanifest
    - scripts/deploy_driver.ps1
  modified:
    - CMakeLists.txt
    - scripts/verify_driver.ps1
    - scripts/verify_hid.ps1
    - scripts/verify_proximity.ps1

key-decisions:
  - "DRIVER_NAME=driver_bigscreenbeyond, TARGET_NAME=bigscreenbeyond -- all CMake paths propagate automatically"
  - "Deploy script requires admin elevation (Program Files is protected), creates bin/win64 if absent in stock install"
  - "vrpathreg check split into two: bigscreenbeyond IS registered (via Steam) AND beyond_proximity is NOT registered (sidecar removed)"

patterns-established:
  - "Deploy pattern: build locally, copy DLL + manifest to Steam install dir, restart SteamVR"

requirements-completed: [SC-1, SC-2, SC-7]

# Metrics
duration: 4min
completed: 2026-03-22
---

# Phase 03.2 Plan 01: Build Retarget and Deploy Script Summary

**CMake retargeted to produce driver_bigscreenbeyond.dll in bigscreenbeyond package structure with deploy script for Steam install path**

## Performance

- **Duration:** 4 min
- **Started:** 2026-03-22T10:54:20Z
- **Completed:** 2026-03-22T10:59:18Z
- **Tasks:** 2
- **Files modified:** 6

## Accomplishments
- CMake builds driver_bigscreenbeyond.dll into build/driver/bigscreenbeyond/bin/win64/ package structure
- New manifest with resourceOnly=false, alwaysActivate=true, name=bigscreenbeyond, hmd_presence=["35BD.0101"]
- Deploy script copies DLL + manifest to Steam-installed Beyond driver directory with admin elevation
- All three verification scripts updated from beyond_proximity to bigscreenbeyond paths
- Old driver/beyond_proximity/ sidecar directory removed from repo

## Task Commits

Each task was committed atomically:

1. **Task 1: Retarget CMake, create new manifest, remove old sidecar directory** - `08b9ee6` (feat)
2. **Task 2: Create deploy script and update existing verification scripts** - `caecee4` (feat)

## Files Created/Modified
- `CMakeLists.txt` - DRIVER_NAME and TARGET_NAME changed from beyond_proximity to bigscreenbeyond
- `driver/bigscreenbeyond/driver.vrdrivermanifest` - New manifest for integrated driver package
- `scripts/deploy_driver.ps1` - Deploys DLL + manifest to Steam install path with admin check
- `scripts/verify_driver.ps1` - Updated DLL/manifest paths, vrpathreg checks, removed device activated check
- `scripts/verify_hid.ps1` - Updated DLL and manifest paths to bigscreenbeyond
- `scripts/verify_proximity.ps1` - Updated DLL, CTL paths and phase header to 03.2

## Decisions Made
- DRIVER_NAME=driver_bigscreenbeyond, TARGET_NAME=bigscreenbeyond: all CMake output paths propagate automatically via existing ${DRIVER_NAME} and ${TARGET_NAME} variable usage
- Deploy script requires admin elevation because Program Files is a protected directory; creates bin/win64 subdirectory if absent (stock Beyond install only has resources/)
- verify_driver.ps1 vrpathreg check split into two assertions: bigscreenbeyond IS registered (always true via Steam) AND beyond_proximity is NOT registered (confirms sidecar cleanup)
- Removed "Device activated (TrackedDeviceAdded)" check from verify_driver.ps1 since Phase 03.1 removed the virtual tracker device

## Deviations from Plan

None - plan executed exactly as written.

## Issues Encountered
- CMake not on bash PATH; located via VS2022 BuildTools CommonExtensions path. No impact on build output.

## User Setup Required

None - no external service configuration required.

## Next Phase Readiness
- Build produces correct DLL and manifest in bigscreenbeyond package structure
- Deploy script ready for testing in Plan 02 (deployment + SteamVR integration test)
- All verification scripts updated and ready for hardware validation

## Self-Check: PASSED

All 6 files verified present. Both task commits (08b9ee6, caecee4) verified in git log.

---
*Phase: 03.2-integrate-into-official-beyond-driver-package*
*Completed: 2026-03-22*
