Skip to content

test: split schema coverage and peer dependency updates from #34532#34568

Closed
Kansodata wants to merge 7 commits intoopenclaw:mainfrom
Kansodata:fix/schema-tests-and-peerdeps-split-from-34532
Closed

test: split schema coverage and peer dependency updates from #34532#34568
Kansodata wants to merge 7 commits intoopenclaw:mainfrom
Kansodata:fix/schema-tests-and-peerdeps-split-from-34532

Conversation

@Kansodata
Copy link
Copy Markdown
Contributor

Summary

Splits low-risk code, test, and peer dependency updates out of #34532 so that the Teams + Canvas host-side guide PR remains docs-only.

Changes

  • Adds/keeps the clarifying schema comment in src/agents/pi-tools.schema.ts
  • Adds test coverage for Gemini-compatible schema normalization behavior
  • Refactors a brittle assertion in src/plugins/commands.test.ts
  • Updates peer dependency minimums in affected extensions
  • Updates the lockfile accordingly

Notes

This PR contains only the non-documentation changes that were previously mixed into #34532. It does not introduce intended runtime behavior changes.

@openclaw-barnacle openclaw-barnacle Bot added channel: googlechat Channel integration: googlechat extensions: memory-core Extension: memory-core agents Agent runtime and tooling size: S labels Mar 4, 2026
@Kansodata
Copy link
Copy Markdown
Contributor Author

This PR was split from #34532 to keep #34532 strictly docs/examples only.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Mar 4, 2026

Greptile Summary

This PR cleanly splits low-risk, non-documentation changes out of #34532. All changes are minimal and safe:

  • Schema documentation: Added a clarifying comment in pi-tools.schema.ts documenting that Google endpoints validate Gemini-compatible tool schemas (documentation-only).
  • Test coverage: New test file correctly verifies existing normalizeToolParameters behavior—that Gemini providers (including google-antigravity) strip unsupported keywords like patternProperties, while other providers (anthropic) preserve full schema compliance.
  • Test resilience: Refactored brittle exact-equality assertions in commands.test.ts to use expect.objectContaining() for partial matching, with added toHaveLength() safety checks.
  • Package.json alignment: Removed peerDependenciesMeta from both googlechat and memory-core extensions—a cosmetic cleanup that aligns two private packages with all other extensions in the monorepo (none of which use this field).

No runtime behavior changes, all updates are low-risk and code-quality focused.

Confidence Score: 5/5

  • Safe to merge—no runtime behavior changes, tests are correct, and package.json edits are cosmetic alignment.
  • All changes are low-risk and well-scoped. The schema comment is documentation-only. New tests correctly exercise existing logic without modifying behavior. Test refactoring uses standard partial-match assertions. Package.json changes are cosmetic alignment of private packages with monorepo conventions.
  • No files require special attention.

Last reviewed commit: 4846b77

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: 4846b77c57

ℹ️ 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 thread extensions/memory-core/package.json
@openclaw-barnacle openclaw-barnacle Bot removed channel: googlechat Channel integration: googlechat extensions: memory-core Extension: memory-core labels Mar 4, 2026
@Kansodata
Copy link
Copy Markdown
Contributor Author

CI note: the previous Bun lane failure was in setup (oven-sh/setup-bun returned 404 while downloading Bun), before tests executed. I pushed an empty retrigger commit to rerun checks.

@Kansodata
Copy link
Copy Markdown
Contributor Author

Applied fix for the Bun lane instability:

  • Updated .github/actions/setup-node-env/action.yml to use bun-version: "1.3.9" (valid release tag), replacing the invalid 1.3.9+cf6cdbbba value that produced 404 during oven-sh/setup-bun download.

Result: the Bun check now passes in this PR run.

@Kansodata
Copy link
Copy Markdown
Contributor Author

Quick follow-up: the peer optionality concern has been applied.

  • peerDependenciesMeta.openclaw.optional: true is restored in:
    • extensions/memory-core/package.json
    • extensions/googlechat/package.json
  • Commit: 5b54443

This keeps direct extension installs from hard-failing on peer resolution.

@Kansodata
Copy link
Copy Markdown
Contributor Author

Status update: peerDependenciesMeta.openclaw.optional: true remains restored for extension packages, and this branch is currently green and conflict-free from my side.

If maintainers are aligned with the split scope, this should be ready for final review.

@openclaw-barnacle
Copy link
Copy Markdown

This pull request has been automatically marked as stale due to inactivity.
Please add updates or it will be closed.

@openclaw-barnacle openclaw-barnacle Bot added the stale Marked as stale due to inactivity label Apr 14, 2026
@openclaw-barnacle
Copy link
Copy Markdown

Closing due to inactivity.
If you believe this PR should be revived, post in #pr-thunderdome-dangerzone on Discord to talk to a maintainer.
That channel is the escape hatch for high-quality PRs that get auto-closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agents Agent runtime and tooling size: S stale Marked as stale due to inactivity

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant