@upx-us/shield 0.7.8 → 0.7.9

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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  ---
6
6
 
7
+ ## [0.7.9] — 2026-03-16
8
+
9
+ ### Fixed
10
+
11
+ - **Bug causing the plugin to repeatedly reinstall itself to the same version** — After a self-update, the plugin could enter a loop installing the already-installed version (e.g. 0.7.8 → 0.7.8) because the cached update state was not cleared correctly. The updater now verifies that the candidate version is strictly newer than the running version before proceeding with any install.
12
+
13
+ ---
14
+
7
15
  ## [0.7.8] — 2026-03-16
8
16
 
9
17
  ### Fixed
@@ -150,7 +150,7 @@ function checkForUpdate(overrideInterval) {
150
150
  const now = Date.now();
151
151
  const interval = overrideInterval ?? CHECK_INTERVAL_MS;
152
152
  if (now - state.lastCheckAt < Math.max(interval, MIN_CHECK_INTERVAL_MS)) {
153
- if (state.updateAvailable && state.latestVersion) {
153
+ if (state.updateAvailable && state.latestVersion && isNewerVersion(version_1.VERSION, state.latestVersion)) {
154
154
  const classification = classifyUpdate(version_1.VERSION, state.latestVersion);
155
155
  return {
156
156
  updateAvailable: true,
@@ -515,6 +515,13 @@ function performAutoUpdate(mode, checkIntervalMs) {
515
515
  const check = checkForUpdate(checkIntervalMs);
516
516
  if (!check || !check.updateAvailable)
517
517
  return noOp;
518
+ if (!isNewerVersion(version_1.VERSION, check.latestVersion)) {
519
+ log.info('updater', `Already on ${version_1.VERSION} — clearing stale updateAvailable flag`);
520
+ const st = loadUpdateState();
521
+ st.updateAvailable = false;
522
+ saveUpdateState(st);
523
+ return noOp;
524
+ }
518
525
  if (mode === 'notify-only') {
519
526
  const kind = check.isPatch ? 'patch' : check.isMinor ? 'minor' : 'major';
520
527
  return {
@@ -2,7 +2,7 @@
2
2
  "id": "shield",
3
3
  "name": "OpenClaw Shield",
4
4
  "description": "Real-time security monitoring — streams enriched, redacted security events to the Shield detection platform.",
5
- "version": "0.7.8",
5
+ "version": "0.7.9",
6
6
  "skills": [
7
7
  "./skills"
8
8
  ],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@upx-us/shield",
3
- "version": "0.7.8",
3
+ "version": "0.7.9",
4
4
  "description": "Security monitoring plugin for OpenClaw agents — streams enriched security events to the Shield detection platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",