Files
redis-gui-foundation/plans/2026-03-27-hac-15-desktop-build-smoke.md
Senior Frontend Engineer 8d50243d36 feat(desktop): add redis gui foundation baseline
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-28 10:39:40 +00:00

39 lines
2.0 KiB
Markdown

# HAC-15 Desktop Build, Packaging, And Smoke Plan
Date: 2026-03-27 UTC
Owner: Senior Backend Engineer
Issue: HAC-15
## Goal
Make the desktop repository usable through one stable build path, one stable package path, and one repeatable local Redis smoke path.
## Current Findings
- The original `tauri.conf.json` pre-build and pre-dev commands assumed the wrong working directory and caused `tauri build` to fail before the real Rust/Tauri flow began.
- The repo already had a valid desktop frontend build and a validated shared Rust backend core, but no stable `pnpm` workspace setup for the desktop shell.
- QA had explicit blockers around missing seed data, missing Docker or smoke automation, and missing reusable build instructions.
## Changes In This Pass
1. Standardize the workspace on `pnpm` by adding `packageManager`, `pnpm-workspace.yaml`, and root desktop scripts.
2. Fix Tauri `beforeDevCommand` and `beforeBuildCommand` so they execute against the desktop workspace directly.
3. Add a Docker-backed Redis fixture with start, seed, and stop scripts.
4. Add a local desktop smoke runbook and refresh README and QA evidence docs around the new commands and fixture path.
## Verification
- Passed: `cargo test -p redis-core`
- Passed: `pnpm install --lockfile-only`
- Passed: `pnpm run desktop:build`
- Passed: `./scripts/redis-fixture/start.sh`
- Passed: `./scripts/redis-fixture/seed.sh`
- Passed: `./scripts/redis-fixture/stop.sh`
- In progress: `pnpm run desktop:tauri:build` now clears the pre-build script failure and reaches Cargo dependency download and compile steps
## Remaining Risk
- This heartbeat has not yet produced a saved unsigned package artifact for Linux, macOS, or Windows.
- First-run Cargo package downloads remain slow and can serialize on the shared package-cache lock, so package verification should be rerun in a clean single-build window.
- End-to-end smoke evidence inside the desktop UI still depends on frontend surfaces that are only partially implemented.