fix(memory-core): register memory tools independently to prevent coupled failure#50198
fix(memory-core): register memory tools independently to prevent coupled failure#50198artwalker wants to merge 982 commits intoopenclaw:mainfrom
Conversation
Greptile SummaryThis PR fixes a silent double-failure bug in the Changes:
Analysis:
Confidence Score: 5/5
Last reviewed commit: "fix(memory-core): re..." |
- azure.md: "What you'll do" -> "What you will do" - standing-orders.md: "Don't" -> "Avoid" Per CLAUDE.md: avoid em dashes and apostrophes in headings because they break Mintlify anchor links.
…ault - cli/plugins.md: rewrite install synopsis with ClawHub-first order - cli/hooks.md: update hook pack install examples - help/troubleshooting.md: <npm-spec> -> <package> - gateway/security/index.md: drop npm-specific framing
Mintlify strips dots from backtick headings when generating anchors. `agents.defaults.sandbox` -> #agentsdefaultssandbox (not #agents-defaults-sandbox)
- sandboxing.md: remove stale '-opt-in' suffix from Docker accordion anchor - troubleshooting.md: remove #troubleshooting anchor (matrix has no such section) - docker.md: drop unpredictable security heading anchor with parens/dots - faq.md: fix SSL error accordion anchor slug
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
22 similar comments
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
1 similar comment
|
Closing this PR because it looks dirty (too many unrelated or unexpected changes). This usually happens when a branch picks up unrelated commits or a merge went sideways. Please recreate the PR from a clean branch. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2599c7e6c3
ℹ️ 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".
| const memory = await getMemoryManagerContextWithPurpose({ | ||
| cfg, | ||
| agentId, | ||
| purpose: "status", |
There was a problem hiding this comment.
Use full manager for non-builtin memory_get calls
memory_get now requests getMemoryManagerContextWithPurpose(..., purpose: "status") for non-builtin backends, but in this commit getMemorySearchManager() returns QmdStatusOnlyManager for QMD status requests, and that manager’s readFile() always throws ("memory read unavailable in status-only mode"). In QMD deployments this makes every memory_get call return a disabled/error payload instead of file contents, so memory retrieval is effectively broken for that backend.
Useful? React with 👍 / 👎.
|
Opened replacement PR #52639 from a clean maintainer branch after the original fork-head recovery path became unreliable during prepare-push.
Keeping this PR for traceability; reviewers can use #52639 as the canonical merge path. |
Summary
memory_search+memory_gettool registration inmemory-coreplugin into two independentregisterToolcallsnullwhen either tool failed, silently dropping both tools from new sessionsRoot Cause
extensions/memory-core/index.tsregistered both tools in one factory:When the factory returned
null,resolvePluginTools()silently skipped it with no log output, making the failure invisible.Test plan
npm run buildpassesFixes #50173
🤖 Generated with Claude Code