Skip to content

Verify repository-based project identity in the native app and across two hosts #15

Description

@iamnbutler

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).

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 Verify Ace with two machines on the tailnet #10.

Known limit: folder-only projects without a GitHub remote are not matched across hosts.

Tracked by #58. Migrated from TODO.md — During dogfooding.

Activity

  1. iamnbutler commented on Oct 6, 2026

    @iamnbutler
    ContributorAuthor

    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.

  2. changed the title [-]Identify projects across hosts by repository[/-] [+]Verify repository-based project identity in the native app and across two hosts[/+] on Oct 6, 2026
  3. iamnbutler commented on Oct 7, 2026

    @iamnbutler
    ContributorAuthor

    Setting up a checkout on another machine from channel creation is tracked in #204 (follows #157).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions