Spaces:
Runtime error
Runtime error
A newer version of the Gradio SDK is available: 6.14.0
T-015: Build Smoke Test β CI Passes on Windows, VST3 DLL Produced, task build Clean
Type: Task | Phase: 0 | Autonomy: agent:review-required
Stack: stack:infra | Version: v0.1 | Iteration: iter-1 | Effort: S (half-day)
β οΈ Scope: Add a
buildjob to the GitHub Actions CI workflow (.github/workflows/ci.yml) that runstask buildonwindows-latest, verifies the.exeexists and is under 30 MB, and verifies the VST3 bundle exists. This is the Day 1 exit criterion proof. If any prior task left broken code, this job surfaces it.
Prerequisites
- T-001βT-014 all merged (or all in
status:roadmapwith known blockers) - T-007 merged β
Taskfile.ymlwithtask builddefined - T-008 merged β CI workflow exists with
checkandtestjobs
Acceptance Criteria
- New
buildjob added to.github/workflows/ci.ymlaftertestjob -
buildjob runs only on push tomain(not on every PR β too slow) -
task buildruns:cargo tauri build+cargo xtask bundle synesthesia-plugin --release - CI step verifies
.exeexists atkansas/target/release/synesthesia.exe - CI step verifies
.exesize is < 30 MB (fails if Chromium accidentally bundled) - CI step verifies
target/bundled/Synesthesia.vst3/directory exists - Build job result posted as a comment on the triggering commit
-
cargo check --workspaceandpnpm typecheckstill pass
Add to .github/workflows/ci.yml
# ββ Build job (push to main only β ~10 min, too slow for every PR) βββββββββ
build:
name: Full Build
runs-on: windows-latest
needs: [check, test]
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
with:
components: clippy, rustfmt
- uses: Swatinem/rust-cache@v2
with:
key: ${{ runner.os }}-build-${{ hashFiles('Cargo.lock') }}
- uses: actions/setup-node@v4
with:
node-version: '20'
- uses: pnpm/action-setup@v4
with:
version: 9
run_install: false
- name: Install frontend deps
run: pnpm install --frozen-lockfile
- uses: arduino/setup-task@v2
with:
version: 3.x
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Install WebView2 (if missing)
run: |
$installer = "MicrosoftEdgeWebview2Setup.exe"
Invoke-WebRequest "https://go.microsoft.com/fwlink/p/?LinkId=2124703" -OutFile $installer
Start-Process $installer -ArgumentList "/silent /install" -Wait
shell: powershell
continue-on-error: true # Already installed on windows-latest
- name: Build all targets
run: task build
- name: Verify standalone exe
shell: bash
run: |
EXE="kansas/target/release/synesthesia.exe"
[ -f "$EXE" ] || { echo "β $EXE not found"; exit 1; }
SIZE=$(stat -c%s "$EXE")
echo "exe size: $((SIZE / 1024 / 1024)) MB"
[ "$SIZE" -lt 31457280 ] || { echo "β exe > 30 MB β Chromium may have been bundled"; exit 1; }
echo "β Standalone exe OK"
- name: Verify VST3 bundle
shell: bash
run: |
BUNDLE="target/bundled/Synesthesia.vst3"
[ -d "$BUNDLE" ] || { echo "β $BUNDLE not found"; exit 1; }
echo "β VST3 bundle OK"
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: synesthesia-build-${{ github.sha }}
path: |
kansas/target/release/synesthesia.exe
target/bundled/
retention-days: 7
GitHub CLI
gh issue create \
--title "T-015: Build smoke test β CI full build on Windows, VST3 DLL verified" \
--label "type:task,stack:infra,agent:review-required,priority:critical,status:ready,day:1" \
--body-file T-015.md
Parent: GENESIS | Blocks: Day 1 exit criterion | Blocked By: T-001βT-014, T-007, T-008