#191·lore

Retrying an interrupted initial push fails because the remote branch already exists

Author: dtmlandCreated Sep 6, 2026Updated Sep 6, 2026
Labelsbugneeds-triage

Lore version

lore 0.9.0

Installation method

Built from source

Operating system / architecture

Linux -- x86_64

Steps to reproduce

  1. Create and populate an offline repository, including a sufficiently large payload to keep the initial transfer active.
  2. Register the corresponding server repository with the same repository ID.
  3. Start lore push with one connection.
  4. Terminate the client after it reports Pushing and before it completes.
  5. Confirm the offline origin still opens and accepts another commit.
  6. Run lore push again.

Expected vs actual behavior

Expected: Repeating the push resumes or safely restarts the transfer and advances the existing remote branch. Actual: Retry fails with Branch main already exists, use switch instead. The partially transferred repository cannot be completed through another ordinary push.

Component

Both / unsure

Server context

Unauthenticated loopback loreserver with isolated local immutable and mutable stores.

The failure is returned while branch::push attempts to recreate main after the server reports missing state. --force does not recover it. Creating and pushing a new branch can publish the revision state but may still leave previously transferred payload addresses absent, so that is not a safe workaround. Server-side removal of the partial repository also requires authorization and is not a general client recovery path.

Regression?

No response

Relevant logs or output

bash