# 0031 — Ui Components — Module Triage

**Milestone:** M3
**Owner:** TBD
**Status:** planning

## Goal

Consolidates 15 legacy issues from the
`MetaDrivenPlatform4AI` repo that share the same module / area label,
so they can be triaged together by the corresponding domain IC.

Module label scope: `module/ui-components`.

## Acceptance criteria

- [ ] All `ported` children below have a Story or Bug filed in pingcap-pack
- [ ] All filed Stories / Bugs have a linked test (existing or to-write task with scaffold)
- [ ] Engineering review confirms which children are still applicable under the new project's design

## Stories / Bugs (filed as GitHub issues)

15 children classified `ported`. Phase 3/4 will file each as
a Story (capability) or Bug (defect) in this repo and back-reference the
legacy issue. Initial child list:

- [ ] #TBD — legacy MetaDrivenPlatform4AI#1228 — UX: Approver picker chip shows raw Username instead of display Name
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1236 — bug: Frontend has no fallback when field label is empty — renders blank or API name
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1241 — "Display picklist label instead of raw value in ConditionValuePill"
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1310 — ReassignModal handleReassign does not reset search state before closing
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1316 — Raw backend error messages displayed to end users via getErrorMessage()
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1322 — ProfileManager does not refetch data after permission save
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1353 — Flow Builder header truncates flow title — version suffix cut off at max-w-[320px]
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1360 — fix(data): 29 fields have asterisk-prefixed labels + 3 fields have unsplit digit-boundary labels
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1403 — UX: Profile Edit — Object list (365 items) has no categorization; core CRM objects buried mid-list
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1468 — Users page: surface Deactivate via leadingColumn Toggle + confirm dialog + drop broken Delete
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1473 — Record list header: simplify toolbar; consolidate duplicate view-mode toggle and view management entries
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1600 — [Gate][Frontend] Visible-disabled New Flow/Dashboard/Report buttons + friendly AUTHORING_UNSUPPORTED handler
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1765 — Validation error toast on modal is blurred/unreadable — modal backdrop-blur covers the toast layer
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1981 — [Cleanup] Defuse three SQL-not-SOQL operators in OPERATORS table (is_null; is_not_null; between) — same footgun as #1978; currently dormant
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1994 — Hide Quick Analytics from object list pages until config is meaningful per object

## Non-goals

- Re-port legacy fixes that are no longer relevant under the new project's
  pure-platform design — engineering identifies these case-by-case
- Layer-belonging classification (L0 / L1 / L2) — engineering's job

## History

- 2026-05-03 — created during Phase 2 from clustered orphan issues.

## Stories (filed in Phase 3)

_Pending Phase 3 synthesis._
