Skip to content

feat(channels): add task board view#3681

Open
puemos wants to merge 25 commits into
mainfrom
posthog-code/channel-task-board
Open

feat(channels): add task board view#3681
puemos wants to merge 25 commits into
mainfrom
posthog-code/channel-task-board

Conversation

@puemos

@puemos puemos commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Problem

Channels need a shared view of every task's lifecycle so teammates can understand what is being worked on, what has a PR, and what is finished without leaving the channel.

Why: The chronological feed is useful for discussion but difficult to scan as a task tracker. The board adds an operational view while preserving the existing feed behavior.

This is released under a FF (posthog-code-channel-task-board), with 0% rollout. Add yourself if you like to try.

Show me

desktop-channel-board-view.mov

Features

  • Feature-flagged Feed/Board switcher inside the channel content area.
  • Persistent All/Me scope filter shared across channels.
  • Four lifecycle columns: Working, In review, Done, and Cancelled.
  • Cards show task title, live task/PR status, creator, reply count, repository, and a lifecycle-aware PR action.
  • PR actions use Open, Draft, Merged, and Closed captions with matching colors and icons.
  • Clicking a feed task always navigates to the full task. Clicking a board card opens an in-place task/thread preview with an action to expand.
  • Board mode has a focused New task dialog using the existing task composer and channel context.
  • Newly created tasks are owned by the channel, appear optimistically on the board, and show a Task started toast with a View task action.

Lifecycle and data behavior

  • Merged PR → Done.
  • Closed PR or failed/cancelled run → Cancelled.
  • Open, non-draft PR → In review.
  • Draft PR → Working.
  • Completed run without a PR → Done.
  • Everything else → Working.
  • Live PR state is resolved directly from the PR URL and overrides older task state.
  • Board placement, task badge, preview header, and PR action consume the same resolved PR state.
  • Unresolved PR cards render loading placeholders instead of flashing in Working.
  • PR details use shared React Query configuration and remain cached across view switches.
  • PR requests only run while Board is active; reply polling only runs for cards near the viewport.

Compatibility and architecture

  • Users without the feature flag retain the original Feed controls and navigation.
  • The web host exposes a safe unknown-PR fallback so the board remains usable without desktop GitHub tooling.
  • Task lifecycle rules live in the core tasks domain.
  • The board layout is a generic host-neutral UI primitive, independent of the removed Home feature.
  • Channel task creation keeps backend feed ownership and filesystem context ownership explicit.

How did you test this?

  • Core lifecycle and PR visual unit tests.
  • Focused Canvas board, feed, thread, dialog, and PR-state tests.
  • Core, UI, and web typechecks.
  • Biome lint for core and UI.
  • Web production build.

Automatic notifications

  • Publish to changelog?
  • Alert Sales and Marketing teams?

Created with PostHog Code

@trunk-io

trunk-io Bot commented Jul 22, 2026

Copy link
Copy Markdown

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown

React Doctor found 2 issues in 2 files · 2 warnings.

2 warnings

src/features/canvas/components/WebsiteChannelHome.tsx

src/primitives/WorkBoard.tsx

Reviewed by React Doctor for commit 3573683.

@posthog

posthog Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

👋 Visual changes detected for this PR.

Review and approve in PostHog Visual Review

If these changes are unexpected, they may be caused by a flaky test or a broken snapshot on master. Don't approve — rerun the job or wait for a fix.

@puemos
puemos force-pushed the posthog-code/channel-task-board branch from f51c3d3 to 0483df0 Compare July 22, 2026 14:44
@puemos
puemos marked this pull request as ready for review July 22, 2026 14:56
@puemos
puemos requested a review from k11kirky July 23, 2026 08:37
puemos added 24 commits July 24, 2026 09:29
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
Generated-By: PostHog Code
Task-Id: 1fbd8776-9d5b-4e74-9629-a6bdb8d3b78f
@puemos
puemos force-pushed the posthog-code/channel-task-board branch from 8871975 to 3573683 Compare July 24, 2026 07:30
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.

1 participant