openclaw - 💡(How to fix) Fix Bug: `enrichGroupParticipantsFromContacts` schema inconsistency - config.schema.lookup shows valid but config validation rejects it [1 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#58538Fetched 2026-04-08 02:01:23
View on GitHub
Comments
0
Participants
1
Timeline
0
Reactions
0
Author
Participants

The channels.bluebubbles.enrichGroupParticipantsFromContacts configuration field shows inconsistent behavior between schema lookup and config validation.

Error Message

1. Check schema - shows field as valid

openclaw config.schema.lookup channels.bluebubbles

2. Try to set the field - fails

openclaw config set channels.bluebubbles.enrichGroupParticipantsFromContacts false

Error: Config validation failed: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

3. Run doctor --fix

openclaw doctor --fix

Reports: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

Root Cause

It appears there are two separate schema definitions:

  1. Query/Documentation schema (returned by config.schema.lookup) - includes enrichGroupParticipantsFromContacts
  2. Validation schema (used by config set and doctor) - does NOT include this field

This inconsistency needs to be resolved by either:

  • Adding the field to the validation schema
  • Removing it from the documentation schema

Fix Action

Workaround

Currently, users must manually remove this field from ~/.openclaw/openclaw.json after running install scripts that trigger gateway restarts.


Related: This affects the BlueBubbles channel's contact enrichment feature as documented in docs/channels/bluebubbles.md.

Code Example

# 1. Check schema - shows field as valid
openclaw config.schema.lookup channels.bluebubbles

# 2. Try to set the field - fails
openclaw config set channels.bluebubbles.enrichGroupParticipantsFromContacts false
# Error: Config validation failed: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

# 3. Run doctor --fix
openclaw doctor --fix
# Reports: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

---

{
  "key": "enrichGroupParticipantsFromContacts",
  "path": "channels.bluebubbles.enrichGroupParticipantsFromContacts",
  "type": "boolean",
  "required": true,
  "hasChildren": false
}
RAW_BUFFERClick to expand / collapse

Bug Report: enrichGroupParticipantsFromContacts Schema Inconsistency

Summary

The channels.bluebubbles.enrichGroupParticipantsFromContacts configuration field shows inconsistent behavior between schema lookup and config validation.

Description

Observed Behavior

  1. openclaw config.schema.lookup channels.bluebubbles shows enrichGroupParticipantsFromContacts as a valid field with type: boolean and required: true
  2. However, openclaw config set channels.bluebubbles.enrichGroupParticipantsFromContacts false fails with: Config validation failed: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"
  3. openclaw doctor --fix also reports this as an "Unrecognized key" problem

Expected Behavior

Either:

  • The field should be accepted by config validation (since it's in the schema), OR
  • The field should not appear in schema lookup

Steps to Reproduce

# 1. Check schema - shows field as valid
openclaw config.schema.lookup channels.bluebubbles

# 2. Try to set the field - fails
openclaw config set channels.bluebubbles.enrichGroupParticipantsFromContacts false
# Error: Config validation failed: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

# 3. Run doctor --fix
openclaw doctor --fix
# Reports: channels.bluebubbles: Unrecognized key: "enrichGroupParticipantsFromContacts"

Environment

  • OpenClaw Version: 2026.3.28 (f9b1079)
  • Node Version: v24.14.0
  • OS: macOS 12 (Monterey)
  • Shell: zsh

Schema Lookup Output

{
  "key": "enrichGroupParticipantsFromContacts",
  "path": "channels.bluebubbles.enrichGroupParticipantsFromContacts",
  "type": "boolean",
  "required": true,
  "hasChildren": false
}

Additional Context

This causes issues when running third-party install scripts (like kimi-claw) that trigger gateway restarts. The plugin appears to inject this field, but then config validation fails.

The documentation at docs/channels/bluebubbles.md also documents this field:

channels.bluebubbles.enrichGroupParticipantsFromContacts: On macOS, optionally enrich unnamed group participants from local Contacts after gating passes. Default: false.

Root Cause Analysis

It appears there are two separate schema definitions:

  1. Query/Documentation schema (returned by config.schema.lookup) - includes enrichGroupParticipantsFromContacts
  2. Validation schema (used by config set and doctor) - does NOT include this field

This inconsistency needs to be resolved by either:

  • Adding the field to the validation schema
  • Removing it from the documentation schema

Workaround

Currently, users must manually remove this field from ~/.openclaw/openclaw.json after running install scripts that trigger gateway restarts.


Related: This affects the BlueBubbles channel's contact enrichment feature as documented in docs/channels/bluebubbles.md.

extent analysis

TL;DR

  • The inconsistency between the query/documentation schema and the validation schema for the enrichGroupParticipantsFromContacts field needs to be resolved by aligning these schemas.

Guidance

  • Review the validation schema used by config set and doctor to ensure it includes enrichGroupParticipantsFromContacts as a valid field.
  • Verify the documentation schema returned by config.schema.lookup matches the updated validation schema.
  • Temporarily, users can manually remove the enrichGroupParticipantsFromContacts field from their ~/.openclaw/openclaw.json configuration file to workaround the validation error.
  • Consider updating the documentation at docs/channels/bluebubbles.md to reflect any changes made to the schema.

Example

No specific code snippet is provided as the issue revolves around schema consistency rather than code implementation.

Notes

  • The root cause analysis suggests a discrepancy between two schema definitions, which needs to be addressed for a permanent fix.
  • The workaround involves manual intervention, which may not be scalable or convenient for all users.

Recommendation

  • Apply workaround: Manually removing the inconsistent field from the configuration file can temporarily resolve the issue for users, allowing them to proceed with their workflow while a more permanent solution is developed to align the schemas.

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

openclaw - 💡(How to fix) Fix Bug: `enrichGroupParticipantsFromContacts` schema inconsistency - config.schema.lookup shows valid but config validation rejects it [1 participants]