@mindrian_os/cli 1.15.3-beta.38 → 1.15.3-beta.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,24 @@
1
+ ## [1.15.3-beta.40] - 2026-07-23
2
+
3
+ ### Fixed
4
+ - **Windows-only: the room registry silently wedged after the first write, every write
5
+ after that returning non-zero and never sticking.** Root cause: Python's `os.rename()`
6
+ is not POSIX `rename(2)` on Windows -- it raises `FileExistsError [WinError 183]` when
7
+ the destination already exists, instead of overwriting. Every atomic-write tmp-swap in
8
+ `scripts/room-registry`, `scripts/resolve-room`, `scripts/update-icm-index`, and
9
+ `scripts/on-cwd-changed` used `os.rename(tmp, dst)`, so the first write to a destination
10
+ (cold room creation, first `/mos:rooms list`) always succeeded and looked healthy, while
11
+ every subsequent write (`set-active`, `update`, `archive`, git-config sync) silently
12
+ wedged on Windows, leaving an orphaned `.tmp` and a frozen registry. This repo's own test
13
+ suite runs only under WSL/Linux, where `os.rename` already overwrites happily, so the gap
14
+ was invisible to CI for the test suite's entire lifetime. Found live by a Windows install
15
+ testing v1.15.3-beta.38; fix and both the semantics claim and the end-to-end unwedge were
16
+ independently re-verified live on that same Windows install. Fixed: `os.rename` ->
17
+ `os.replace` at all 9 call sites (byte-identical behavior on Linux/macOS, overwrite-safe
18
+ on Windows). New regression test (`tests/test-room-registry-windows-atomic-replace.cjs`)
19
+ and a new release-time gate (`scripts/verify-release` section 15) now fail the release if
20
+ a bare `os.rename(` reappears anywhere in `scripts/`.
21
+
1
22
  ## [1.15.3-beta.38] - 2026-07-23
2
23
 
3
24
  ### Changed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindrian_os/cli",
3
- "version": "1.15.3-beta.38",
3
+ "version": "1.15.3-beta.40",
4
4
  "description": "Install MindrianOS into Claude Code with one command -- `npx @mindrian_os/cli`. Ships the MindrianOS plugin (Larry + PWS methodology + Data Room) plus a setup/diagnostics CLI (install/doctor/update).",
5
5
  "scripts": {
6
6
  "mcp": "node bin/mindrian-mcp-server.cjs",