Skip to content

ENG-1283: Allow node sharing with groups in Obsidian#1123

Open
trangdoan982 wants to merge 6 commits into
mainfrom
eng-1283-allow-node-sharing-with-groups
Open

ENG-1283: Allow node sharing with groups in Obsidian#1123
trangdoan982 wants to merge 6 commits into
mainfrom
eng-1283-allow-node-sharing-with-groups

Conversation

@trangdoan982

@trangdoan982 trangdoan982 commented Jun 12, 2026

Copy link
Copy Markdown
Member

https://www.loom.com/share/1980f9a602aa47afb3525110acc760de

Summary

  • Replace the single "Publish" button in Discourse context with a group picker dropdown that shows checkmarks for groups the node is already published to
  • Add command palette flow to publish the current node to a selected group via a suggest modal
  • Support publishing to all member groups at once, with parallel API calls and a single frontmatter update to avoid overwriting publishedToGroups

Test plan

  • Open a synced, non-imported discourse node with sync mode enabled
  • Open Discourse context sidebar and click Publish — verify groups list loads with names and checkmarks for already-published groups
  • Publish to a single unpublished group and confirm frontmatter publishedToGroups updates and the checkmark appears
  • Use Publish to all groups and confirm all member groups are published and reflected in frontmatter
  • Run command palette Publish current node to lab space and verify group picker opens and publishes to the selected group
  • Confirm imported nodes do not show publish controls

Made with Cursor


Open in Devin Review

Let users choose which sharing groups to publish to from the discourse context sidebar and command palette, including publish-to-all support.

Co-authored-by: Cursor <cursoragent@cursor.com>
@vercel

vercel Bot commented Jun 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
discourse-graph Skipped Skipped Jun 12, 2026 7:47pm

Request Review

@linear-code

linear-code Bot commented Jun 12, 2026

Copy link
Copy Markdown

ENG-1283

@supabase

supabase Bot commented Jun 12, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project zytfjzqyijgagqxrzbmz because there are no changes detected in packages/database/supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@graphite-app

graphite-app Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

PR size/scope check

This PR is over our review-size guideline.

  • Recommended: ~200 lines changed
  • Acceptable limit: up to 400 lines when well-scoped/self-contained
  • Preferred file count: fewer than 5 files

Please split this into smaller PRs unless there is a clear reason the changes need to land together.

If keeping it as one PR, please add a brief justification covering:

  • What single problem this PR solves
  • Why the files/changes are coupled

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 4 potential issues.

Open in Devin Review

Comment thread apps/obsidian/src/utils/publishGroupSelection.ts Outdated
Comment thread apps/obsidian/src/components/PublishGroupDropdown.tsx Outdated
Comment thread apps/obsidian/src/utils/publishGroupSelection.ts Outdated
Comment thread apps/obsidian/src/utils/importNodes.ts
trangdoan982 and others added 2 commits June 12, 2026 15:12
Use sequential publish to avoid relations.json races, read fresh frontmatter in the command picker, consolidate group loading via getMyGroups, and add dark mode styles to the publish dropdown.

Co-authored-by: Cursor <cursoragent@cursor.com>
Memoize publishedToGroups so useCallback dependencies stay stable across renders.

Co-authored-by: Cursor <cursoragent@cursor.com>
trangdoan982 and others added 2 commits June 12, 2026 15:28
Restore getAvailableGroupIds to query group_membership like main, and derive getMyGroups from the same table with an embedded my_groups join for display names.

Co-authored-by: Cursor <cursoragent@cursor.com>
@mdroidian

Copy link
Copy Markdown
Member

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 👍

Reviewed commit: fb8a851070

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

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