ticketsLog in with ident

tracker.worldapi.org #2

Step 2: move the old tracker data into the new app

review

opened by Architect · assigned to Architect

opened · updated

All shows, seasons, episodes, people and your watch history move from the old MongoDB into the new app's database. Test: after the deploy, the counts in the app's STATUS match the old database; nothing is shown yet (that is a later step). Details:

  • Source: /media/STORAGE/projects/old-tracker/mongo-export/*.jsonl (complete, see README-RECONSTRUCTED.md there).
  • Every record gets a NEW mpackdb id. Build the map old id → new id, then re-point EVERY reference: Show.seasons/genres/cast, Season.show/episodes, Episode.show/season, Person.shows, Follow.oid/userId, Watch.oid (episode or season, sometimes a plain string)/userId.
  • The only old user is the creator → ident short id az5b2; the old password hash is not taken over.
  • A one-off tool in the app (tools/, run with the app's own binary), idempotent, prints counts; proof: counts equal the export, zero dangling references, one show checked end to end (show → seasons → episodes → watches).
  • Starts after step 1 is live (it builds on step 1's database setup). No deploy: the architect runs it on Byrodin.

Children

all children done (1)

  • doneantcolony #36Question (tracker.worldapi.org#2): the work failed its check 2 times — how should it go on?

History

  1. Architect opened the ticket
  2. Architect changed the state pending

    Waits for step 1 (https://tickets.worldapi.org/projects/tracker.worldapi.org/1) to be live; the architect opens it then.

  3. Architect assigned the ticket to Architect
  4. Architect changed the state open

    Step 1 is live (https://tickets.worldapi.org/projects/tracker.worldapi.org/1) — step 2 can start.

  5. AntColonyScheduler changed the state progress

    A worker started on this ticket.

    colony-lease: s-20260927T1029-f57b0f · host Loreana · started · ms 1790512159245

  6. AntColonyScheduler commented

    The result did not hold up when it was checked — back to open for another try.

    • Not true: find /media/STORAGE/projects/tracker.worldapi.org -maxdepth 4 | grep -i storage → (empt…

    colony-verdict: s-20260927T1029-f57b0f · fail · 1 of 2

  7. AntColonyScheduler changed the state open

    Back to open: the check failed (1 of 2 tries).

  8. AntColonyScheduler changed the state progress

    A worker started on this ticket.

    colony-lease: s-20260927T1035-ddc0b6 · host Loreana · started · ms 1790512503953

  9. AntColonyScheduler commented

    The result failed its check 2 times — on hold until you answer antcolony #36.

    • Not true: step 1 left no mpackdb table / storage/ yet, so step 2 starts clean once data is reachable

    colony-verdict: s-20260927T1035-ddc0b6 · fail · 2 of 2

  10. AntColonyScheduler changed the state pending

    On hold: the check failed 2 times — waiting for your answer.

  11. Architect changed the state open

    The old data was not visible to the worker — fixed: the worker now sees /media/STORAGE/projects/old-tracker (read only). Checked in the worker's box: all 231,584 episodes readable.

  12. AntColonyScheduler changed the state progress

    A worker started on this ticket.

    colony-lease: s-20260927T1212-a582d7 · host Loreana · started · ms 1790518325204

  13. AntColonyScheduler changed the state open

    Back to open: the worker stopped without a usable result (it ran out of steps) — the next worker tries again.

    colony-run: s-20260927T1212-a582d7 · host Loreana · no report

  14. AntColonyScheduler changed the state progress

    A worker started on this ticket.

    colony-lease: s-20260927T1247-cf9316 · host Loreana · started · ms 1790520425204

  15. AntColonyScheduler commented

    Built — goes live with the next deploy.

    colony-report: s-20260927T1247-cf9316 · sha256 0bffad14f3c3 · controller pass · ready to deploy

  16. AntColonyScheduler commented

    Now live on tracker.worldapi.org — The old tracker's shows, seasons, episodes, people and watch history are now in the app's database.

    Test:

    1. Open https://tracker.worldapi.org, sign in — homepage stays empty, as in step 1.
    2. STATUS.md counts match the old database (9453 shows, 231584 episodes).
    • Problems found elsewhere: hybriel #112, hybriel #113
    • Decided: Kept users.db from step 1 — ensureUser() is idempotent by identity, so re-running migration leaves it untouched; Moved the old buggy migration's tables to .scratch first; deleted that back…

    colony-deployed: s-20260927T1247-cf9316 · sha256 0bffad14f3c3

  17. AntColonyScheduler changed the state review

    Ready for you to test — see the last comment.

  18. Architect commented

    Live: the old data is in the live tracker database (run on Byrodin 2026-09-27 15:02, app stopped meanwhile, backup tracker-backup-before-migrate-20260927-1502.tgz). Test: nothing to see yet — the data shows up once a later step builds the pages. Details:

    • Counts equal the old database: 27 genres, 15,157 people, 9,453 shows, 6,430 seasons, 231,584 episodes, 128 follows, 11,692 watches; all yours (az5b2), 0 dangling references.
    • The old data itself had 36,194 episodes without a season link (and 3 watches without a target) — kept as they were; they can be re-linked by show + season number later.

Reading is open to everyone. To comment or change the state, log in with ident (top right) and choose a display name.