Skip to content

fix(opsec): block Ghidra RE artifacts + clear ruff backlog + doc fixes#106

Merged
New1Direction merged 3 commits into
mainfrom
fix/opsec-and-docs
Jun 10, 2026
Merged

fix(opsec): block Ghidra RE artifacts + clear ruff backlog + doc fixes#106
New1Direction merged 3 commits into
mainfrom
fix/opsec-and-docs

Conversation

@New1Direction

Copy link
Copy Markdown
Owner

Summary

Opsec + housekeeping fixes from a codebase review. Three commits:

  1. Opsec (HIGH).gitignore and the scripts/githooks/pre-commit OPSEC guard now block Ghidra / pyghidra-mcp output (*.gpr, *.rep, pyghidra_mcp_projects/). Previously neither did, so git add . could publish reverse-engineering artifacts to this public repo. Includes a regression test (opsec guard 6 → 7 passing). Also ignores .wrangler/ + uv.lock, de-dups .DS_Store, and ran ruff --fix on the auto-fixable backlog.
  2. Docs — a plain-language docs/korgex-explained.html overview; ROADMAP.md marked HISTORICAL (it predated the v0.x pivot); README test count fixed + badge bumped to 1,586; split a glued limitations bullet; AGENTS.md tool names corrected. Moved a stray PNG into docs/images/.
  3. Lint — cleared the 19 remaining (non-auto-fixable) ruff issues in src/ and added a lint job to CI so ruff check src/ stays green.

Test plan

  • ruff check src/ → All checks passed
  • full suite: 1,584 passed, 2 skipped (py3.11 local)
  • opsec guard test proves Ghidra .gpr + "ghidra" content are blocked
  • no __init__.py touched by ruff --fix (no broken re-exports)
  • CI green on 3.10–3.13 + new lint job

…nsistency fixes

Opsec (HIGH): .gitignore + scripts/githooks/pre-commit now block pyghidra/Ghidra
output (pyghidra_mcp_projects/, *ghidra*, *.gpr, *.rep) — previously neither did,
so 'git add .' could publish RE artifacts to the public repo. Added a regression
test (opsec guard suite 6 -> 7 passing).

gitignore: also ignore .wrangler/ and uv.lock; de-duplicate .DS_Store.

ruff: auto-fixed 74 of 94 backlog issues across 23 modules (no __init__ touched,
so no broken re-exports); full suite green (1,584 passing, 2 skipped). 19 manual
issues remain (unused vars, import-order, ambiguous names).

docs: ROADMAP.md HISTORICAL banner (it predated the v0.x pivot / '27 tests');
README test count 1,285 -> 1,586 + badge; split a glued 'Known limitations' bullet;
AGENTS.md stale tool names (list_files/read_file/set_plan -> Glob/Grep/Read).

assets: moved unreferenced korgex-chrome-light.png -> docs/images/.
A self-contained, no-dependency HTML overview written for non-technical
readers: what korgex is, the verifiable-record idea (via a plain logbook
analogy), what it can do, a 60-second quickstart, and safety. Public-safe
(korgex only). Open in any browser.
Cleared the non-auto-fixable ruff backlog in src/:
- removed 7 dead local variables (diff_engine, interactive, sandbox,
  self_healing, system_prompt, tools_impl, webhook_server)
- split 2 semicolon statements (agent.py streaming spinners)
- renamed 3 ambiguous 'l' loop vars -> ln/lbl (korgantic, memory, webhook_server)
- dropped 1 unused import (dashboard: fastapi.HTTPException)
- marked 6 deliberate import-after-defs with '# noqa: E402 (<reason>)'
  (tool-registration / circular-import-avoidance patterns)

'ruff check src/' is now clean; added a 'lint' job to tests.yml so it stays
that way. Full suite green (1,584 passing, 2 skipped).
@New1Direction New1Direction merged commit 74fdde9 into main Jun 10, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant