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

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,47 @@
1
+ ## [1.15.3-beta.38] - 2026-07-23
2
+
3
+ ### Changed
4
+ - **Brain default endpoint flipped from the legacy `mindrian-brain.onrender.com` (Neo4j Aura
5
+ + Pinecone) to the new Memgraph-backed `pws-brain-mcp.onrender.com`** (`lib/core/brain-client.cjs`).
6
+ Step 4 of the approved phased Memgraph migration (step 1, an auth-header double-Bearer-prefix
7
+ fix, shipped dark in beta.36's line). Live-verified against the real production endpoint with
8
+ a real key before flipping: `brain_search`/`brain_schema`/`brain_stats`/`brain_ask`/
9
+ `brain_ask_anything` all return real data (28k+ nodes) through the exact same response shapes
10
+ this client already parses. `brain_query`/`brain_write` (raw Cypher) remain admin-tier gated on
11
+ the new server exactly as they already were on the old one -- regular users never had raw-Cypher
12
+ access on either server, so this introduces zero regression; every caller already degrades
13
+ gracefully to a Tier-0 fallback. Every existing Brain API key works unchanged (same Supabase
14
+ `brain_api_keys` Bearer contract) -- no action required from any user. `MINDRIAN_BRAIN_URL`
15
+ still overrides the default for staging/self-hosted use, unchanged.
16
+
17
+ ## [1.15.3-beta.36] - 2026-07-22
18
+
19
+ ### Fixed
20
+ - **`room_bind` could never write a per-session room binding on stdio, so all CLI sessions
21
+ fell back to one shared, unlocked `registry.json` active-room field.** Root-caused via a
22
+ full RCA (`.planning/debug/resolved/registry-active-room-concurrent-session-collision.md`):
23
+ `writeSessionBinding` -- the only function that sets a session's own room binding -- has
24
+ exactly two call sites, both gated behind `room_bind`'s `effectiveSessionId` check, which
25
+ requires the MCP SDK's `extra.sessionId` (never populated on stdio) or an explicit
26
+ `sessionId` argument (nothing supplied one automatically). So no CLI session could ever
27
+ populate its own binding, and every session's write-target resolution fell through to a
28
+ single global field that multiple concurrent `claude` CLI processes on one machine then
29
+ raced to overwrite -- confirmed live with 4 concurrent sessions on this machine, one
30
+ session's active room silently clobbering another's. Fixed: `room_bind` now falls back to
31
+ `process.env.CLAUDE_CODE_SESSION_ID` as a third-priority session identifier on stdio
32
+ (precedence: explicit param > SDK `extra.sessionId` > `CLAUDE_CODE_SESSION_ID` >
33
+ `no_session_id`), so a CLI session can finally write a real per-session binding. The
34
+ separate F.8 binding-ambiguity-card logic in the same handler is untouched. New test:
35
+ `tests/test-room-bind-stdio-session-fallback.cjs` (4 assertions); all 21 pre-existing tests
36
+ touching `room_bind`/`tool-router.cjs`/`session-binding.cjs` still pass.
37
+ - **`write-scope-check.cjs`'s own session-identity fallback checked the wrong environment
38
+ variable name.** It read `process.env.CLAUDE_SESSION_ID`, which this runtime never sets;
39
+ the real variable is `CLAUDE_CODE_SESSION_ID`. Fixed with a backward-compatible fallback
40
+ chain (`CLAUDE_CODE_SESSION_ID` first, legacy `CLAUDE_SESSION_ID` second) so existing test
41
+ fixtures that set the old name are unaffected. A smaller contributor to the active-room
42
+ confusion above than first estimated (this hook already preferred the hook payload's own
43
+ `session_id` ahead of the env check), but a real, worthwhile correctness fix on its own.
44
+
1
45
  ## [1.15.3-beta.34] - 2026-07-21
2
46
 
3
47
  ### Fixed
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
  Powered by PWS (Problems Worth Solving), an innovation methodology built and tested through 20 years of teaching by Prof. Lawrence Aronhime.
11
11
  Engineered by Jonathan Sagir.
12
12
 
13
- [![Version](https://img.shields.io/badge/version-1.15.3--beta.26-1E3A6E)](CHANGELOG.md)
13
+ [![Version](https://img.shields.io/badge/version-1.15.3--beta.36-1E3A6E)](CHANGELOG.md)
14
14
  [![License](https://img.shields.io/badge/license-BSL_1.1-C8A43C)](LICENSE)
15
15
  [![Works on](https://img.shields.io/badge/CLI_+_Desktop_+_Cowork-2D6B4A)](#three-surfaces)
16
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindrian_os/cli",
3
- "version": "1.15.3-beta.34",
3
+ "version": "1.15.3-beta.38",
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",