Skip to content

chore(catalog): bump Weixin plugin to 2.4.6#96801

Merged
vincentkoc merged 3 commits into
openclaw:mainfrom
lin-hongkuan:codex/weixin-catalog-246
Jun 27, 2026
Merged

chore(catalog): bump Weixin plugin to 2.4.6#96801
vincentkoc merged 3 commits into
openclaw:mainfrom
lin-hongkuan:codex/weixin-catalog-246

Conversation

@lin-hongkuan

@lin-hongkuan lin-hongkuan commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

What Problem This Solves

Fixes #96791. The official external channel catalog still pinned @tencent-weixin/openclaw-weixin to 2.4.3, so installs and upgrade reconciliation would keep users on the older Weixin plugin even though the package has published 2.4.6.

Why This Change Was Made

The catalog entry is the source used by OpenClaw's official external channel install flow. Updating npmSpec, expectedIntegrity, and the catalog minHostVersion keeps the install metadata aligned with the published npm package so host compatibility checks do not accept a package version that declares a newer floor.

User Impact

Users installing or reconciling the official Weixin channel plugin get @tencent-weixin/openclaw-weixin@2.4.6 with its matching integrity and host floor instead of being forced back to 2.4.3 or seeing catalog/package compatibility drift.

Evidence

Head commit: 3f163c4666a0c13adefeebe85b9cfe371afc5b69.

Verified npm metadata with npm view @tencent-weixin/openclaw-weixin@2.4.6 version dist.integrity openclaw.install.minHostVersion peerDependencies.openclaw --json:

{
  "version": "2.4.6",
  "dist.integrity": "sha512-qw9k3PLTiMWGNjjsknHgcTManH1w4j+Ji1ArWIaYLKCq3aFRsVwcqnPi127bvOoVMJGW4dbyJ8NECEMgoO+iRw==",
  "openclaw.install.minHostVersion": ">=2026.5.12",
  "peerDependencies.openclaw": ">=2026.5.12"
}

Verified the repo's official catalog loader and install-plan trust path with pnpm exec tsx -e '<listChannelPluginCatalogEntries + resolveOfficialExternalNpmPackageTrust proof>'. The proof confirmed:

{
  "proof": "official catalog install path resolves Weixin 2.4.6 with npm trust metadata",
  "npmSpec": "@tencent-weixin/openclaw-weixin@2.4.6",
  "minHostVersion": ">=2026.5.12",
  "expectedIntegrity": "sha512-qw9k3PLTiMWGNjjsknHgcTManH1w4j+Ji1ArWIaYLKCq3aFRsVwcqnPi127bvOoVMJGW4dbyJ8NECEMgoO+iRw==",
  "trustedSourceLinkedOfficialInstall": true,
  "warnings": []
}

Verified the real isolated install path with pnpm openclaw plugins install openclaw-weixin against a clean proof root. The installer selected and installed the exact package:

Installing @tencent-weixin/openclaw-weixin@2.4.6 into <proof-root>/state/npm/projects/tencent-weixin-openclaw-weixin-7783ac86ba...
Installed plugin: openclaw-weixin

The generated package lock in the isolated proof root confirmed the resolved tarball and integrity:

{
  "version": "2.4.6",
  "resolved": "https://registry.npmjs.org/@tencent-weixin/openclaw-weixin/-/openclaw-weixin-2.4.6.tgz",
  "integrity": "sha512-qw9k3PLTiMWGNjjsknHgcTManH1w4j+Ji1ArWIaYLKCq3aFRsVwcqnPi127bvOoVMJGW4dbyJ8NECEMgoO+iRw=="
}

Validation:

  • node scripts/run-vitest.mjs run src/plugins/official-external-plugin-catalog.test.ts test/official-channel-catalog.test.ts test/release-check.test.ts passed.
  • pnpm tsgo:core passed.
  • git diff --check origin/main...HEAD passed.

@openclaw-barnacle openclaw-barnacle Bot added scripts Repository scripts size: XS labels Jun 25, 2026
@clawsweeper

clawsweeper Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Codex review: found issues before merge. Reviewed June 26, 2026, 8:07 PM ET / 00:07 UTC.

Summary
The branch updates scripts/lib/official-external-channel-catalog.json so the official Weixin channel catalog installs @tencent-weixin/openclaw-weixin@2.4.6 with matching integrity and a >=2026.5.12 host floor.

