Skip to content

feat(gui): sync workspace config and rerun artifacts#89

Open
KoEkko wants to merge 6 commits into
mainfrom
ekko/feat-workspace-config-sync-rerun
Open

feat(gui): sync workspace config and rerun artifacts#89
KoEkko wants to merge 6 commits into
mainfrom
ekko/feat-workspace-config-sync-rerun

Conversation

@KoEkko

@KoEkko KoEkko commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add desktop CLI bridge support for refresh_config and sync_config, including renderer APIs and shared command contracts.
  • Guard parameter and step-config saves while a workspace flow is active, then refresh/sync workspace config and invalidate dependent GUI resources after successful saves.
  • Add rerun mode handling from the left sidebar, propagate rerun startup metadata, and reset/reload stale home, flow, parameters, and stage artifacts during flow restart.
  • Use the source-tree ECC virtualenv for desktop Electron development runtime resolution.
  • Update both the ecc submodule pointer and Bazel @ecc packaged CLI override to ECC PR #113 commit 125e39c, so GUI AppImage CI builds package the matching CLI changes before the ECC PR lands.

Commits

  • fix(gui): use source-tree ecc venv in development
    • Resolves desktop Electron dev runtime lookup to the source-tree ECC virtualenv.
  • feat(gui): add workspace config sync bridge
    • Adds desktop CLI command contracts, adapter support, and renderer APIs for refresh_config and sync_config.
  • feat(gui): guard active config saves
    • Blocks parameter/step-config writes while a workspace flow is running, refreshes/syncs config after saves, and invalidates dependent resources.
  • feat(gui): reset rerun artifacts during flow restart
    • Adds ReRun mode UI wiring, propagates rerun startup metadata, and reloads/reset home, flow, parameter, stage, and workspace artifacts.
  • chore(gui): update ecc submodule for workspace sync
    • Points the GUI PR checkout at the ECC companion branch commit that adds workspace config refresh/sync and rerun artifact preparation.
  • build(gui): pin packaged ecc cli to workspace sync commit
    • Points Bazel @ecc//:build_ecc_cli_bundle at the same ECC companion commit and refreshes the Bazel module lock digests, so AppImage packaging uses the matching CLI bundle.

Tests

  • pnpm exec vitest run electron/services/eccCliRuntime.test.ts electron/services/desktopRuntimeManager.test.ts electron/services/eccCliAdapter.test.ts electron/services/workspaceService.test.ts --silent from ecos/gui/apps/desktop-electron
  • pnpm exec vitest run src/api/flow.desktop-ipc.test.ts src/api/runtimeEvents.desktop-cli.test.ts src/composables/useFlowRunner.test.ts src/composables/useFlowRunMode.test.ts src/composables/useFlowStages.live-watch.test.ts src/composables/useHomeData.live-watch.test.ts src/composables/useParameters.runtime.test.ts src/composables/useStepConfigInfo.test.ts src/composables/useWorkspace.test.ts --silent from ecos/gui/apps/renderer
  • .venv/bin/python -m chipcompiler.cli.main workspace refresh-config --help, .venv/bin/python -m chipcompiler.cli.main workspace sync-config --help, and .venv/bin/python -m chipcompiler.cli.main workspace run-flow --help from ecc
  • python3 - <<'PY' ... check that MODULE.bazel pins @ecc to 125e39c6559b4440d79505a3685b6b04a28519f9
  • bazel cquery --output=label @ecc//:build_ecc_cli_bundle
  • git diff --check HEAD~1..HEAD

Related PRs

Notes

  • This PR intentionally points both the checked-out ecc submodule and the Bazel packaged CLI input at ECC companion PR branch commit 125e39c6559b4440d79505a3685b6b04a28519f9. After ECC #113 merges, reconcile both pointers to the merged ECC commit if GitHub creates a different merge commit.

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