Skip to content

Replace Qdrant memory stack with ClawMem#28

Closed
snahrup wants to merge 2 commits intoghostwright:mainfrom
snahrup:clawmem-swap
Closed

Replace Qdrant memory stack with ClawMem#28
snahrup wants to merge 2 commits intoghostwright:mainfrom
snahrup:clawmem-swap

Conversation

@snahrup
Copy link
Copy Markdown

@snahrup snahrup commented Apr 1, 2026

Summary

  • replace the Qdrant/Ollama memory implementation with a ClawMem-backed memory system
  • update memory config, health/status surfaces, doctor output, and prompt text for the new backend
  • remove backend-specific Qdrant/Ollama tests and replace them with ClawMem coverage
  • fix dynamic shell handler execution on this platform and harden secret key env parsing found during verification

Verification

  • bun run typecheck
  • bun test

snahrup added 2 commits April 1, 2026 01:42
Remove the raw Anthropic API dependency entirely. Judge calls now use
the Claude Agent SDK query() with native json_schema outputFormat,
tools disabled (tools: []), and maxTurns: 1 for sandboxed single-pass
evaluation. JudgeError class carries cost info on failures so the daily
cap tracks actual spend even when parsing fails. All ANTHROPIC_API_KEY
references removed from code, tests, config, and docs.

Author: Steve Nahrup
Copy link
Copy Markdown

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

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: b3c48319f0

ℹ️ 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".

"@anthropic-ai/sdk": "^0.80.0",
"@modelcontextprotocol/sdk": "^1.28.0",
"@slack/bolt": "^4.6.0",
"clawmem": "file:../ClawMem",
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 Use a resolvable ClawMem dependency source

Pointing clawmem to file:../ClawMem makes installs fail for a normal clone/CI checkout where no sibling ../ClawMem repo exists, which in turn breaks runtime imports like clawmem/src/llm.ts and prevents tests/startup from running. This effectively turns the project into a non-self-contained build unless every environment is manually prepared with that external path.

Useful? React with 👍 / 👎.

Comment on lines +40 to +43
: { clawmem: false, configured: false };

const uptimeSeconds = Math.floor((Date.now() - deps.startedAt) / 1000);
const allHealthy = memoryHealth.qdrant && memoryHealth.ollama;
const status = memoryHealth.clawmem ? "ok" : memoryHealth.configured ? "down" : "ok";
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 Report memory outage in MCP health fallback

When deps.memory is unavailable (for example after memory init fails and MCP is created without a ready memory instance), this fallback sets configured: false, so the status expression returns "ok" even though memory is down. That causes phantom://health to falsely report healthy state and hides a real backend failure from monitoring/clients.

Useful? React with 👍 / 👎.

@snahrup snahrup closed this by deleting the head repository Apr 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant