From b781ee36a820f95dd851855b2ebd0b1723c00a8a Mon Sep 17 00:00:00 2001 From: uhryniuk Date: Sun, 23 Aug 2026 11:32:29 -0500 Subject: [PATCH] Rename v4 to ROADMAP v4 was always just the server-dependent programme (group rides, accounts, paid backup) plus V3-17. Renaming it to ROADMAP since it's about to become the home for an incoming list of bugs and features that need triage ahead of the next v3-style ticket batch -- that triage takes priority over the existing server-dependent items, none of which are blocking. --- docs/BACKLOG.md | 25 ++++++++++++++++++------- docs/v3/README.md | 6 +++--- docs/v3/V3-02-settings-screen.md | 2 +- docs/v3/V3-04-live-map.md | 2 +- docs/v3/V3-17-osrm-hosting.md | 20 +++++++++++--------- 5 files changed, 34 insertions(+), 21 deletions(-) diff --git a/docs/BACKLOG.md b/docs/BACKLOG.md index 19d1f1b..3d919a3 100644 --- a/docs/BACKLOG.md +++ b/docs/BACKLOG.md @@ -13,7 +13,7 @@ --- -# Backlog — v3 and v4 +# Backlog — v3 and the ROADMAP Everything known-outstanding, with enough context to pick up cold. Nothing here is committed to — it is a menu, roughly ordered by value. @@ -21,9 +21,12 @@ committed to — it is a menu, roughly ordered by value. **v3 is now broken out into tickets: [v3/README.md](v3/README.md).** This document stays as the reasoning; the tickets are the executable form. -**v3 is everything that can be built with no server.** **v4 is everything that cannot.** -That split is the most useful thing in this document: it means v3 can proceed indefinitely -without anyone deciding to run infrastructure or hold other people's location data. +**v3 is everything that can be built with no server. The ROADMAP is everything that +cannot, plus whatever bugs and features come up that need triage before the next v3-style +ticket batch.** The no-server split is still the most useful structural fact in this +document: it means v3 can proceed indefinitely without anyone deciding to run +infrastructure or hold other people's location data. The ROADMAP is where everything else +gets managed first. **Before planning anything: run the real-ride checklist in [the real-ride checklist](port/REAL-RIDE-CHECKLIST.md).** Several items below may turn out to be non-issues, and @@ -230,8 +233,8 @@ Terse on purpose. Unshaped, to be consolidated later. ### Threads running through these Sign-up, cloud backup and group ride are one programme, not three: they all need a server, -identity, and a privacy stance. They have therefore been moved out to **v4** below, and -should be scoped together or not at all. +identity, and a privacy stance. They have therefore been moved out to the **ROADMAP** +below, and should be scoped together or not at all. Activity type (now section 4) and theming are independent and much cheaper — either could ship alone, and activity type is the natural first v3 task because it forces the migration @@ -246,7 +249,15 @@ entirely standalone. --- -# v4 — everything that needs a server +# ROADMAP + +Formerly "v4." Renamed because it now holds more than the server-dependent programme +below: it's also where Dylan's running list of bugs and features gets triaged before +becoming its own ticket batch, the way v3 was broken out. That triage takes priority over +the items below — nothing here is blocking, all of it has been waiting since before v3 +started. + +## The server-dependent programme Split out from v3 deliberately. These three are **one programme, not three items**: each needs a server, an identity system, and a privacy stance, and none of them is worth diff --git a/docs/v3/README.md b/docs/v3/README.md index 6590165..8ad8626 100644 --- a/docs/v3/README.md +++ b/docs/v3/README.md @@ -7,7 +7,7 @@ implementing, so the risks are on paper before they are walked into. Menu, not a commitment. Nothing here is scheduled. **Everything in v3 is buildable with no server.** Group rides, accounts and paid cloud -backup are v4 — see [../BACKLOG.md](../BACKLOG.md). +backup are on the ROADMAP (formerly "v4") — see [../BACKLOG.md](../BACKLOG.md). > **Before starting anything:** [../port/REAL-RIDE-CHECKLIST.md](../port/REAL-RIDE-CHECKLIST.md). > The port has never recorded a real ride, and item I3 may still force a change of GPS @@ -33,7 +33,7 @@ backup are v4 — see [../BACKLOG.md](../BACKLOG.md). | [V3-14](V3-14-gpx-interop.md) | GPX interoperability | S | V3-01 | Partially done (code only; needs real-device verification) | | [V3-15](V3-15-auto-pause.md) | Auto-pause | M | V3-13 *(gated)* | Not started | | [V3-16](V3-16-visual-identity.md) | Visual identity | M | V3-04, V3-05 | Partially done (token-level identity shipped; needs outdoor device verification) | -| [V3-17](V3-17-osrm-hosting.md) | Self-hosted OSRM: investigate and stand one up | M | — *(needs a server — see the ticket's own note on the v3/v4 boundary)* | Not started | +| [V3-17](V3-17-osrm-hosting.md) | Self-hosted OSRM: investigate and stand one up | M | — *(needs a server — see the ticket's own note on the v3/ROADMAP boundary)* | Not started | ## Dependencies @@ -52,7 +52,7 @@ no dependencies: V3-01 · V3-02 · V3-04 · V3-06 · V3-07 · V3-10 · V3-12 · ``` **V3-08/V3-09 are deferred, on request**, pending V3-17 (self-hosted OSRM). See V3-17's -own note on why that also puts them in tension with this document's v3/v4 boundary — +own note on why that also puts them in tension with this document's v3/ROADMAP boundary — unresolved by design, not an oversight. ## Three that carry more weight than their size suggests diff --git a/docs/v3/V3-02-settings-screen.md b/docs/v3/V3-02-settings-screen.md index b70e264..f2103ef 100644 --- a/docs/v3/V3-02-settings-screen.md +++ b/docs/v3/V3-02-settings-screen.md @@ -46,7 +46,7 @@ Keep it plain. This is not a screen anyone should spend time in. without introducing a second source of truth is the only subtle part. ## Out of scope -Account settings (v4). Theme selection (V3-16). +Account settings (ROADMAP). Theme selection (V3-16). ## Outcome diff --git a/docs/v3/V3-04-live-map.md b/docs/v3/V3-04-live-map.md index 61a3e8e..fc53800 100644 --- a/docs/v3/V3-04-live-map.md +++ b/docs/v3/V3-04-live-map.md @@ -59,7 +59,7 @@ Behind the existing map toggle, off by default while it is unproven on battery. stream, which is already batched. ## Out of scope -Mounted mode (V3-05). Other riders on the map (v4). +Mounted mode (V3-05). Other riders on the map (ROADMAP). ## Outcome Shipped as designed. `AppDatabase.watchPointsForTrip`/`watchSegmentsForTrip` feed two diff --git a/docs/v3/V3-17-osrm-hosting.md b/docs/v3/V3-17-osrm-hosting.md index 1eb7f8a..e9c6f63 100644 --- a/docs/v3/V3-17-osrm-hosting.md +++ b/docs/v3/V3-17-osrm-hosting.md @@ -15,20 +15,22 @@ Directions) or the public OSRM demo (explicitly not for production use). **This ticket exists because that decision itself has a wrinkle worth naming up front:** this whole v3 backlog's organizing principle, stated in `docs/BACKLOG.md`, is *"v3 is -everything that can be built with no server. v4 is everything that cannot."* A -self-hosted OSRM instance is a server. Strictly, that makes V3-08 and V3-09 — anything -that depends on this ticket — v4 work by the project's own definition, not v3, even -though they're filed under `docs/v3/` today and the routing itself has nothing to do -with the group-rides/accounts/backup programme that currently defines v4. Whether to -formally renumber them is a documentation decision for whoever picks this up next; this -ticket does not resolve it, only flags it so it isn't silently glossed over. +everything that can be built with no server. The ROADMAP (formerly "v4") is everything +that cannot."* A self-hosted OSRM instance is a server. Strictly, that makes V3-08 and +V3-09 — anything that depends on this ticket — ROADMAP work by the project's own +definition, not v3, even though they're filed under `docs/v3/` today and the routing +itself has nothing to do with the group-rides/accounts/backup programme that currently +anchors the ROADMAP. Whether to formally renumber them is a documentation decision for +whoever picks this up next; this ticket does not resolve it, only flags it so it isn't +silently glossed over. ## Design Two separable questions: 1. **Where does it run?** A small VPS (the same shape of box that would eventually host - the v4 group-ride server, so this could double as an early step toward that) versus - something serverless/managed. OSRM's own Docker image is the standard path either way. + the ROADMAP's group-ride server, so this could double as an early step toward that) + versus something serverless/managed. OSRM's own Docker image is the standard path + either way. 2. **What data does it need?** A regional OSM extract, not the planet — start with whatever region actually gets ridden (per `docs/LAUNCH.md`, this is presently a friends-and-family app, so the region is small and known). [Geofabrik](https://download.geofabrik.de/)