Merged
Conversation
…er than just monitoring the Server's (responses). Dangerous actions are now caught _before_ they reach the target server.
…nit crash - Race condition: autoStartDaemonAndWait now verifies HTTP readiness via GET /settings before returning true, preventing stale-PID false positives - Race condition: openBrowserLocal() called immediately after daemon is HTTP-ready so browser starts loading before POST /check fires, ensuring the SSE 'add' event is delivered to an already-connected client - Race condition: daemon skips openBrowser() when autoStarted=true to avoid duplicate tabs (CLI already opened the browser) - Race condition: 'Abandoned' browser racer result now resolves the race as denied instead of being silently swallowed (caused CLI to hang) - Race condition: SSE reconnect abandon timer raised 2s→10s so a page reload doesn't abandon pending requests before the browser reconnects - Bug fix: cloudBadge null check in SSE 'init' handler — missing DOM element crashed the handler before addCard() ran, causing approval requests to never appear when browser was cold-started - Undo engine: moved snapshot trigger from PostToolUse (log) to PreToolUse (check) so snapshot captures state before AI change, not after (previous timing made undo a no-op) - Undo engine: applyUndo now deletes files created after the snapshot that git restore alone does not remove - Undo engine: expanded STATE_CHANGING_TOOLS list to include str_replace_based_edit_tool and create_file Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Previously only tracked files (git ls-files) were checked for deletion, so files created after the snapshot but never committed (e.g. test.txt) survived the undo. Now also queries git ls-files --others --exclude-standard to catch untracked non-ignored files — the same set git add -A captures when building the snapshot tree. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When a local channel (native popup, browser dashboard, terminal) wins the approval race while cloud is also enforced, the pending SaaS request was never resolved — leaving Mission Control stuck on PENDING forever. Now finish() calls resolveNode9SaaS() (PATCH /intercept/requests/:id) whenever checkedBy !== 'cloud' and a cloudRequestId exists, closing the request immediately with the correct APPROVED/DENIED status. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
core.ts: - Fire-and-forget POST /intercept/audit for all local fast-path allows (ignoredTools, sandboxPaths, local-policy, trust) — gives org admins full visibility of calls that never reached the cloud - Fixed config merge: sandboxPaths and ignoredTools now concatenate across layers (global → project → local); dangerousWords replaces (higher wins) - agentVersion context now sent as context.agent so backend can store AI client type (Claude Code, Gemini CLI, Terminal) separately from machine identity cli.ts: - Updated context payload to include agent type metadata for accurate per-client breakdown in Mission Control Agents tab Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Contributor
Author
|
🎉 This PR is included in version 1.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
What does this PR do? Reference any related issues (e.g.
Closes #123).Type of change
Checklist
npm testpassesnpm run typecheckpassesnpm run lintpasses