Default Branch

main
Some checks are pending
ship-ci / ci (push) Waiting to run

e0270e5c30 · fix(song): make bass detection instrument-type-aware, not name-only (#1019) · Updated 2026-07-21 11:30:54 +00:00

Branches

de49cd758a · test(highway): pin the setNoteStateProvider assertion to hwState._noteStateProvider (CodeRabbit) · Updated 2026-07-10 21:15:41 +00:00

173
2

4b8ec441b6 · perf(harness): close page on error + MD040 fence + CHANGELOG (CodeRabbit) · Updated 2026-07-10 21:07:38 +00:00

173
2

4525a9201a · refactor(server): extract the wishlist routes into routers/wanted.py (R3) · Updated 2026-07-10 20:16:31 +00:00

174
1

5dc4e22318 · refactor(server): extract the chart routes into routers/chart.py (R3) · Updated 2026-07-10 20:05:00 +00:00

175
1

0d66c016ff · test(ws_highway): assert streaming stops after disconnect (exactly one send) — CodeRabbit · Updated 2026-07-10 19:26:16 +00:00

176
2

dbe431779c · refactor(server): extract the highway WebSocket into routers/ws_highway.py (R3) · Updated 2026-07-10 18:55:51 +00:00

177
1

72c01c3038 · refactor(server): move DLC path resolution to lib/dlc_paths.py (R3 substrate) · Updated 2026-07-10 18:30:04 +00:00

178
1

d459caf527 · fix(playlists): split cover decode (400) from persist (500), unique temp, existence re-check · Updated 2026-07-10 18:05:38 +00:00

179
1

7cbbb262c1 · refactor(server): extract the playlists routes into routers/playlists.py (R3) · Updated 2026-07-10 17:46:32 +00:00

180
1

ea6a79767b · fix(loops): take the DB lock for the count+insert and the list read · Updated 2026-07-10 17:09:53 +00:00

181
1

b9c3565a86 · refactor(server): extract the loops routes into routers/loops.py (R3) · Updated 2026-07-10 17:00:59 +00:00

182
1

ede9baeb97 · docs: credit both router extractions in the size-exemptions rationale (CodeRabbit) · Updated 2026-07-10 16:50:49 +00:00

183
2

3c27ca7b3f · fix(build): move appstate.py + routers/ under lib/ so the desktop app ships them · Updated 2026-07-10 15:07:39 +00:00

184
1

2a0014c233 · refactor(server): extract the audio-effects routes into routers/audio_effects.py (R3) · Updated 2026-07-10 13:16:19 +00:00

185
1

f21b27196f · test(appstate): address CodeRabbit — restore slots on teardown, really re-import · Updated 2026-07-10 12:59:41 +00:00

186
2

03026711af · refactor(server): extract AudioEffectsMappingDB into lib/audio_effects_db.py (R3) · Updated 2026-07-10 12:23:20 +00:00

187
1

27164ec5ba · refactor(server): extract MetadataDB into lib/metadata_db.py (R3) · Updated 2026-07-10 12:08:11 +00:00

188
1

283d5355ff · chore(highway_3d): bump to 3.31.5 (3.31.4 taken by #823 on main) · Updated 2026-07-10 11:08:00 +00:00

190
2

9cb3e4eaae · test(gp2rs): compare ebeat times by value, not string · Updated 2026-07-10 11:06:37 +00:00

203
2

66bbbf1600 · Serve exact MIDI notes from GET /api/tunings (tuningMidis) · Updated 2026-07-10 07:22:30 +00:00

191
1