Skip to content

Test/MCP UI workspace opening an app replaces the welcome page with a dock - #344

Open
romanzac wants to merge 19 commits into
masterfrom
test/mcp-ui-a3
Open

Test/MCP UI workspace opening an app replaces the welcome page with a dock#344
romanzac wants to merge 19 commits into
masterfrom
test/mcp-ui-a3

Conversation

@romanzac

@romanzac romanzac commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

Added workspace: opening an app replaces the welcome page with a dock MCP test.

Test plan

  • nix build .#app succeeds
  • nix build .#smoke-test -L passes
  • nix build .#integration-test -L passes (if UI-visible)
  • Doctests pass (nix build .#doctests -L if touched)

Checklist

  • Branch prefixed fix/, feat/, chore/, docs/, test/, or ci/
  • No unrelated changes bundled in
  • CLAUDE.md / README.md / docs/ updated if behaviour or build steps changed
  • Uncommitted binaries, screenshots, or .DS_Store files removed

romanzac and others added 16 commits August 19, 2026 06:24
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Add the stable automation handles enumerated in spec §4.1, following
the existing sidebar.app.<name> / confirmationDialog.<mode>.<button>
convention: welcomePage.installNow, appManager.{searchField,
category.<name>,emptyView}, appContextMenu root,
addApplicationDialog.{primaryButton,closeButton,errorText,
resolutionBanner}, settings.searchField,
pluginInterface.{call.<method>,result,back}, repositories.{urlField,
addButton,refreshButton,errorBanner,errorDismiss,row.<url>,
removeConfirm.{confirm,cancel}}, and sidebar.buildLabel.

workspace.dock.<name> is deliberately not applied: the dock root's
objectName is pinned to the bare module name by
workspace_area_test.cpp and needs a coordinated rename (recorded as
a finding).
Add fixture A (test_qml_only v0.1.1, ui_qml) and a seedPlugin(userDir,
fixture) helper to tests/fixtures/lgx.mjs, and seed it into
<user-dir>/plugins/ in nix/integration-test.nix before the app launches
(MCP-TEST-PLAN v2 §0.A/§4.7). package_manager's installed lists are live
directory scans for <name>/manifest.json, so the seeded fixture shows up
in launcherApps at boot without any install IPC, giving sidebar/dock
tests a real launcher app. A1 takes its "Welcome back" branch.
Add spec MCP-TEST-PLAN v2 §2.A test A3: clicking fixture A's sidebar
tile (obj sidebar.app.test_qml_only) must set backend.currentVisibleApp,
create exactly one workspace dock, hide the welcome page, and render the
fixture's v0.1.1 payload text.

The dock assertion reads WorkspaceArea.dockCount via the objectName
"workspace" test hook, since the workspace.dock.<name> objectName does
not exist on this branch (DockCard's objectName is the constant
"dockCard"). Welcome visibility is read off the hosting QQuickWidget —
updateWelcomeVisibility() hides the widget, not the QML item — located
by its WelcomePage.qml source URL, with a Window.visible fallback.

Per spec §0.A the test skips (instead of failing) when attached to a
locally running app without the pre-seeded fixture; in --ci mode the
fixture is seeded at boot, so absence there fails. The dock is left
open at the end — the A4 follow-up owns close-the-dock coverage.
@status-im-auto

status-im-auto commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Jenkins Builds

Click to see older builds (8)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 3823e55 1 2026-08-21 08:07:20 ~6 min linux/x86_64 📦App
✔️ 3823e55 1 2026-08-21 08:15:09 ~14 min macos/aarch64 🍎dmg
✔️ 3823e55 1 2026-08-21 08:18:43 ~17 min linux/aarch64 📦App
✔️ 3823e55 2 2026-08-26 09:56:17 ~6 min linux/x86_64 📦App
✔️ 3823e55 2 2026-08-26 10:08:05 ~18 min linux/aarch64 📦App
✔️ 1de9f69 3 2026-08-27 01:45:20 ~5 min linux/x86_64 📦App
✔️ 1de9f69 3 2026-08-27 01:50:00 ~9 min macos/aarch64 🍎dmg
✔️ 1de9f69 3 2026-08-27 01:52:20 ~12 min linux/aarch64 📦App
Commit #️⃣ Finished (UTC) Duration Platform Result
d1ac5d4 4 2026-08-27 02:29:44 ~2 min macos/aarch64 📄log
✔️ d1ac5d4 4 2026-08-27 02:31:55 ~4 min linux/x86_64 📦App
✔️ d1ac5d4 4 2026-08-27 02:40:48 ~13 min linux/aarch64 📦App
✔️ d1ac5d4 5 2026-08-27 02:51:50 ~12 min macos/aarch64 🍎dmg
✔️ 2ba3f63 5 2026-08-27 03:14:08 ~4 min linux/x86_64 📦App
✔️ 2ba3f63 6 2026-08-27 03:19:43 ~10 min macos/aarch64 🍎dmg
✔️ 2ba3f63 5 2026-08-27 03:22:35 ~13 min linux/aarch64 📦App

Base automatically changed from test/mcp-ui-fixtures to master August 26, 2026 09:49
@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown

📊 basecamp doc-test report

This commit of basecamp, built as both the dev app and the portable bundle and driven through its Modules view to inspect the installed UI plugins and loaded core modules — rendered alongside the commands/actions actually run and their output (updated each run, commit 6215be5):

Pages can take a minute to update after the run finishes.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds an MCP integration test covering app launch from the sidebar into a workspace dock.

Changes:

  • Locates and launches Fixture A.
  • Verifies dock creation, welcome-page hiding, and fixture rendering.
  • Adds reusable fixture and object-name helpers.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread tests/ui-tests.mjs
@romanzac
romanzac marked this pull request as ready for review August 27, 2026 03:47
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.

4 participants