fullcourtdefense-cli 1.21.5 → 1.21.6

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.
@@ -283,12 +283,20 @@ function relaunchThrottleOk(currentClaudeCreated) {
283
283
  try {
284
284
  const marker = JSON.parse(fs.readFileSync(A11Y_RELAUNCH_MARKER, 'utf8'));
285
285
  const last = marker.lastAttemptAt || 0;
286
+ const sinceLast = Date.now() - last;
287
+ // Hard floor: never two relaunches within 15 minutes regardless of
288
+ // instance tracking — bounds the worst case if a relaunched Claude drops
289
+ // our flag (e.g. MSIX self-restart) so we can't kill it in a loop.
290
+ if (sinceLast < 15 * 60_000)
291
+ return false;
286
292
  // Claude was restarted (update, crash, user quit/reopen) since our last
287
293
  // relaunch attempt — the old throttle must not leave the composer blind.
288
- if (currentClaudeCreated && marker.claudeCreated && currentClaudeCreated !== marker.claudeCreated) {
294
+ // Legacy markers without claudeCreated also take this path once, then
295
+ // start tracking the instance.
296
+ if (currentClaudeCreated && marker.claudeCreated !== currentClaudeCreated) {
289
297
  return true;
290
298
  }
291
- return Date.now() - last > A11Y_RELAUNCH_THROTTLE_MS;
299
+ return sinceLast > A11Y_RELAUNCH_THROTTLE_MS;
292
300
  }
293
301
  catch {
294
302
  return true;
package/dist/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "1.21.5"
2
+ "version": "1.21.6"
3
3
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fullcourtdefense-cli",
3
- "version": "1.21.5",
3
+ "version": "1.21.6",
4
4
  "description": "Full Court Defense CLI — security scanning for AI agents from your terminal",
5
5
  "main": "dist/index.js",
6
6
  "bin": {