# Muse v0.2.0-nightly.3 Third nightly build. Two tickets closed outright, a new symmetric-key migration tool built and merged as defensive tooling, and the workspace's agent-config canonical path bug fixed at the root. ## What changed - **`muse reflog`** now prints full 64-char `sha256:` commit IDs in its human-readable text output instead of truncated 12-char short IDs — matching every other Muse command's convention (muse#52). - **Removed the deprecated `muse migrate` command** and its backing `domain_migration.py` module entirely — the sequential-integer domain identity format it supported no longer exists anywhere in this workspace (muse#38). - **`muse code fix-snapshot-ids`** — new CLI tool to migrate snapshot content-IDs to the unified-store scheme, built defensively while investigating musehub#134's corrupted-commit fallout. Not currently needed in production, merged to `dev` so the work isn't lost if the underlying corruption resurfaces (muse#83). - **Agent-config canonical source moved outside `.muse/`** — `.muse/agent.md` was never actually tracked by Muse (an internal directory, invisible to commits), which defeated the entire purpose of a trackable, cloneable agent config. The canonical file is now `.museagent.md` at the repo root, with auto-migration of any existing `.muse/agent.md` on `agent-config init`/`sync` (issue #78, phases 1–3; phase 4 workspace-wide sweep still open). - **`muse hub user read`/`update`** no longer call a non-existent `/profile` URL suffix — this was silently broken for any agent trying to read or update a MuseHub user profile. `update` also now correctly sends `PUT`, not `PATCH` (issue #79). - **Git-bridge backup routine hardened**: split the combined `verify` and `github-push` scripts into `-muse`/`-musehub` variants, switched to HTTPS remotes instead of SSH, fixed the GitHub repo path to use the actually authenticated `gh` account, made future backup repos public by default, and fixed a SIGPIPE crash in `replay --limit` at real backup scale. ## Follow-ups filed, not blocking this nightly - **muse#84** — `muse blame --range` confirmed to attribute lines to a commit whose own `files_modified` list excludes the file, and whose blob for that file is byte-identical to its parent. Reproducible, not yet fixed. - **musehub#136** — investigate removing musehub's `body { zoom: 1.25 }` in favor of `rem`-based scaling; blocked on a spacing-token refactor. ## How the version number got picked Every commit's `sem_ver_bump` is computed structurally from an AST-level diff of changed public symbols, not typed by hand — see `docs/versioning.md`. This nightly's structural changes classify as PATCH.