diff --git a/HANDOFF.md b/HANDOFF.md index 4e4ab72..866957f 100644 --- a/HANDOFF.md +++ b/HANDOFF.md @@ -1,29 +1,37 @@ # Session handoff — Catacomb -> Working notes for continuing this work in another session/agent (e.g. Codex). -> Written 2026-06-19. Delete or update freely; this is not a tracked spec. +> Working notes for continuing this work in another session/agent (Copilot, Codex, etc.). +> Updated 2026-06-19. Delete or update freely; this is not a tracked spec. ## TL;DR — where things are -- Project: `catacomb` — one Rust binary that is **both** an egui desktop GUI - and an axum web server wrapping `yt-dlp`. See [CLAUDE.md](CLAUDE.md) for the - authoritative architecture; [ROADMAP.md](ROADMAP.md) for the plan. -- Recent work has been almost entirely on the **web UI** (`src/web_ui/index.html`, - a single `include_str!`-baked SPA) plus a few `web.rs`/`database.rs` changes. -- Branch: `main`. Last commit: `2f95e7f` (unified cinematic video player). -- A dev web server is usually running on **:8081** against the user's real - library. It keeps getting reaped between turns — just restart it (see below). +- Project: **Catacomb** (crate/binary `catacomb`) — one Rust binary that is + **both** an egui desktop GUI and an axum web server wrapping `yt-dlp`. See + [CLAUDE.md](CLAUDE.md) for the authoritative architecture; [ROADMAP.md](ROADMAP.md) + for the plan. +- Branch: `main`. Last commit `c12de9c` (command palette); `5f95bdb` and + earlier are pushed, **`c12de9c` is committed but NOT yet pushed**. Remote: + `https://codeberg.org/anassaeneroi/catacomb.git`. +- **Local checkout dir was renamed** `~/code/youtube-backup` → **`~/code/catacomb`** + (code dir only; the library/backup dir at `/mnt/InannaBeloved/youtube-backup` + is unchanged). Run the server with the right CWD, e.g. + `env -C ~/code/catacomb ~/code/catacomb/target/release/catacomb --web 8081`. +- Only `HANDOFF.md` is uncommitted now. +- The project was **renamed yt-offline → Catacomb** (crate, binary, data + paths with migration, UI, docs, repo URLs). See "The rename" below. +- A dev web server is usually run on **:8081** against the user's real library. + It gets reaped between turns in this sandbox — just relaunch it (see gotchas). ## How to build / run / test ```bash -cargo build --release # ~1.5 min (opt-level=3 + thin LTO) +cargo build --release # ~1.5 min (opt-level=3 + thin LTO) → target/release/catacomb cargo test --release # 128 unit + 11 integration (tests/api.rs); no network ./target/release/catacomb --web 8081 # headless web server (what the user uses) ./target/release/catacomb # desktop GUI (default) ``` -### CRITICAL gotchas (learned this session) +### CRITICAL gotchas 1. **The web SPA is one big embedded file** — `src/web_ui/index.html`, baked in at compile time via `include_str!`. **Editing it requires a `cargo build`** to @@ -32,11 +40,12 @@ cargo test --release # 128 unit + 11 integration (tests/api.rs) ```bash awk '/