Skip to content

feat(frontend): App overview in /m behind the developer view switch - #8044

Merged
mmabrouk merged 3 commits into
release/v0.128.5from
feat/m-view-app-overview
Nov 4, 2026
Merged

mmabrouk merged 3 commits into
release/v0.128.5from
feat/m-view-app-overview

Conversation

@mmabrouk

@mmabrouk mmabrouk commented Nov 3, 2026

Copy link
Copy Markdown
Member

Do not merge into v0.128.4. This goes into the next release.

Stacked on #8040 (the evaluation runs list). Merge #8040 first. The base of this PR is feat/m-view-evaluations.

Context

/m has an overview page for agents, but not for prompt and custom apps, so users still open the /w app overview for them. This PR adds that overview to /m at /apps/{app_id}/overview, the same path as /w. It reuses the /m runs list table from #8040 for the evaluation sections.

It ships hidden

Nothing here is reachable until the app-overview developer view is enabled. The view has no navigation link, because its route has an app id in it. While the view is hidden, the route shows "page not found". The PR adds no dependency, no antd, and nothing in _app, AppProviders, GlobalDrawers or the app shell. The screen loads lazily from its route.

What the overview does

  • The page title is the app name, with a skeleton while it loads.
  • An agent id redirects to the agent overview. An unknown, archived or evaluator id shows "page not found".
  • "Deployment": one card per environment with the deployed variant and version, or "No deployment". While the variants view is on, a card opens the Variants deployments tab for that environment.
  • "Recent Prompts": the five newest revisions in the Variants table. A row opens the revision drawer, and the row menu offers Deploy but no Delete. "View all prompts →" shows while the variants view is on.
  • "Auto Evaluations" and "Human Evaluations": the five newest runs of each kind for this app, with the runs list row menu. The sections refresh every 5 seconds while a run is in progress. The links to the full list show while the evaluations view is on.
  • An app actions menu with "Rename", "Copy Slug" and "Archive app". Rename and Archive need edit_workflows, so a viewer sees only "Copy Slug". Rename opens a dialog with name, description and read-only details. Archive asks to confirm, then goes to the project home.
  • Each section loads and fails on its own, with its own retry.
  • An "Overview" button sits beside the app picker on the Variants, Endpoints and Evaluations developer views. It shows only for a picked app while the app-overview view is on, and it does not prefetch.

The Variants view files change a little so the overview can reuse them: VariantsTable takes optional fold and delete props, and the environment cards can be links. The Variants view looks and works as before.

Not in this PR: the usage charts (Requests, Latency, Cost, Tokens), the Playground buttons, and "Configure" for custom workflows.

/w bugs fixed in /m

  • The header menu of a prompt app was the agent menu: it read "Agent actions" and "Archive agent", and the dialog it opened said "Archive app". /m uses "App actions" and "Archive app".
  • The rename dialog opened with an empty description and filled it later. A quick Save erased the stored description. /m keeps Save disabled until the description has loaded, and a failed description load leaves the description out of the request.
  • A failed rename showed nothing. /m shows "Couldn't rename this app" and keeps the dialog open.
  • An app with no runs showed an empty table with no message. /m shows the empty state of that kind, without a start button.
  • The deployment card link passed the environment name where the Variants page expects the slug. /m passes the slug.

Each fix has a test.

Package changes

None.

New user-facing text

Strings not copied from /w: "App actions", "Archive app" (the menu item), "Couldn't rename this app", "Could not load deployments", and "Overview" (the link beside the app pickers).

Checks

  • Types: @agenta/mobile passes. No package changed, so /w types were not run.

  • Lint: 0 errors.

  • Full mobile tests: 1091 passed, 2 failed. The two failures are agentPermissions.render.test.tsx and membersTabRoleChange.render.test.tsx. Both also fail on the release branch.

  • The Rename and Archive tests use the real package save code and mock only HTTP. They assert the exact request payload.

  • speed:check passes. The new overview route has no budget yet (1209.4 KB first load).

  • Storybook screenshots were taken for 6 states at 1440 and 390 px, light and dark (24 images). The capture reported no render errors and no horizontal overflow.

  • Not run: the overview against a live API.

  • After the rebase onto release/v0.128.4 (at d5bc67afec, with feat(frontend): evaluators and archived evaluators in /m behind the developer view switch #8007 and fix(frontend): pass the leave question to the shared unsaved guard in the test set editor #8031):

    • Types: @agenta/mobile passes. This PR does not change web/packages.
    • The test files this PR adds or changes: 44 passed.

Review results

Two rounds with the slop, simplify and Codex correctness lenses. The final head (da01701c72) has slop Low and simplify Low. Correctness is Medium for one open case (below). The round 1 fixes made the VariantsTable props optional and refresh the app caches after a saved rename or archive, even when a later read or the navigation fails.

Open problems

How to QA once enabled

Enable the views with AGENTA_DEVELOPER_VIEWS=app-overview,variants,evaluations (the last two turn on the links). Then:

  • On Developer > Registry, pick a prompt app and press "Overview". The page shows the app name, the deployment cards, five recent prompts and the two evaluation sections.
  • Click an environment card. The Variants deployments tab opens on that environment.
  • Open /apps/{agent id}/overview. You land on the agent overview.
  • Rename the app. Open the dialog and press Save at once. The description is not erased.
  • Enter the name of another app. You see "An app with this name already exists" and nothing is sent.
  • Archive the app. You see "App archived" and land on the project home, and the app is in archived apps.
  • Open the page as a viewer. The menu shows only "Copy Slug".
  • Regression: on Registry and Endpoints with app-overview off, there is no "Overview" button and the pages work as before.

@coderabbitai

coderabbitai Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

Caution

Review failed

The pull request is closed.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@github-actions

github-actions Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Railway Preview Environment

Item Value
Status stopped
Commit 7eb18948c112edfb226eb28f76fc5efa38a41263
Manual expiry (UTC) Not granted
CI deadline (UTC) Not granted
Workflow https://github.com/Agenta-AI/agenta/actions/runs/41684816131

Preview use finished or expired. Environment absence verified; retained storage requires separate provider accounting.

Post /preview as a new comment to request a one-hour preview. Repeating it while active does not extend the hour.
Preview data is disposable. Expiry is enforced by the next successful cleanup sweep, not an exact timer.
Environment deletion stops its compute. Provider-retained storage and permanent services may still be billed.

@mmabrouk
mmabrouk force-pushed the feat/m-view-evaluations branch from e902f37 to 417f855 Compare November 3, 2026 17:29
@mmabrouk
mmabrouk force-pushed the feat/m-view-app-overview branch from 3d49856 to 7eb1894 Compare November 3, 2026 17:29
@mmabrouk
mmabrouk changed the base branch from feat/m-view-evaluations to release/v0.128.5 November 4, 2026 09:57
@mmabrouk
mmabrouk merged commit 06d3f80 into release/v0.128.5 Nov 4, 2026
78 of 86 checks passed
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