Skip to content

feat: consolidate Team and Ownership model#451

Merged
larsgeorge-db merged 1 commit into
mainfrom
feat/consolidate-team-ownership
May 29, 2026
Merged

feat: consolidate Team and Ownership model#451
larsgeorge-db merged 1 commit into
mainfrom
feat/consolidate-team-ownership

Conversation

@larsgeorge-db
Copy link
Copy Markdown
Collaborator

Summary

  • Consolidates the disparate "people" surfaces (ODCS/ODPS Team, Ontos Team entity, Business Owners) into a single authoritative Owners panel with read-only provenance for imported data
  • Renames misleading "Owner:" label to "Team:" in metadata grid and groups it with Project
  • Merges active Business Owners into YAML export team section for standards compliance
  • Adds sidebar fallback indicator and removes dead "Import from Team" flow

Changes

Frontend

  • OwnershipPanel: Extended with "Imported Contacts" collapsible section, "Copy from Team" dialog
  • data-product-details.tsx: Sidebar Contacts fallback indicator, removed old import flow
  • data-contract-details.tsx: Read-only ODCS Team Metadata section, removed old import flow
  • Both detail pages: "Owner:" → "Team:" label rename, Project/Team grouping

Backend

  • business_owners_routes.py: New POST /api/business-owners/import-from-team endpoint
  • data_contracts_manager.py: YAML export merges Business Owners into team section
  • data_products_manager.py: Same merge logic for ODPS export

Docs

  • PRD with resolved design decisions: docs/prds/prd-consolidate-team-and-ownership.md

Test plan

  • Verified via Playwright: "Team:" label on both pages
  • Verified: "Copy from Team" dialog opens and lists team members
  • Verified: Imported Contacts section expands with correct layout
  • Verified: Sidebar shows "From imported data" indicator on fallback
  • Verified: ODCS export includes merged Business Owners in team section
  • Backend unit tests for import-from-team endpoint
  • Backend unit tests for export merge dedup logic

Closes #431

@larsgeorge-db larsgeorge-db requested a review from a team as a code owner May 27, 2026 15:24
@larsgeorge-db larsgeorge-db force-pushed the feat/consolidate-team-ownership branch from f1994e4 to 5f7af9a Compare May 27, 2026 15:26
- Rename "Owner:" to "Team:" in metadata grid on both detail pages
- Group Project adjacent to Team in metadata grid
- Extend OwnershipPanel with "Imported Contacts" collapsible section
  and "Copy from Team" action for bulk owner assignment
- Add POST /api/business-owners/import-from-team endpoint
- Switch sidebar Contacts to pull from Business Owners with fallback
  chain (owners → imported team → team name)
- Add subtle fallback indicator ("From imported data") when sidebar
  shows provisional contacts
- Merge active Business Owners into YAML export team section
  (both ODCS and ODPS) with role mapping
- Make ODCS/ODPS Team section read-only in UI
- Remove old "Import from Team" flow that wrote into team array
- Close PRD open questions with resolved decisions

Closes #431
@larsgeorge-db larsgeorge-db force-pushed the feat/consolidate-team-ownership branch from 5f7af9a to da20cfa Compare May 29, 2026 15:27
@larsgeorge-db larsgeorge-db merged commit b7d39cb into main May 29, 2026
6 of 7 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.

[PRD]: Consolidate Team and Ownership Model

1 participant