Skip to content

T-SRJQ-books-consolidation-p2-apps

Status: open/ready · Impact: medium · Complexity: medium

With the content tier and resolver landed (T-PP4I), move the two book apps out of the augmented staging solution into solutions/augmented_learning/apps/. Every content reference goes through the position-independent resolver, so this is a pure git mv plus manifest repoints — zero app-code edits.

LocationRole today
solutions/augmented/apps/learn_web/Web reader/editor; root Bun workspace member via the solutions/*/apps/* glob
solutions/augmented/apps/augmented-books/Desktop reader/distributor; own Bun workspace root (negation !solutions/*/apps/augmented-books — wildcarded over the solution segment, survives the move)
Cargo.tomlGlob member solutions/*/apps/*/src-tauri (covers the moved crate) + EXPLICIT member solutions/augmented/apps/augmented-books/runners/sqlite/builder — the one root repoint
lefthook.ymlmarkdown-fmt exclude solutions/augmented/apps/learn_web/** — must become solution-wildcarded before the move commit
.moon/workspace.ymlsolutions/*/apps/* glob; project ids derive from unchanged basenames (learn_web, augmented-books)
LIBRARIES.mdCarries the solutions/augmentedsksizer/augmented_books lineage row — note the split

solutions/augmented_learning/apps/learn_web/ and solutions/augmented_learning/apps/augmented-books/ exist; the old paths are gone. Root config churn is exactly two files (Cargo.toml member repoint, lefthook exclude wildcard) plus lock regen. Cargo.lock is untouched (no crate rename). Moon ids stay learn_web / augmented-books.

  1. FIRST edit lefthook.yml: markdown-fmt exclude solutions/augmented/apps/learn_web/**solutions/*/apps/learn_web/** (must be on disk before the move commit stages learn_web’s .md files).
  2. git mv solutions/augmented/apps/learn_web solutions/augmented_learning/apps/learn_web and …/augmented-books → solutions/augmented_learning/apps/augmented-books.
  3. Root Cargo.toml: repoint the explicit member …/augmented-books/runners/sqlite/builder to the new path; update the narrative comment block naming augmented paths.
  4. Root bun.lock: bun install (workspace path key changes), verify bun install --frozen-lockfile. No root package.json / .moon/workspace.yml edits — globs and the wildcarded negation cover the new paths.
  5. LIBRARIES.md: amend the lineage row — solutions/augmented_learning now carries learn_web + augmented-books; the rest of the family stays under solutions/augmented.
  6. Cosmetic self-referential path mentions inside the moved apps (README, moon.yml comments) — update where trivially greppable. Historical planning entities are NOT rewritten (convention).
  7. Verify: cargo metadata resolves; cargo check -p augmented_books and the runner builder crate; moon query projects still lists learn_web and augmented-books; learn_web bun run build + prod smoke from repo root (curl /api/books/v2); cargo run -p augmented_books --bin prepare-books still resolves solutions/augmented_learning/content/books; hierarchy package tests still pass (resolver-based, position-independent).
LocationKindChange
lefthook.ymlmodifyWildcard the learn_web markdown-fmt exclude (FIRST)
solutions/augmented/apps/learn_web/deletegit mvsolutions/augmented_learning/apps/learn_web/
solutions/augmented/apps/augmented-books/deletegit mvsolutions/augmented_learning/apps/augmented-books/
solutions/augmented_learning/apps/newDestination (pure rename)
Cargo.tomlmodifyRepoint explicit runners-builder member; comment update
bun.lockmodifyWorkspace path-key regen
LIBRARIES.mdmodifyLineage row notes the books split
  • AC-1: cargo check -p augmented_books passes from root with the moved member paths; Cargo.lock diff is empty.
  • AC-2: learn_web bun run build succeeds at the new path and the prod server booted from the repo root answers /api/books/v2.
  • AC-3: moon query projects lists learn_web and augmented-books (ids unchanged) with sources under solutions/augmented_learning/apps/.
  • AC-4: git diff origin/main --stat for the two app trees shows pure renames; no learn_web .md was reflowed.
  • AC-5: bun install --frozen-lockfile passes at root.
  • AC-6: No solutions/augmented/apps/(learn_web|augmented-books) path references remain outside historical planning entities (grep-proof in PR).
  • Package moves (T-V57A).
  • The augmented-desktop app/crate rename salvaged from closed PR #1122 — a possible follow-up on the new paths, not this task.
  • Rewriting historical planning entities that cite old paths.
  • T-PP4I — the resolver must be in place; without it the moved apps would still hardcode content paths.
  • Phase 2 of the books consolidation (owner decision 2026-08-01); plan file ~/.claude/plans/twinkly-meandering-rabbit.md.

T-PP4I


← Back to Tasks