Patch release: verified relay GitHub pairing (requires the deployed relay) and resolve-conflicts push reliability through PR pre-push hooks.
Fixed
- Relay GitHub pairing is verified through the GitHub App:
devintern worker connectprints a short-lived App installation URL and waits while the relay verifies that the signed-in GitHub user can access the requested repository through that installation — routing now uses GitHub’s immutable installation and repository IDs instead of the user-suppliedowner/nameslug, and an installation already associated with another DevIntern account cannot be claimed. Connections created before verified pairing must rundevintern worker connect github --repo owner/nameonce again; normal polling continues while GitHub instant events are unpaired - resolve-conflicts lands its pushes through PR pre-push hooks: review-worktree dependency installs (e.g. lefthook postinstall) rewrote the shared
.git/hookswith scripts hardcoding the ephemeral worktree’snode_modulespath, so pushes failed once the worktree was removed — conflicts were resolved locally but never landed. The resolver now isolates worktree hooks via per-worktreecore.hooksPath(seeded with copies of the shared hooks), hands pre-push hook failures to the agent and retries the push with a bound attempt count, folding leftover changes into the merge commit; branch races still defer without burning agent runs