Skip to content

T-Z5MK-converge-with-apps-desktop-and-adapter-seam

Status: closed/superseded · Impact: medium · Complexity: large

Close the Phase-2 convergence: resolve the relationship between the fat apps/pumice and the thin apps/desktop wrapper drafted in T-CKC1, and — if pumice consumes any of the TS substrate — route it through the S-0008-apps-consume-substrate-through-published-surfaces adapter seam rather than importing plugin/lib directly.

T-CKC1 drafts a thin Tauri wrapper at apps/desktop embedding the dashboard SPA. D-0016-pumice-app-integration introduces the fat apps/pumice. Both may exist in parallel after Phase 1, and pumice currently consumes nothing from the substrate.

LocationRole today
apps/pumiceFat, self-contained Tauri app (this milestone)
apps/desktop (T-CKC1)Thin Tauri wrapper embedding the dashboard SPA
S-0008-apps-consume-substrate-through-published-surfacesThe app→substrate contract; not yet binding on pumice

Decide whether apps/pumice supersedes apps/desktop or the two coexist, and introduce the adapter seam the first time pumice depends on the substrate (e.g. consuming packages/ts/dashboard-client or exposing pumice data to the dashboard).

  1. Resolve the two-Tauri-apps question. Determine whether the thin apps/desktop is redundant once apps/pumice lands, folds into pumice, or serves a distinct purpose. Record the outcome (an ADR update if it changes T-CKC1’s status).
  2. Introduce the adapter seam on first coupling. When pumice first consumes the substrate, add an adapter package (typically under packages/ts/) so the dependency direction obeys S-0008-apps-consume-substrate-through-published-surfaces — no direct plugin/lib import.
  3. Activate the S-0008 validator for pumice. Ensure the apps-import discipline validator covers apps/pumice.
LocationKindChange
docs/planning/**editRecord the desktop/pumice convergence decision
packages/ts/<adapter>/**new (conditional)Adapter package if pumice consumes the substrate
apps/pumice/**edit (conditional)Consume the substrate via the adapter, not directly
  • AC-1: The apps/pumice vs apps/desktop relationship is decided and recorded (supersede, coexist, or fold).
  • AC-2: Any pumice→substrate dependency goes through an adapter per S-0008-apps-consume-substrate-through-published-surfaces; no direct plugin/lib import.
  • AC-3: The apps-import discipline validator covers apps/pumice.
  • New pumice product features.
  • Crate promotionT-X8CF (this task builds on it).
  • T-X8CF (hard): shared-crate promotion and the cargo workspace precede the full convergence.
  • T-CKC1 (prose): the thin-wrapper task this reconciles against.

T-X8CF


← Back to Tasks