PR surface: Other 0. Total 0 across 1 file.

Reproducibility: yes. source-level: current main and v2026.6.10 still pin the Weixin official catalog entry to 2.4.3, while PR head targets published package 2.4.6 with matching npm metadata. I did not run a full packaged core-upgrade reconciliation scenario in this read-only review.

Review metrics: 1 noteworthy metric.

  • Official catalog install metadata: 3 fields changed. The package target, integrity pin, and host floor are trusted by install and official-sync paths before loading the external Weixin plugin.

Root-cause cluster
Relationship: fixed_by_candidate
Canonical: #96791
Summary: This PR is the live candidate fix for the open official Weixin catalog pin issue; the same-version sibling PR is closed and weaker, while startup and update reports remain adjacent but distinct.

Members:

Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.

Merge readiness
Overall: 🦐 gold shrimp
Proof: 🦞 diamond lobster
Patch quality: 🦐 gold shrimp
Result: needs maintainer review before merge.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • Update or split the WeChat compatibility docs if 2.4.6 remains the accepted target.
  • Get maintainer or Weixin-owner acceptance that 2.4.6 is the official trusted target.

Risk before merge

  • [P1] Merging changes trusted official install and reconciliation metadata for Weixin, so existing official installs can move from 2.4.3 to 2.4.6 and require OpenClaw >=2026.5.12.
  • [P1] The public WeChat compatibility docs still advertise the 2.x/latest plugin line as compatible with OpenClaw >=2026.3.22, which would be stale after this PR lands unchanged.
  • [P1] The supplied proof covers catalog selection and lockfile integrity, but not live Weixin 2.4.6 startup or a packaged core-upgrade reconciliation scenario; openclaw-weixin plugin v2.4.4 + OpenClaw 2026.6.1: Channel shows OFF / not configured, startAccount never called #91129 remains adjacent startup context.

Maintainer options:

  1. Accept 2.4.6 And Align Docs (recommended)
    A maintainer or Weixin owner can accept the new trusted artifact and host floor, then update the WeChat compatibility docs before merge.
  2. Require Startup Or Upgrade Proof
    Hold the PR until someone demonstrates Weixin 2.4.6 starting through the Gateway or a packaged core-upgrade reconciliation path.
  3. Wait For Another Weixin Release
    If 2.4.6 is not the desired official target, keep the catalog pinned and pause or close this PR until a verified newer package is available.

Next step before merge

  • [P2] Manual review is needed because the selected official Weixin target and the docs/compatibility contract require maintainer acceptance before merge.

Security
Cleared: No concrete security or supply-chain regression was found in the metadata-only diff; npm registry metadata matches the proposed integrity and shows no install lifecycle hook.

Review findings

  • [P2] Update the WeChat compatibility docs — scripts/lib/official-external-channel-catalog.json:120
Review details

Best possible solution:

Land the catalog bump only after maintainers accept 2.4.6 as the official target and the WeChat compatibility docs match the accepted host floor.

Do we have a high-confidence way to reproduce the issue?

Yes, source-level: current main and v2026.6.10 still pin the Weixin official catalog entry to 2.4.3, while PR head targets published package 2.4.6 with matching npm metadata. I did not run a full packaged core-upgrade reconciliation scenario in this read-only review.

Is this the best way to solve the issue?

Yes for the code boundary: the official external channel catalog is the narrow place to update the trusted package target, integrity, and host floor. It is not merge-complete until maintainers accept that target and the compatibility docs match the new floor.

Full review comments:

  • [P2] Update the WeChat compatibility docs — scripts/lib/official-external-channel-catalog.json:120
    This raises the official Weixin catalog floor to >=2026.5.12, but docs/channels/wechat.md still tells users the 2.x/latest line works on >=2026.3.22. After this lands, users on older 2.x-compatible hosts would follow stale compatibility guidance, so please update or split that table with the accepted 2.4.6 floor.
    Confidence: 0.88

Overall correctness: patch is incorrect
Overall confidence: 0.87

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against ff35f3bb2cd6.

Label changes

