Add Mission Wall frontend package#2473
Conversation
|
Additional validation after PR creation: |
|
Follow-up pushed in
Validation after the follow-up:
Important limitation remains: the frontend can poll existing APIs, but visibility of genuinely running workflow executions still depends on the backend returning running runs from readmodels or adding the scope/team latest-run feed tracked by #2472. |
|
Follow-up pushed in
Validation:
|
|
Backend follow-up for the top status strip metrics opened as #2475. Current frontend can approximate from existing member/service/run fan-out, but and complete scope/team counts need a backend readmodel-backed summary/watermark to be authoritative. |
|
Backend follow-up for the top status strip metrics opened as #2475. Current frontend can only approximate the top strip from existing member/service/run fan-out:
So the UI can display a best-effort version today, but complete scope/team counts and authoritative freshness need a backend readmodel-backed summary/watermark. |
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## docs/2026-06-29_workflow-mission-wall-product-package #2473 +/- ##
========================================================================================
Coverage ? 84.10%
========================================================================================
Files ? 1182
Lines ? 89560
Branches ? 11698
========================================================================================
Hits ? 75323
Misses ? 9063
Partials ? 5174
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
Follow-up fix for the latest Mission Wall feedback:
Validation:
|
|
Follow-up fix for the card progress semantics:
Validation:
|
|
Follow-up fix for the Mission Wall timing regression shown in the latest screenshots.\n\nRoot cause: the focused run had its own selected-audit query path, so changing focus could rebuild the source with a different audit snapshot and overwrite the same run card's duration/progress. That made a completed run appear as both |
Summary
/runtime/mission-wallbig-screen page without the normal console shell/menu.getAuthSessionlistMemberslistTeamslistServiceslistServiceRunsgetServiceRunAuditmemberId,workflowId, andpublishedServiceId/serviceIdare not treated as aliases.Latest workflow execution limitation
The frontend currently shows real data from existing APIs, but it cannot provide a fully authoritative “latest workflow execution feed” across the scope/team because the backend does not expose a wall-wide latest-run composition endpoint yet.
Current workaround:
publishedServiceId === serviceId.GET /api/scopes/{scopeId}/services/{serviceId}/runs?take=50per matched service.GET /api/scopes/{scopeId}/services/{serviceId}/runs/{runId}/audit.That is why the page can display existing published service runs, but cannot yet guarantee one durable, backend-authoritative, scope/team-wide latest workflow run feed with stable incremental ordering.
Backend follow-up issue: #2472
Validation
pnpm --dir apps/aevatar-console-web test --runInBand src/pages/MissionWall/components/WorkflowReplayCanvas.test.tsx src/pages/MissionWall/index.test.tsx src/pages/MissionWall/hooks/usePublishedRunWindow.test.ts src/pages/MissionWall/wallDirector.test.ts src/app.test.tsx src/app.layout.test.ts src/routesConfig.test.ts src/shared/auth/session.test.ts src/shared/navigation/runtimeRoutes.test.tspnpm --dir apps/aevatar-console-web tscruby -e 'require "yaml"; doc = YAML.load_file("workflows/mission_wall_15_node_probe.yaml"); abort "expected 15" unless doc.fetch("steps").length == 15; puts "#{doc.fetch("name")} #{doc.fetch("steps").length}"'git diff --checkNote: targeted Jest run passes but prints an existing Ant Design
ConfigProvider autoInsertSpaceInButtondeprecation warning from the shared app layout test path.