podwatch 1.1.9 → 1.2.0

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.
@@ -48,12 +48,27 @@ var __importStar = (this && this.__importStar) || (function () {
48
48
  })();
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
50
  exports.transmitter = void 0;
51
- const updater_js_1 = require("./updater.js");
51
+ exports.setPluginVersion = setPluginVersion;
52
52
  const fs = __importStar(require("node:fs"));
53
53
  const path = __importStar(require("node:path"));
54
54
  const os = __importStar(require("node:os"));
55
- // Read version from package.json at build time (resolveJsonModule enabled)
56
- const PLUGIN_VERSION = JSON.parse(fs.readFileSync(path.join(__dirname, "..", "package.json"), "utf-8")).version;
55
+ // Lazy version read avoids sync I/O at module level
56
+ let _pluginVersion = null;
57
+ function getPluginVersion() {
58
+ if (_pluginVersion !== null)
59
+ return _pluginVersion;
60
+ try {
61
+ _pluginVersion = JSON.parse(fs.readFileSync(path.join(__dirname, "..", "package.json"), "utf-8")).version;
62
+ }
63
+ catch {
64
+ _pluginVersion = "0.0.0";
65
+ }
66
+ return _pluginVersion;
67
+ }
68
+ /** Allow register() to inject the version so we never need to read from disk. */
69
+ function setPluginVersion(version) {
70
+ _pluginVersion = version;
71
+ }
57
72
  // ---------------------------------------------------------------------------
58
73
  // State
59
74
  // ---------------------------------------------------------------------------
@@ -69,6 +84,9 @@ const MAX_BUFFER_SIZE = 1_000;
69
84
  const BUFFER_TARGET_SIZE = 900;
70
85
  // --- Trial expired flag ---
71
86
  let trialExpired = false;
87
+ // --- Shared rate limiter state (respected by flush, pulse, budget sync) ---
88
+ let rateLimitedUntil = 0; // timestamp (ms) — skip all HTTP until this time
89
+ const NON_RETRYABLE_4XX = new Set([400, 401, 403, 404, 422]);
72
90
  const recentCredentialAccesses = [];
73
91
  const CREDENTIAL_ACCESS_WINDOW_MS = 60_000; // 60 seconds
74
92
  // --- Known tools tracking ---
@@ -85,7 +103,24 @@ function getAuditLogPath() {
85
103
  return path.join(os.homedir(), ".openclaw", "extensions", "podwatch", "audit.log");
86
104
  }
87
105
  const AUDIT_LOG_MAX_BYTES = 1_048_576; // 1 MB
106
+ let auditLogPending = false;
107
+ const auditLogQueue = [];
88
108
  function writeAuditLog(reason, eventCount, events) {
109
+ auditLogQueue.push({ reason, eventCount, events });
110
+ if (!auditLogPending) {
111
+ auditLogPending = true;
112
+ // Defer to microtask so we don't block the hot path (especially on 429 storms)
113
+ queueMicrotask(drainAuditLogQueue);
114
+ }
115
+ }
116
+ function drainAuditLogQueue() {
117
+ auditLogPending = false;
118
+ while (auditLogQueue.length > 0) {
119
+ const item = auditLogQueue.shift();
120
+ writeAuditLogSync(item.reason, item.eventCount, item.events);
121
+ }
122
+ }
123
+ function writeAuditLogSync(reason, eventCount, events) {
89
124
  try {
90
125
  const logPath = getAuditLogPath();
91
126
  const logDir = path.dirname(logPath);
@@ -403,12 +438,21 @@ function transformEvents(events) {
403
438
  return transformed;
404
439
  });
405
440
  }
