diff --git a/.mex/ROUTER.md b/.mex/ROUTER.md index 7fc233d1..a8fc275d 100644 --- a/.mex/ROUTER.md +++ b/.mex/ROUTER.md @@ -18,7 +18,7 @@ edges: condition: when refreshing the release README, badges, community links, or architecture illustrations - target: patterns/hub-first-run-onboarding.md condition: when adding or changing the Hub first-run tour or its checkout-local completion state -last_updated: 2026-10-11 +last_updated: 2026-10-13 --- # Session Bootstrap @@ -30,7 +30,52 @@ Then read this file fully before doing anything else in this session. ## Current Project State **Working:** -- PR #250 review fixes are implemented on `fix/206-nested-dependency-manifests`: +- Release preparation for 0.8.4 is on `codex/release-0.8.4`, based on main + `54f7d7a`, and includes the terminal setup overhaul and default-routing work. + Current package metadata, capability fixtures, README installation examples, + release notes, and upgrade guidance target 0.8.4. Historical release records + retain their versions. Teams must upgrade together before sharing new `mh2:` + groundings; older clients cannot read them. Preparation and PR creation are + authorized; publication is still pending. Verification and known follow-ups + are tracked in `docs/design/0.8.4-release-plan.md`. +- PR #271 review fixes add final stdin shutdown, bounded terminal warning history, + a clean copyable Hub link, width-aware control labels, explicit paused outcomes, + and a final browser-commit readiness check. The Wiki grounding bridge now + accepts exact evidence from fully parsed files when the only graph shortfall + is an unrelated incomplete parse; partial-file and missing-target evidence + remains unverified, and source/configuration drift still refuses. Windows + packed CLI discovery compares canonical paths. Release performance limits + remain unchanged; the final exact-head CI run is still required. +- The Windows follow-up waits for Enter after the manual prompt and Hub link + view in a short-lived child process. A parent console read between HUD mounts + left the next HUD without input on Windows. `mex check` now checks groundings + when the graph's only faults are incomplete parses (and/or changed source). + Partial-file and missing targets are unverified with the files named, and + configuration drift still skips grounding. Main's #250/#251 checker fixes are + merged into the release branch. +- Local terminal setup is the default for `mex setup` and bare `mex` in + incomplete projects, with the lowercase ASCII `mex` banner in cyan. + `setup --browser` explicitly opens browser setup; `--cli` remains supported. + Bare `mex` still opens the Hub for established code projects, preserving + missing-index recovery. The HUD replaces the old prompts with + integration selection before writes, native Claude/Codex terminal handoff, + and explicit complete/paused/failed/cancelled outcomes. Enter selects the + highlighted tool and starts; Space optionally toggles extra integrations, + and a separate Continue row supports the current selection or no agent. + It reuses the shared + setup engine and opens the setup-enabled Hub after validation for commit + review and optional completion details. Scripts and CI remain plain and + never launch an interactive agent or long-lived Hub. Long graph steps now + forward actual phase/file counts into an animated HUD with phase/quiet timers; + failures retain bounded local worker diagnostics and authored recovery advice. + This is working-tree + implementation, not a published release. +- Local setup error-reporting work preserves authored recovery instructions + for expected config, ignore-protection, integration, Graph, grounding, and + Wiki failures in the browser. Raw diagnostics remain terminal-only, and + unexpected exceptions retain the generic fallback. This working-tree change + leaves the setup completion rules and private response schema unchanged. +- PR #250's nested dependency-manifest fixes are merged into main: recursive manifest discovery preserves root precedence, skips symlinks, and abstains when bounded discovery or reads cannot complete. These changes are validated by 137 focused tests and typecheck after main integration; see [dependency-manifest-discovery.md](patterns/dependency-manifest-discovery.md) for regression guidance. @@ -54,7 +99,7 @@ Then read this file fully before doing anything else in this session. approving review before normal merge. The maintainer will publish after merge. Verification and remaining publication steps are tracked in `docs/design/0.8.3-release-plan.md`. -- 0.8.2 setup work on `codex/0.8.2-hub-setup` makes `mex setup` and bare +- 0.8.2 setup work on `codex/0.8.2-hub-setup` originally made `mex setup` and bare `mex` browser entry points; `setup --cli` retains terminal setup and `setup --dry-run` remains a read-only terminal preview. Setup commits now lead to a completion guide with explicit **Open Hub**, version-pinned optional @@ -70,7 +115,8 @@ Then read this file fully before doing anything else in this session. frozen. The release plan records the deterministic calibration and CI evidence. This is branch implementation, not a published release; verification and outstanding release gates are in `docs/design/0.8.2-release-plan.md`. -- Incomplete checkouts open a Hub setup wizard from `mex`, `mex setup`, or `mex hub` instead of the +- Incomplete checkouts can open a Hub setup wizard explicitly with + `mex setup --browser` or `mex hub` instead of the full dashboard. Setup begins on a welcome screen, then runs the same ordered `mex setup` steps through a headless engine, pauses at population with a copyable prompt when no selected CLI is available. Claude/Codex population @@ -379,6 +425,16 @@ Then read this file fully before doing anything else in this session. - Public package-root exports for the provisional team contracts. **Known Issues:** +- A disposable MEX copy with installed dependencies reproduced Node heap + exhaustion during graph construction (924 sources, last event 865/924, + about 101 seconds, explicit V8 heap-limit stderr). The source-only copy + completed; a tiny fresh repository also passes. A compiler-only probe also + exhausted the heap during signature rendering, before graph persistence; + this does not establish a persistent leak or one uniquely causal declaration. + Setup now exposes that cause, + but the underlying compiler memory pressure is not fixed by HUD animation + or process isolation. Investigate it without changing canonical signatures + or increasing production heap/resource budgets merely to pass the example. - Graph construction still rebuilds the full eligible corpus after source changes and has no peak-memory quota. The branch's actual Hub probe peaked at about 1,963 MiB combined RSS and retained multi-second pauses around initial diff --git a/.mex/context/setup.md b/.mex/context/setup.md index c5f65212..79fcead4 100644 --- a/.mex/context/setup.md +++ b/.mex/context/setup.md @@ -20,7 +20,7 @@ edges: # Ground only setup behavior implemented by specific code symbols. # Entry shape: { node: "function:", fingerprint: "mh2:64:" } grounds_to: [] -last_updated: "2026-10-08" +last_updated: "2026-10-09" mex: id: mx_01M1M0CJGBPPFPWHY980PMTS2T type: guide @@ -77,9 +77,9 @@ relations: 2. `npm run typecheck` 3. `npm test` 4. `npm run build` -5. For exact-checkout browser setup, run `node dist/cli.js setup`. Use `node dist/cli.js setup --cli` for terminal dogfooding; rerun that terminal command after manual population to finalize grounding and Wiki readiness. +5. For exact-checkout terminal setup, run `node dist/cli.js setup` (`--cli` remains supported). The HUD hands the terminal to a selected native Claude/Codex session, restores it, checks population, then finalizes grounding and Wiki. Manual population offers Check populated files or a resumable exit. Use `node dist/cli.js setup --browser` for browser setup or to reopen its commit/completion page. `--yes`, pipes, and CI use plain output with no agent or Hub launch; exit 2 means population is still required. 6. Review the canonical scaffold and selected agent files in setup, then explicitly commit them through the Hub action or your Git client. Keep generated databases and `.mex/local/` ignored. The completion guide precedes **Open Hub** and offers optional version-pinned global install and contact details. -7. Bare `node dist/cli.js` opens the Hub or setup; `node dist/cli.js hub` remains supported. Verify any installed global CLI matches the checkout. `mex tui` retains the terminal dashboard. +7. Bare `node dist/cli.js` opens the Hub for established code projects, including missing-index recovery, and terminal setup otherwise. `node dist/cli.js hub` explicitly opens the browser. Verify any installed global CLI matches the checkout. `mex tui` retains the terminal dashboard.