Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
9fdd94c
refactor(setup nu): replace action flags with subcommands + shared co…
tonythethompson Aug 1, 2026
633c50c
fix: 3 findings — Prevent PATH subcommand from deleting active managed N
qodo-code-review[bot] Aug 1, 2026
fb0ff23
fix: address PR #66 review feedback
tonythethompson Aug 1, 2026
438d80b
fix: clarify PATH messaging in Nu setup hints
tonythethompson Aug 1, 2026
7e726a2
Add reserved `numan use` CLI stub
tonythethompson Aug 1, 2026
7951797
fix: apply CodeRabbit auto-fixes
coderabbitai[bot] Aug 1, 2026
8062a11
feat: implement numan use for side-by-side Nu version management
tonythethompson Aug 1, 2026
213e874
fix: 5 findings — Validate and normalize Nu versions; Propagate legacy m
qodo-code-review[bot] Aug 1, 2026
b8f4233
fix: address PR review — validate before delete, fix help text, fix c…
tonythethompson Aug 1, 2026
62b8656
chore: remove temp files
tonythethompson Aug 1, 2026
2591036
Update src/cmd/snapshot.rs
tonythethompson Aug 2, 2026
d9b8e0f
fix: PR 67 review - bootstrap yes flag, version check, mutation lock
tonythethompson Aug 2, 2026
0429557
Merge origin/master into feature/numan-use - resolve conflicts: take …
tonythethompson Aug 2, 2026
e245232
Update .gitignore
tonythethompson Aug 2, 2026
641bd24
wip(numan-use): integrate use + migration pieces (split pending)
tonythethompson Aug 2, 2026
e0e467e
feat(nu): extract legacy migrate fs + tests into src/nu/migrate_legacy
tonythethompson Aug 2, 2026
a006204
fix: Reconcile migration journal under lock
qodo-code-review[bot] Aug 2, 2026
10b4e31
fix: Recover prepared migrations from filesystem state
qodo-code-review[bot] Aug 2, 2026
7153a7f
fix: Remove redundant migration comment
qodo-code-review[bot] Aug 2, 2026
283a1c4
fix: Keep use list read-only
qodo-code-review[bot] Aug 2, 2026
45846fc
Potential fix for pull request finding
tonythethompson Aug 2, 2026
6679cc3
Potential fix for pull request finding
tonythethompson Aug 2, 2026
01c0e44
Update src/cmd/setup.rs
tonythethompson Aug 2, 2026
da3daec
Update src/nu/bootstrap.rs
tonythethompson Aug 2, 2026
2635dbd
Update src/state/migration_journal.rs
tonythethompson Aug 2, 2026
d52cda6
Update src/nu/version_manager.rs
tonythethompson Aug 2, 2026
d0a5c27
Update src/nu/migrate_legacy.rs
tonythethompson Aug 2, 2026
db0cbb0
Merge branch 'master' into pr-migrate-legacy-installs
tonythethompson Aug 2, 2026
a867a90
fix(migrate): address PR 69 unresolved review threads (8 fixes)
tonythethompson Aug 2, 2026
5bbdaf5
fix(migrate): rebase fallout — close stray fn, drop unused imports, g…
tonythethompson Aug 2, 2026
0e8863e
docs(agents): list nu/migrate_legacy.rs in the project structure
tonythethompson Aug 2, 2026
323fcb3
fix(migrate): address PR 69 remaining review threads (7 fixes)
tonythethompson Aug 2, 2026
5705910
refactor(setup): route setup_subcommand_lock across destructive setup…
tonythethompson Aug 2, 2026
e14959f
refactor(setup): require_tty_or_yes seam + apply across all destructi…
tonythethompson Aug 2, 2026
44381ff
feat(setup): --force flag for `setup nu use <path>` opt-in to destruc…
tonythethompson Aug 2, 2026
81ac8ee
fix: 4 findings — Lock direct setup execution; Fix setup test arguments;
qodo-code-review[bot] Aug 2, 2026
471347c
fix: Include legacy installs in version listing
qodo-code-review[bot] Aug 2, 2026
cea6efd
fix(migrate): install into versioned layout (PR69 Srm) + versioned-la…
tonythethompson Aug 2, 2026
ce81a65
audit(destructive): require_tty_or_yes for remove and snapshot delete…
tonythethompson Aug 2, 2026
2682b97
Update migrate_legacy.rs
tonythethompson Aug 2, 2026
225dc72
Merge origin/master into feature/setup-subcommand-lock
cursoragent Aug 2, 2026
bfa9ac3
Fix PR #71 review: version-before-mutation and force gates
cursoragent Aug 2, 2026
302d5b6
Fix PR #71 review: TTY seams, migration safety, marker order
tonythethompson Aug 3, 2026
8b8b1cd
Fix rustfmt in migrate_legacy regression test
tonythethompson Aug 3, 2026
3b655fb
fix(nu): return VersionManagerError from public version APIs
cursoragent Aug 3, 2026
bd25c1d
fix: Mark the freshly installed Nu version active
qodo-code-review[bot] Aug 3, 2026
e40985d
fix: Return concrete migration API errors
qodo-code-review[bot] Aug 3, 2026
3f25c5d
fix: Correct use command documentation
qodo-code-review[bot] Aug 3, 2026
22a73f3
Potential fix for pull request finding
tonythethompson Aug 3, 2026
c7f03f6
Potential fix for pull request finding
tonythethompson Aug 3, 2026
f620fd6
Update src/cmd/doctor.rs
tonythethompson Aug 3, 2026
69ad7b2
Update src/util/fs_safety.rs
tonythethompson Aug 3, 2026
847938d
Merge origin/master into cursor/version-manager-thiserror-a7e4
cursoragent Aug 3, 2026
843dbd3
fix: drop opaque anyhow thiserror wrappers on migration APIs
cursoragent Aug 3, 2026
7f487d1
fix: address still-valid PR 82 review findings
cursoragent Aug 3, 2026
f1ef4d0
fix: address PR 82 P1 bare-setup, remove confirm, doctor hint
tonythethompson Aug 4, 2026
98dd91a
fix: rustfmt doctor test and update setup_nu short-circuit test
tonythethompson Aug 4, 2026
d720058
fix: surface inconsistent migration journals as doctor errors
tonythethompson Aug 4, 2026
758a91b
fix: preflight active-marker writability before PATH Nu switch
tonythethompson Aug 4, 2026
f097d03
fix: write normalized Nu VERSION marker with I/O context
tonythethompson Aug 4, 2026
c2f6f0b
style: rustfmt doctor, setup, and bootstrap after PR 82 fixes
tonythethompson Aug 4, 2026
ec4c446
fix: route setup loader/use through setup_subcommand_lock
tonythethompson Aug 4, 2026
032a27b
fix: pin migrate/paths/journal failure guards
tonythethompson Aug 4, 2026
2009be6
fix: route legacy binary path via versioned_nu_dir
tonythethompson Aug 4, 2026
16500e5
Merge branch 'master' into cursor/version-manager-thiserror-a7e4
tonythethompson Aug 4, 2026
3f71579
fix: normalize migration journal version before Renamed path probes
cursoragent Aug 4, 2026
36f5f50
fix: address remaining PR 82 P2 review findings
cursoragent Aug 4, 2026
4198847
fix: gate migration Auto on validate_reconcile; harden related UX
cursoragent Aug 4, 2026
bd4e215
fix: address PR 82 review on doctor hints, marker order, reconcile
tonythethompson Aug 4, 2026
b67b236
merge: resolve origin/master into PR 82 branch
tonythethompson Aug 4, 2026
ff4fc1c
fix: drop duplicate migrate_legacy test and rustfmt doctor
tonythethompson Aug 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/numan-doctor.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,8 @@ Checks run in order below. Implementation should call existing validators (`NuPa
| `journal.autoload_stale` | `error` | Journal identity mismatch | **confirm:** `init --refresh` then `activate` |
| `journal.lifecycle_pending` | `warn` | `state/pending-lifecycle.json` exists | **manual:** re-run or clear per op |
| `journal.lifecycle_stale` | `error` | Stale lifecycle journal | **manual** |
| `journal.migration_pending` | `warn` | `state/migration-journal.json` exists and parses (stage `Prepared` \| `Renamed` \| `Active`) | **auto:** `migration_journal::reconcile` under the mutation lock, after a PreMutation snapshot; hint `numan use` |
| `journal.migration_invalid` | `error` | `state/migration-journal.json` is present but unreadable, unparseable, or carries an unsupported `schema_version` | **manual:** delete the journal file; `numan use` cannot reconcile an unreadable journal |
| `journal.migration_pending` | `warn` | `state/migration-journal.json` exists, parses, and [`validate_reconcile`](../src/state/migration_journal.rs) accepts it (normalized version, non-symlink managed tree, Renamed binary present or Prepared orphan empty/absent) | **auto:** `migration_journal::reconcile` under the mutation lock, after a PreMutation snapshot; hint `numan use <version>` when the versioned binary is present, else `numan doctor --fix` (or `numan setup nu <version>` to install) |
| `journal.migration_invalid` | `error` | journal unreadable/unparseable/unsupported `schema_version`, or `validate_reconcile` refuses (unsafe/non-normalizable version, symlink managed tree, Renamed missing binary, non-empty Prepared orphan) | **manual:** `numan setup nu <version>` when the binary is missing, or delete the stale journal; auto-reconcile refuses these states |

### 4. Lockfile and activation identity

Expand Down
Loading
Loading