Skip to content

fix(studio): sole workspace owner can reveal non-personal pending proposals and clarifications - #85

Closed
mroops0111 wants to merge 1 commit into
masterfrom
fix/proposal-visibility
Closed

fix(studio): sole workspace owner can reveal non-personal pending proposals and clarifications#85
mroops0111 wants to merge 1 commit into
masterfrom
fix/proposal-visibility

Conversation

@mroops0111

Copy link
Copy Markdown
Owner

Summary

Fixes #83. A sole workspace owner had no way to see pending proposals (or clarifications) not owned by themselves, so the list showed empty with no affordance to reveal them.

Cause

The Show-All toggle on both the pending Proposals list and the pending Clarifications list was gated on multiMember (the workspace having more than one member), on the premise "a solo workspace's items are all yours". That premise is false: automated and agent submissions are owned by system (HITLService sets owner: submitterId ?? 'system'), and other principals can own items too. So on a single-member workspace the toggle never rendered and the owner was locked to the personal-pending filter.

Change

Drop the multiMember condition from ShowAllToggle (Proposals) and ClarificationShowAllToggle (Clarifications). The toggle is still owner-only, and the server still gates the show-all bypass to the workspace owner (proposals.ts / clarifications.ts set viewerId = (showAll && effectiveRole === 'owner') ? undefined : caller), so no new access is granted, only a UI affordance that was wrongly hidden.

The now-unused useWorkspaceMembers import is removed from both pages.

Not included

The underlying ownership model (automated/reactor proposals owned by system) is unchanged, this only restores the owner's ability to review them. Whether automated submissions should be attributed differently is a separate question.

Verification

  • pnpm --filter @braidhq/studio typecheck green
  • pnpm --filter @braidhq/studio test green (14 files, 100 tests)
  • pnpm lint clean

🤖 Generated with Claude Code

…tems

The Show-All toggle on the pending proposals and clarifications lists was
gated on the workspace having more than one member, on the false premise
that a solo workspace's items are all owned by the sole member. Automated
and agent submissions are owned by `system`, and other principals can own
items too, so a sole owner had no way to reveal them and saw an empty list.

Drop the multiMember gate, the server still gates the show-all bypass to
the workspace owner, so the toggle stays owner-only.

Closes #83

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added the bug Something isn't working label Aug 4, 2026
@mroops0111

Copy link
Copy Markdown
Owner Author

Wrong approach. system-owned pending proposals are already always-visible via the repository filter (owner === 'system' bypasses the personal filter), so the multiMember gate was actually correct. The real fix is making the reactor submit as the system principal, tracked separately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(studio): sole workspace owner cannot reveal pending proposals owned by another principal

1 participant