From 603f718b7fcad9aefbd28c6d4fa3b709e4a040c4 Mon Sep 17 00:00:00 2001 From: David Justice Date: Wed, 4 Nov 2026 07:58:39 -0500 Subject: [PATCH 1/2] Document v0.1.0 installation and first use Link the verified public installer ZIP and explain extraction, Setup, game selection, first connection, success cues and safe shutdown. Refresh linked release-availability statements and record the bounded publication checks without implying Authenticode signing or live-equipment qualification. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- README.md | 112 +++++++++++++++++++------------- contributors.md | 6 +- docs/FAQ.md | 31 +++++---- docs/INSTALL.md | 49 +++++++------- docs/README.md | 14 ++-- docs/USAGE.md | 6 +- docs/technical/AUTOMATION.md | 11 ++-- docs/technical/INSTALLER.md | 3 +- docs/technical/QUALIFICATION.md | 39 ++++++++--- docs/technical/README.md | 6 +- 10 files changed, 167 insertions(+), 110 deletions(-) diff --git a/README.md b/README.md index 8efdbe6..cb422e7 100644 --- a/README.md +++ b/README.md @@ -8,57 +8,79 @@ small icon near the Windows clock; your choice is remembered. Labs still manages your launch monitor, and the game handles ball flight. You don't need to swap connector files whenever you change games. -## Get started +## Download and install + +**[Download VX Bridge v0.1.0 for Windows x64 (installer ZIP)](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip)** + +This is the installer ZIP from the [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0). +You do **not** need the application-only ZIP, separate MSI, `.sha256` files or +**Source code** downloads to install. + +**Early release:** automated build and file checks passed, but these binaries +have not been qualified for interactive installation, Windows sign-in or live +Labs/game use, including GSPro and game switching. Earlier trials used different +builds; they do not prove v0.1.0 is ready to play. See the +[tested scope and remaining gaps](docs/technical/QUALIFICATION.md). You'll need **Windows x64**, an activated **ProTee VX with Labs already working**, -and a **licensed Infinite Tees or GSPro game on the same PC**. For GSPro, use its -public **OpenAPI / APIv1 Connect** application, not the native VX receiver. -VX Bridge does not include a game or replace your existing licenses. - -**Public source; no public installer release yet.** An earlier installer candidate -passed hosted Windows checks for installation, damaged-file repair, one -controlled version upgrade, full uninstall and recovery by uninstall/reinstall. -That does not qualify this public bootstrap or a rebuilt binary. Interactive -setup, Windows sign-in and live Labs/game behavior for the current source, -including GSPro and game switching, still need testing. Earlier Infinite Tees -trials do not qualify it as a ready-to-play release. - -For an approved pilot build: - -1. **Choose the approved installer ZIP from the pilot organizer.** Use - **Extract All**, then keep matching `setup.exe` and `bridge.msi` in the - extracted folder with the accompanying files. Choose the installer ZIP, - not the application ZIP or MSI alone; see - [filenames and which files to use](docs/INSTALL.md#choose-the-right-files). -2. **Close any existing receiver safely.** In ProTee Labs, use **Game Options > - Disconnect**, then close that receiver through its own controls. Never run - two receivers or overwrite the vendor's `GSPconnect.exe`. -3. **Open `setup.exe` and choose Install.** Run it normally as your Windows user, - not as administrator. Don't double-click `bridge.msi` to install it. - **Auto-launch on Windows Startup** is optional and off on a fresh install: - "Starts when you sign in to Windows." After successful setup, **Start bridge** - opens it once; **Not now** lets you open **VX Bridge** from Start later. -4. **Open your game and choose it in VX Bridge.** Right-click the bridge icon - near the clock (check hidden icons too), then choose **Use Infinite Tees** or - **Use GSPro OpenAPI**. For GSPro, open its OpenAPI Connect application as well. - **Standby (discard shots)** keeps Labs connected but sends shots to neither game. -5. **Connect in ProTee Labs and check the game.** Use Labs' normal Connect action - if needed. The menu should show Labs connected and the selected game - **Connected (transport only)**. Confirm the game is in a playable scene: - a connection alone does **not** mean it is ready for your next shot. - -Neither launch option opens Labs or the game, connects Labs, or changes your -saved game choice. For another day, open VX Bridge and your game, check the tray -choice, and connect Labs. +and a **licensed Infinite Tees or GSPro game on the same PC**. VX Bridge does not +include a game or replace your existing licenses. + +1. **Close any existing receiver safely.** In ProTee Labs, choose **Game Options > + Disconnect**, then close the old receiver through its own controls. Never run + two receivers or replace the vendor's `GSPconnect.exe`. +2. **Extract the whole download.** Right-click the downloaded installer ZIP, + choose **Extract All**, then open the extracted folder. Keep all nine files + together, especially `setup.exe` and `bridge.msi`. Don't run Setup from inside + the ZIP or mix files from different downloads. +3. **Open `setup.exe` and choose Install.** Open it normally as the Windows user + who will play, **not as administrator**. Don't double-click `bridge.msi`. + Leave **Auto-launch on Windows Startup** off unless you want VX Bridge to + open when you sign in; it is off on a fresh install. +4. **Wait for Setup to report success.** At **Start the bridge now?**, choose + **Start bridge** to open it once, or **Not now** to open **VX Bridge** from + the Windows Start menu later. Starting it once does not enable auto-launch. + +**If Windows blocks Setup:** the Windows programs and installer are not +publisher-signed (Authenticode). The signed Git tag does not sign them. +Don't disable Windows security protections or bypass a warning to continue; +[report the warning](https://github.com/devigned/vx-bridge/issues). + +## First use + +1. **Open your game** and enter a playable practice scene. For GSPro, also open + its public **OpenAPI / APIv1 Connect** application, not the native VX receiver. +2. **Open VX Bridge** from Start if it isn't already running. Find its small + icon near the Windows clock; check the hidden-icons arrow if needed. +3. **Right-click the icon and choose your game:** **Use Infinite Tees** or + **Use GSPro OpenAPI**. A checkmark shows the applied choice, which is remembered. + **Standby (discard shots)** sends shots to neither game. +4. **Connect in ProTee Labs** using its normal Connect action if needed. VX + Bridge does not open Labs or the game, or connect Labs for you. +5. **Check both the menu and the game.** The menu should show Labs connected + and your chosen game **Connected (transport only)**. That confirms a data + connection, not readiness to play. Check the game itself before swinging and + confirm each shot's visible result before the next swing. + +**Next time:** open your game and VX Bridge, check the selected game, then +connect Labs. Only your selected game receives shots; opening a game does not +select it automatically. **When finished:** use **Game Options > Disconnect in ProTee Labs**, then **Quit** in VX Bridge. Quit waits while Labs is still attached; don't force it closed with Task Manager. -Need help? [Installation and repair](docs/INSTALL.md), -[everyday use](docs/USAGE.md) and the [troubleshooting FAQ](docs/FAQ.md) cover the -next steps. If you see **Repair required**, use VX Bridge Setup; a failed upgrade -may need a complete uninstall and fresh install rather than Repair alone. +## If something isn't working + +| What you see | What to do | +|---|---| +| No bridge icon | Check hidden icons near the clock. Open **VX Bridge** from Start, not another downloaded copy. | +| Labs won't connect, or the game stays unavailable | Check that only one receiver is running, the game is open and the correct game is selected. For GSPro, open **OpenAPI / APIv1 Connect** too. [Connection help](docs/FAQ.md#protee-labs-wont-connect). | +| **Repair required** | Open **VX Bridge Setup** from Start and choose **Repair / Reinstall**. Don't replace files manually. A failed upgrade may need complete uninstall/reinstall; [follow the recovery guide](docs/INSTALL.md#maintenance-and-repair-required). | + +Don't hit extra shots to fix a connection. Check the game first if a shot is +missing or uncertain: it may already have arrived. See +[everyday use](docs/USAGE.md) and the [FAQ](docs/FAQ.md) for more help. ## Change games without changing the connection @@ -85,7 +107,7 @@ For code work, use the [build and command guide](docs/technical/COMMANDS.md), [testing guide](docs/technical/TESTING.md) and [technical manual](docs/technical/README.md). The [compatibility evidence and remaining gaps](docs/technical/QUALIFICATION.md) -distinguish tested behavior from work still needed before release. +distinguish automated release checks from live compatibility still needing testing. ## Open-source license diff --git a/contributors.md b/contributors.md index b9577f9..318df2d 100644 --- a/contributors.md +++ b/contributors.md @@ -12,9 +12,9 @@ versions involved. Include the visible tray error and selected game when relevan Check the [FAQ](docs/FAQ.md) and [existing issues](https://github.com/devigned/vx-bridge/issues) -before opening a report. This is the public source repository; there is no -published playing release yet. Please don't attach raw captures, real shot data, -device identifiers, account details or full vendor logs. +before opening a report. The public [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +has not been qualified for live play. Please don't attach raw captures, real shot +data, device identifiers, account details or full vendor logs. For code changes, choose a small issue or discuss the intended behavior first. Changes to delivery, game readiness, shutdown or installation need particular diff --git a/docs/FAQ.md b/docs/FAQ.md index f799899..ae168ba 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -4,15 +4,17 @@ ## Where is the installer? -**No public installer or GitHub release is published yet.** Approved pilot -testers should get the reviewed **installer ZIP** from the pilot organizer, -not the application ZIP or MSI alone. Use **Extract All**, keep matching -**`setup.exe` and `bridge.msi` in the extracted folder**, and open Setup. - -The [Releases page](https://github.com/devigned/vx-bridge/releases) -requires private-repository access today. A missing asset isn't a reason to -download a similarly named executable elsewhere. An application-only development -ZIP, source archive or **BUILD ONLY** artifact is not an approved installer. +**[Download the public v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip)**, +not the application ZIP or MSI alone. Use **Extract All**, keep all nine files +together, including matching **`setup.exe` and `bridge.msi`**, and open Setup from +the extracted folder, not inside the ZIP. + +The [v0.1.0 release page](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +is public. These binaries passed automated build and static file checks, not +live-equipment or installer-lifecycle qualification. They are not publisher-signed +(Authenticode); a signed Git tag does not sign Windows programs. If Windows +blocks Setup, stop and report the warning rather than bypassing it. +An application-only ZIP, source archive or **BUILD ONLY** artifact is not the installer. See [exact filename patterns and which files to use](INSTALL.md#choose-the-right-files). ## ProTee Labs won't connect @@ -63,7 +65,7 @@ recovery before swinging. **Standby** deliberately sends to neither game. ## Can I change games without disconnecting Labs? -That is the intended pilot workflow: stop swinging, finish the visible result, +That is the intended workflow: stop swinging, finish the visible result, choose the other game and wait for switching to finish. VX Bridge keeps Labs connected while the current shot response and pending replies finish or time out. New shots during switching are discarded, not saved for later. @@ -119,7 +121,7 @@ doesn't replace the running host; a duplicate notice leaves it alone. Don't restart Explorer during an attached session just to try to restore an icon. If the menu remains inaccessible, the separate `vxbridge.exe` control -tool can check status or request normal guarded Quit. Ask the pilot organizer +tool can check status or request normal guarded Quit. Ask a project maintainer for help or use the [control reference](technical/DESKTOP.md). Don't launch an extra `GSPconnect.exe` to perform a control command. @@ -136,7 +138,7 @@ the bridge. Windows' automatic rollback is enabled, but a failed operation does not guarantee that the previous version returned. Keep the bridge stopped. If Repair cannot complete, use **complete Uninstall, -then a fresh Install**. If multiple versions remain, get the pilot organizer's +then a fresh Install**. If multiple versions remain, get a project maintainer's recorded-version recovery instructions: remove the original recorded old version, fully uninstall the current version, confirm complete removal, then install fresh. Removing only one version is not completed recovery. @@ -230,8 +232,9 @@ core and source; it is not a promise to upgrade arbitrary older builds. Start with normal Labs Disconnect and Quit the old copy. Preserve its files and startup registration until you have separately approved migration instructions. -There is no published installer or verified portable-migration procedure yet; -don't treat this scope decision as permission to install or delete an old copy. +There is no verified portable-migration procedure; the published v0.1.0 installer +does not change that. Don't treat publication as permission to adopt or delete +an old copy. ## Does uninstall erase my game choice or all installer files? diff --git a/docs/INSTALL.md b/docs/INSTALL.md index abd65c0..d620a45 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -3,7 +3,8 @@ [User guides](README.md) / Installation VX Bridge connects ProTee Labs to your choice of Infinite Tees or GSPro OpenAPI. -Follow these steps only for an approved pilot build. +The [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +is available, but has not been qualified for installation or live play on a golf PC. ## Before you start @@ -19,16 +20,15 @@ runtime. ## Choose the right files -**No public installer or GitHub release is published yet.** Approved pilot -testers should get the reviewed installer files and compatibility notes from the -pilot organizer. The public -[Releases page](https://github.com/devigned/vx-bridge/releases) -has no published installer or public version to recommend. Source availability -does not make a development build a qualified playing release. +**[Download the v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip).** +Its exact filename is +`vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip`. +The [release page](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +also includes other files; publication does not make this a qualified playing release. -For an approved tagged build, **choose the installer ZIP**. The tag-delivery -contract uses these filenames; this does not mean a release is available now. -`vX.Y.Z` is the version and `<40sha>` identifies the source commit. +**Choose the installer ZIP**, not the application ZIP or MSI alone. +In the filename patterns below, `vX.Y.Z` is the version and `<40sha>` identifies +the source commit. | Files | What they are for | |---|---| @@ -50,9 +50,11 @@ together: `setup.exe`, `bridge.msi`, the information files `setup-input.json` an `msi-inspection.json`, the notices/licenses `INSTALLER-NOTICE.txt`, `MINGW-COPYRIGHT.txt`, `LICENSE` and `THIRD_PARTY_NOTICES.txt`, and `SHA256SUMS`. -Keep the download's separate checksum alongside the archive. There is no -signed-publisher claim today: a checksum checks file contents, not who published -them. Don't disable Windows security protections to run an unverified file. +The separate `.sha256` files are optional integrity checks, not installers. +The Windows programs and installer are not publisher-signed (Authenticode); +the signed Git tag does not sign them. A checksum checks file contents, not who +published them. If Windows blocks Setup, stop and report the warning; don't +disable security protections or bypass a warning to continue. Untagged developer application ZIPs use `vx-bridge-windows-amd64-.zip`. See @@ -65,7 +67,7 @@ not these setup steps, for development packages. Labs**, then close that receiver through its own controls. For an existing VX Bridge, choose **Quit** after disconnecting Labs. Never run two receivers, force-close an attached one or overwrite the vendor's `GSPconnect.exe`. -2. Open the approved **`setup.exe`** normally as the Windows user who will use +2. Open the extracted **`setup.exe`** normally as the Windows user who will use the bridge, **not as administrator**. Choose **Install** for a fresh install. 3. Leave **Auto-launch on Windows Startup** off unless you want the bridge to open when you sign in. Its helper says: **Starts when you sign in to Windows.** @@ -80,13 +82,14 @@ connects Labs, or changes your saved game choice. If the one-time launch fails after installation succeeded, resolve the reported runtime conflict and open the installed **VX Bridge** shortcut; don't reinstall just to retry launching. -**Pilot status:** an earlier private installer candidate passed hosted Windows -installation, damaged-file repair, one controlled version-to-version upgrade, -full uninstall and explicit uninstall/reinstall recovery checks as a standard -user. This does not qualify the public bootstrap or rebuilt binaries, or verify -interactive setup, the Start bridge prompt, actual -Windows sign-in or live Labs/game use. GSPro and game switching still need live -testing for this candidate. The +**Qualification limits:** v0.1.0 passed automated build and static file checks, +not real installer servicing or live-equipment tests. An earlier private installer +candidate passed hosted Windows installation, damaged-file repair, one controlled +version-to-version upgrade, full uninstall and explicit uninstall/reinstall +recovery checks as a standard user. This does not qualify v0.1.0 or rebuilt +binaries, or verify interactive setup, the Start bridge prompt, actual Windows +sign-in or live Labs/game use. GSPro and game switching still need live testing +for v0.1.0. The [qualification summary](technical/QUALIFICATION.md) records the bounded prior observations and limits. @@ -137,8 +140,8 @@ Setup verifies a consistent installation. Repair can restore damaged files, but **may not resolve a failed upgrade with multiple registered versions**. If Repair cannot complete, use **complete Uninstall followed by a fresh Install**. -If Windows lists more than one interrupted VX Bridge version, ask the pilot -organizer for the recorded-version recovery instructions. That path removes the +If Windows lists more than one interrupted VX Bridge version, ask a project +maintainer for the recorded-version recovery instructions. That path removes the original recorded old version, fully uninstalls the current version, confirms complete removal, then installs fresh. Removing just one version is not completed recovery or permission to start the remaining bridge. diff --git a/docs/README.md b/docs/README.md index 3c464fb..cd55827 100644 --- a/docs/README.md +++ b/docs/README.md @@ -14,13 +14,13 @@ using the bridge, not building it. | Fix a connection problem, missed shot or failed installation | [FAQ](FAQ.md) | | Report a bug or contribute | [Contributing](../contributors.md) | -**Public source; no public installer release yet.** An earlier private candidate -passed hosted Windows installation, repair, one controlled upgrade, full-removal -and uninstall/reinstall recovery checks. That does not qualify this public -bootstrap or rebuilt binaries. Interactive setup, Windows sign-in and -live Labs/game behavior for that candidate, including GSPro and game switching, -still need testing. Neither a connected status nor automatic startup means the -game is ready. +**[v0.1.0 is available](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0), +but is not yet qualified for live play.** Choose the installer ZIP and follow the +[installation guide](INSTALL.md). Its automated build and file checks do not +qualify interactive setup, Windows sign-in or live Labs/game behavior, including +GSPro and game switching. Earlier private installer and equipment observations +used different builds. Neither a connected status nor automatic startup means +the game is ready. Looking after the code? The [technical index](technical/README.md) covers the implementation, builds, tests and clearly labeled historical evidence. diff --git a/docs/USAGE.md b/docs/USAGE.md index 345ec73..9e2efa5 100644 --- a/docs/USAGE.md +++ b/docs/USAGE.md @@ -3,9 +3,9 @@ [User guides](README.md) / Everyday use Open VX Bridge, choose today's game, connect Labs and check the game before -swinging. These instructions are for an approved pilot build, not a public -ready-to-play release. Live Labs/game use, GSPro and game switching for the -current installer candidate still need testing. +swinging. [v0.1.0 is published](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0), +but is not yet a qualified ready-to-play release. Live Labs/game use, GSPro and +game switching for these binaries still need testing. ## Start a session diff --git a/docs/technical/AUTOMATION.md b/docs/technical/AUTOMATION.md index 714d011..cd3e737 100644 --- a/docs/technical/AUTOMATION.md +++ b/docs/technical/AUTOMATION.md @@ -121,8 +121,9 @@ vx-bridge-installer-windows-amd64-vX.Y.Z-<40sha>.zip vx-bridge-windows-amd64-vX.Y.Z-<40sha>.msi ``` -Each file has its own appended `.sha256`. These are output naming rules, -not existing release URLs. The release publishes the verified application +Each file has its own appended `.sha256`. The public +[v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) uses +these naming rules. The release publishes the verified application ZIP, installer ZIP, direct matching MSI, and all three checksums. `package-installer` and `verify-installer` own bundle assembly/integrity; native compilation and WiX authoring remain separate stages. @@ -202,8 +203,10 @@ Repository commits must instead be signed under [AGENTS.md](../../AGENTS.md); that does not sign the emitted EXEs/MSI. Checksums detect corruption and bind inspected bytes; they do not authenticate a publisher, prove hardware compatibility, or imply vendor endorsement. -The tag-release write path has local negative-fixture coverage, not an -actual published-release result. +The tag-release write path has local negative-fixture coverage and a successful +[v0.1.0 publication run](https://github.com/devigned/vx-bridge/actions/runs/41832770003). +That run built and statically verified packages without executing the product; +see the [exact publication scope](QUALIFICATION.md#public-release-publication). The only active workflows are CI and version-tag release. The private-only manual Setup lifecycle remains parked. Independent comparison/rollback-control diff --git a/docs/technical/INSTALLER.md b/docs/technical/INSTALLER.md index e5e8077..d6063e3 100644 --- a/docs/technical/INSTALLER.md +++ b/docs/technical/INSTALLER.md @@ -15,7 +15,8 @@ repair, upgrade, and full Uninstall passed a recorded same-source, same-native-core hosted lifecycle for an earlier private candidate. That does not qualify this public bootstrap or rebuilt binaries. Interactive/client-PC operation, actual sign-in, Apps UI, Start now, and attached-Labs maintenance remain unqualified. -No public installer or release is available. See +The public [v0.1.0 installer](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +is available, but publication adds no lifecycle or client-PC qualification. See [Qualification](QUALIFICATION.md#installer-observations) for the exact result. ## Managed-copy admission diff --git a/docs/technical/QUALIFICATION.md b/docs/technical/QUALIFICATION.md index 5f65a8f..6f7a30c 100644 --- a/docs/technical/QUALIFICATION.md +++ b/docs/technical/QUALIFICATION.md @@ -11,16 +11,39 @@ Passing CI does not turn an unsigned development package into a release or qualify later binaries on a golf PC. The current source implements remembered IT/GSPro OpenAPI/Standby selection -and recovery-first-v2 installation. It has no public installer, repository tag, -or GitHub release. There is no official vendor endorsement or live GSPro/ -cross-game qualification. [Testing](TESTING.md) describes software coverage; +and recovery-first-v2 installation. The public v0.1.0 tag and release are now +published; their bounded verification is recorded below. There is no official +vendor endorsement or live GSPro/cross-game qualification. +[Testing](TESTING.md) describes software coverage; the [research boundary](research/README.md) explains what is retained publicly. This repository starts from a source-only bootstrap without the earlier private -history, run artifacts or investigation ledgers. The observations below concern -older, separately identified instruments and candidates, not this bootstrap -commit or binaries rebuilt from it. Original private records remain unchanged; +history, run artifacts or investigation ledgers. The historical installer and +bridge observations below concern older, separately identified instruments and +candidates, not this bootstrap commit or binaries rebuilt from it. +Original private records remain unchanged; no old hash, run or issue is relabeled as belonging to this repository. +## Public release publication + +[v0.1.0](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) targets public +source commit `5401cf26d19238b04ba3dbb8ecfa60442616ca79`. Its annotated tag was +cryptographically signed with the owner's existing Git signing identity and +verified locally and by GitHub. The +[tag-triggered release run](https://github.com/devigned/vx-bridge/actions/runs/41832770003) +completed its build, static package verification and publication jobs. + +The published application ZIP, installer ZIP, direct matching MSI and three +SHA-256 files were downloaded and verified. All six files matched that run's +exact immutable artifact bytes and GitHub asset digests. The application manifest +identified the tagged source and v0.1.0; the installer ZIP had the expected nine +flat entries, and its `bridge.msi` matched the direct MSI. + +No product executable or installer was run for these checks. This establishes +publication and artifact integrity, not interactive installation, Windows sign-in, +installer servicing or real Labs/game compatibility for v0.1.0. The emitted +Windows programs and installer are not Authenticode-signed; signed source commits +and tags do not sign those files. + ## Installer observations A prior private candidate passed ordinary CI and a separately authorized @@ -123,8 +146,8 @@ framing/fields/units, receipts, putting/handedness, and bidirectional switching. Long sessions, partial/uncertain live in-flight recovery, all source-reconnect modes, sleep/resume, broad/dynamic DPI, attached-source Explorer restoration, -general installer interruptions, signing, and actual tag-release publication -also remain outside completed qualification. +general installer interruptions and Authenticode signing also remain outside +completed qualification. The publication check above does not close these gaps. New real-equipment trials require separate owner approval for an exact artifact, scope, risks, and cleanup. Record goal attainment, actual departure, diff --git a/docs/technical/README.md b/docs/technical/README.md index 2f2c313..f0143a8 100644 --- a/docs/technical/README.md +++ b/docs/technical/README.md @@ -44,8 +44,10 @@ An earlier private installer candidate passed a recorded same-source, same-native-core lifecycle on a disposable hosted Windows machine, including explicit recovery after an induced failure. That does not qualify the public bootstrap or a rebuilt artifact, and is not client-PC, interactive -installer, sign-in, attached-Labs, or cross-game qualification. No public -installer, repository tag, or GitHub release is published. +installer, sign-in, attached-Labs, or cross-game qualification. +The public [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +has passed build and static artifact verification, not those runtime or servicing +checks. See [Qualification](QUALIFICATION.md#public-release-publication). Ordinary startup has no Windows Installer service dependency. There is no Session 0 service, automatic updater, hardware-direct interface, vendor From cb46a242b041e068a7beceab463d4939b1a4e0e7 Mon Sep 17 00:00:00 2001 From: David Justice Date: Wed, 4 Nov 2026 08:12:43 -0500 Subject: [PATCH 2/2] Draft v0.1.0 release notes and revise documentation prose Add a reviewable release-note body describing the initial public capabilities, installation, first use, verified first contributor and automated co-author credit. Reevaluate the full quick-start PR with purpose and requirements first, direct procedures, consistent start order and concise qualification limits. Leave the published release notes, tag and assets unchanged pending review and merge. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- README.md | 186 +++++++++++++++----------------- contributors.md | 13 +-- docs/FAQ.md | 44 ++++---- docs/INSTALL.md | 121 ++++++++++----------- docs/README.md | 26 ++--- docs/USAGE.md | 30 +++--- docs/releases/v0.1.0.md | 120 +++++++++++++++++++++ docs/technical/AUTOMATION.md | 15 ++- docs/technical/INSTALLER.md | 15 ++- docs/technical/QUALIFICATION.md | 56 +++++----- docs/technical/README.md | 17 +-- 11 files changed, 373 insertions(+), 270 deletions(-) create mode 100644 docs/releases/v0.1.0.md diff --git a/README.md b/README.md index cb422e7..221bf8b 100644 --- a/README.md +++ b/README.md @@ -1,118 +1,108 @@ # VX Bridge -**One ProTee VX connection. Your choice of golf simulator.** - -For golfers using a ProTee VX, VX Bridge sends shots from **ProTee Labs** to -**Infinite Tees** or **GSPro OpenAPI** on the same PC. Choose the game from the -small icon near the Windows clock; your choice is remembered. Labs still manages -your launch monitor, and the game handles ball flight. You don't need to swap -connector files whenever you change games. - -## Download and install - -**[Download VX Bridge v0.1.0 for Windows x64 (installer ZIP)](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip)** - -This is the installer ZIP from the [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0). -You do **not** need the application-only ZIP, separate MSI, `.sha256` files or -**Source code** downloads to install. - -**Early release:** automated build and file checks passed, but these binaries -have not been qualified for interactive installation, Windows sign-in or live -Labs/game use, including GSPro and game switching. Earlier trials used different -builds; they do not prove v0.1.0 is ready to play. See the -[tested scope and remaining gaps](docs/technical/QUALIFICATION.md). - -You'll need **Windows x64**, an activated **ProTee VX with Labs already working**, -and a **licensed Infinite Tees or GSPro game on the same PC**. VX Bridge does not -include a game or replace your existing licenses. - -1. **Close any existing receiver safely.** In ProTee Labs, choose **Game Options > - Disconnect**, then close the old receiver through its own controls. Never run - two receivers or replace the vendor's `GSPconnect.exe`. -2. **Extract the whole download.** Right-click the downloaded installer ZIP, - choose **Extract All**, then open the extracted folder. Keep all nine files - together, especially `setup.exe` and `bridge.msi`. Don't run Setup from inside - the ZIP or mix files from different downloads. -3. **Open `setup.exe` and choose Install.** Open it normally as the Windows user - who will play, **not as administrator**. Don't double-click `bridge.msi`. - Leave **Auto-launch on Windows Startup** off unless you want VX Bridge to - open when you sign in; it is off on a fresh install. -4. **Wait for Setup to report success.** At **Start the bridge now?**, choose +VX Bridge forwards shot data from ProTee Labs to Infinite Tees or GSPro OpenAPI +on the same Windows PC. Select one game from the icon near the clock. Labs +controls the launch monitor; the game calculates ball flight. + +## Requirements + +- Windows x64. +- An activated ProTee VX with ProTee Labs already working. +- A licensed Infinite Tees or GSPro installation on the same PC. + +For GSPro, use its public **OpenAPI / APIv1 Connect** application, not the native +VX receiver. VX Bridge does not supply a game or replace an existing license. +v0.1.0 is an early release; read [Limits](#limits) before installing. + +## Install + +**[Download the v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip).** +Use this ZIP, not the application-only ZIP, separate MSI or **Source code** +downloads. See the [release notes](docs/releases/v0.1.0.md) for the initial +release's features, contributors and files. + +1. In ProTee Labs, select **Game Options > Disconnect**. Close any existing + receiver through its own controls. Do not run two receivers or replace the + vendor's `GSPconnect.exe`. +2. Right-click the downloaded ZIP and select **Extract All**. Open the extracted + folder. Keep all nine files together, including `setup.exe` and `bridge.msi`. + Do not run Setup from inside the ZIP or mix files from different builds. +3. Open `setup.exe` as the Windows user who will use the bridge, not as + administrator. Select **Install**. Do not double-click `bridge.msi`. +4. Leave **Auto-launch on Windows Startup** off unless the bridge should open + when you sign in. It is off on a fresh install. +5. Wait for Setup to report success. At **Start the bridge now?**, select **Start bridge** to open it once, or **Not now** to open **VX Bridge** from - the Windows Start menu later. Starting it once does not enable auto-launch. + Start later. Starting it once does not enable auto-launch. -**If Windows blocks Setup:** the Windows programs and installer are not -publisher-signed (Authenticode). The signed Git tag does not sign them. -Don't disable Windows security protections or bypass a warning to continue; -[report the warning](https://github.com/devigned/vx-bridge/issues). +If Windows blocks Setup, stop and [report the warning](https://github.com/devigned/vx-bridge/issues). +Do not disable security protections or bypass the warning. ## First use -1. **Open your game** and enter a playable practice scene. For GSPro, also open - its public **OpenAPI / APIv1 Connect** application, not the native VX receiver. -2. **Open VX Bridge** from Start if it isn't already running. Find its small - icon near the Windows clock; check the hidden-icons arrow if needed. -3. **Right-click the icon and choose your game:** **Use Infinite Tees** or - **Use GSPro OpenAPI**. A checkmark shows the applied choice, which is remembered. - **Standby (discard shots)** sends shots to neither game. -4. **Connect in ProTee Labs** using its normal Connect action if needed. VX - Bridge does not open Labs or the game, or connect Labs for you. -5. **Check both the menu and the game.** The menu should show Labs connected - and your chosen game **Connected (transport only)**. That confirms a data - connection, not readiness to play. Check the game itself before swinging and - confirm each shot's visible result before the next swing. - -**Next time:** open your game and VX Bridge, check the selected game, then -connect Labs. Only your selected game receives shots; opening a game does not -select it automatically. - -**When finished:** use **Game Options > Disconnect in ProTee Labs**, then -**Quit** in VX Bridge. Quit waits while Labs is still attached; don't force it -closed with Task Manager. - -## If something isn't working - -| What you see | What to do | +1. Open the game and enter a playable practice scene. For GSPro, also open + **OpenAPI / APIv1 Connect**. +2. Open **VX Bridge** from Start if it is not running. Find its icon near the + Windows clock; check the hidden-icons arrow if necessary. +3. Right-click the icon. Select **Use Infinite Tees** or **Use GSPro OpenAPI**. + A checkmark shows the applied choice. The bridge remembers it for next time. +4. Use ProTee Labs' normal Connect action if needed. The bridge does not open + Labs or the game, or connect Labs for you. +5. Check the bridge menu. Labs should be connected and the selected game should + show **Connected (transport only)**. Then check the game itself before + swinging. A data connection does not establish that the game is ready. + +For later sessions, open the game and bridge, check the selected game, then +connect Labs. Wait for each shot's visible result before the next swing. + +## End a session + +In ProTee Labs, select **Game Options > Disconnect**. Then select **Quit** in +VX Bridge. Quit waits while Labs is attached. Do not force the bridge closed +with Task Manager. + +## Troubleshooting + +| Symptom | Action | |---|---| | No bridge icon | Check hidden icons near the clock. Open **VX Bridge** from Start, not another downloaded copy. | -| Labs won't connect, or the game stays unavailable | Check that only one receiver is running, the game is open and the correct game is selected. For GSPro, open **OpenAPI / APIv1 Connect** too. [Connection help](docs/FAQ.md#protee-labs-wont-connect). | -| **Repair required** | Open **VX Bridge Setup** from Start and choose **Repair / Reinstall**. Don't replace files manually. A failed upgrade may need complete uninstall/reinstall; [follow the recovery guide](docs/INSTALL.md#maintenance-and-repair-required). | +| No connection | Run one receiver. Check the selected game and open it. For GSPro, open **OpenAPI / APIv1 Connect** too. See [connection help](docs/FAQ.md#protee-labs-wont-connect). | +| **Repair required** | Open **VX Bridge Setup** from Start and select **Repair / Reinstall**. If it fails, follow the [recovery guide](docs/INSTALL.md#maintenance-and-repair-required). Do not replace files manually. | -Don't hit extra shots to fix a connection. Check the game first if a shot is -missing or uncertain: it may already have arrived. See -[everyday use](docs/USAGE.md) and the [FAQ](docs/FAQ.md) for more help. +Do not hit shots to trigger reconnection. If delivery is uncertain, check the +game before swinging again: it may have received the shot. ## Change games without changing the connection -Only your selected game receives shots. Starting another game does not select it -automatically or send shots to both games. Stop swinging, let the visible result -finish, choose the other game, and wait for switching to finish before checking -that game. +Stop swinging and let the visible result finish. Select the other game and wait +for switching to finish. Check that game before resuming. + +Only the selected game receives shots. Opening a game does not select it. +**Standby (discard shots)** keeps Labs connected but sends to neither game. +Shots missed during switching, an outage or Standby are lost, not saved or +replayed. -Shots missed during an outage, switching or Standby are **lost, not saved for -later or replayed**. If delivery is uncertain, the game may already have received -the shot; check before swinging again. VX Bridge doesn't invent missing -measurements, success replies or game readiness. +## Limits -Local logs leave out shot measurements and device/player identifiers. Nothing -is uploaded automatically. +v0.1.0 passed automated build and file checks. Interactive installation, Windows +sign-in, installer servicing and live Labs/game use, including GSPro and game +switching, remain unqualified for these binaries. Earlier observations used +different builds; see [qualification](docs/technical/QUALIFICATION.md). -## Help make VX Bridge better +The Windows programs and installer are not publisher-signed (Authenticode). +Signed Git commits and tags do not sign those files. -You don't need a launch monitor to improve the instructions, report a confusing -step or work on automated tests. Start with the [contribution guide](contributors.md) -for reporting a bug, setting up a checkout and submitting a focused change. +Local logs omit shot measurements and device/player identifiers. Nothing is +uploaded automatically. -For code work, use the [build and command guide](docs/technical/COMMANDS.md), -[testing guide](docs/technical/TESTING.md) and -[technical manual](docs/technical/README.md). The -[compatibility evidence and remaining gaps](docs/technical/QUALIFICATION.md) -distinguish automated release checks from live compatibility still needing testing. +## Documentation and contributions -## Open-source license +Use the [installation guide](docs/INSTALL.md), [everyday guide](docs/USAGE.md) or +[FAQ](docs/FAQ.md) for more detail. The [technical manual](docs/technical/README.md) +covers implementation and testing. Read [Contributing](contributors.md) before +reporting a bug or submitting a change. -Original project work is available under the [MIT license](LICENSE), with its -notice and warranty disclaimer. [Third-party notices](THIRD_PARTY_NOTICES.txt) -cover dependencies and reference material; MIT does not license vendor software. -This is an unofficial project, not affiliated with or endorsed by ProTee, -Infinite Tees or GSPro. +Original work uses the [MIT license](LICENSE). +[Third-party notices](THIRD_PARTY_NOTICES.txt) cover dependencies and reference +material, not a license to vendor software. VX Bridge is unofficial and is not +endorsed by ProTee, Infinite Tees or GSPro. diff --git a/contributors.md b/contributors.md index 318df2d..9056c6c 100644 --- a/contributors.md +++ b/contributors.md @@ -1,8 +1,8 @@ # Contributing -Help make VX Bridge easier to use and maintain. Documentation, useful bug -reports, regression tests and small fixes are all welcome. You don't need a -launch monitor to improve the guides or run the automated tests. +Contributions may improve documentation, report bugs, add regression tests or +fix code. A launch monitor is not needed to edit the guides or run automated +tests. ## Pick a useful first contribution @@ -12,9 +12,10 @@ versions involved. Include the visible tray error and selected game when relevan Check the [FAQ](docs/FAQ.md) and [existing issues](https://github.com/devigned/vx-bridge/issues) -before opening a report. The public [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -has not been qualified for live play. Please don't attach raw captures, real shot -data, device identifiers, account details or full vendor logs. +before opening a report. Include the release version and the visible error. +[v0.1.0](docs/releases/v0.1.0.md) is published but has not been qualified for live +play. Do not attach raw captures, real shot data, device identifiers, account +details or full vendor logs. For code changes, choose a small issue or discuss the intended behavior first. Changes to delivery, game readiness, shutdown or installation need particular diff --git a/docs/FAQ.md b/docs/FAQ.md index ae168ba..2c5a4ba 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -4,18 +4,21 @@ ## Where is the installer? -**[Download the public v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip)**, -not the application ZIP or MSI alone. Use **Extract All**, keep all nine files -together, including matching **`setup.exe` and `bridge.msi`**, and open Setup from -the extracted folder, not inside the ZIP. - -The [v0.1.0 release page](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -is public. These binaries passed automated build and static file checks, not -live-equipment or installer-lifecycle qualification. They are not publisher-signed -(Authenticode); a signed Git tag does not sign Windows programs. If Windows -blocks Setup, stop and report the warning rather than bypassing it. -An application-only ZIP, source archive or **BUILD ONLY** artifact is not the installer. -See [exact filename patterns and which files to use](INSTALL.md#choose-the-right-files). +[Download the public v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip). +Select **Extract All**, keep all nine files together, and open `setup.exe` from +the extracted folder with matching `bridge.msi` beside it. Do not install the +bare MSI. + +The application ZIP, source archives and **BUILD ONLY** artifacts are not the +installer. See [file types](INSTALL.md#choose-the-right-files) and +[tested scope](#which-versions-and-features-have-been-checked). + +## Windows blocks Setup + +Stop and [report the warning](https://github.com/devigned/vx-bridge/issues). +Do not disable security protections or bypass it. The Windows programs and +installer are not publisher-signed (Authenticode). Signed Git commits and tags +do not sign those files. ## ProTee Labs won't connect @@ -65,10 +68,10 @@ recovery before swinging. **Standby** deliberately sends to neither game. ## Can I change games without disconnecting Labs? -That is the intended workflow: stop swinging, finish the visible result, -choose the other game and wait for switching to finish. VX Bridge keeps Labs -connected while the current shot response and pending replies finish or time -out. New shots during switching are discarded, not saved for later. +Stop swinging, finish the visible result, select the other game and wait for +switching to finish. VX Bridge keeps Labs connected while the current shot +response and pending replies finish or time out. New shots during switching +are discarded, not saved for later. If switching is blocked by a Labs connection fault, use normal Labs Disconnect; repeated choices cannot force it. Live Infinite Tees/GSPro switching still needs testing. @@ -203,6 +206,10 @@ remain on the same PC; network/LAN targets aren't supported. ## Which versions and features have been checked? +v0.1.0 passed automated build and static file checks. Those checks did not run +the installer or product executables. See the [release notes](releases/v0.1.0.md) +and [publication record](technical/QUALIFICATION.md#public-release-publication). + An earlier private installer candidate passed hosted Windows checks for standard-user installation, damaged-file repair, one controlled version-to-version upgrade, full removal and explicit uninstall/reinstall recovery after an induced failure. @@ -232,9 +239,8 @@ core and source; it is not a promise to upgrade arbitrary older builds. Start with normal Labs Disconnect and Quit the old copy. Preserve its files and startup registration until you have separately approved migration instructions. -There is no verified portable-migration procedure; the published v0.1.0 installer -does not change that. Don't treat publication as permission to adopt or delete -an old copy. +There is no verified portable-migration procedure. Publication of v0.1.0 does +not authorize adopting or deleting an old copy. ## Does uninstall erase my game choice or all installer files? diff --git a/docs/INSTALL.md b/docs/INSTALL.md index d620a45..17a83a2 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -3,58 +3,44 @@ [User guides](README.md) / Installation VX Bridge connects ProTee Labs to your choice of Infinite Tees or GSPro OpenAPI. -The [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -is available, but has not been qualified for installation or live play on a golf PC. +This guide covers the public [v0.1.0 release](releases/v0.1.0.md). +Read [Limits](#limits) before installing. ## Before you start -You need **Windows x64**, a working **activated ProTee VX and ProTee Labs**, and -a **licensed Infinite Tees or GSPro installation on the same PC**. Keep your -existing licenses and activation in place. VX Bridge does not supply a game, -replace Labs or unlock a vendor feature. +Use Windows x64, an activated ProTee VX with ProTee Labs already working, and a +licensed Infinite Tees or GSPro installation on the same PC. VX Bridge does not +supply a game, replace Labs or change licenses and activation. -For GSPro, use its public **OpenAPI / APIv1 Connect** application, without -running the competing native VX receiver. Both the game and OpenAPI Connect -must be open when you play. The bridge itself needs no separate .NET or browser -runtime. +For GSPro, run both the game and its public **OpenAPI / APIv1 Connect** +application. Do not run the native VX receiver at the same time. +The bridge needs no separate .NET or browser runtime. ## Choose the right files -**[Download the v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip).** -Its exact filename is +[Download the v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip). +The filename is `vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip`. -The [release page](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -also includes other files; publication does not make this a qualified playing release. - -**Choose the installer ZIP**, not the application ZIP or MSI alone. -In the filename patterns below, `vX.Y.Z` is the version and `<40sha>` identifies -the source commit. +Use this ZIP, not the application ZIP or MSI alone. The +[release page](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) +contains these file types. In the patterns below, `vX.Y.Z` is the version and +`<40sha>` identifies the source commit. | Files | What they are for | |---|---| -| `vx-bridge-installer-windows-amd64-vX.Y.Z-<40sha>.zip` | **Recommended install choice:** extract it and run `setup.exe` with matching `bridge.msi` beside it. | +| `vx-bridge-installer-windows-amd64-vX.Y.Z-<40sha>.zip` | Normal installation. Extract it and run `setup.exe` with matching `bridge.msi` beside it. | | `vx-bridge-windows-amd64-vX.Y.Z-<40sha>.zip` | Application-only package for separately approved manual/development use. Its six files do not include Setup/MSI. | | `vx-bridge-windows-amd64-vX.Y.Z-<40sha>.msi` | Windows Installer package, **not a standalone installer**. It still requires matching Setup; choose the installer ZIP instead. | | Source checkout or source archive | Contributing to the project, not a ready-to-run Windows app. | Each ZIP/MSI has a separate checksum file named `.sha256`. -**Do not install by double-clicking `bridge.msi`.** It requires the matching -native Setup program and refuses an unowned install. Do not mix files from -different builds or treat an Actions artifact marked **BUILD ONLY** as approval -to install it. - -Right-click the installer ZIP, choose **Extract All**, and open the extracted -folder before running Setup. Its nine files have no subfolders. Keep them -together: `setup.exe`, `bridge.msi`, the information files `setup-input.json` and -`msi-inspection.json`, the notices/licenses `INSTALLER-NOTICE.txt`, -`MINGW-COPYRIGHT.txt`, `LICENSE` and `THIRD_PARTY_NOTICES.txt`, and `SHA256SUMS`. +The installer ZIP contains nine files in one folder. Keep them together. +`setup.exe` and `bridge.msi` must be a matching pair. Do not mix builds or use an +Actions artifact marked **BUILD ONLY** as an approved installer. The separate `.sha256` files are optional integrity checks, not installers. -The Windows programs and installer are not publisher-signed (Authenticode); -the signed Git tag does not sign them. A checksum checks file contents, not who -published them. If Windows blocks Setup, stop and report the warning; don't -disable security protections or bypass a warning to continue. +A checksum checks file contents, not who published them. Untagged developer application ZIPs use `vx-bridge-windows-amd64-.zip`. See @@ -63,47 +49,41 @@ not these setup steps, for development packages. ## Install -1. If another receiver is running, use **Game Options > Disconnect in ProTee - Labs**, then close that receiver through its own controls. For an existing - VX Bridge, choose **Quit** after disconnecting Labs. Never run two receivers, - force-close an attached one or overwrite the vendor's `GSPconnect.exe`. -2. Open the extracted **`setup.exe`** normally as the Windows user who will use - the bridge, **not as administrator**. Choose **Install** for a fresh install. -3. Leave **Auto-launch on Windows Startup** off unless you want the bridge to - open when you sign in. Its helper says: **Starts when you sign in to Windows.** - Fresh installs default off; maintenance preserves an existing verified - preference unless you change it. -4. Wait for Setup to report success. At **Start the bridge now?**, choose +1. In ProTee Labs, select **Game Options > Disconnect**. Close any existing + receiver through its own controls. For VX Bridge, select **Quit** after Labs + disconnects. Do not run two receivers or overwrite the vendor's `GSPconnect.exe`. +2. Right-click the installer ZIP and select **Extract All**. Open the extracted + folder. Do not run Setup from inside the ZIP. +3. Open `setup.exe` as the Windows user who will use the bridge, not as + administrator. Select **Install** for a fresh install. Do not double-click + `bridge.msi`. +4. Leave **Auto-launch on Windows Startup** off unless the bridge should open + when you sign in. Its helper says **Starts when you sign in to Windows.** + It is off on a fresh install; maintenance preserves a verified preference + unless you change it. +5. Wait for Setup to report success. At **Start the bridge now?**, select **Start bridge** to open it once, or **Not now** to open **VX Bridge** from the Windows Start menu later. Start bridge and auto-launch are independent. Neither opens Labs or the game, -connects Labs, or changes your saved game choice. If the one-time launch fails -after installation succeeded, resolve the reported runtime conflict and open -the installed **VX Bridge** shortcut; don't reinstall just to retry launching. - -**Qualification limits:** v0.1.0 passed automated build and static file checks, -not real installer servicing or live-equipment tests. An earlier private installer -candidate passed hosted Windows installation, damaged-file repair, one controlled -version-to-version upgrade, full uninstall and explicit uninstall/reinstall -recovery checks as a standard user. This does not qualify v0.1.0 or rebuilt -binaries, or verify interactive setup, the Start bridge prompt, actual Windows -sign-in or live Labs/game use. GSPro and game switching still need live testing -for v0.1.0. The -[qualification summary](technical/QUALIFICATION.md) records the bounded prior -observations and limits. +connects Labs or changes the saved game choice. If installation succeeds but +the one-time launch fails, resolve the reported conflict and open the installed +**VX Bridge** shortcut. Do not reinstall merely to retry a launch. + +If Windows blocks Setup, stop and [report the warning](https://github.com/devigned/vx-bridge/issues). +Do not disable security protections or bypass the warning. ## Make the first connection -1. Open **VX Bridge** on your signed-in Windows desktop. Find its icon near the - clock; it may be in the hidden-icons menu. -2. Open Infinite Tees or GSPro and enter a playable practice scene. For GSPro, - also open its **OpenAPI / APIv1 Connect** application, not the native VX receiver. +1. Open Infinite Tees or GSPro and enter a playable practice scene. For GSPro, + also open **OpenAPI / APIv1 Connect**, not the native VX receiver. +2. Open **VX Bridge** from Start if it is not running. Find its icon near the + clock; check the hidden-icons arrow if necessary. 3. Right-click the bridge icon and select **Use Infinite Tees** or **Use GSPro OpenAPI**. **Standby (discard shots)** sends shots to neither game. - Your selection is remembered; opening another game won't select it for you. -4. Use the normal connection action in **ProTee Labs** if needed. Opening the - bridge does not guarantee that Labs connects automatically. + The bridge remembers the selection. Opening a game does not select it. +4. Use ProTee Labs' normal Connect action if needed. The bridge does not open + Labs or the game, or connect Labs for you. 5. In the bridge menu, check that **ProTee Labs** is connected and your chosen game says **Connected (transport only)**. Check the game itself before swinging: the bridge cannot tell whether it is ready for the next shot. @@ -118,6 +98,17 @@ choose the other game, wait for switching to finish and check it before playing. Shots missed during switching, an outage or Standby are not saved or replayed. See [everyday use](USAGE.md#choose-a-destination). +## Limits + +v0.1.0 passed automated build and static file checks. Interactive installation, +Windows sign-in, installer servicing and live Labs/game use, including GSPro +and game switching, remain unqualified for these binaries. Earlier installer +and equipment observations used different builds; see +[qualification](technical/QUALIFICATION.md). + +The Windows programs and installer are not publisher-signed (Authenticode). +Signed Git commits and tags do not sign those files. + ## Maintenance and Repair required Opening VX Bridge from its executable, Start shortcut or Windows sign-in does diff --git a/docs/README.md b/docs/README.md index cd55827..bf6aea3 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,27 +1,21 @@ # Using VX Bridge -**One ProTee VX connection. Your choice of golf simulator.** - VX Bridge sends shots from ProTee Labs to your chosen game on the same Windows -PC. Choose Infinite Tees, GSPro OpenAPI or Standby from the icon near the clock. -Your choice is remembered; only one game receives shots. These guides are for -using the bridge, not building it. +PC. Select Infinite Tees, GSPro OpenAPI or Standby from the icon near the clock. +The bridge remembers the choice; only one game receives shots. -| What you want to do | Start here | +| Task | Guide | |---|---| | Choose the right files, install and connect for the first time | [Installation](INSTALL.md) | | Choose a game, check status, find logs or quit safely | [Everyday use](USAGE.md) | | Fix a connection problem, missed shot or failed installation | [FAQ](FAQ.md) | +| Read initial-release features, files and contributor credits | [v0.1.0 release notes](releases/v0.1.0.md) | | Report a bug or contribute | [Contributing](../contributors.md) | -**[v0.1.0 is available](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0), -but is not yet qualified for live play.** Choose the installer ZIP and follow the -[installation guide](INSTALL.md). Its automated build and file checks do not -qualify interactive setup, Windows sign-in or live Labs/game behavior, including -GSPro and game switching. Earlier private installer and equipment observations -used different builds. Neither a connected status nor automatic startup means -the game is ready. +[v0.1.0 is available](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0). +It passed automated build and file checks, not interactive installation, +Windows sign-in or live Labs/game qualification. See +[qualification](technical/QUALIFICATION.md) for the tested scope. -Looking after the code? The [technical index](technical/README.md) covers the -implementation, builds, tests and clearly labeled historical evidence. -The [project README](../README.md) is the short introduction. +The [technical manual](technical/README.md) covers implementation, builds and +testing. The [project README](../README.md) gives a shorter installation procedure. diff --git a/docs/USAGE.md b/docs/USAGE.md index 9e2efa5..a9f51d9 100644 --- a/docs/USAGE.md +++ b/docs/USAGE.md @@ -2,22 +2,26 @@ [User guides](README.md) / Everyday use -Open VX Bridge, choose today's game, connect Labs and check the game before -swinging. [v0.1.0 is published](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0), -but is not yet a qualified ready-to-play release. Live Labs/game use, GSPro and -game switching for these binaries still need testing. +VX Bridge sends shots to one selected game. Open the game and bridge, select the +game, then connect Labs. [v0.1.0](releases/v0.1.0.md) is published; its live +Labs/game behavior remains unqualified. See [qualification](technical/QUALIFICATION.md) +for the tested scope. ## Start a session -Open **VX Bridge** from Start on the same signed-in Windows desktop as Labs and -your game. For a separately approved portable build, use its supplied launch -instructions instead. Open the game, enter a playable scene and connect in -ProTee Labs if needed. - -Find the bridge icon near the Windows clock, including the hidden-icons menu. -The desktop build has no permanent console window. Right-click the icon to open -its menu. Keyboard users can press **Win+B**, use the arrows to find the icon, -and open its menu with **Enter** or **Shift+F10**. +1. Open the game on the same signed-in Windows desktop as Labs. Enter a playable + scene. For GSPro, also open **OpenAPI / APIv1 Connect**, not the native VX receiver. +2. Open **VX Bridge** from Start. Find its icon near the Windows clock; check + hidden icons if necessary. +3. Right-click the icon. Select **Use Infinite Tees** or **Use GSPro OpenAPI**. +4. Use ProTee Labs' normal Connect action if needed. +5. Check the bridge menu and game. **Connected (transport only)** reports an + open data connection, not a game ready for the next shot. + +The desktop build has no permanent console window. Keyboard users can press +**Win+B**, use the arrows to find the icon, and open its menu with **Enter** or +**Shift+F10**. For a separately approved portable build, use its supplied launch +instructions rather than the Start shortcut. ## Choose a destination diff --git a/docs/releases/v0.1.0.md b/docs/releases/v0.1.0.md new file mode 100644 index 0000000..e5d6c2d --- /dev/null +++ b/docs/releases/v0.1.0.md @@ -0,0 +1,120 @@ +# VX Bridge 0.1.0 + +VX Bridge forwards shot data from ProTee Labs to Infinite Tees or GSPro OpenAPI +on the same Windows PC. This is the first public release. + +## What this release provides + +- A Windows x64 application with an icon near the clock. Labs continues to + manage the launch monitor; the game calculates ball flight. +- A remembered choice of Infinite Tees, GSPro OpenAPI or Standby. Only the + selected game receives shots. There is no automatic game selection or failover. +- Connection status, shot-delivery counts and local logs. Logs omit shot + measurements and device/player identifiers; nothing is uploaded automatically. +- Guarded shutdown: Quit waits for Labs to disconnect. A game connection failure + does not deliberately close the Labs connection. Missed shots are not replayed. +- Per-user Setup, repair and uninstall, with optional launch at Windows sign-in. + Ordinary application startup does not run Windows Installer or attempt repair. + +These are implemented capabilities, not a claim of live-equipment qualification. +Read [Limits](#limits) before installing. + +## Requirements + +Use Windows x64, an activated ProTee VX with ProTee Labs already working, and a +licensed Infinite Tees or GSPro installation on the same PC. For GSPro, use its +public **OpenAPI / APIv1 Connect** application, not the native VX receiver. +VX Bridge does not supply a game or replace an existing license. + +## Installation + +1. Download the [v0.1.0 installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip). + Do not select the application-only ZIP, separate MSI or **Source code**. +2. In ProTee Labs, select **Game Options > Disconnect**. Close any existing + receiver through its own controls. Do not run two receivers or replace the + vendor's `GSPconnect.exe`. +3. Right-click the ZIP and select **Extract All**. Open the extracted folder. + Keep all nine files together, including `setup.exe` and `bridge.msi`. + Do not run Setup from inside the ZIP or mix files from different builds. +4. Open `setup.exe` as the Windows user who will use the bridge, not as + administrator. Select **Install**. Do not double-click `bridge.msi`. +5. Leave **Auto-launch on Windows Startup** off unless the bridge should open + when you sign in. It is off on a fresh install. +6. Wait for Setup to report success. At **Start the bridge now?**, select + **Start bridge** to open it once, or **Not now** to open **VX Bridge** from + Start later. Starting it once does not enable auto-launch. + +If Windows blocks Setup, stop and +[report the warning](https://github.com/devigned/vx-bridge/issues). +Do not disable security protections or bypass the warning. + +## First use + +1. Open the game and enter a playable practice scene. For GSPro, also open + **OpenAPI / APIv1 Connect**. +2. Open **VX Bridge** from Start if it is not running. Find its icon near the + Windows clock; check the hidden-icons arrow if necessary. +3. Right-click the icon. Select **Use Infinite Tees** or **Use GSPro OpenAPI**. + A checkmark shows the applied choice. The bridge remembers it for next time. +4. Use ProTee Labs' normal Connect action if needed. The bridge does not open + Labs or the game, or connect Labs for you. +5. Check the bridge menu. Labs should be connected and the selected game should + show **Connected (transport only)**. Then check the game itself before + swinging. A data connection does not establish that the game is ready. + +Wait for each shot's visible result before the next swing. To change games, +stop swinging, let the result finish, select the other game and wait for +switching to finish. **Standby (discard shots)** sends to neither game. + +To finish, select **Game Options > Disconnect** in ProTee Labs, then **Quit** in +VX Bridge. Do not force the bridge closed while Labs is attached. + +For repair, recovery or connection problems, see the +[installation guide](https://github.com/devigned/vx-bridge/blob/main/docs/INSTALL.md) +and [FAQ](https://github.com/devigned/vx-bridge/blob/main/docs/FAQ.md). + +## Contributors + +Welcome [David Justice (@devigned)](https://github.com/devigned), the public +repository's first contributor. This release includes the +[initial public source](https://github.com/devigned/vx-bridge/commit/58110d938ad7e9ce23d18ef168c1d578c6324dda) +and [contributor signing rules](https://github.com/devigned/vx-bridge/commit/5401cf26d19238b04ba3dbb8ecfa60442616ca79). + +Copilot App is credited as an automated co-author on those two commits, not as +an additional human contributor. No public pull request was merged before this +tag. Dependency and reference attributions are in +[THIRD_PARTY_NOTICES.txt](https://github.com/devigned/vx-bridge/blob/v0.1.0/THIRD_PARTY_NOTICES.txt). + +## Limits + +The release passed automated build and static file checks. Interactive +installation, Windows sign-in, installer servicing and live Labs/game use, +including GSPro and game switching, remain unqualified for these binaries. +Earlier installer and equipment observations used different builds and do not +qualify v0.1.0. + +The Windows programs and installer are not publisher-signed (Authenticode). +The signed Git source and tag do not sign those files. Checksums detect changed +or damaged bytes; they do not authenticate a publisher. + +Missed shots are lost, not saved for later. If delivery is uncertain, check the +game before swinging again: it may have received the shot. A failed upgrade is +not guaranteed to restore the previous version; keep the bridge stopped until +Setup verifies recovery. + +## Files and source + +The release contains three packages and a `.sha256` file for each: + +| File | Use | +|---|---| +| [Installer ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-installer-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip) | Normal installation. Extract it and run `setup.exe` with matching `bridge.msi` beside it. | +| [Application ZIP](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.zip) | Six-file application package for separately approved manual or development use. It does not contain Setup. | +| [MSI](https://github.com/devigned/vx-bridge/releases/download/v0.1.0/vx-bridge-windows-amd64-v0.1.0-5401cf26d19238b04ba3dbb8ecfa60442616ca79.msi) | The same MSI included in the installer ZIP. It is not a standalone install route. | + +Version: [`v0.1.0`](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0). +Source: [`5401cf26d19238b04ba3dbb8ecfa60442616ca79`](https://github.com/devigned/vx-bridge/commit/5401cf26d19238b04ba3dbb8ecfa60442616ca79). +The annotated tag and source commit have verified signatures. +The [release workflow](https://github.com/devigned/vx-bridge/actions/runs/41832770003) +built and verified the files from that exact source. No product executable, +installer or simulator was run for those checks. diff --git a/docs/technical/AUTOMATION.md b/docs/technical/AUTOMATION.md index cd3e737..a0b9ae5 100644 --- a/docs/technical/AUTOMATION.md +++ b/docs/technical/AUTOMATION.md @@ -121,10 +121,9 @@ vx-bridge-installer-windows-amd64-vX.Y.Z-<40sha>.zip vx-bridge-windows-amd64-vX.Y.Z-<40sha>.msi ``` -Each file has its own appended `.sha256`. The public -[v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) uses -these naming rules. The release publishes the verified application -ZIP, installer ZIP, direct matching MSI, and all three checksums. +Each file has an appended `.sha256` companion. The public +[v0.1.0 release](../releases/v0.1.0.md) follows these naming rules and contains +the application ZIP, installer ZIP, matching MSI and three checksums. `package-installer` and `verify-installer` own bundle assembly/integrity; native compilation and WiX authoring remain separate stages. @@ -203,10 +202,10 @@ Repository commits must instead be signed under [AGENTS.md](../../AGENTS.md); that does not sign the emitted EXEs/MSI. Checksums detect corruption and bind inspected bytes; they do not authenticate a publisher, prove hardware compatibility, or imply vendor endorsement. -The tag-release write path has local negative-fixture coverage and a successful -[v0.1.0 publication run](https://github.com/devigned/vx-bridge/actions/runs/41832770003). -That run built and statically verified packages without executing the product; -see the [exact publication scope](QUALIFICATION.md#public-release-publication). +The tag-release write path has local negative-fixture coverage. The +[v0.1.0 publication run](https://github.com/devigned/vx-bridge/actions/runs/41832770003) +also completed successfully. It built and checked packages without executing +the product; see [publication scope](QUALIFICATION.md#public-release-publication). The only active workflows are CI and version-tag release. The private-only manual Setup lifecycle remains parked. Independent comparison/rollback-control diff --git a/docs/technical/INSTALLER.md b/docs/technical/INSTALLER.md index d6063e3..2a3ffd6 100644 --- a/docs/technical/INSTALLER.md +++ b/docs/technical/INSTALLER.md @@ -10,14 +10,13 @@ local admission checks; Windows Installer is involved only in explicit installation and maintenance, never in ordinary direct, shortcut, or sign-in startup. -The selected contract is **recovery-first-v2**. Conventional MSI install, -repair, upgrade, and full Uninstall passed a recorded same-source, -same-native-core hosted lifecycle for an earlier private candidate. That does -not qualify this public bootstrap or rebuilt binaries. Interactive/client-PC operation, actual -sign-in, Apps UI, Start now, and attached-Labs maintenance remain unqualified. -The public [v0.1.0 installer](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -is available, but publication adds no lifecycle or client-PC qualification. See -[Qualification](QUALIFICATION.md#installer-observations) for the exact result. +The selected contract is **recovery-first-v2**. An earlier private candidate +passed conventional MSI install, repair, upgrade and full Uninstall checks on +a disposable host with one recorded source/native-core pair. That result does not +qualify the public [v0.1.0 installer](../releases/v0.1.0.md) or rebuilt binaries. +Interactive/client-PC operation, actual sign-in, Apps UI, Start bridge and +attached-Labs maintenance remain unqualified. See +[Qualification](QUALIFICATION.md#installer-observations) for the recorded scope. ## Managed-copy admission diff --git a/docs/technical/QUALIFICATION.md b/docs/technical/QUALIFICATION.md index 6f7a30c..b9a22eb 100644 --- a/docs/technical/QUALIFICATION.md +++ b/docs/technical/QUALIFICATION.md @@ -10,39 +10,37 @@ to its exact source, artifact, version, scenario, and observation method. Passing CI does not turn an unsigned development package into a release or qualify later binaries on a golf PC. -The current source implements remembered IT/GSPro OpenAPI/Standby selection -and recovery-first-v2 installation. The public v0.1.0 tag and release are now -published; their bounded verification is recorded below. There is no official -vendor endorsement or live GSPro/cross-game qualification. -[Testing](TESTING.md) describes software coverage; -the [research boundary](research/README.md) explains what is retained publicly. -This repository starts from a source-only bootstrap without the earlier private -history, run artifacts or investigation ledgers. The historical installer and -bridge observations below concern older, separately identified instruments and -candidates, not this bootstrap commit or binaries rebuilt from it. -Original private records remain unchanged; -no old hash, run or issue is relabeled as belonging to this repository. +The current source implements remembered Infinite Tees/GSPro OpenAPI/Standby +selection and recovery-first-v2 installation. The public v0.1.0 release has +build and publication evidence, not live GSPro or cross-game qualification. +There is no vendor endorsement. [Testing](TESTING.md) describes software +coverage; the [research boundary](research/README.md) defines the public record. + +The repository began with a source-only bootstrap. Earlier private history, +run artifacts and investigation ledgers were not imported. The historical +installer and bridge observations below concern older instruments and +candidates, not v0.1.0 or rebuilt binaries. The original records are unchanged; +no earlier hash, run or issue is attributed to this repository. ## Public release publication -[v0.1.0](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) targets public -source commit `5401cf26d19238b04ba3dbb8ecfa60442616ca79`. Its annotated tag was -cryptographically signed with the owner's existing Git signing identity and -verified locally and by GitHub. The +[v0.1.0](../releases/v0.1.0.md) targets source commit +`5401cf26d19238b04ba3dbb8ecfa60442616ca79`. The annotated tag uses the owner's +existing signing identity. Its signature was verified locally and by GitHub. The [tag-triggered release run](https://github.com/devigned/vx-bridge/actions/runs/41832770003) -completed its build, static package verification and publication jobs. - -The published application ZIP, installer ZIP, direct matching MSI and three -SHA-256 files were downloaded and verified. All six files matched that run's -exact immutable artifact bytes and GitHub asset digests. The application manifest -identified the tagged source and v0.1.0; the installer ZIP had the expected nine -flat entries, and its `bridge.msi` matched the direct MSI. - -No product executable or installer was run for these checks. This establishes -publication and artifact integrity, not interactive installation, Windows sign-in, -installer servicing or real Labs/game compatibility for v0.1.0. The emitted -Windows programs and installer are not Authenticode-signed; signed source commits -and tags do not sign those files. +completed build, static package checks and publication. + +The application ZIP, installer ZIP, matching MSI and three SHA-256 files were +downloaded and checked. All six matched the run's immutable artifact bytes and +GitHub asset digests. The application manifest identified the tagged source +and version. The installer ZIP contained nine flat entries; its `bridge.msi` +was identical to the separate MSI. + +No product executable or installer was run. These checks establish publication +and file integrity, not interactive installation, Windows sign-in, installer +servicing or live Labs/game compatibility. The Windows programs and installer +are not Authenticode-signed. Signed source commits and tags do not sign those +files. ## Installer observations diff --git a/docs/technical/README.md b/docs/technical/README.md index f0143a8..e0d4897 100644 --- a/docs/technical/README.md +++ b/docs/technical/README.md @@ -40,14 +40,15 @@ separates those checks from observed Windows and equipment behavior. ## Status and scope -An earlier private installer candidate passed a recorded same-source, -same-native-core lifecycle on a disposable hosted Windows machine, including -explicit recovery after an induced failure. That does not qualify the public -bootstrap or a rebuilt artifact, and is not client-PC, interactive -installer, sign-in, attached-Labs, or cross-game qualification. -The public [v0.1.0 release](https://github.com/devigned/vx-bridge/releases/tag/v0.1.0) -has passed build and static artifact verification, not those runtime or servicing -checks. See [Qualification](QUALIFICATION.md#public-release-publication). +The public [v0.1.0 release](../releases/v0.1.0.md) passed build and static artifact +checks. Interactive installation, Windows sign-in, client-PC servicing and live +Labs/game behavior remain unqualified for these binaries. + +An earlier private installer candidate passed a same-source, same-native-core +lifecycle on a disposable Windows host, including recovery after an induced +failure. That result does not qualify v0.1.0 or a rebuilt artifact. +[Qualification](QUALIFICATION.md) separates the publication checks from earlier +installer and equipment observations. Ordinary startup has no Windows Installer service dependency. There is no Session 0 service, automatic updater, hardware-direct interface, vendor