---
id: w6/m11/t004
title: "m10 residual: Team page live click-through + workspaceMembers in the offline stub"
worker: worker6
status: todo
estimate: 45m
depends_on: [w6/m11/t001]
---

## Objective

Close m10's documented residual: verify the Team page live (email-primary member rows from a real Kratos via `BEX_KRATOS_ADMIN_URL`), and extend the offline dev stub with the `workspaceMembers` query so future offline verifications cover the Team page at all.

## Context

- `w6/done/m10/README.md`: no live click-through was performed; `local-bex.mjs` doesn't implement `workspaceMembers` and extending it was out of that milestone's file list.
- Stub: `dashboard/scripts/local-bex.mjs`. Team page: `dashboard/src/features/team/` (email primary, `userId` fallback, subject-keyed mutations).

## Steps

1. On the live stack, invite a second identity to a Pro workspace; open Settings → Team.
2. Verify rows render email as the primary identity (with `userId` fallback when a lookup misses); screenshot.
3. Add `workspaceMembers` (and the enriched `userId`/`email` fields) to `dashboard/scripts/local-bex.mjs`; confirm the Team page renders against the stub offline.

## Files

- `dashboard/scripts/local-bex.mjs`
- `.pm/w6/m11/README.md` (evidence)

## Acceptance criteria

- [ ] Live Team page shows email-primary rows sourced from real Kratos (screenshot recorded)
- [ ] Offline `yarn dev` against the stub renders a populated Team page

## Out of scope

- Member mutation re-keying (deliberate contract, m10/t001); `name` trait work
