radicle-dev / radicle-upstream

Desktop client for Radicle.
Other
616 stars 51 forks source link

Keep track of which project got fetched from which seed #2803

Closed rudolfs closed 2 years ago

rudolfs commented 2 years ago

Currently if a user tracks a project through the Upstream UI, we don't persist the seed URL from which the project got fetched.

This leads to the following problem: when the user creates a local working copy by clicking the "Fork" or "Checkout" buttons on a project, the created working copy isn't configured to any particular seed node; any subsequent rad push or rad sync command in that working copy will prompt the user to select a seed node. If the user selects a different seed node than where Upstream fetched the project from, the original maintainer of the project won't see the changes that the user published.

One way to solve this is to persist the seed <-> project mapping in the upstream-proxy kv store and show the correct seed in the checkout command in the UI. E.g. rad checkout rad:git:hnrk8ueib11sen1g9n1xbt71qdns9n4gipw1o --seed <SEED_URL>.

rudolfs commented 2 years ago

Done via https://github.com/radicle-dev/radicle-upstream/commit/83ef38568ecc8d073ad57d824072f8552fd673b8.