Skip to content

feat(projects): streamline project creation controls - #6677

Open
matt2e wants to merge 13 commits into
projects-channel-first-pt5-navigation-requestsfrom
jitter/project-create-controls
Open

feat(projects): streamline project creation controls#6677
matt2e wants to merge 13 commits into
projects-channel-first-pt5-navigation-requestsfrom
jitter/project-create-controls

Conversation

@matt2e

@matt2e matt2e commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Summary

  • move Add project from the collapsible sidebars into the right side of the persistent Projects tab row
  • make the unlisted indicator quieter with an icon and tooltip
  • fix private + unlisted project creation failing during owner readback
  • verify newly created projects are pinned in the sidebar and shown in the overview

Root cause

Private + unlisted creation published successfully, but immediate read-model reconstruction omitted the viewer pubkey. The owner’s own unlisted project was therefore filtered from the result and the UI reported that the created project could not be read.

Screenshots

Add project in the persistent header

Add project in the Projects header

Narrow layout

Add project in the narrow Projects header

Private + unlisted creation succeeds and pins the project

Created private unlisted project pinned in the sidebar

Unlisted status is now a quiet icon

Private unlisted project in the overview

Testing

  • pnpm --dir desktop typecheck
  • pnpm --dir desktop check
  • pnpm --dir desktop test (5,473 passed)
  • affected Projects Playwright specs (70 passed)

A full Desktop Playwright attempt reached 1,080 passing tests. Four unrelated tests failed before the shared web server exited; later failures were a connection-refused cascade. The three affected Projects specs were then rebuilt and rerun together: 70/70 passed.

Non-goals

  • No three-state visibility collapse: private channel access and project discoverability are currently independent, so that UI would hide a real permissions distinction.
  • No top-navigation/sidebar consolidation; explicitly deferred in the discussion.
  • No repo-less task implementation; that requires a separate task-coordinate compatibility change.

thomaspblock and others added 13 commits August 23, 2026 23:44
Complete project-home defaults, category-specific creation, responsive grouping, and project-wide task and commit views across every repository.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Give project workspace sheets explicit auxiliary priority so Tasks, Reviews, Commits, Files, and People remain accessible without discarding an open conversation thread.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Make workspace-sheet precedence independent of whether the active thread uses a focus drawer, split pane, or narrow auxiliary layout.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Suppress the browser-default outline on the programmatically focused drawer while retaining focus indicators on its interactive controls.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Route non-DM sidebar icons through the shared channel glyph so project-home channels render with their project folder mark.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Collapse the context rail before a workspace drawer enters so the sheet keeps a fixed width, and hide the sidebar-style resize guide without removing resizing.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Use the stateful drawer affordance in both wide and narrow Projects layouts so context controls match the rest of the project surfaces.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Co-authored-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Signed-off-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Co-authored-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Signed-off-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Co-authored-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Signed-off-by: Wrench <0eabe6ea5758c1e4c5b68cea4ac42b32c479072883cb28da8110b4a47c32b9a1@buzz.block.builderlab.xyz>
Signed-off-by: Matt Toohey <contact@matttoohey.com>
Signed-off-by: Matt Toohey <contact@matttoohey.com>
@matt2e
matt2e marked this pull request as ready for review August 24, 2026 09:40
@matt2e
matt2e requested a review from a team as a code owner August 24, 2026 09:40
Base automatically changed from projects-channel-first-pt7-workspace-finish to projects-channel-first-pt5-navigation-requests August 24, 2026 10:54
Comment on lines +253 to +256
const addedProjectAddresses = useProjectSidebarMembership(
relayOrigin,
currentPubkey,
);

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sidebar already mounts useProjectSidebarMembership for this scope, so mounting it again here creates a second relay subscription and sync manager. A membership change while the overview remains open can make both managers schedule encrypted replacement-event publications independently, producing redundant writes and potentially competing equal-timestamp heads. Consider sharing the synchronized membership state or adding a read-only consumer for this selected-address set.

Generated by AI

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants