metabase / metabase/metabase

Ability to Lock Questions

Open
#14,489 2 comments 0 reactions 0 assignees View on GitHub
Organization/Saved Questions Priority:P3 Type:New Feature
Dominant language
Clojure
Stars
49.3k
Forks
6.8k
Avg merge
1d 13h
Merged PRs (30d)
653

Description

Let admins lock questions (in my case, the questions underlying dashboards), so that even people who have `curate collection` permission cannot overwrite the question, and also the questions don't get accidentally overwritten by the admins themselves.
To be able to overwrite the locked question, the question needs to be unlocked first. Locking and unlocking can only be done by admins.

My use cases:
- I have given `curate collection` permission to a few users so they don't have to contact me for any small change. Their usage is mostly on dashboards.
Sometimes they click on a card on the dashboard and go to the question page, make changes on the card, and save their changes, not noticing that when they clicked on the card in the dashboard, the filters of the dashboard has been transferred to the question, and when they saved the question they hard-coded those dashboard filters in the question.
- It has happened a few times that I've overwritten a question mistakenly. If it was locked, I needed to unlock it first to overwrite it. So locking would eliminate any chance of accidental overwrite

Locking would over-rule the editing permissions in the Permissions page. In other words, it doesn't matter what permission is given to a group for the collection that the question resides in. If the question is locked, it cannot be changed (until it gets unlocked).

Contributor guide

Open the contributing guide

Research direction

Start by tracing the question editing flow and the `curate collection` permission described in the issue, including dashboard-card navigation. Done means admins can lock and unlock questions, while locked questions cannot be changed by users or admins until explicitly unlocked, regardless of collection permissions.

Written by the indexing model from the issue text.

Assessment

Tech stack
clojure
Domain
authorization, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.