Skip to content

T-T2HB-fold-pumice-ci-into-moon-ci

Status: closed/done · Impact: medium · Complexity: medium

Fold pumice’s frontend, Rust, and codegen-drift checks into this repo’s CI so they run under moon ci (affected-detection), on a job that installs Tauri’s Linux system dependencies. Retire pumice’s standalone GitHub workflows in favor of the monorepo’s CI.

Pumice ships four workflows (ci.yml, build-check.yml, codegen-drift.yml, release.yml) that install libwebkit2gtk-4.1-dev and friends and run the frontend and Rust jobs. This repo runs quality gates via bun/moon (see sdlc.yaml).

LocationRole today
apps/pumice/.github/workflows/*Pumice’s own CI (not wired into the monorepo)
Root CI / moon ciThe monorepo’s gate; no pumice awareness
Tauri Linux build depslibwebkit2gtk-4.1-dev, librsvg2-dev, patchelf, libasound2-dev

A pumice-affected CI path that installs the Tauri system deps and runs moon run pumice:check/test/codegen-drift, so pumice’s gates fire only when apps/pumice is affected. Pumice’s in-tree workflows are removed or reduced to release-only.

  1. Add system deps to the runner. Install the Tauri Linux packages in the monorepo CI job that runs pumice-affected tasks.
  2. Route through moon. Invoke pumice’s checks via moon ci / moon run pumice:* so affected-detection skips pumice when it is untouched.
  3. Retire/trim pumice’s workflows. Remove ci.yml/build-check.yml/ codegen-drift.yml from apps/pumice/.github (superseded); decide whether release.yml stays app-local or moves to a monorepo release flow.
  4. Confirm codegen-drift runs. Ensure the T-R9WT drift gate runs in CI with PUMICE_SKIP_SERVER_CODEGEN set.
LocationKindChange
Monorepo CI workfloweditAdd pumice-affected job with Tauri system deps + moon ci
apps/pumice/.github/workflows/*delete/trimRetire superseded workflows
  • AC-1: A CI run touching only apps/pumice executes pumice’s frontend, Rust, and codegen-drift checks via moon.
  • AC-2: A CI run NOT touching apps/pumice skips pumice’s checks (affected-detection).
  • AC-3: The CI job installs the Tauri Linux system deps and pumice’s Rust build/clippy pass.
  • AC-4: Superseded pumice in-tree workflows are removed; release ownership is decided.
  • Release/signing pipeline design — deferred to a Phase-2/release task.
  • Remote moon cache — deferred per D-0012-monorepo-tooling.
  • T-M7QX, T-P4LZ, T-R9WT (hard): the Bun, Rust, and codegen tasks must exist before CI can route through them.

T-M7QX, T-P4LZ, T-R9WT


← Back to Tasks