Skip to content

feat(app): group projects by repository with teammate channel sections - #157

Merged
iamnbutler merged 2 commits into
mainfrom
codex/team-channel-sections
Oct 6, 2026
Merged

iamnbutler merged 2 commits into
mainfrom
codex/team-channel-sections

Conversation

@iamnbutler

@iamnbutler iamnbutler commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Part of #15 (tracked by #58); a dogfooding gap from #5.

Behavior

  • Projects with a GitHub remote are identified by repository, compared case-insensitively, so all their checkouts form one project. Other Git folders stay identified by host and checkout. Client navigation only.
  • Creating channels and Archive inactive use this host's first known checkout. Projects checked out only on teammates' hosts name those hosts and can't start channels here. Cmd+O only adds a project.
  • Sidebar order: Channels (mine), each teammate's section with a folded <name> · Archived section, then my Inactive and Archived. Delete is offered only for this host's rows.
  • All Projects shows one section per project. Old saved selections, Dashboard drafts, and Issues/PRs filters keep working.

Validation

  • bun types, bun run ci, and React Doctor pass (only the App complexity warning, which already exists and is now lower).
  • bun desktop build dev builds; the app wasn't launched.
  • Headless Chromium drove the real app on an isolated source host with real clones githubnext/ace2 and GitHubNext/ACE2:
    • Open/Cmd+O added projects without creating channels.
    • Channels were created in the first checkout.
    • The picker and All Projects showed one ace2 project.
    • Old [host, path] selections reopened the expected channels.
    • Drafts and Closed filters survived a reload.
    • Archive and delete worked.
    • With only the browser clock set 7h ahead (no real aging, host listings unchanged, no peer), Inactive folded and Archive inactive archived only the first checkout.
  • Disposable data only; no page errors; processes and ports cleaned up.

Limitations

Built in Ace

Implementation, checks, build, browser validation, and GitHub updates were done in an Ace channel. Outside Ace:

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