When you create a new bike — your first one, or another bike added later — your existing sessions don't auto-attach to it. LapBrain on purpose never guesses which sessions belonged to which bike. The bulk-assign panel lets you tell it explicitly without opening each session individually.
When you'd use this
- You just signed up, uploaded a season's worth of sessions, then created your first bike.
- You added a second bike (e.g. a track-only race bike alongside a street/track bike) and want to backfill which past sessions were on which.
- You imported sessions from another tool or another rider's account and they all came in unassigned.
How to bulk-assign
- Open the menu in the top-right corner and choose Bikes under the Garage section. (You can also reach it via Settings → My Bikes — same surface.)
- Find the bike row you want to attach sessions to and click Assign Sessions.
- The panel expands with one row per loaded Ready + unassigned session. Each row shows the track name, the recorded date, the lap count, and the detected bike class (so you can sanity-check class fit before you click).
- Pick the sessions you rode on this bike using the row checkboxes, or use Select all to tick every loaded row.
- Click Assign N selected to commit the picks.
If you want to attach every loaded unassigned session to this bike with one click, use Assign all N instead — but that path requires an explicit confirm so you don't accidentally assign sessions from the wrong bike. Per-row checkboxes already count as confirmation, so Assign N selected is single-click.
What gets included
The panel only lists sessions where:
- The state is Ready — sessions that are still processing (or errored) won't appear, because their analysis isn't yet stable enough to take an assignment.
- The assignment kind is Unassigned — sessions you've explicitly labeled as Loaner (rented bike, paddock loaner, demo) stay outside the bulk panel. Loaner is a deliberate label, and the bulk panel won't silently overwrite it. To bulk-assign a Loaner session, change its label first via the per-session affordance.
Already-assigned sessions are also excluded from this v1 surface. To reassign a session that's already attached to a different bike, use the per-session affordance on the debrief view.
The panel scopes to sessions you can already see in your dashboard. If you want to bulk-assign older sessions, scroll the dashboard to load them first, then open the panel — it picks up new sessions live.
What happens after you assign
Each newly-assigned session goes back through the enrichment pipeline so its per-bike rollups (PBs, trends, coaching threads) include the new attachment. You'll see the affected sessions briefly show a "Processing…" state on the dashboard, then settle back to Ready with bike-aware analysis.
If you assign a session whose detected class doesn't match the bike's declared class, LapBrain doesn't refuse the assignment — but a non-blocking warning will appear after repeated mismatches on the same bike, so you can decide whether to update the bike's declared class or leave the assignment as-is.
What it doesn't do
- It does not bulk-create or auto-pick a default bike. Identity is always rider-authored.
- It does not assign Loaner sessions or already-assigned sessions.
- It does not force you to assign anything — leaving sessions unassigned is a fully supported posture, and the class-scoped degraded analysis still works.