Conversation
|
🌈 The environment for this PR was shut down when it closed. Reopening the PR brings it back at the same URL. |
🛡️ Upgrade safety for self-hosted customers
What we looked at
Technical details (raw JSON){
"schemaVersion": "2",
"version": "pr-29076",
"previousVersion": "e24853a471",
"releaseDate": "2026-09-11T14:05:04.392Z",
"migrations": {
"present": false,
"count": 0,
"coreCount": 0,
"eeCount": 0,
"files": []
},
"compatibility": {
"rollingUpdateSafe": true,
"recommendedStrategy": "RollingUpdate"
},
"api": {
"rest": {
"checked": true,
"breaking": false,
"changes": [],
"breakingCount": 0,
"advisories": [],
"advisoryCount": 0
},
"mcp": {
"checked": true,
"breaking": false,
"changes": [],
"breakingCount": 0,
"advisories": [],
"advisoryCount": 0
}
},
"config": {
"checked": true,
"breaking": false,
"changes": []
},
"upgrade": {
"minPreviousVersion": null,
"requiredStops": []
},
"declaredBreaks": []
}Automated upgrade-safety check. Once merged, it ships a small |
🧪 Test Selection✅ Tests that will run
⏭️ Tests skipped (no relevant file changes detected)
|
|
Your preview environment pr-29076 has been deployed. Preview environment endpoints are available at: |
Preview Environment🌐 URL: https://lightdash-preview-pr-29076.lightdash.okteto.dev 📋 Logs: View in GCP Console 🔧 SSH: |
# [2.199.0](2.198.6...2.199.0) (2026-09-11) ### Bug Fixes * **preview:** copy dashboards before their charts so preview content copy needs no per-row updates ([#29061](#29061)) ([2805fa7](2805fa7)) ### Features * add roadmap link to main navbar ([#29062](#29062)) ([7097378](7097378)) * **audit:** record direct access grant provenance ([#29040](#29040)) ([03a29e7](03a29e7)) * **dashboards:** reserve direct deletion for full access ([#29076](#29076)) ([972bb26](972bb26))
|
🎉 This PR is included in version 2.199.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Closes: https://linear.app/lightdash/issue/SPK-2067
Summary
Direct dashboard Can edit grants allow dashboard maintenance without authorizing deletion of the dashboard itself. Full access retains deletion and sharing management, subject to existing project capabilities and content protections.
How it works
A shared deletion-access filter excludes non-admin direct dashboard grants while preserving independent inherited access. Dashboard deletion, soft deletion, and the dashboard/list menus use this filter. Editing still uses the original access rows, including for adding and removing tiles. The sharing dialog explains the distinction.
Regression analysis
Test plan