Uh oh!
There was an error while loading. Please reload this page.
fix(access): effective-holders list for permission sets + explain user-picker discoverability - #2383
Merged
Merged
Conversation
…r-picker discoverability
objectui#2382 — AssignedUsersSection listed sys_user_permission_set rows
only, so any set distributed the normal way (via positions, ADR-0090's
distribution channel) showed "0 users" right where an admin decides to
edit or delete it. It now merges direct grants with the holders of every
bound position (sys_position_permission_set → sys_position →
sys_user_position), deduped per user with via badges (直授 / 经岗位 X).
Position-held rows drop the remove affordance (that lives on the
position's assignments); an everyone-anchor binding renders as a note
instead of enumerating every signed-in member. Position expansion is
additive and fail-soft — direct grants still render if it errors.
objectui#2381 — the explain panel's user picker existed all along but the
trigger read as static text ("我(当前调用者)"); a chevron makes it
discoverable. Verified end-to-end against a live backend: picking another
user explains THAT principal (their positions/permission sets in the
principal card).
3 new tests (effective holders, everyone note, remove-only-direct);
app-shell suite 153 files / 1181 tests green.
Closes#2382. Closes#2381.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>The latest updates on your projects. Learn more about Vercel for GitHub. |
Contributor
✅ Console Performance Budget
📦 Bundle Size Report
Size Limits
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes#2382. Closes#2381. Both filed while dogfooding the Access pillar as a business admin against a live showcase boot.
#2382 — 已分配用户 now shows EFFECTIVE holders
The section listed
sys_user_permission_setrows only — in the ADR-0090 model positions are THE distribution channel, so any normally-administered set showed 0 人 exactly where an admin decides whether to edit or delete it. Now:sys_position_permission_set→sys_position→sys_user_position), deduped per user;everyone-anchor binding renders as a note ("every signed-in member holds this set") instead of enumerating the tenant;#2381 — explain user picker was there; now it's discoverable
The picker existed all along (RecordPickerDialog over
sys_user) but the trigger rendered as static text 「我(当前调用者)」 — reported as missing by our own dogfood. AChevronsUpDownaffordance fixes the discoverability; no behavior change.Verification
AssignedUsersSection.test.tsx: merged holders + count, everyone note, remove-only-on-direct); app-shell suite 153 files / 1181 tests green.contributorwith one position-held user renders 「已分配用户 1 人 · Held Henry · 经岗位 contributor · —」; explain panel: picking Held Henry returns HIS decision (principal card showscontributor/everyone+showcase_member_default).🤖 Generated with Claude Code