@cecwxf/wtt 0.1.20 → 0.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AA8F7D,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAmF3F"}
|
package/dist/commands/update.js
CHANGED
|
@@ -63,18 +63,56 @@ function hasUnknownWttChannelError(result) {
|
|
|
63
63
|
return text.includes("unknown channel id: wtt")
|
|
64
64
|
|| (text.includes("channels.wtt") && text.includes("invalid config"));
|
|
65
65
|
}
|
|
66
|
+
function isPluginAlreadyExistsError(result) {
|
|
67
|
+
return outputOf(result).toLowerCase().includes("plugin already exists");
|
|
68
|
+
}
|
|
69
|
+
async function runUpdate(cmd) {
|
|
70
|
+
return runCommand(cmd, ["plugins", "update", "wtt"], 180_000);
|
|
71
|
+
}
|
|
66
72
|
async function runInstall(cmd) {
|
|
67
73
|
return runCommand(cmd, ["plugins", "install", "@cecwxf/wtt@latest"], 180_000);
|
|
68
74
|
}
|
|
75
|
+
async function runDoctorFix(cmd) {
|
|
76
|
+
return runCommand(cmd, ["doctor", "--fix", "--non-interactive", "--yes"], 180_000);
|
|
77
|
+
}
|
|
69
78
|
export async function handleUpdateCommand(_ctx) {
|
|
70
79
|
const cmd = process.env.OPENCLAW_BIN?.trim() || "openclaw";
|
|
80
|
+
// Path A: preferred and idempotent for existing installs
|
|
81
|
+
let update = await runUpdate(cmd);
|
|
82
|
+
if (update.code !== 0 && hasUnknownWttChannelError(update)) {
|
|
83
|
+
const repair = await runDoctorFix(cmd);
|
|
84
|
+
if (repair.code === 0) {
|
|
85
|
+
update = await runUpdate(cmd);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const detail = compactOutput(outputOf(repair), 800);
|
|
89
|
+
return [
|
|
90
|
+
"WTT 插件升级失败:自动修复配置未成功。",
|
|
91
|
+
detail ? `doctor 详情: ${detail}` : "doctor 详情: 无",
|
|
92
|
+
"请手动执行:openclaw doctor --fix,然后重试 /wtt update",
|
|
93
|
+
].join("\n");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (update.code === 0) {
|
|
97
|
+
scheduleGatewayRestart();
|
|
98
|
+
const summary = compactOutput(outputOf(update), 260);
|
|
99
|
+
const lines = [
|
|
100
|
+
"WTT 插件已升级(update 模式)。",
|
|
101
|
+
"网关将在约 2 秒后自动重启。",
|
|
102
|
+
"重启期间短暂离线属正常,恢复后可用 /wtt help 验证。",
|
|
103
|
+
];
|
|
104
|
+
if (summary)
|
|
105
|
+
lines.push(`update: ${summary}`);
|
|
106
|
+
return lines.join("\n");
|
|
107
|
+
}
|
|
108
|
+
// Path B: fallback for old/non-tracked installs
|
|
71
109
|
let install = await runInstall(cmd);
|
|
72
|
-
// Some environments fail validation before plugin registry is hydrated,
|
|
73
|
-
// showing: channels.wtt unknown channel id: wtt.
|
|
74
|
-
// Auto-repair config then retry once.
|
|
75
110
|
if (install.code !== 0 && hasUnknownWttChannelError(install)) {
|
|
76
|
-
const repair = await
|
|
77
|
-
if (repair.code
|
|
111
|
+
const repair = await runDoctorFix(cmd);
|
|
112
|
+
if (repair.code === 0) {
|
|
113
|
+
install = await runInstall(cmd);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
78
116
|
const detail = compactOutput(outputOf(repair), 800);
|
|
79
117
|
return [
|
|
80
118
|
"WTT 插件升级失败:自动修复配置未成功。",
|
|
@@ -82,7 +120,20 @@ export async function handleUpdateCommand(_ctx) {
|
|
|
82
120
|
"请手动执行:openclaw doctor --fix,然后重试 /wtt update",
|
|
83
121
|
].join("\n");
|
|
84
122
|
}
|
|
85
|
-
|
|
123
|
+
}
|
|
124
|
+
if (install.code !== 0 && isPluginAlreadyExistsError(install)) {
|
|
125
|
+
const uninstall = await runCommand(cmd, ["plugins", "uninstall", "wtt"], 120_000);
|
|
126
|
+
if (uninstall.code === 0) {
|
|
127
|
+
install = await runInstall(cmd);
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
const detail = compactOutput(outputOf(uninstall), 800);
|
|
131
|
+
return [
|
|
132
|
+
"WTT 插件升级失败:检测到已安装旧目录,且自动卸载失败。",
|
|
133
|
+
detail ? `uninstall 详情: ${detail}` : "uninstall 详情: 无",
|
|
134
|
+
"请手动执行:openclaw plugins uninstall wtt,再重试 /wtt update",
|
|
135
|
+
].join("\n");
|
|
136
|
+
}
|
|
86
137
|
}
|
|
87
138
|
if (install.code !== 0) {
|
|
88
139
|
const reason = install.timedOut
|
|
@@ -98,7 +149,7 @@ export async function handleUpdateCommand(_ctx) {
|
|
|
98
149
|
scheduleGatewayRestart();
|
|
99
150
|
const installSummary = compactOutput(outputOf(install), 260);
|
|
100
151
|
const lines = [
|
|
101
|
-
"WTT 插件已升级到 latest
|
|
152
|
+
"WTT 插件已升级到 latest(install 模式)。",
|
|
102
153
|
"网关将在约 2 秒后自动重启。",
|
|
103
154
|
"重启期间短暂离线属正常,恢复后可用 /wtt help 验证。",
|
|
104
155
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|