Verify repository-based project identity in the native app and across two hosts
iamnbutler opened ·
Identify a project by its repository, not a local path.
## Status
Implementation merged in #157 (`1cc3f90`). A project with a GitHub remote is identified as `github:<owner/name>` (case-insensitive) and keeps every checkout; folders without a GitHub remote stay identified by host and main checkout. Teammates' channels appear in owner-labeled sections, and creating channels and **Archive inactive** target this host's checkout. Type checks, lint, React Doctor and a read-only check against real single-host Canary listings passed ([details](https://github.com/githubnext/ace2/issues/15#issuecomment-6025682921)).
## Remaining acceptance
- Verify project grouping, teammate sections and channel creation in the native app. - Verify on two physical hosts that the same repository groups into one project and that each host creates channels in its own checkout. Coordinate with #10.
Known limit: folder-only projects without a GitHub remote are not matched across hosts.
Tracked by #58. Migrated from [TODO.md — During dogfooding](https://github.com/githubnext/ace2/blob/21ac3df5cf6c963cf20e33b0d470ba45eac40150/TODO.md#during-dogfooding).
iamnbutlerparent-issue-addedlast month on GitHub
iamnbutlerreferenced this in [Meta] Dogfood Ace end to end #5last month on GitHub
iamnbutlerreferenced this in Move a channel to another host so work can continue on that machine #49last month on GitHub
iamnbutlerreferenced this in Let agents discover and message channels on peer hosts #57last month on GitHub
iamnbutlerreferenced this in [Meta] Extend work across hosts and devices #58last month on GitHub
iamnbutlerparent-issue-removedlast month on GitHub
iamnbutlerparent-issue-addedlast month on GitHub
iamnbutlerreferenced this in fix(host): group worktree channels under their repository's project #111last month on GitHub
iamnbutlerreferenced this in feat(app): group projects by repository with teammate channel sections #157last month on GitHub
- IA
Progress in #157 (dogfooding gap, linked from #5).
**Scope:** client-only project identity. A project with a GitHub remote is `github:<owner/name>`, compared case-insensitively; hosts already strip `.git`. Folders without a GitHub remote stay `[host, main checkout]`. A project keeps every checkout, and this host's checkout is the target for creating channels and **Archive inactive**. Projects checked out only on teammates' hosts list those channels but can't start channels here until a checkout is opened (Cmd+O still only adds the project). The Channels sidebar shows my channels, then one owner-labeled section per teammate across all their hosts, each with a folded archived section. All Projects is one section per canonical project. Saved `[host, path]` selections migrate in the client. Channel stores, listings, and protocol are unchanged.
**Validated:** `bun types`, `bun run ci`, React Doctor, and a read-only check against real Canary listings (single host). **Pending:** native Ace-dev UI check. **Not covered:** no live two-host runtime was available (#10). Folder-only projects still differ across hosts.
iamnbutlerrenamed Identify projects across hosts by repository to Verify repository-based project identity in the native app and across two hostslast month on GitHub
iamnbutlerreferenced this in [Meta] Run hosted channels in the cloud with local workspaces #13last month on GitHub
iamnbutlerreferenced this in Set up a GitHub project's checkout on this machine from channel creation #204last month on GitHub
- IA
Setting up a checkout on another machine from channel creation is tracked in #204 (follows #157).
iamnbutlerreferenced this in feat(app): set up a GitHub project's checkout on this machine before creating channels #205last month on GitHub