441
+ /**
442
+ * Send a batch of events. Returns:
443
+ * - true → batch consumed (success or non-retryable error — remove from buffer)
444
+ * - false → transient error (keep events in buffer for retry)
445
+ */
406
446
  async function sendBatch(events) {
407
447
  if (!config)
408
448
  return false;
449
+ // Respect shared rate limit
450
+ if (Date.now() < rateLimitedUntil) {
451
+ return false; // keep events in buffer, try later
452
+ }
409
453
  const payload = {
410
454
  events: transformEvents(events),
411
- pluginVersion: PLUGIN_VERSION,
455
+ pluginVersion: getPluginVersion(),
412
456
  };
413
457
  try {
414
458
  const response = await fetch(`${config.endpoint}/events`, {
@@ -422,7 +466,8 @@ async function sendBatch(events) {
422
466
  });
423
467
  if (response.ok) {
424
468
  retryBackoffMs = 1_000;
425
- // Parse response body for budget state + urgent update signals
469
+ rateLimitedUntil = 0;
470
+ // Parse response body for budget state
426
471
  try {
427
472
  const body = (await response.json());
428
473
  // Budget state updates
@@ -435,15 +480,6 @@ async function sendBatch(events) {
435
480
  cachedBudget.dailySpend = cachedBudget.dailyLimit;
436
481
  }
437
482
  }
438
- // Urgent update signal — bypass 24h cooldown
439
- if (body.update?.urgent && typeof body.update.version === "string") {
440
- const logger = {
441
- info: (msg) => console.log(msg),
442
- warn: (msg) => console.warn(msg),
443
- error: (msg) => console.error(msg),
444
- };
445
- void (0, updater_js_1.handleUrgentUpdate)(body.update.version, logger);
446
- }
447
483
  }
448
484
  catch {
449
485
  // Response may not be JSON — that's fine
@@ -456,13 +492,33 @@ async function sendBatch(events) {
456
492
  console.warn("[podwatch] Trial expired (402) — event transmission disabled. Visit podwatch.app to upgrade.");
457
493
  return true; // consume the batch (don't retry)
458
494
  }
459
- // Other 4xx client error, drop events + audit log
460
- if (response.status >= 400 && response.status < 500) {
495
+ // 429rate limited. KEEP events in buffer for retry.
496
+ if (response.status === 429) {
497
+ const retryAfterHeader = response.headers?.get?.("Retry-After");
498
+ let retryAfterMs = retryBackoffMs * 2;
499
+ if (retryAfterHeader) {
500
+ const retryAfterSec = parseInt(retryAfterHeader, 10);
501
+ if (!isNaN(retryAfterSec) && retryAfterSec > 0) {
502
+ retryAfterMs = retryAfterSec * 1_000;
503
+ }
504
+ }
505
+ // Cap at 5 minutes for rate limiting
506
+ retryAfterMs = Math.min(retryAfterMs, 300_000);
507
+ rateLimitedUntil = Date.now() + retryAfterMs;
508
+ retryBackoffMs = Math.min(retryBackoffMs * 2, MAX_BACKOFF_MS);
509
+ console.warn(`[podwatch] Rate limited (429) — retrying in ${Math.round(retryAfterMs / 1000)}s. ` +
510
+ `${events.length} events kept in buffer.`);
511
+ writeAuditLog("rate_limited_429", events.length, events);
512
+ return false; // KEEP events in buffer
513
+ }
514
+ // Non-retryable 4xx — client error, drop events + audit log
515
+ if (NON_RETRYABLE_4XX.has(response.status)) {
461
516
  console.error(`[podwatch] API ${response.status}: dropping ${events.length} events`);
462
517
  writeAuditLog(`http_${response.status}`, events.length, events);
463
518
  retryBackoffMs = 1_000;
464
519
  return true; // Don't retry client errors
465
520
  }
521
+ // Other 4xx/5xx — transient, retry
466
522
  console.error(`[podwatch] API ${response.status}: will retry ${events.length} events`);
467
523
  return false;
468
524
  }
@@ -527,6 +583,9 @@ const BUDGET_SYNC_MAX_SILENT_FAILURES = 3; // Only warn after N consecutive fail
527
583
  async function syncBudget() {
528
584
  if (!config)
529
585
  return;
586
+ // Respect shared rate limit
587
+ if (Date.now() < rateLimitedUntil)
588
+ return;
530
589
  try {
531
590
  const response = await fetch(`${config.endpoint}/budget-status`, {
532
591
  method: "GET",
@@ -583,6 +642,7 @@ exports.transmitter = {
583
642
  retryCount = 0;
584
643
  flushInProgress = false;
585
644
  trialExpired = false;
645
+ rateLimitedUntil = 0;
586
646
  activateTs = Date.now();
587
647
  knownTools.clear();
588
648
  recentCredentialAccesses.length = 0;
@@ -757,5 +817,13 @@ exports.transmitter = {
757
817
  get isTrialExpired() {
758
818
  return trialExpired;
759
819
  },
820
+ /** Whether we are currently rate-limited (429). Used by pulse and budget sync. */
821
+ get isRateLimited() {
822
+ return Date.now() < rateLimitedUntil;
823
+ },
824
+ /** Get rate limit expiry timestamp (for testing). */
825
+ get rateLimitedUntilTs() {
826
+ return rateLimitedUntil;
827
+ },
760
828
  };
761
829
  //# sourceMappingURL=transmitter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transmitter.js","sourceRoot":"","sources":["../src/transmitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transmitter.js","sourceRoot":"","sources":["../src/transmitter.ts"],"names":[],"mappings":"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"}
package/dist/updater.d.ts CHANGED
@@ -3,17 +3,18 @@
3
3
  *
4
4
  * On plugin startup (called from register()), schedules a non-blocking update
5
5
  * check after a 30-second delay. If a new version is available on npm (or the
6
- * Podwatch dashboard fallback), it downloads via `npm pack`, extracts to the
7
- * extensions directory, writes a restart sentinel, and triggers a gateway
8
- * restart via the OS service manager (systemd / launchctl).
6
+ * Podwatch dashboard fallback), it downloads the tarball via fetch(), verifies
7
+ * integrity, extracts to the extensions directory, and writes a restart sentinel.
9
8
  *
10
9
  * Safety:
11
10
  * - 30s startup delay (don't slow boot)
12
11
  * - 24-hour cooldown between checks (cached in a local file)
13
12
  * - 5s timeout on all HTTP requests
14
- * - 120s timeout on npm pack command
15
13
  * - All errors caught — never bricks the running plugin
16
- * - Logs all activity for debugging
14
+ * - Rollback: backs up old dist/ before replacing, restores on extraction failure
15
+ * - Plugin NEVER restarts its host — only writes restart sentinel
16
+ * - Auto-update defaults to ON (set autoUpdate: false to disable)
17
+ * - No handleUrgentUpdate — removed as remote code execution vector
17
18
  */
18
19
  export declare const AUTO_UPDATE_CACHE_FILE: string;
19
20
  /**
@@ -22,17 +23,10 @@ export declare const AUTO_UPDATE_CACHE_FILE: string;
22
23
  */
23
24
  export declare function resolveStateDir(): string;
24
25
  /**
25
- * Resolve the systemd service name for the gateway.
26
+ * Read the installed plugin version from disk (extensions dir package.json).
27
+ * Returns null if the file can't be read.
26
28
  */
27
- export declare function resolveGatewaySystemdServiceName(profile: string | undefined): string;
28
- /**
29
- * Resolve the launchd label for the gateway.
30
- */
31
- export declare function resolveGatewayLaunchAgentLabel(profile: string | undefined): string;
32
- /**
33
- * Normalize a systemd unit name. Appends .service if missing.
34
- */
35
- export declare function normalizeSystemdUnit(raw: string | undefined, profile: string | undefined): string;
29
+ export declare function getInstalledVersion(): string | null;
36
30
  /**
37
31
  * Compare two semver-like version strings.
38
32
  * Returns positive if remote > local, negative if local > remote, 0 if equal.
@@ -52,6 +46,8 @@ export interface UpdateCheckResult {
52
46
  source: "npm" | "dashboard";
53
47
  /** SRI integrity hash (e.g. "sha512-<base64>") from npm registry or dashboard. */
54
48
  integrityHash?: string;
49
+ /** Direct tarball URL from npm registry (for fetch-based download). */
50
+ tarballUrl?: string;
55
51
  }
56
52
  /**
57
53
  * Check for a newer version. Tries npm registry first, then dashboard API.
@@ -91,6 +87,19 @@ export declare function parseSriHash(sri: string): {
91
87
  * - Legacy hex format: plain hex SHA-256 string (from dashboard fallback)
92
88
  */
93
89
  export declare function verifyTarballIntegrity(tarballPath: string, expectedHash: string): IntegrityResult;
90
+ /**
91
+ * Back up the existing dist/ directory before replacing it.
92
+ * Returns the backup path, or null if no dist/ exists.
93
+ */
94
+ export declare function backupDist(extensionsDir: string): string | null;
95
+ /**
96
+ * Restore dist/ from backup after a failed extraction.
97
+ */
98
+ export declare function restoreFromBackup(extensionsDir: string, backupDir: string): boolean;
99
+ /**
100
+ * Clean up backup after successful extraction.
101
+ */
102
+ export declare function cleanupBackup(backupDir: string): void;
94
103
  export interface UpdateResult {
95
104
  success: boolean;
96
105
  stdout?: string;
@@ -100,26 +109,34 @@ export interface UpdateResult {
100
109
  tarballPath?: string;
101
110
  }
102
111
  /**
103
- * Download the latest podwatch tarball via npm pack.
104
- * Returns the tarball path on success for integrity verification.
112
+ * Download the podwatch tarball via fetch() from the npm registry URL.
113
+ * No shell commands needed pure HTTP download.
105
114
  */
106
- export declare function downloadTarball(): UpdateResult & {
115
+ export declare function downloadTarball(version?: string, tarballUrl?: string): Promise<UpdateResult & {
107
116
  tmpDir?: string;
108
- };
117
+ }>;
109
118
  /**
110
119
  * Install from a previously downloaded tarball by extracting to the extensions dir.
120
+ * Includes rollback: backs up old dist/ before extraction, restores on failure.
111
121
  */
112
122
  export declare function installFromTarball(tarballPath: string): UpdateResult;
113
123
  /**
114
- * Download and install the latest podwatch plugin via npm pack + extract.
124
+ * Download and install the latest podwatch plugin via fetch + extract.
115
125
  * Legacy single-step function — delegates to downloadTarball + installFromTarball.
116
- *
117
- * Steps:
118
- * 1. `npm pack podwatch` in a temp dir to get the tarball
119
- * 2. Clean old dist in the extensions directory
120
- * 3. Extract tarball contents to ~/.openclaw/extensions/podwatch/
121
126
  */
122
127
  export declare function executeUpdate(): UpdateResult;
128
+ export interface VerifyDistResult {
129
+ ok: boolean;
130
+ error?: string;
131
+ signal?: string;
132
+ timedOut?: boolean;
133
+ }
134
+ /**
135
+ * Verify that the newly installed dist/index.js is loadable.
136
+ * Tries to require() the entry point — if it throws, the new code is broken.
137
+ * Returns a detailed result indicating success or failure reason.
138
+ */
139
+ export declare function verifyNewDist(extensionsDir: string): VerifyDistResult;
123
140
  /**
124
141
  * Wait for an idle window before proceeding with a gateway restart.
125
142
  *
@@ -141,12 +158,16 @@ export interface RestartResult {
141
158
  tried: string[];
142
159
  }
143
160
  /**
144
- * Trigger a gateway restart using the OS service manager directly.
145
- * Mirrors OpenClaw's triggerOpenClawRestart logic.
161
+ * Trigger a gateway restart using the OS service manager.
162
+ *
163
+ * Safety improvements over original:
164
+ * - Only called AFTER verifyNewDist() confirms the new code loads
165
+ * - Only called AFTER integrity verification passed
166
+ * - Only called AFTER rollback backup is in place
167
+ * - Single attempt — if restart fails, logs error and moves on (no retry loop)
146
168
  *
147
- * Linux: systemctl --user restart <unit> (user first, then system fallback)
169
+ * Linux: systemctl --user restart <unit>
148
170
  * macOS: launchctl kickstart -k gui/<uid>/<label>
149
- * Fallback: log a manual restart message
150
171
  */
151
172
  export declare function triggerGatewayRestart(logger: {
152
173
  info: (msg: string) => void;
@@ -154,24 +175,23 @@ export declare function triggerGatewayRestart(logger: {
154
175
  error: (msg: string) => void;
155
176
  }): RestartResult;
156
177
  export interface UpdateOptions {
157
- /** Enable auto-update. Default: true. Set false to disable. */
178
+ /** Enable auto-update. Default: true (set to false to disable). */
158
179
  autoUpdate?: boolean;
159
180
  }
160
181
  /**
161
- * Handle an urgent update signal from the Podwatch API.
162
- * Bypasses the 24-hour cooldown and triggers an immediate update check.
163
- * Called by the transmitter when the API response includes { update: { urgent: true } }.
182
+ * Acquire an exclusive update lock. Returns true if acquired, false if
183
+ * another update is already in progress (or the lock is stale and was reclaimed).
164
184
  */
165
- export declare function handleUrgentUpdate(signalVersion: string, logger: {
166
- info: (msg: string) => void;
167
- warn: (msg: string) => void;
168
- error: (msg: string) => void;
169
- }): Promise<void>;
185
+ export declare function acquireUpdateLock(): boolean;
186
+ /**
187
+ * Release the update lock.
188
+ */
189
+ export declare function releaseUpdateLock(): void;
170
190
  /**
171
191
  * Schedule a non-blocking update check 30s after startup.
172
192
  * Safe to call synchronously — it sets a timer and returns immediately.
173
193
  *
174
- * Auto-update is on by default. Set autoUpdate: false in plugin config to disable.
194
+ * Auto-update is ON by default. Set autoUpdate: false in plugin config to disable.
175
195
  *
176
196
  * @param currentVersion The plugin's current version from package.json
177
197
  * @param endpoint The Podwatch API endpoint (for dashboard fallback)
@@ -184,17 +204,20 @@ export declare function scheduleUpdateCheck(currentVersion: string, endpoint: st
184
204
  error: (msg: string) => void;
185
205
  }, options?: UpdateOptions): void;
186
206
  /**
187
- * Internal: perform the actual update check + install + restart.
207
+ * Internal: perform the actual update check + install.
188
208
  *
189
209
  * Flow:
190
- * 1. Check autoUpdate opt-in (default false)
210
+ * 1. Check autoUpdate opt-out (default on; set autoUpdate: false to disable)
191
211
  * 2. Respect 24h cooldown
192
- * 3. Check for newer version (npm dashboard fallback)
193
- * 4. Require integrity hash from server (skip if missing)
194
- * 5. Download tarball via npm pack
195
- * 6. Verify tarball SHA-256 against server hash
196
- * 7. Extract and install
197
- * 8. Write restart sentinel + trigger gateway restart
212
+ * 3. Acquire update lock (prevents concurrent updates)
213
+ * 4. Check for newer version (npm dashboard fallback)
214
+ * 5. Require integrity hash from server (skip if missing)
215
+ * 6. Download tarball via fetch
216
+ * 7. Verify tarball integrity against server hash
217
+ * 8. Extract and install (with rollback on failure)
218
+ * 9. Verify new dist loads; rollback if broken
219
+ * 10. Write restart sentinel (gateway picks it up on next restart)
220
+ * 11. Wait for idle window, then restart gateway
198
221
  */
199
222
  export declare function runUpdateCheck(currentVersion: string, endpoint: string, logger: {
200
223
  info: (msg: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../src/updater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../src/updater.ts"],"names":[],"mappings":"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"}