Skip to content

Show Only Personal Posts in Huddle's Personal View - #852

Merged
Dharp02 merged 4 commits into
mainfrom
feat/851-personal-only-posts
Nov 11, 2026
Merged

Dharp02 merged 4 commits into
mainfrom
feat/851-personal-only-posts

Conversation

@Dharp02

@Dharp02 Dharp02 commented Nov 6, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #851

image image

Overview

Huddle's Personal view showed two things together: posts written in Personal (a private team whose only member is you), and your own posts from every team you belong to. People expect Personal to be a private space, so seeing team posts there was confusing. Personal now shows only what was written in Personal, so it reads like its own team.

Changes

  • Backend: huddle.getMyPosts (meteor-backend/server/huddle.js) returns the caller's posts in their personal team only, and an empty page when they don't have one yet. The method's description in main.js is updated to match.
  • Huddle.tsx
    • Live clock tracking in Personal watches only the personal team (liveTeamIds reuses postingTeamId).
    • The getTeamName lookup is removed, along with comments that described Personal as cross-team.
  • superChatFeed.ts: the per-post team label and the team-name search field only existed for the cross-team Personal view, so the getTeamName/teamName parameters are gone. The empty Personal hint now says "You haven't posted in Personal…" instead of "…in any team…".
  • Release note: a "Personal is your own space in Huddle" section in release-notes/1.2.0.md, which isn't tagged yet.

Nothing is moved or deleted: team posts stay in their teams.

Testing

  • npm run lint, npm run typecheck, npm run format: clean
  • Unit tests: 896/896 pass. The label tests are updated, and the "Personal labels each post with its team" test is removed.
  • Backend integration tests (huddle-post-rest.test.ts): the huddle.getMyPosts tests now use the caller's real personal team (created through teams.ensurePersonal). Two new checks: the caller's own shared-team posts are left out, and a caller with no personal team gets an empty page. All 8 pass.
    • One other test in that file fails: stores each supported format, keeps the text around it, and leaves the rest inline (inline images in huddle.createPost). This PR doesn't touch that code; I haven't checked whether it also fails on main.
  • E2E: the Personal test in inbox-filters.spec.ts now checks both directions: a team post doesn't show in Personal, and a post written in Personal doesn't show in the team. All Huddle e2e specs pass (76/76), as do the realtime Huddle specs.

Note for #850

#850 (the All grouping) passes getTeamName to postsToConversations and searchPosts. Whichever PR merges second needs a small rebase to drop that argument.

🤖 Generated with Claude Code

Personal used to gather the caller's posts from every team. It now reads
like its own private team: only posts written in Personal show there, and
a post written in a shared team stays in that team.

- huddle.getMyPosts returns the caller's posts in their personal team only
  (empty when they have none yet).
- Live clock tracking in Personal watches the personal team only.
- Drop the per-post team label and the team-name search field, which only
  existed for the cross-team Personal view.
- The empty Personal hint no longer says "any team".

Closes #851
Copilot AI balanced review requested due to automatic review settings November 6, 2026 19:05

Copilot AI 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.

🟡 Changes recommended

The new assertion fails on fresh databases or isolated runs because an empty Personal feed shows a starter conversation; create and load a Personal post before checking the team-token search.

1 open issue
What changed in this PR

Restricts Huddle’s Personal view to posts written in the caller’s personal team, addressing #851 without moving or deleting shared-team posts.

Changes:

  • Limits Personal feed queries and live clock tracking to the personal team.
  • Removes cross-team labels and search fields, and updates empty-state text.
  • Updates unit, integration, and end-to-end coverage and adds a release note.
File Description
tests/​e2e/​huddle/​inbox-filters.spec.ts Checks isolation between Personal and shared-team posts.
src/​pages/​Huddle.tsx Narrows live clock scope and removes team-name lookup.
src/​lib/​api.ts Updates the Personal feed API comment.
src/​features/​huddle/​superChatFeed.ts Removes team labels and search fields; updates the Personal hint.
src/​features/​huddle/​superChatFeed.test.ts Adjusts label and empty-state tests.
release-notes/​1.2.0.md Documents the narrower Personal view.
meteor-backend/​tests/​huddle-post-rest.test.ts Tests personal-team filtering and missing-team behavior.
meteor-backend/​server/​main.js Updates the exposed method description.
meteor-backend/​server/​huddle.js Restricts huddle.getMyPosts to the caller’s personal team.

Review effort: Balanced

Comment thread tests/e2e/huddle/inbox-filters.spec.ts Resolved
@Dharp02 Dharp02 self-assigned this Nov 6, 2026
An empty Personal feed shows the starter conversation whatever the search,
so counting search results failed on a fresh database or an isolated run.
Post in Personal first, then check today's Personal thread doesn't hold the
team post; clear the team search before switching, since it carries over
and would hide Personal's message box.
Copilot AI balanced review requested due to automatic review settings November 6, 2026 19:18

Copilot AI 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.

🟢 Approval recommended

No active review issues remain for the change restricting Huddle’s Personal view to the caller’s personal team.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

…y-posts

# Conflicts:
#	release-notes/1.2.0.md
#	src/pages/Huddle.tsx
Copilot AI balanced review requested due to automatic review settings November 6, 2026 19:38
@github-actions

github-actions Bot commented Nov 6, 2026 •

Copy link
Copy Markdown

🗑️ Preview Environment Cleaned Up

The preview container for this PR has been deleted.

Copilot AI 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.

🟢 Approval recommended

No active review issues are reported for the change limiting Huddle’s Personal feed to the caller’s personal team.

No open issues 🎉

Review effort: Balanced

@SarkarShubhdeep SarkarShubhdeep left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looks good, thanks!

@Dharp02
Dharp02 merged commit bdd02c8 into main Nov 11, 2026
16 checks passed
Dharp02 added a commit that referenced this pull request Nov 11, 2026
Resolve conflicts with #852 (Personal shows only Personal posts): drop the
team name from search and from All's search path too, keep All's date terms
and Session's shift-only hint, and keep both release-note sections.
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.

Show Only Personal Posts in Huddle's Personal View

3 participants