Semantic Model Version Control & Change Diff
Power BI's built-in version history is UI-only — capped at 5 snapshots,14-day retention, and zero API access. Enterprise teams have no programmatic way to list, compare, or audit model changes.This notebook bridges that gap using Semantic Link (SemPy) and Microsoft Fabric. It captures point-in-time snapshots of all five semantic model artifact types — Measures, Columns, Relationships, Tables, and RLS Roles — and persists them as Delta tables in OneLake via Apache Spark. A field-level
diff engine then compares any two run IDs and classifies every change as ADDED, REMOVED, or MODIFIED with before/after values.
Key capabilities:
- Dual-path extraction: fabric.list_*() API with automatic DMV fallback.
- Unlimited history beyond the built-in 5-version / 14-day limit.
- Field-level diff across all artifact types including DAX expressions.
- RLS role and membership change detection for security auditing.
- Interactive ipywidgets UI with Fabric-branded HTML output.
- Delta append mode — queryable directly from Power BI reports.
- Schedulable via Fabric Data Pipeline for automated daily governance
Built entirely within Microsoft Fabric using sempy.fabric, sempy_labs,
PySpark, Delta Lake, and ipywidgets. No external tools or services required.
Github-https://github.com/praful-potphode/Fabric-Semantic-Link-Competition-2026
LinkedIn-https://www.linkedin.com/in/praful-p-912349241/
Community Profile-https://community.fabric.microsoft.com/t5/user/viewprofilepage/user-id/1261729
https%3A%2F%2Fgithub.com%2Fpraful-potphode%2FFabric-Semantic-Link-Competition-2026
3 Replies
- Aj1nkyaRegular Visitor
Helpfull
- jp_golayHelper III
Check Ebiexperts WIP source control if you want a professional development environment.
- jp_golayHelper III
Check Ebiexperts WIP source control if you want a professional development environment.
And Active Backup for a full backup solution