Claude Code plugin + --version + install.sh checksum-safety (v4.1.0), reconciled onto v4.0.0 - #67
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Qpx9YBohfUdQU1yAXXrG1
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Qpx9YBohfUdQU1yAXXrG1
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Qpx9YBohfUdQU1yAXXrG1
…riter Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Qpx9YBohfUdQU1yAXXrG1
…I note Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Qpx9YBohfUdQU1yAXXrG1
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.
What this is
The novel half of an April "v3.3.0" effort, reconciled onto the v4.0.0 security release rather than merged blindly. Most of the original branch's security content turned out to be redundant with (or weaker than) the parallel v4.0.0 hardening that landed via #64/#65, so it was dropped. What remains is what v4.0.0 doesn't have.
What's new (not on
main).claude-plugin/marketplace.json,plugin/**(manifest, README, four/foia-*commands,skills/openfoia/SKILL.md). Lets a human install the CLI + an agent copilot that knows every command. Every documentedopenfoia …invocation was validated against the live v4.0.0 CLI.--version/-V— root CLI callback wired toopenfoia.__version__(v4.0.0 had none).openfoia graph … --no-text+ a plaintext-export warning — graph HTML embeds full document text; this makes omitting it a choice and warns when it's included.install.shasset-name anchor — v4.0.0 grepsbrowser_download_url.*${name}unanchored; once glyph-api ships.sha256assets this can match the checksum file as the binary. Now an anchoredgrep -Eoon the exact asset name. Simulated against a release JSON with both assets → selects only the binary.test_plugin.py(plugin drift test) +test_security.py(graph-escape / offline-UI, adapted to v4.0.0's stricter escape).pyyamlindev,CHANGELOG.md, air-gap web-UI note, untrack generatedtest_graph.html.What was deliberately dropped (v4.0.0 does it better)
server.pyrewrite + 5 bound tests: v4.0.0 achieves the same properties via HTTP headers (CSPdefault-src 'self',Referer-Policy: no-referrer,Cache-Control: no-store, non-loopback Host rejection) and covers them intest_security_network.py/test_security_injection.py. Independently verified: no coverage lost.escape_for_script: v4.0.0'sescape_json_for_scriptescapes&,<,>,U+2028/9 — a strict superset. Kept theirs.SKILL.md drift caught
v4.0.0 added a top-level
egress-statuscommand (Tor egress reporting) our skill didn't document — added. No other invocation had drifted.Validation
main— GLiNER/ollama extraction tests that need model downloads / network, blocked byconftest. Baseline was5 failed, 255 passed; this PR adds 26 passing tests, zero new failures. (Those 5 pass only on a machine with the models + ollama + network.)ruff check .clean ·ruff format --checkclean (pre-commit enforced).openfoia --version→4.1.0.</script>…,<!--<script>, entity labelAcme </script> & Co): no breakout, no raw<in the data line, round-trips intact — v4.0.0's escape holds.Reviewed
Underlying fixes went through an independent Opus review (both SHIP) before reconciliation; the two riskiest reconciliation decisions (dropped-server-tests coverage, install.sh anchor) were independently re-verified against v4.0.0.
Related
pdf-extractbinaries + the.sha256files this install.sh fix makes safe.🤖 Generated with Claude Code