Bugfix: Git graph dock panel showed data from wrong universe (conejo...
Documentation for Sessions
🐛 Bugfix: Git graph dock panel showed data from wrong universe (conejo...
Date: 2026-03-23
Time: 18:22:01 UTC
Session: gspace1-258.10
Agent: angular
Confidence: 95%
Status: ✅ Documented
📋 Decision Context
Question:
Git graph dock panel showed data from wrong universe (conejo data displayed in canguro) — cross-tenant data leak in vitto-studio
Task: Not specified
🎯 Decision Made
Chosen:
Strict space+universe match with no fallback. Removed the repos.find fallback that matched any repo in the same space. Added repoFound signal, active deselectRepo() on no match, route param subscription for universe switching, and signal-based slugs for reactive re-matching.
Options Considered:
- Keep fallback but add warning banner (still shows wrong data)
- Strict match + active deselect + route watching (chosen)
- Create separate service instance per panel via component-level provider (overkill)
💭 Reasoning
Root cause: the auto-select effect had a fallback repos.find(r => r.orgSlug === spaceSlug) that matched the FIRST repo in the space when the target universe had no repo. Combined with GitOperationsStateService being a singleton (providedIn: root), stale data from a previous universe persisted across navigation. The fix requires: (1) strict match only, (2) active cleanup on no match, (3) route param watching for universe switches without panel destroy.
📁 Files Involved
libs/libs-structural/vitto-studio/src/lib/panels/git-graph-panel.component.tslibs/libs-structural/vitto-studio/src/lib/panels/git-graph-panel.component.html
🔗 Related
- Decision ID:
dev_1774290121212_0g3fyrb - Session: 258
- Workspace: gspace1
Auto-generated by MCP Smart Consolidation