-
Notifications
You must be signed in to change notification settings - Fork 135
🤖 fix: redact MCP command env values and credential URLs in settings backup export #3985
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ibetitsmike
wants to merge
116
commits into
main
Choose a base branch
from
mike/backup-mcp-redaction
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
116 commits
Select commit
Hold shift + click to select a range
cbfabe7
fix: redact MCP command env values and credential URLs in settings ba…
ibetitsmike 7c2d5ad
fix: consume whole shell words in command redaction and resolve redac…
ibetitsmike 543d699
fix: recognize env assignments after shell operators and fail closed …
ibetitsmike 875b0c8
fix: collision-safe restore path keys, disguised-assignment detection…
ibetitsmike b9f9f51
fix: recognize bash append assignments in command redaction
ibetitsmike 9fd948f
fix: detect assignments disguised by ANSI-C and locale quoting
ibetitsmike 9404c60
fix: fail closed on expansion carriers and env split-string assignmen…
ibetitsmike 38cdefb
fix: drop dead re-split whitespace rule, pin quote-embedded assignmen…
ibetitsmike 082a530
fix: fail closed on interpreter script words and non-bash assignment …
ibetitsmike 39b3c72
fix: treat legacy arithmetic as a carrier and scan published paths in…
ibetitsmike ebb3f32
fix: env operand names, brace-spliced assignments, and quote-split to…
ibetitsmike 63528c4
fix: model braces as word content and accept arbitrary env operand as…
ibetitsmike 63d16b5
fix: recognize all env option terminator spellings, scope quote-strip…
ibetitsmike 904bd9d
fix: accept env split-string abbreviations, scan NUL-stripped content…
ibetitsmike 0e6d4c7
fix: fail closed on expansion-brace groups in unconsumed command words
ibetitsmike a31f109
fix: normalize parsed command strings for the backstop, numeric env c…
ibetitsmike 85cb5da
fix: scan expansion-stripped command strings so empty expansions cann…
ibetitsmike 8844be2
fix: scope shell normalization to command strings so non-command fiel…
ibetitsmike 9a40317
fix: linear sk- token check, bash-accurate quote removal, block conti…
ibetitsmike aee4b91
fix: fail closed on option values embedding assignments
ibetitsmike b6c24f2
fix: strip parameter expansions only in active quoting contexts
ibetitsmike 1e2a553
fix: CRLF is not a continuation, example AWS key stays reviewable, at…
ibetitsmike 6fa93ef
fix: bash-accurate word breaks, live special params, comments, url pe…
ibetitsmike 418cbb7
fix: localize multi-member glob classes and state-dependent $!, comme…
ibetitsmike e3af002
fix: localize nondeterministic wildcards so a prefix glob cannot reco…
ibetitsmike 230be73
fix: linear quote-aware glob analyzer, escaped class members localize…
ibetitsmike 16537e5
fix: detect shell constructs only in active regions, keep repeated-ru…
ibetitsmike fe5fa07
fix: strip WHATWG tab and newline separators from urls before the cre…
ibetitsmike 73aba1a
fix: nested brace expansion localizes, comment prose survives assignm…
ibetitsmike 5301e2b
fix: positional and list expansions localize because the command can …
ibetitsmike 3e02ac5
fix: always-set specials localize, oversized commands skip analysis, …
ibetitsmike baed571
fix: localize active named parameter expansions the command can populate
ibetitsmike 2d8390a
fix: line continuations preserve comment boundaries in all three comm…
ibetitsmike 24ba9e8
fix: normalize line continuations before shell analysis, localize ext…
ibetitsmike 7653f8d
fix: localize eval reparse and assignment-free process substitutions
ibetitsmike c406b6b
fix: block GitLab issued tokens, localize write redirections
ibetitsmike 65c613c
fix: cover all issued GitHub prefixes, localize pipelines and shell-s…
ibetitsmike c76f875
fix: cover remaining GitLab issued prefixes, localize shopt
ibetitsmike fde5856
fix: letter glob classes localize under inherited nocaseglob
ibetitsmike 870fb7f
fix: localize source builtins, block xapp tokens, bound aggregate ana…
ibetitsmike 8863eae
fix: named shell interpreters localize their reparsed script arguments
ibetitsmike b96a3bb
fix: normalize Windows interpreter spellings before the shell-name check
ibetitsmike 275e640
fix: block Stripe live keys without an override
ibetitsmike e3b897f
fix: localize language-interpreter eval spellings, block npm tokens
ibetitsmike 68b568d
fix: localize deferred traps and printf variable writes under inherit…
ibetitsmike b309d0f
fix: block temporary AWS keys and localize awk program operands
ibetitsmike 88416fc
fix: recognize attached printf variable output options
ibetitsmike e5cc9b3
fix: localize MCP commands when Bash startup hooks are inherited
ibetitsmike 60410d7
fix: localize sed program operands; publish commands despite ignored …
ibetitsmike 34e4741
fix: localize mapfile callbacks and remote-reparse executables
ibetitsmike bd7c1b4
fix: recognize PHP -B/-E code options and local shell-reparse wrappers
ibetitsmike 917f433
fix: bound interpreter lookup, recognize apiToken-style URL credentials
ibetitsmike 1cd0b84
fix: reject over-limit MCP redaction queues before applying edits
ibetitsmike 60337c2
fix: match x-prefixed URL credential names, end eval tracking at scri…
ibetitsmike 253bb52
fix: batch jsonc edit application, keep eval tracking armed past opti…
ibetitsmike b1daf9b
fix: linear placeholder-run stripping, model read under inherited all…
ibetitsmike a8391cf
fix: localize cmd.exe command operands
ibetitsmike 0553168
fix: preserve gap comments when batched deletion removes a final prop…
ibetitsmike fef5a8b
fix: cluster numeric interpreter switches before eval letters
ibetitsmike e39924f
fix: address round 52 review findings
ibetitsmike a68adb4
fix: harden backup module scanning and size checks
ibetitsmike 7a85209
tests: tighten executable data URL coverage
ibetitsmike e2bb5eb
fix: address round 54 review findings
ibetitsmike ebbec98
fix: require a provider marker for credential-suffix URL parameters
ibetitsmike 9f6ef33
fix: bind restore command approval to the exact planned MCP bytes
ibetitsmike 376bf7c
fix: localize additional downstream evaluation modes
ibetitsmike 9885531
fix: localize makefile launchers and tighten eval option parsing
ibetitsmike b37f78f
fix: localize runtime preloads and Git shell callbacks
ibetitsmike 7ba8c30
fix: bind interpreter commands to published script inputs
ibetitsmike 6bf665e
fix: inspect attached interpreter script-file options
ibetitsmike 890c6ad
fix: cover APIM subscription keys and Tcl script launchers
ibetitsmike 886dac6
fix: honor interpreter terminators and track Lua evaluation
ibetitsmike 8097f7b
fix: localize PHP process-file script inputs
ibetitsmike d0fe82e
fix: localize JShell load-file inputs
ibetitsmike 3fb8198
fix: localize Git config shell aliases
ibetitsmike f4f26de
fix: localize direct execution of published documents
ibetitsmike 21434d5
fix: cover Swift, Elixir, and Git command config values
ibetitsmike 7398417
fix: close env wrapper and encoded documentation gaps
ibetitsmike af572f4
fix: track Elixir and IEx evaluation operands
ibetitsmike 792844e
fix: track Java source-file launcher mode
ibetitsmike bebb378
fix: scan issued-token shapes linearly and keep Slack placeholders re…
ibetitsmike b3af0c6
fix: restrict executable-name checks to command positions and track f…
ibetitsmike b61ab5a
fix: resolve published-document operands against the configured root
ibetitsmike 94ebaee
fix: cover stdin-redirected documents, coproc/function bodies, and re…
ibetitsmike 4721d66
fix: track systemd executor command operands
ibetitsmike 6323869
fix: check CMake and CTest operands
ibetitsmike 373125f
fix: reset parser state at separators, normalize operand paths, end d…
ibetitsmike 431e16c
fix: localize Java argument files and sweep command-valued Git config…
ibetitsmike f3c88b0
fix: match the current user's named-home spelling of the settings root
ibetitsmike 138ef24
fix: localize JShell startup files that name auto-published documents
ibetitsmike 5e1586a
fix: localize hash -p remapping to published files and treat alias as…
ibetitsmike 16763b5
chore: remove a stray review reply artifact from the repository root
ibetitsmike 518a5f3
fix: localize every hash -p remap and the enable builtin loader
ibetitsmike 21b23b8
fix: keep the script boundary after interpreter -- and track setarch …
ibetitsmike 664b844
fix: track Erlang erl -eval, -run, and -s evaluation options
ibetitsmike d579b58
fix: localize cd into the collected root, gc.recentObjectsHook, and c…
ibetitsmike 5e06d58
fix: gate stdin localization on executable input, resolve relative cd…
ibetitsmike 8bb9fec
fix: localize !-valued submodule updates and bare names on a publishe…
ibetitsmike 19c9cdd
fix: account for ambient cwd and loader execution in backup commands
ibetitsmike 8cfe2e0
fix: localize npm launchers under inherited preloads and interactive …
ibetitsmike 733a118
fix: account for env cwd, PHPRC, and Git executable search paths
ibetitsmike d5cc1ae
fix: track PATH scripts, runtime hooks, and wrapper working directories
ibetitsmike a1ff70a
fix: track mise command execution boundaries
ibetitsmike 909a744
fix: resolve executable operands from shell cwd and track sqlite init…
ibetitsmike 2dad64e
fix: localize Lua launchers under an inherited published LUA_INIT file
ibetitsmike 4e44d82
fix: canonicalize inherited PATH entries and localize under dynamic-l…
ibetitsmike c66a998
fix: resolve loader search paths, inherited PYTHONPATH/CLASSPATH arch…
ibetitsmike 8aaafbd
fix: canonicalize inherited env paths, track boot class paths and sql…
ibetitsmike 225b3db
fix: localize direct java boot-class-path archives
ibetitsmike 97f6154
fix: localize under inherited git config overrides and openssl config…
ibetitsmike ee5108a
fix: localize git launchers under inherited execution hooks
ibetitsmike 8774b65
fix: track deprecated Git parameters and LLDB command files
ibetitsmike 9f57e37
fix: track Perl debugger, uv run, GDB commands, and Ninja builds
ibetitsmike ad20e8e
fix: expand inherited JVM argument-file coverage
ibetitsmike f68116c
fix: track direct runtime loaders and inherited build hooks
ibetitsmike e6352db
fix: cover symlinked operands and inherited runtime hooks
ibetitsmike File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.