docs: plan-era "v1", "Task N" and "Phase N" wording restated as facts (#6277)
release / govulncheck (push) Successful in 25s
release / web (push) Successful in 1m21s
release / go (push) Successful in 1m47s
release / integration (push) Successful in 4m35s
release / android (push) Successful in 7m5s
release / Build signed APK (releases and dev) (push) Successful in 7m16s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 1m1s
release / Verify release artifacts (tag releases only) (push) Skipped
release / govulncheck (push) Successful in 25s
release / web (push) Successful in 1m21s
release / go (push) Successful in 1m47s
release / integration (push) Successful in 4m35s
release / android (push) Successful in 7m5s
release / Build signed APK (releases and dev) (push) Successful in 7m16s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 1m1s
release / Verify release artifacts (tag releases only) (push) Skipped
The marker list behind the earlier server and web passes did not catch "for v1", "Task 5", "Phase 2" or "today: Flutter". Those comments now say what the code does. Corrected: coverart said "both v1 providers" ship on. There are four providers (MBCAA, TheAudioDB, Deezer, Last.fm), and Last.fm, which needs a key, ships off. Non-comment tokens unchanged against HEAD: 10 Go files, 7 TS/Svelte files. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -41,9 +41,8 @@ func TestLibrarySync_AfterArtistUpsert_ReturnsHydratedPayload(t *testing.T) {
|
||||
truncateLibrary(t, pool)
|
||||
u := seedUser(t, pool, "alice", "x", false)
|
||||
|
||||
// Seed an artist + write a change row in the same tx — that's the
|
||||
// invariant the scanner wiring (Task 5) will enforce, and the
|
||||
// handler relies on.
|
||||
// Seed an artist + write a change row in the same tx — the invariant
|
||||
// library writes keep, and the handler relies on.
|
||||
ctx := context.Background()
|
||||
tx, err := pool.Begin(ctx)
|
||||
if err != nil {
|
||||
@@ -122,8 +121,8 @@ func TestLibrarySync_DeleteIsReflected(t *testing.T) {
|
||||
u := seedUser(t, pool, "alice", "x", false)
|
||||
|
||||
// Just write a delete change row directly (no underlying mutation).
|
||||
// Scanner wiring (Task 5) is what couples real deletes to LogChange;
|
||||
// here we test the handler reflects what's in the log.
|
||||
// Library writes couple real deletes to LogChange; here we test the
|
||||
// handler reflects what's in the log.
|
||||
ctx := context.Background()
|
||||
tx, _ := pool.Begin(ctx)
|
||||
_ = sync.LogChange(ctx, tx, sync.EntityArtist, "deadbeef-dead-beef-dead-beefdeadbeef", sync.OpDelete)
|
||||
|
||||
Reference in New Issue
Block a user