Cover and fix Electron registry settings visibility #184

Closed
opened 2026-05-31 22:09:54 +00:00 by steve · 0 comments
Owner

Electron should expose the same Full Registry V1 settings surface as the shared
workspace shell and the regression should be covered by desktop E2E tests.

Problem

The shared workspace shell registers the registry-facing Plugins settings tab,
but the Electron dev app is reported to show no registry settings. Existing
desktop E2E coverage does not assert that the registry tab is visible or that
Docs is absent from bundled core plugins.

Goal

Make the registry settings surface discoverable and functional in Electron, and
add focused desktop regression coverage so future registry UI changes cannot
ship browser-only.

Scope

  • Reproduce the Electron settings state through the package E2E harness.
  • Add or update desktop E2E coverage for the registry settings tab.
  • Fix any shared workspace or desktop wiring that prevents the tab from
    appearing.
  • Add coverage that Docs is not registered as a bundled core plugin in Electron
    startup state.
  • Update specs if runtime behavior or testing expectations change.

Non-goals

  • Changing the official registry contract or release-signing flow.
  • Adding third-party registry sources.
  • Reintroducing Docs as a bundled core plugin.

Acceptance Criteria

  • Electron E2E opens the settings dialog and verifies the Plugins registry tab
    renders the Installed, Browse, Updates, and Sources views.
  • Electron E2E verifies lapis-docs is not present as a bundled core plugin at
    startup.
  • If a visibility bug exists, the fix applies through the shared workspace
    settings path rather than a desktop-only duplicate UI.
  • Required checks pass for the touched packages and app smoke passes.

Implementation Notes

  • Start by inspecting the desktop Playwright helpers and existing settings
    tests.
  • Prefer a focused regression spec under packages/desktop-electron/e2e/.
  • Use the runtime app object only for setup/navigation; assert visible UI
    where practical.

Suggested Files or Specs To Inspect

  • packages/desktop-electron/e2e/
  • packages/workspace/src/lib/components/app/App.svelte
  • packages/workspace/src/lib/components/configuration/plugins-registry-panel.svelte
  • spec/src/20-packages/desktop-electron/index.md
  • spec/src/20-packages/workspace/index.md

Validation Commands

  • pnpm --filter @lapis-notes/desktop-electron test:e2e -- --grep "registry"
  • pnpm --filter @lapis-notes/desktop-electron check:e2e
  • pnpm --filter @lapis-notes/workspace check:all
  • pnpm test:smoke

Follow-up Tasks

Implementation Summary

Labeled the shared settings entry and panel as Plugin registry, added desktop Electron E2E coverage that opens the registry settings tab and verifies the Installed/Browse/Updates/Sources views, and asserted lapis-docs is not a bundled core plugin in the desktop runtime.

Electron should expose the same Full Registry V1 settings surface as the shared workspace shell and the regression should be covered by desktop E2E tests. ## Problem The shared workspace shell registers the registry-facing Plugins settings tab, but the Electron dev app is reported to show no registry settings. Existing desktop E2E coverage does not assert that the registry tab is visible or that Docs is absent from bundled core plugins. ## Goal Make the registry settings surface discoverable and functional in Electron, and add focused desktop regression coverage so future registry UI changes cannot ship browser-only. ## Scope - Reproduce the Electron settings state through the package E2E harness. - Add or update desktop E2E coverage for the registry settings tab. - Fix any shared workspace or desktop wiring that prevents the tab from appearing. - Add coverage that Docs is not registered as a bundled core plugin in Electron startup state. - Update specs if runtime behavior or testing expectations change. ## Non-goals - Changing the official registry contract or release-signing flow. - Adding third-party registry sources. - Reintroducing Docs as a bundled core plugin. ## Acceptance Criteria - Electron E2E opens the settings dialog and verifies the Plugins registry tab renders the Installed, Browse, Updates, and Sources views. - Electron E2E verifies `lapis-docs` is not present as a bundled core plugin at startup. - If a visibility bug exists, the fix applies through the shared workspace settings path rather than a desktop-only duplicate UI. - Required checks pass for the touched packages and app smoke passes. ## Implementation Notes - Start by inspecting the desktop Playwright helpers and existing settings tests. - Prefer a focused regression spec under `packages/desktop-electron/e2e/`. - Use the runtime `app` object only for setup/navigation; assert visible UI where practical. ## Suggested Files or Specs To Inspect - `packages/desktop-electron/e2e/` - `packages/workspace/src/lib/components/app/App.svelte` - `packages/workspace/src/lib/components/configuration/plugins-registry-panel.svelte` - `spec/src/20-packages/desktop-electron/index.md` - `spec/src/20-packages/workspace/index.md` ## Validation Commands - `pnpm --filter @lapis-notes/desktop-electron test:e2e -- --grep "registry"` - `pnpm --filter @lapis-notes/desktop-electron check:e2e` - `pnpm --filter @lapis-notes/workspace check:all` - `pnpm test:smoke` ## Related Issues - Follow-up to #183 — [Polish registry settings and on-demand registry failure UX](../closed/183-polish-registry-settings-and-on-demand-registry-failure-ux.md) ## Follow-up Tasks ## Implementation Summary Labeled the shared settings entry and panel as Plugin registry, added desktop Electron E2E coverage that opens the registry settings tab and verifies the Installed/Browse/Updates/Sources views, and asserted lapis-docs is not a bundled core plugin in the desktop runtime. <!-- backlog:task_id=TASK-PLUGIN-REGISTRY-ELECTRON-SETTINGS-VISIBILITY source_spec=spec/src/50-roadmap/full-registry-v1.md related_issue=183 -->
steve added this to the Full Registry V1 milestone 2026-05-31 22:09:54 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lapis-notes/lapis#184
No description provided.