Skip to content

Merge pull request #200 from Open-VCS/Add-Beta Implement beta testing#201

Merged
Jordonbc merged 15 commits intoBetafrom
Dev
Mar 24, 2026
Merged

Merge pull request #200 from Open-VCS/Add-Beta Implement beta testing#201
Jordonbc merged 15 commits intoBetafrom
Dev

Conversation

@Jordonbc
Copy link
Copy Markdown
Collaborator

first beta

@github-actions
Copy link
Copy Markdown

Code Review: PR #200 - Implement Beta Testing

Overview

This PR adds beta channel support for OpenVCS, including a new CI workflow, build configuration changes, and backend/frontend update functionality.

Changes Summary

File Change
.github/workflows/beta.yml New workflow for beta builds
Backend/build.rs Beta channel support in build config
Backend/src/lib.rs Add updater trait import
Backend/src/tauri_commands/updater.rs New update status & install commands
Frontend/src/modals/settings.html Add beta option to dropdown
Frontend/src/scripts/features/update.ts Refactor to use backend commands

Positive Aspects

  1. Well-structured workflow - Proper caching (sccache, Rust cache), linting, and cleanup
  2. Clean backend commands - Good error handling with map_err and logging
  3. Simplified frontend - Removed duplicate update logic, now uses backend
  4. Proper fallback - Beta checks beta first, then stable as fallback

Potential Issues

1. Missing signing keys for CI (.github/workflows/beta.yml:114-115)

TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_PRIVATE_KEY_PASSWORD }}

These secrets must be configured in the repo settings, or the workflow will fail.

2. Version string logic (build.rs:269-281)
Beta builds append -beta suffix, which is good. Ensure the package version in Cargo.toml is properly tagged for production beta releases.

3. Update channel persistence - The settings.html has the beta option, but verify it's properly saved/loaded through the settings system.

4. No beta-specific release notes - The workflow body could include more detailed beta testing instructions for users.

Code Quality

  • Rust: No issues, proper error handling and logging
  • TypeScript: Clean, well-structured
  • CI: Proper security with minimal permissions

Verdict

LGTM - The changes are well-implemented and follow project conventions. The main requirement is ensuring the signing keys are configured in the repo before merging.

New%20session%20-%202026-03-24T04%3A01%3A46.754Z
opencode session  |  github run

@Jordonbc Jordonbc merged commit 3b1b7c0 into Beta Mar 24, 2026
7 checks passed
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 61377192cf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@@ -0,0 +1,128 @@
name: Beta
run-name: "OpenVCS Beta • Run #${{ github.run_number }} • Beta@${{ steps.meta.outputs.short_sha }}"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Remove step output from workflow run-name

run-name is evaluated before any job steps run, so steps.meta.outputs.short_sha is not in scope at this level. In this workflow, that expression can cause validation failure on trigger (push/workflow_dispatch), which blocks the Beta pipeline from starting at all.

Useful? React with 👍 / 👎.

Date (UTC): ${{ steps.meta.outputs.date }}
Commit: ${{ github.sha }} (${{ env.TARGET_REF }}@${{ steps.meta.outputs.short_sha }})
Runner: ${{ runner.os }} • Run #${{ github.run_number }}
releaseDraft: true
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Publish beta release artifacts for updater access

This workflow always creates openvcs-beta as a draft release, but the beta channel endpoint configured in Backend/build.rs points clients to .../releases/download/openvcs-beta/latest.json for unauthenticated updater checks. Draft release assets are not publicly retrievable, so beta clients cannot fetch latest.json and beta auto-update checks/install flows will fail in production.

Useful? React with 👍 / 👎.

Jordonbc added a commit that referenced this pull request Mar 24, 2026
Merge pull request #201 from Open-VCS/Dev

Merge pull request #200 from Open-VCS/Add-Beta

Implement beta testing
Jordonbc added a commit that referenced this pull request Mar 24, 2026
Merge pull request #203 from Open-VCS/Beta

Merge pull request #201 from Open-VCS/Dev

Merge pull request #200 from Open-VCS/Add-Beta

Implement beta testing
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.

1 participant