Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# Android Auto Road Trip Plan

Last updated: 2026-07-24
Status: active; Goals 1 through 3 complete, Goal 4 in progress
Status: complete; archived after successful production publication
Target: road-trip-ready build for 2026-07-25

Related docs:

1. [Current State](../current-state.md)
2. [Final V1 Release Plan](./v1-release-plan.md)
2. [Final V1 Release Plan](../plans/v1-release-plan.md)
3. [Framework Paradigm](../framework-paradigm.md)
4. [Release Workflow](../strategy/release-workflow.md)
5. [Working Agreements](../working-agreements.md)
Expand Down Expand Up @@ -1873,7 +1873,33 @@ Resolved configuration:
tests, every workspace build, strict performance sanity, four browser
smoke tests, and all scaffold smoke builds

Pending:
Completed:

1. confirm the corrected Railway PR platform deployment turns green
2. ready, merge, deploy, publish the hosted game release, and smoke production
1. corrected Railway PR #41 turned green after the platform database reference
and standalone runtime fixes
2. PR #41 was reviewed, passed the complete release doctor and every required
GitHub/Railway check, and merged as `f8d584c`
3. production platform, realtime server, and release browser worker deployments
all reached `SUCCESS`
4. production health checks passed for `airjam.io`, the public Arcade, and
`api.airjam.io`
5. the mobile wrapper PR merged and GitHub Actions published the signed,
versioned
[v1.0.2 APK](https://github.com/domenkoscak/airjam-mobile/releases/tag/v1.0.2)
with a checksum while preserving v1.0.0 for rollback
6. the hosted-release preflight exposed an unconfigured and unstable browser
worker endpoint; [issue #47](https://github.com/vucinatim/air-jam/issues/47)
and PR #48 made the endpoint stable at `/ws` and added matching production
authentication
7. the production browser worker advertised `/ws`, rejected unauthenticated
requests, and accepted an authenticated Playwright connection
8. Last Band Standing `0.2.1` passed artifact validation and canonical
screenshot capture, then became the live release
9. the live hosted bundle rendered the complete 206-song category lobby
10. the production Arcade listed Last Band Standing and created a connected
preview controller

Non-blocking follow-up:

1. listen through the newly added clip starts and tune any quiet,
spoiler-heavy, or weak starts after the road trip
42 changes: 16 additions & 26 deletions docs/current-state.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,16 @@ For historical progress, use [work-ledger.md](./work-ledger.md).

## Current Focus

Air Jam is no longer mainly blocked on platform or preview infrastructure.
Air Jam is no longer blocked on the Android Auto road-trip release or preview
infrastructure.

The repo is currently focused on four things:
The repo is currently focused on three things:

1. completing the short-lived
[Android Auto road-trip plan](./plans/android-auto-road-trip-plan.md) for
2026-07-25 without turning the private wrapper into a new framework
architecture
2. working from the cleaned repo operating system baseline instead of from
1. working from the cleaned repo operating system baseline instead of from
historical drift
3. running the final prerelease manual proof and hosted release proof for the v1
2. running the final prerelease manual proof and hosted release proof for the v1
launch set
4. keeping the now-simpler Railway-first deployment model boring while
3. keeping the now-simpler Railway-first deployment model boring while
preparing the launch-facing landing, media, and discoverability execution
that follows the final proof pass

Expand Down Expand Up @@ -86,12 +83,12 @@ These are now baseline truths, not open architecture debates:
permissive fallback
4. Unicode-safe canonical normalization
5. deterministic catalog validation and randomized option-generation tests
6. 144 canonical songs across ten independently playable categories
7. 27 Slovenian songs and 26 Balkan songs
6. 206 canonical songs across ten independently playable categories
7. 59 Slovenian songs and 26 Balkan songs
8. explicit deterministic clip timing on every catalog entry
9. complete two-, six-, and ten-player ten-round semantic match proofs
10. a compact all-player host reveal and scrollable ten-player controller
standings
10. a clean host answer reveal, controller-owned all-player between-round
rankings, and scrollable ten-player final standings
8. the Android Auto road-trip implementation is structurally in place:
1. Arcade owns an exact typed `?qr=open` launch contract
2. Arcade and Last Band Standing respond to short-wide dimensions and safe
Expand Down Expand Up @@ -120,26 +117,18 @@ The important remaining work is now late-stage and launch-facing:
5. execute the release-facing landing, media, article, and discoverability work after the go / no-go pass
6. decide which small user-facing polish items still deserve inclusion before launch, such as creator attribution enhancements
7. keep the public story aligned around the AI-native framework thesis instead of drifting back into generic platform/framework language
8. complete Goal 3 song curation and focused visual polish, then publish the
locally and real-car-proven road-trip changes after explicit approval

## Active Now

The v1 release plan remains the governing product plan:

1. [plans/v1-release-plan.md](./plans/v1-release-plan.md)

One short-lived urgent plan is active for the 2026-07-25 road trip:

1. [plans/android-auto-road-trip-plan.md](./plans/android-auto-road-trip-plan.md)

The road-trip plan may improve Last Band Standing, Arcade presentation, and the
private Android wrapper, but it must not create a competing Air Jam runtime
model.

## Recent Closures

The preview system closeout, Railway API control-surface replacement, and repo operating system reset are closed and archived.
The Android Auto road-trip release, preview system closeout, Railway API
control-surface replacement, and repo operating system reset are closed and
archived.

They should no longer compete with launch execution.

Expand All @@ -156,8 +145,9 @@ These are real next-step tracks, but they should not displace the launch closeou

## Immediate Next Steps

1. complete the user-reviewed Last Band Standing medium/hard song curation and
focused UI polish pass, then publish the validated update
1. include the live Last Band Standing `0.2.1` release in the remaining v1
launch-set proof
2. treat further clip-start listening and tuning as non-blocking content polish
2. run the final manual release proof against the five-game launch set
3. run the hosted upload and managed media proof on the real platform lane
4. complete the Railway domain cutover and re-run the production smoke checks
Expand Down
13 changes: 5 additions & 8 deletions docs/docs-index.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,14 @@ Default agent loop:

## Active Now

The v1 release plan remains the governing product track:
The v1 release plan is the governing product track:

1. [plans/v1-release-plan.md](./plans/v1-release-plan.md)

One short-lived urgent execution plan is active for the 2026-07-25 road trip:

1. [plans/android-auto-road-trip-plan.md](./plans/android-auto-road-trip-plan.md)

Durable Last Band Standing and platform improvements from the road-trip plan
must feed back into the v1 release proof rather than becoming a parallel product
architecture.
The completed Android Auto work is preserved in the
[2026-07-24 road-trip archive](./archive/2026-07-24-android-auto-road-trip-plan.md).
Its durable Last Band Standing and platform improvements now feed into the v1
release proof rather than a parallel product architecture.

## Planned Next

Expand Down
28 changes: 27 additions & 1 deletion docs/work-ledger.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ For the detailed pre-reset execution story, use the archived ledger snapshot abo
## 2026-07-24 - Android Auto Platform Foundation Closed

- completed Goal 1 of the active
[Android Auto road-trip plan](./plans/android-auto-road-trip-plan.md)
[Android Auto road-trip plan](./archive/2026-07-24-android-auto-road-trip-plan.md)
- kept public on-screen controllers as a zero-setup demo while making their
launcher contextual:
- full discovery in an empty Arcade
Expand Down Expand Up @@ -241,3 +241,29 @@ For the detailed pre-reset execution story, use the archived ledger snapshot abo
game-session tooling receives a game-local `cwd` without `gameId`
- moved the active road-trip plan to Goal 3: user-reviewed harder-song curation
and focused visual polish

## 2026-07-24 - Android Auto Road Trip Release Closed

- completed and archived the
[Android Auto road-trip plan](./archive/2026-07-24-android-auto-road-trip-plan.md)
- merged Air Jam PR #41 after the full release doctor, GitHub CI, and Railway
preview checks passed
- deployed the platform, realtime server, and release browser worker
successfully to Railway production
- repaired two release-time platform defects:
- platform previews now use their own Postgres service reference
- the release browser worker now exposes one stable authenticated `/ws`
endpoint across deploys
- published Last Band Standing `0.2.1` as the live hosted release:
- 206 canonical songs
- unique same-category answer options
- controller-owned between-round rankings
- scrollable final standings
- responsive Android Auto and phone layouts
- chrome-free YouTube playback
- successful artifact validation and canonical screenshot capture
- merged the Android wrapper PR and published signed GitHub Release `v1.0.2`
with a checksum while retaining `v1.0.0` for rollback
- verified the production platform and realtime health endpoints, public Arcade
listing, hosted release render, and authenticated browser-worker connection
- left only non-blocking human clip-start listening and tuning for later polish
Loading