agent: lumotia-rebrand — docs, scripts, root config, residuals
Phase 9 of the rebrand cascade. Sweep covers everything the Phase 8
frontend pass deliberately skipped: docs/, root markdown, scripts,
Cargo.toml descriptions, code comments that survived earlier
word-boundary sed, plus a handful of identifiers caught on the final
verify pass.
transcription-app changes:
- README.md, HANDOVER.md, KNOWN-ISSUES.md, run.sh — magnotia/Magnotia
-> lumotia/Lumotia.
- docs/ — sweep across all subdirs except docs/handovers/ (preserved
as immutable audit trail). Includes architecture-map references
to magnotia_core::*, magnotia_storage::*, etc. now pointing at
lumotia_*; dev-setup.md tracing output examples (lumotia_startup
target); brief/ + superpowers/ + issues/ + whisper-ecosystem/ +
audit/.
- Cargo.toml descriptions on 9 crates (core, audio, cloud-providers,
hotkey, llm, mcp, plus referenced others).
- crates/core/src/{error,hardware,recommendation,paths}.rs +
crates/audio/src/wav.rs + crates/llm/src/model_manager.rs +
crates/cloud-providers/src/keystore.rs + crates/mcp/src/lib.rs —
doc comments and a model-manager user-agent string.
- Caught on final pass: BroadcastChannel("magnotia_task_sync") -> ...
("lumotia_task_sync"); magnotia_locale i18n localStorage key
renamed + migration shim added; CSS keyframe names
magnotiaPulse / magnotiaBar / magnotiaFade renamed in the design-
system kit; magnotia_viewer_item / magnotia_viewer_mode handoff
keys renamed in HistoryPage + viewer/+page.svelte; src/assets/
wordmark.svg text.
- src-tauri/src/lib.rs comment cleanup ("magnotia era" was sed'd
to "lumotia era" earlier — restored).
Preserved (intentional):
- crates/core/src/paths.rs — keeps "magnotia" / "Magnotia" / ".magnotia"
legacy detection strings in legacy_and_target_paths() so the
migration shim can still find user data from the magnotia era.
- src/lib/stores/{page,focusTimer}.svelte.ts + src/lib/i18n/index.ts
— migration call sites reference the legacy magnotia keys
deliberately.
- docs/handovers/ — historical audit trail.
cargo build --workspace passes. npm run check: 0 errors / 0 warnings
(3958 files). cargo test --workspace: 339 pass / 0 fail.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
---
|
||||
name: handover-2026-04-24
|
||||
type: reference
|
||||
tags: [handover, session, magnotia, phase-8, gamification]
|
||||
tags: [handover, session, lumotia, phase-8, gamification]
|
||||
description: Session handover — 2026/04/24 Phase 8 forgiving gamification shipped end-to-end
|
||||
---
|
||||
|
||||
# Magnotia Handover — 2026/04/24
|
||||
# Lumotia Handover — 2026/04/24
|
||||
|
||||
*Originally written when the product was named Kon (and briefly Corbie); references rewritten in the 2026-04-30 rebrand sweep.*
|
||||
|
||||
@@ -13,7 +13,7 @@ Phase 8 session. Executed the forgiving-gamification spec + plan written at the
|
||||
|
||||
## Rebrand note
|
||||
|
||||
Product rename **Magnotia → Magnotia** still in flight. Copy in new docs is "Magnotia"; codebase paths / package names / repos still carry `magnotia`. No rebrand work this session. See `~/.claude/projects/-home-jake-Documents-CORBEL-Main/memory/project_magnotia_rebrand.md`.
|
||||
Product rename **Lumotia → Lumotia** still in flight. Copy in new docs is "Lumotia"; codebase paths / package names / repos still carry `lumotia`. No rebrand work this session. See `~/.claude/projects/-home-jake-Documents-CORBEL-Main/memory/project_magnotia_rebrand.md`.
|
||||
|
||||
## What shipped this session
|
||||
|
||||
@@ -35,7 +35,7 @@ Today's header now shows `Tasks · 3 today` alongside a 7-day momentum sparkline
|
||||
| `4ffdae9` | `completionStats.svelte.ts` store |
|
||||
| `54ddd41` | `CompletionSparkline.svelte` component |
|
||||
| `3cadbb0` | badge + sparkline wired into Tasks header (+ `$derived` → getter fix) |
|
||||
| `c29720e` | emit `magnotia:task-uncompleted` + `magnotia:task-deleted` events |
|
||||
| `c29720e` | emit `lumotia:task-uncompleted` + `lumotia:task-deleted` events |
|
||||
| `fa93033` | settings toggle for momentum sparkline |
|
||||
|
||||
### Counting semantics (locked)
|
||||
@@ -48,9 +48,9 @@ Today's header now shows `Tasks · 3 today` alongside a 7-day momentum sparkline
|
||||
|
||||
### Architectural notes worth carrying forward
|
||||
|
||||
- **`serde` is now a dependency of `magnotia-storage`.** Added because `DailyCompletionCount` is serialised directly to the frontend via Tauri. The existing `TaskRow` → `TaskDto` split wasn't reused because the struct has no camelCase translation need (`day`, `count` are already frontend-friendly). Simpler, one fewer file to maintain.
|
||||
- **`serde` is now a dependency of `lumotia-storage`.** Added because `DailyCompletionCount` is serialised directly to the frontend via Tauri. The existing `TaskRow` → `TaskDto` split wasn't reused because the struct has no camelCase translation need (`day`, `count` are already frontend-friendly). Simpler, one fewer file to maintain.
|
||||
- **`$derived` cannot be exported at module scope in `.svelte.ts`.** Svelte 5 errors with `derived_invalid_export`. Originally hit during Task 9 integration; fix landed in the same commit (`3cadbb0`). `svelte-check` misses this; only Vite catches it. Plan/spec both mistakenly prescribed `$derived`; future stores should use `export function fooCount(): number` + `(...)` call sites, or a `$derived` wrapped inside a component script.
|
||||
- **Tuple `FromRow` in storage.** `magnotia-storage` strips sqlx's `derive` feature, so `#[derive(sqlx::FromRow)]` is not available. Use tuple `FromRow` `(String, i64)` etc. instead. Noted for future tasks in this crate.
|
||||
- **Tuple `FromRow` in storage.** `lumotia-storage` strips sqlx's `derive` feature, so `#[derive(sqlx::FromRow)]` is not available. Use tuple `FromRow` `(String, i64)` etc. instead. Noted for future tasks in this crate.
|
||||
|
||||
## Verification state at session end
|
||||
|
||||
@@ -64,7 +64,7 @@ Fresh run on `main` tip `fa93033`:
|
||||
|
||||
## Owed to Jake (next session)
|
||||
|
||||
1. **Manual dogfood walkthrough.** Cannot be driven by an automated agent. When opening Magnotia next:
|
||||
1. **Manual dogfood walkthrough.** Cannot be driven by an automated agent. When opening Lumotia next:
|
||||
- Fresh state, no completions → header shows only "Tasks" title; no badge, no sparkline.
|
||||
- Complete one top-level task → badge "1 today"; sparkline appears.
|
||||
- Complete two more → badge "3 today".
|
||||
@@ -81,9 +81,9 @@ Fresh run on `main` tip `fa93033`:
|
||||
|
||||
3. **Plan quality note for future Phase 9+ plans.** Two patterns I prescribed turned out to be wrong on this codebase and only surfaced during execution:
|
||||
- `$derived` at `.svelte.ts` module scope: not supported.
|
||||
- `#[derive(sqlx::FromRow)]` in `magnotia-storage`: feature is stripped.
|
||||
- `#[derive(sqlx::FromRow)]` in `lumotia-storage`: feature is stripped.
|
||||
|
||||
Worth a one-screen "magnotia-storage gotchas" reference file or at least a note at the top of future plans that touch these areas.
|
||||
Worth a one-screen "lumotia-storage gotchas" reference file or at least a note at the top of future plans that touch these areas.
|
||||
|
||||
## What's left for v0.1
|
||||
|
||||
@@ -94,7 +94,7 @@ Unchanged except for Phase 8 now being closed:
|
||||
| Phases 1 to 8 | **All shipped.** |
|
||||
| Phase 9 | Polish debt (file-system .md save dialog, bulk select/export in History, LLM content tags, settings UX pass, visual polish, accessibility sweep). Absorbs backlog above. 1 to 2 days. |
|
||||
| Phase 10a | QC: dogfood walkthrough, Rachmann's RB-08 Mac verification (parallel), cross-platform CI, a11y regression, clean-install test. Half day. |
|
||||
| Phase 10b | Magnotia → Magnotia rename sweep: package name, all 10 crates, bundle ids, install paths, `magnotia.db` → `magnotia.db`, event names, repo rename on both remotes. Half to 1 day. |
|
||||
| Phase 10b | Lumotia → Lumotia rename sweep: package name, all 10 crates, bundle ids, install paths, `lumotia.db` → `lumotia.db`, event names, repo rename on both remotes. Half to 1 day. |
|
||||
| Phase 10c | Release: 0.1.0 version sync, CHANGELOG seeded from roadmap phases, release notes, tag + push. Half day. |
|
||||
|
||||
### Release-blocker state
|
||||
@@ -117,7 +117,7 @@ Unchanged except for Phase 8 now being closed:
|
||||
|
||||
- Spec: [docs/superpowers/specs/2026-04-24-phase8-forgiving-gamification-design.md](docs/superpowers/specs/2026-04-24-phase8-forgiving-gamification-design.md)
|
||||
- Plan: [docs/superpowers/plans/2026-04-24-phase8-forgiving-gamification.md](docs/superpowers/plans/2026-04-24-phase8-forgiving-gamification.md)
|
||||
- Roadmap: [docs/roadmap/2026-04-23-magnotia-feature-complete-roadmap.md](docs/roadmap/2026-04-23-magnotia-feature-complete-roadmap.md)
|
||||
- Roadmap: [docs/roadmap/2026-04-23-lumotia-feature-complete-roadmap.md](docs/roadmap/2026-04-23-lumotia-feature-complete-roadmap.md)
|
||||
- Previous handover: [HANDOVER-2026-04-19.md](HANDOVER-2026-04-19.md)
|
||||
- Release-blocker index: [docs/issues/README.md](docs/issues/README.md)
|
||||
- Rebrand memory: `~/.claude/projects/-home-jake-Documents-CORBEL-Main/memory/project_magnotia_rebrand.md`
|
||||
|
||||
Reference in New Issue
Block a user