openclaw - ✅(Solved) Fix [v2026.4.5] memory-lancedb-pro schema validation false positive: 'embedding must have required property embedding' [1 pull requests, 2 comments, 3 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#61964Fetched 2026-04-08 03:10:38
View on GitHub
Comments
2
Participants
3
Timeline
3
Reactions
0
Author
Timeline (top)
commented ×2subscribed ×1

Root Cause

Root Cause Hypothesis

Fix Action

Workaround

The warning can be safely ignored - plugin functionality is not affected.

PR fix notes

PR #63013: fix(plugins): preserve explicit provider runtime ownership resolution

Description (problem / solution / changelog)

Summary

  • keep the provider runtime path short-circuited when explicit refs resolve to no owner so unrelated plugins do not broad-load under cropped config
  • preserve valid hook-only provider refs by resolving owner plugins through bundled alias mappings, active runtime aliases, and cold-start setup-registry provider metadata
  • keep explicit provider/model refs activating the owning plugin runtime instead of falling back to unrestricted loads
  • add regression coverage for the memory-lancedb-pro false-positive path plus bundled, active-runtime, and cold-start hook-alias ownership

Problem

When OpenClaw resolves explicit provider refs under a narrowed runtime config, requestedPluginIds can collapse to an empty array. The provider runtime load path then continues anyway, and that empty restriction behaves like "no restriction", so unrelated plugins get loaded and validated under cropped config.

For memory-lancedb-pro, that can surface a false invalid-config error like: embedding: must have required property 'embedding'

The first fix for that false-positive uncovered a follow-on constraint: some valid provider refs are hook-only aliases that are not directly owned by manifest providers / cliBackends. Those refs still need to resolve back to the correct plugin runtime without reintroducing the unrestricted load path.

Repro / validation

  • observed locally after upgrading to openclaw 2026.4.8
  • local hotfix removes the false warning from openclaw health
  • plugin still registers successfully after restart
  • lightweight syntax lint on the touched TS files passes locally
  • full CI will validate the updated regression matrix on the PR

Fixes #61964 Related to #62855

Changed files

  • extensions/memory-core/src/cli.test.ts (modified, +1/-0)
  • scripts/check-no-raw-channel-fetch.mjs (modified, +1/-0)
  • src/plugins/install-security-scan.runtime.ts (modified, +8/-1)
  • src/plugins/install.test.ts (modified, +1/-1)
  • src/plugins/providers.runtime.ts (modified, +152/-16)
  • src/plugins/providers.test.ts (modified, +328/-1)
  • src/plugins/providers.ts (modified, +1/-1)
  • src/plugins/setup-registry.test.ts (modified, +106/-0)
  • src/plugins/setup-registry.ts (modified, +48/-0)

Code Example

[plugins] memory-lancedb-pro invalid config: embedding: must have required property 'embedding'

---

{
  "plugins": {
    "entries": {
      "memory-lancedb-pro": {
        "enabled": true,
        "config": {
          "embedding": {
            "provider": "openai-compatible",
            "apiKey": "ollama",
            "baseURL": "http://localhost:11434/v1",
            "model": "qwen3-embedding:8b",
            "dimensions": 4096
          },
          "autoCapture": true,
          "autoRecall": true,
          "smartExtraction": true
        }
      }
    }
  }
}

---

{
  "embedding": {
    "type": "object",
    "properties": {
      "provider": { "type": "string", "const": "openai-compatible" },
      "apiKey": { "type": "string" },
      "model": { "type": "string" },
      "baseURL": { "type": "string" },
      "dimensions": { "type": "integer" }
    },
    "required": ["apiKey"]
  }
}

---

[plugins] memory-lancedb-pro invalid config: embedding: must have required property 'embedding'
[plugins] memory-lancedb-pro: smart extraction enabled (LLM model: openai/gpt-oss-120b, noise bank: ON)
[plugins] memory-lancedb-pro@1.1.0-beta.9: plugin registered (db: /Users/hantaoliu/.openclaw/memory/lancedb-pro, model: qwen3-embedding:8b, smartExtraction: ON)
[plugins] memory-lancedb-pro: injecting 3 memories into context for agent main
RAW_BUFFERClick to expand / collapse

Bug Description

After upgrading to OpenClaw v2026.4.5, the memory-lancedb-pro plugin shows a schema validation warning during startup, even though the plugin configuration is valid and the plugin works correctly.

Warning Message

[plugins] memory-lancedb-pro invalid config: embedding: must have required property 'embedding'

Environment

  • OpenClaw version: v2026.4.5 (3e72c03)
  • memory-lancedb-pro version: 1.1.0-beta.9
  • Platform: macOS (arm64), Node.js v24.13.1
  • Upgraded from: v2026.4.2

Current Configuration

{
  "plugins": {
    "entries": {
      "memory-lancedb-pro": {
        "enabled": true,
        "config": {
          "embedding": {
            "provider": "openai-compatible",
            "apiKey": "ollama",
            "baseURL": "http://localhost:11434/v1",
            "model": "qwen3-embedding:8b",
            "dimensions": 4096
          },
          "autoCapture": true,
          "autoRecall": true,
          "smartExtraction": true
        }
      }
    }
  }
}

Plugin Schema (from openclaw.plugin.json)

{
  "embedding": {
    "type": "object",
    "properties": {
      "provider": { "type": "string", "const": "openai-compatible" },
      "apiKey": { "type": "string" },
      "model": { "type": "string" },
      "baseURL": { "type": "string" },
      "dimensions": { "type": "integer" }
    },
    "required": ["apiKey"]
  }
}

Actual Behavior

Despite the warning, the plugin:

  • ✅ Loads successfully
  • ✅ Works correctly (embedding, memory capture/recall all functional)
  • ✅ Logs show: [email protected]: plugin registered (model: qwen3-embedding:8b)

Evidence from Logs

[plugins] memory-lancedb-pro invalid config: embedding: must have required property 'embedding'
[plugins] memory-lancedb-pro: smart extraction enabled (LLM model: openai/gpt-oss-120b, noise bank: ON)
[plugins] [email protected]: plugin registered (db: /Users/hantaoliu/.openclaw/memory/lancedb-pro, model: qwen3-embedding:8b, smartExtraction: ON)
[plugins] memory-lancedb-pro: injecting 3 memories into context for agent main

Expected Behavior

No schema validation warning should appear since the configuration is valid according to the plugin's own schema.

Root Cause Hypothesis

The AJV schema validator in OpenClaw v2026.4.5 may be incorrectly treating the embedding object as needing a nested embedding property, possibly due to:

  1. A bug in resolveAjvErrorPath() that misinterprets required errors
  2. Schema caching issue with upgraded plugins
  3. Conflict between OpenClaw's built-in memory-lancedb schema and the pro version

Workaround

The warning can be safely ignored - plugin functionality is not affected.

Additional Context

This is a regression introduced in v2026.4.5. The same configuration worked without warnings in v2026.4.2.


Reporter: OpenClaw user Date: 2026-04-06 Severity: Low (cosmetic warning, no functional impact)

extent analysis

TL;DR

The schema validation warning for the memory-lancedb-pro plugin can likely be resolved by adjusting the plugin's configuration to match the expected schema or waiting for a fix in a future OpenClaw version.

Guidance

  • Review the openclaw.plugin.json schema for memory-lancedb-pro to ensure it aligns with the expected configuration structure, particularly focusing on the embedding object.
  • Verify that the embedding object in the plugin configuration contains all required properties as defined in the schema, even though the current warning suggests a misunderstanding of the required properties.
  • Consider filing an issue with OpenClaw to address the potential bug in resolveAjvErrorPath() or schema caching issue, as this warning is a regression introduced in v2026.4.5.
  • If the warning is purely cosmetic and does not affect functionality, as indicated, it might be safe to ignore until a formal fix is released.

Example

No specific code changes are recommended without further clarification on the intended schema validation behavior. However, ensuring the configuration matches the schema, such as:

{
  "plugins": {
    "entries": {
      "memory-lancedb-pro": {
        "enabled": true,
        "config": {
          "embedding": {
            "provider": "openai-compatible",
            "apiKey": "ollama",
            "baseURL": "http://localhost:11434/v1",
            "model": "qwen3-embedding:8b",
            "dimensions": 4096
          },
          "autoCapture": true,
          "autoRecall": true,
          "smartExtraction": true
        }
      }
    }
  }
}

should be validated against the openclaw.plugin.json schema.

Notes

The warning's cause is hypothesized to be related to a bug in OpenClaw's AJV schema validator or a schema caching issue, introduced in version v2026.4.5. Given the cosmetic nature of the issue and the lack of functional impact, waiting for an official fix or adjusting configurations based on further guidance from OpenClaw might be the most prudent course of action.

Recommendation

Apply workaround: Given the warning is cosmetic and does not affect the plugin's functionality, it can be safely ignored until a formal fix is released for OpenClaw, addressing the underlying issue with schema validation.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING