feat(memory): add native explorer tabs and ACP analysis - #161
Merged
Conversation
Add metadata-only Claude, Codex, Qoder and Qwen Memory discovery and explicitly authorized snapshots to the Rust Evidence Host. Connect Studio and the CLI through native transports while preserving provenance and legacy inventory qualification. Add the global Memory workbench with a labeled candidate review preview, source tables and Markdown reading. Define the follow-up multi-project AST analysis contract without enabling extraction or persistent promotion. Implements docs/specs/2026-09-09-native-memory-sources.md. Validated with 41 Rust tests, 37 focused Studio tests, native inventory regression tests, 10 Playwright scenarios, doc-link checks and package verification. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
Read the selected native Memory document immediately, cancel superseded requests, and support retry after a failed read. Keep source metadata with the title and the native path visible while provenance is collapsed. Record the reader interaction spec and the preceding scope analysis. Studio build, 12 focused Playwright tests, 8 documentation link checks, and real local data checks at three viewport sizes passed. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
Project Memory now retains native library and content scope separately, with bounded section extraction and a directory explorer opening independent editor tabs. Analysis reuses ACP model settings, streaming replies and follow-up turns against a digest-checked snapshot in a temporary working directory. Implements docs/specs/2026-09-09-memory-explorer-acp.md and the related Memory browser specs. Verified Studio build, 12 Memory unit tests, 15 Memory browser tests, 6 shared ACP browser regressions and 8 document-link tests. Actual Qoder ACP analyzed synthetic input; live library layouts were checked at three widths. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
Bring in the current Rust snapshot parity and Studio navigation changes, along with the date-range and live-notebook test corrections. The merge is conflict free; the combined tree is validated with the Memory and CI contract fixes. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
Skip stat on a bare Windows path prefix until the root component is present, while retaining symlink and reparse-point rejection. Refresh the CLI help and JSON baselines for the sole added Memory command, and provision the Evidence Host explicitly for the Linux browser CI job. Follows docs/specs/2026-09-09-memory-ci-readiness.md. Local validation passed 7 Rust Memory tests, 20 CLI/native/doc-link checks, the Studio build and all 612 Studio unit tests. Hosted Windows evidence is required before merging. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
The Memory ADR adds six reachable design documents to the canonical Markdown closure. Pin the verified source and artifact closure counts to 114 nodes, 320 edges and 117 files without weakening link or artifact validation. Follows docs/specs/2026-09-09-memory-ci-readiness.md. The complete root CI suite passes locally with 1746 tests passed and 7 existing environment-based skips. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
Canonical Windows workspace paths contain an IO-only prefix that native host storage names do not include. Remove that prefix before Claude, Qoder/Cursor, Qwen, Pi and WorkBuddy slug encoding while retaining canonical paths for IO. This resolves the invalid directory names exposed by the Windows Desktop job after the Memory tests passed. Extends docs/specs/2026-09-09-memory-ci-readiness.md. All 46 Evidence Host Rust tests pass locally, including new drive and UNC spelling equivalence cases. Co-authored-by: Codex (GPT 5.6 Sol) <codex@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a global Memory workbench backed by native Rust discovery and authorized snapshot reads. The left explorer organizes personal guidance, general guidance, projects and source files; opening an item creates or activates an editor tab with its own reading position. Memory stays independent of the active Studio project.
AI analysis uses the existing ACP Agent/model settings, streamed conversation, permission controls and follow-up composer. The server rereads and checks the selected snapshot digest, fixes its source/section for the session, and cleans up the temporary working directory on close or disconnect. No native Memory write API is introduced.
Scope and evidence
Maintainer request; no tracker issue assigned. Specs: native sources, explorer and ACP, CI readiness. Current design: Memory ADR.
Validation
Latest local results with Node 24, including integration with current main:
Real personal Memory was not sent to AI. Browser coverage includes delayed reads, scope/origin authorization, virtualized trees, tabs and reading position, ACP model changes, visible output before completion, multi-turn continuity, and temporary-directory/control cleanup.
Final head
53d409a5d1dfced6ad157d8332a82c44add22e61: all 7 hosted checks passed. CI run covers Windows/macOS/Linux and Node 22/24; Desktop run passes all three platforms, including Rust/native suites and packaged startup smoke. Windows Memory and native session path fixes have hosted receipts. Previously failing date and notebook tests are fixed by the main commits integrated here.Boundaries
BETTER_HARNESS_EVIDENCE_HOST; no JavaScript discovery fallback is shipped.