Skip to content

docs(plan): 260911 memory/recall sweep roadmap (L0) - #154

Merged
lidge-jun merged 5 commits into
devfrom
codex/memory-recall-roadmap
Sep 11, 2026
Merged

lidge-jun merged 5 commits into
devfrom
codex/memory-recall-roadmap

Conversation

@lidge-jun

@lidge-jun lidge-jun commented Sep 11, 2026

Copy link
Copy Markdown
Owner

Ten documents: the roadmap, the audit trail for three review rounds, the host verification baseline every later layer uses as its gate, one diff-level PRD per implementation layer, and the integration plan.

Stack (merge bottom-up)

# PR branch issues
L0 #154 codex/memory-recall-roadmap — (roadmap)
L1 #155 codex/fix-recall-cwd-normalization #138
L2 #156 codex/fix-memory-search-semantics #142, #143
L3 #157 codex/fix-recall-cli-arg-hygiene #139, #140
L4 #158 codex/fix-chat-index-freshness #144
L5 #159 codex/fix-recall-intent-regex #137
L6 #160 codex/fix-memory-write-gate #135, #136, #141

You are here: L0. Base is dev. Review this PR's diff only — it is already scoped to this layer.

Review focus

the roadmap and the audit trail. No production code.

Evidence

Every layer was planned to diff level before any code, audited by an independent xai/grok-4.6 reviewer, and implemented only after the audit's blockers were folded. Each new test was observed failing on the parent tip before it was shown passing; the per-layer receipt in devlog/_plan/260911_memory_recall_sweep/ records the exact red output.

Local gate: npm run build exit 0, and npm test showing exactly the two pre-existing environmental failures recorded in 002_host_verification_baseline.md (hook-bench hardcodes cwd: "/tmp", and cxc map --help needs py) and no third.

Note on the target-branch check

Enforce PR target branch requires dev. Layers L1-L6 legitimately target the layer below, so that workflow will flag them. Do not retarget them to dev — that would dissolve the stack. Merge bottom-up; each merge retargets the next child.

Diff-level roadmap for the ten open issues the Windows sweep does not own: #135 #136 #137 #138 #139 #140 #141 #142 #143 #144. Seven-layer manual stacked chain based on dev, one PR per layer, merged bottom-up by the user.
Two independent xai/grok-4.6 reviewers returned FAIL. Folded: canonicalCwdSql must not take a bind placeholder; L1 does not write memory-search.ts (L2 then L3 do); the file-span excerpt must be built from splitLines().join to keep the no-CR assertion true; PowerShell switch parameters must not consume the next token, or Set-Content -Force still slips a memory write through; and dev is read, never written - the peer session restored it at a267b39 with a tree identical to 6aae1c9.
Round 2 of the audit returned FAIL on two leftovers: 030 still named L1 as a writer of memory-search.ts, and the wp8 title plus the work-phase map still said the loop restores dev. Both are corrected, the stale 6aae1c9 rebase base is replaced with a dev-moved-only cascade, and 000_plan now records that every layer doc was written against tree 904bbe0, reachable as both 6aae1c9 and a267b39.
001 captures three audit rounds, the five plus two blockers and how each was folded, so a later reader can see which parts of the roadmap were wrong before they were right. 002 measures this host: npm ci is required in a fresh worktree, then npm run build exits 0 and npm test exits 1 with exactly two environmental failures - hook-bench.test.mjs:17 spawning with cwd /tmp on Windows, and cxc map --help needing py. Both are recorded and deliberately not fixed here. Each layer's gate is its focused component suite green plus those same two failures and no third.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 11, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-11T15:53:52.827354Z 1ea8028 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1ea80287ea

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +322 to +325
const eq = FOLD_CWD_CASE ? `lower(${col}) = lower(?)` : `${col} = ?`;
const like = FOLD_CWD_CASE ? `lower(${col}) LIKE ? ESCAPE '\\'` : `${col} LIKE ? ESCAPE '\\'`;
const parts = [eq, like];
params.push(cwd, `${escapeLike(FOLD_CWD_CASE ? cwd.toLowerCase() : cwd)}/%`);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Make the Linux prefix predicate case-sensitive

When the query cwd is /Repo and an indexed session has cwd /repo/child, SQLite's default ASCII-case-insensitive LIKE makes this second branch match even though FOLD_CWD_CASE is false; the scan path's case-sensitive cwdMatches rejects the same session. The prescribed implementation therefore breaks the promised index/scan parity and can leak results from a distinct case-sensitive Linux directory into --cwd-only; use a genuinely case-sensitive prefix comparison and add a case-differing child-path regression.

Useful? React with 👍 / 👎.

3. `npm test` exits 0. The existing names `recall intent: korean idioms trigger`, `recall intent: english idioms trigger`, `recall intent: neutral prompts and self-recalling prompts stay silent`, and `wp6 trigger idioms widen without catching ordinary instructions` still pass.
4. Red-green: on the parent tip (this layer unpatched) the new fixture test fails on the first two asserts (`previous commit` / `기억해줘` still true) and on the three advertised misses. At this layer's tip the same test passes. A green build whose new test never ran red is not proven (`000_plan.md` verification contract).

This layer has no Windows-only reproduction. No `cxc receipt` is produced by the implementer; wp8 owns receipts.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep receipt generation in each implementation layer

This instruction tells the L5 implementer to omit its receipt and delegate it to wp8, but 000_plan.md:194-196 and 070_wp8_integration_stack_publish.md:120-125 explicitly require each layer to produce its own testReceiptPath and state that wp8 cannot do so. Following this layer-specific PRD leaves L5 uncertifiable and blocks final integration; remove this instruction and the identical wp7 instruction at line 563, and include cxc receipt test in each layer's verification steps.

Useful? React with 👍 / 👎.

@lidge-jun
lidge-jun merged commit c88cef0 into dev Sep 11, 2026
15 of 16 checks passed
@lidge-jun
lidge-jun deleted the codex/memory-recall-roadmap branch September 11, 2026 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants