# 0026 — Opportunity — Module Triage

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

## Goal

Consolidates 38 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/opportunity`.

## 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)

38 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#354 — feat(lead): implement Lead Convert flow (Lead → Account/Contact/Opportunity)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1391 — List view filters are fixed/stuck — affects all objects (Accounts; Opportunities; etc.)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1412 — design: Metadata-driven field mapping engine for cross-object record creation (Lead Convert; Quote-from-Opp; Order-from-Quote)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1426 — bug: Opportunity detail page missing 'Apply for PoC' action button
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1431 — feat: implement Stage→Probability/ForecastCategory auto-mapping for Opportunity
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1435 — [UAT] OPP-010: Update Forecast Fields — Custom fields missing from Opportunity schema
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1436 — [UAT] OPP-011: Update MEDDPICC Fields — Schema not found in backend
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1437 — [UAT] OPP-013: Select Opportunity Record Type — Only Contract types seeded
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1438 — [UAT] OPP-014: Update ARR Fields — Custom fields not in base schema
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1439 — [UAT] OPP-015: Launch Date Auto-Stage Transition — No automation engine
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1457 — Weekly Update activity save fails: missing OwnerId and Priority
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1530 — Launch Date review validation rule missing on Opportunity stage change
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1531 — Opportunity detail sub-tabs missing (Why TiDB; MEDDPICC; Technical Info; Activity; AWS SRRP; Chorus)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1532 — FY26 Stage Name Mapping — verify/seed FY26 stage picklist values on Opportunity
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1533 — Add Product to Opportunity — product picker + OpportunityLineItem creation flow not available
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1534 — Opportunity Amount does not auto-calculate from OpportunityLineItem totals
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1535 — Edit Products action button missing on Opportunity detail page
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1536 — Partner Attribution action button and data model missing on Opportunity
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1537 — Clone action button missing on Opportunity record detail page
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1538 — Delete Opportunity sends to Recycle Bin — clarify expected behavior (perm delete vs soft delete)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1545 — Weekly Update Subject field is free-text box — should be picklist (Initial Engagement; Technical Engagement; etc.)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1553 — Activate frozen formula fields (253 fields across 18 objects)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1692 — Mandatory-field gap for record creation (Account; Contact; Opportunity; Cloud User Request; Weekly Activity Update)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1714 — OpportunityLineItem: move Product to top; remove required from PricebookEntry/Quantity; add Net Fees rollup to Opportunity
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1717 — fix(studio): Edit Field modal sends update to wrong API endpoint — Required Field cannot be saved
- [ ] #TBD — legacy MetaDrivenPlatform4AI#1860 — RecordType displays raw ID instead of name for non-admin (SSO) users
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2035 — OpportunityLineItem related list shows scheduling flags instead of pricing columns
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2036 — OpportunityLineItem detail view highlights scheduling flags instead of pricing summary
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2037 — OpportunityLineItem create/edit form exposes internal fields (auto-number Name; raw ID; Recalculate)
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2038 — OpportunityLineItem form: pricing fields buried in Additional Details section
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2039 — Add Opportunity Product modal — SFDC-style catalog search + inline pricing + batch save
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2040 — OpportunityLineItem related list shows auto-number Name instead of Product name
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2059 — feat(metadata): Opportunity Stage picklist should carry defaultProbability and auto-sync with Probability field
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2062 — bug(setup): Formula field creation silently falls back to string — formula; returnType; formulaMode all lost
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2113 — Stage Path click does not refresh UI — stage appears unchanged until manual page reload
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2191 — Flow RecordLookup fails: object name mismatch blocks Opportunity stage transition to Technical Validation
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2202 — Quote creation blocked: child-clone fails on inaccessible Product2 — no Quotes can be created from Opportunities with stale products
- [ ] #TBD — legacy MetaDrivenPlatform4AI#2229 — flow: Opportunity_Auto_To_Launch_Stage FAIL-SILENT — StageName never flips to 'Launched' after upstream repair (#2227 unblock)

## 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._
