fix(onboarding): prefer clawhub diagnostics installs · openclaw/openclaw@3338581
vincentkoc
·
2026-05-03
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -20,6 +20,7 @@ Docs: https://docs.openclaw.ai
|
20 | 20 | ### Fixes |
21 | 21 | |
22 | 22 | - Plugins/onboarding: trust optional official plugin and web-search installs selected from the official catalog so npm security scanning treats them like other source-linked official install paths. Thanks @vincentkoc. |
| 23 | +- Plugins/onboarding: default official diagnostics plugin choices to ClawHub while keeping npm fallback metadata, matching the intended storepack-first install path. Thanks @vincentkoc. |
23 | 24 | - Microsoft Teams: persist sent-message markers across Gateway restarts so follow-up replies to recent bot messages keep resolving the original conversation instead of dropping out after restart, with marker TTLs preserved on best-effort recovery. (#75585) Thanks @amknight. |
24 | 25 | - Matrix: persist pending approval reaction targets across Gateway restarts so room approvers can still approve or deny outstanding prompts after OpenClaw comes back online. (#75586) Thanks @amknight. |
25 | 26 | - Channels/onboarding: map third-party official WeCom and Yuanbao catalog entries to their published plugin ids so npm installs pass expected-plugin validation. Thanks @vincentkoc. |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -62,7 +62,7 @@
|
62 | 62 | "install": { |
63 | 63 | "clawhubSpec": "clawhub:@openclaw/diagnostics-otel", |
64 | 64 | "npmSpec": "@openclaw/diagnostics-otel", |
65 | | -"defaultChoice": "npm", |
| 65 | +"defaultChoice": "clawhub", |
66 | 66 | "minHostVersion": ">=2026.4.25" |
67 | 67 | } |
68 | 68 | } |
@@ -80,7 +80,7 @@
|
80 | 80 | "install": { |
81 | 81 | "clawhubSpec": "clawhub:@openclaw/diagnostics-prometheus", |
82 | 82 | "npmSpec": "@openclaw/diagnostics-prometheus", |
83 | | -"defaultChoice": "npm", |
| 83 | +"defaultChoice": "clawhub", |
84 | 84 | "minHostVersion": ">=2026.4.25" |
85 | 85 | } |
86 | 86 | } |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -69,6 +69,24 @@ describe("formatInstallHint", () => {
|
69 | 69 | ).toBe("npm, with ClawHub fallback"); |
70 | 70 | }); |
71 | 71 | |
| 72 | +it("keeps catalog diagnostics installs ClawHub first with npm fallback", () => { |
| 73 | +const diagnostics = resolveOfficialPluginOnboardingInstallEntries({ config: {} }).filter( |
| 74 | +(entry) => entry.pluginId.startsWith("diagnostics-"), |
| 75 | +); |
| 76 | + |
| 77 | +expect(diagnostics).toHaveLength(2); |
| 78 | +for (const entry of diagnostics) { |
| 79 | +expect(entry.install).toEqual( |
| 80 | +expect.objectContaining({ |
| 81 | +clawhubSpec: expect.stringMatching(/^clawhub:@openclaw\/diagnostics-/u), |
| 82 | +npmSpec: expect.stringMatching(/^@openclaw\/diagnostics-/u), |
| 83 | +defaultChoice: "clawhub", |
| 84 | +}), |
| 85 | +); |
| 86 | +expect(__testing.formatInstallHint(entry.install)).toBe("ClawHub, with npm fallback"); |
| 87 | +} |
| 88 | +}); |
| 89 | + |
72 | 90 | it("keeps dual-source clawhub-default installs ClawHub first", () => { |
73 | 91 | expect( |
74 | 92 | __testing.formatInstallHint({ |
@@ -116,7 +134,7 @@ describe("setupOfficialPluginInstalls", () => {
|
116 | 134 | install: expect.objectContaining({ |
117 | 135 | clawhubSpec: "clawhub:@openclaw/diagnostics-otel", |
118 | 136 | npmSpec: "@openclaw/diagnostics-otel", |
119 | | -defaultChoice: "npm", |
| 137 | +defaultChoice: "clawhub", |
120 | 138 | }), |
121 | 139 | }), |
122 | 140 | promptInstall: false, |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。