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.
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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/)
|
||||
|
||||
Reference in New Issue
Block a user