Label justifications:

  • P2: This is a bounded official plugin catalog update with real install and upgrade impact but limited surface area.
  • merge-risk: 🚨 compatibility: The diff can move trusted official Weixin installs and upgrade reconciliation from 2.4.3 to a new external artifact with a higher host floor.
  • rating: 🦐 gold shrimp: Overall readiness is 🦐 gold shrimp; proof is 🦞 diamond lobster and patch quality is 🦐 gold shrimp.
  • status: ⏳ waiting on author: ClawSweeper has contributor-facing work open and is waiting for author action. Sufficient (terminal): The PR body includes terminal proof from a clean proof root showing the official catalog install path selecting Weixin 2.4.6 and a lockfile with the matching tarball and integrity.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR body includes terminal proof from a clean proof root showing the official catalog install path selecting Weixin 2.4.6 and a lockfile with the matching tarball and integrity.
Evidence reviewed

PR surface:

Other 0. Total 0 across 1 file.

View PR surface stats
Area Files Added Removed Net
Source 0 0 0 0
Tests 0 0 0 0
Docs 0 0 0 0
Config 0 0 0 0
Generated 0 0 0 0
Other 1 3 3 0
Total 1 3 3 0

What I checked:

Likely related people:

  • scotthuang: Authored the merged PR that moved the official Weixin catalog target and integrity to the current 2.4.3 pin. (role: recent Weixin catalog contributor; confidence: high; commits: c35634c7298b; files: scripts/lib/official-external-channel-catalog.json)
  • pumpkinxing1: Authored the merged install-records/channel catalog work that added official external Weixin catalog metadata to this source path. (role: introduced catalog/install metadata behavior; confidence: high; commits: 5fae1c32b5f8; files: scripts/lib/official-external-channel-catalog.json, src/plugins/channel-catalog-registry.ts)
  • vincentkoc: Authored official plugin install sync behavior that makes catalog targets affect post-core upgrade reconciliation, and is currently assigned on this PR. (role: official plugin sync contributor; confidence: high; commits: 2014c2327b20; files: src/plugins/update.ts, src/cli/update-cli/update-command.ts)
  • zhuisDEV: Authored merged official npm install record pinning work in the update/install surface where exact pins and official sync interact. (role: adjacent exact-pin/update contributor; confidence: medium; commits: 7b5f75eb98f4; files: src/plugins/update.ts, src/plugins/update.test.ts, src/cli/plugins-cli.update.test.ts)
  • velvet-shark: Authored the recent update-all official sync change that makes trusted official catalog targets consequential for bulk plugin reconciliation. (role: recent adjacent sync contributor; confidence: medium; commits: 0247eab77335; files: src/plugins/update.ts, src/cli/plugins-cli.update.test.ts, docs/cli/plugins.md)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P2 Normal backlog priority with limited blast radius. merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. labels Jun 25, 2026
@lin-hongkuan

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. and removed rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. labels Jun 25, 2026
@lin-hongkuan

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper clawsweeper Bot added proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. labels Jun 25, 2026
@vincentkoc vincentkoc self-assigned this Jun 26, 2026
@vincentkoc vincentkoc force-pushed the codex/weixin-catalog-246 branch from 68384db to 0616aad Compare June 26, 2026 23:50
@vincentkoc vincentkoc force-pushed the codex/weixin-catalog-246 branch from 0616aad to 4e6b5af Compare June 26, 2026 23:59
@clawsweeper clawsweeper Bot added rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. and removed rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jun 27, 2026
@vincentkoc vincentkoc merged commit 12ea61a into openclaw:main Jun 27, 2026
88 of 92 checks passed
@vincentkoc

Copy link
Copy Markdown
Member

Merged via squash.

wangmiao0668000666 pushed a commit to wangmiao0668000666/openclaw that referenced this pull request Jun 27, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jun 27, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
xydigit-zt pushed a commit to xydigit-zt/xydigit-zt-openclaw that referenced this pull request Jun 28, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
QiuYuang pushed a commit to QiuYuang/openclaw that referenced this pull request Jul 1, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
chenyangjun-xy pushed a commit to chenyangjun-xy/openclaw that referenced this pull request Jul 1, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
chenyangjun-xy pushed a commit to chenyangjun-xy/openclaw that referenced this pull request Jul 3, 2026
* chore(catalog): bump Weixin plugin to 2.4.6

* chore(catalog): align Weixin host floor

* chore: retrigger PR checks

---------

Co-authored-by: lin-hongkuan <lin-hongkuan@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. P2 Normal backlog priority with limited blast radius. proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. scripts Repository scripts size: XS status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update official-external-plugin-catalog: bump @tencent-weixin/openclaw-weixin to 2.4.6

2 participants