Skills for threat modeling, scanning, triage, patching, plus an autonomous scanning harness you can /customize
This report presents the forensic synthetic code analysis of anthropics/defending-code-reference-harness, a Python project with 6,468 GitHub stars. SynthScan v2.0 examined 15,201 lines of code across 94 source files, recording 336 pattern matches distributed across 11 syntactic categories. The overall adjusted score of 37.5 places this repository in the Strong AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 336 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | targets/canary/entry.c | 17 | // ─── Parser A: heap-buffer-overflow ────────────────────────────────────────── | COMMENT |
| MEDIUM | targets/canary/entry.c | 33 | // ─── Parser B: stack-buffer-overflow ───────────────────────────────────────── | COMMENT |
| MEDIUM | targets/canary/entry.c | 45 | // ─── Parser C: heap-use-after-free ─────────────────────────────────────────── | COMMENT |
| MEDIUM | targets/canary/entry.c | 65 | // ─── Dispatch ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_dedup.py | 13 | # ── _signature ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_dedup.py | 60 | # ── dedup (results tree walk) ──────────────────────────────────────────────── | STRING |
| MEDIUM | tests/test_dedup.py | 188 | # ── format_report ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_judge.py | 11 | # ── judge output parsing ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_judge.py | 50 | # ── judge prompt building ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_judge.py | 91 | # ── compare prompt building ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_judge.py | 105 | # ── manifest round-trip ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_patch_grade.py | 19 | # ── fixtures ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_patch_grade.py | 49 | # ── PatchVerdict semantics ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_patch_grade.py | 130 | # ── T1 oracle ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_patch_grade.py | 149 | # ── ladder short-circuit (mocked docker) ───────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_auth.py | 200 | # ── warn_bedrock_model ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_auth.py | 257 | # ── required_egress_hosts ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_auth.py | 275 | # ── check_egress_satisfied ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_auth.py | 43 | # ── resolve_auth_env ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_auth.py | 157 | # ── usage marker ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_xml_parse.py | 11 | # ── parse_xml_tag ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_xml_parse.py | 50 | # ── _blocks_to_text ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_xml_parse.py | 70 | # ── find_tagged_message: THE BUGFIX ────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_report.py | 14 | # ── grader tag parsing ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_report.py | 76 | # ── crash_file_from_frame ──────────────────────────────────────────────────── | STRING |
| MEDIUM⚡ | tests/test_report.py | 85 | # ── prompt building ────────────────────────────────────────────────────────── | STRING |
| MEDIUM⚡ | tests/test_report.py | 130 | # ── representative picker ──────────────────────────────────────────────────── | STRING |
| MEDIUM | tests/test_found_bugs.py | 12 | # ── asan.top_frame / project_frames ────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_found_bugs.py | 156 | # ── jsonl append/read round-trip (raw ASAN excerpt format) ─────────────────── | STRING |
| MEDIUM⚡ | tests/test_found_bugs.py | 230 | # ── concurrent-agents prompt section ───────────────────────────────────────── | STRING |
| MEDIUM | tests/test_skill_checkpoint.py | 33 | # ── happy path ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_skill_checkpoint.py | 96 | # ── input hardening ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_skill_checkpoint.py | 115 | # ── path confinement ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_focus.py | 8 | # ── build_find_prompt conditional sections ─────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_focus.py | 89 | # ── _assigned_focus round-robin ────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_asan.py | 11 | # ── crash_reason ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_asan.py | 101 | # ── asan_excerpt ───────────────────────────────────────────────────────────── | STRING |
| MEDIUM | tests/test_asan.py | 132 | # ── result.json integration ────────────────────────────────────────────────── | STRING |
| MEDIUM⚡ | tests/test_untrusted.py | 35 | # ── helpers ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_untrusted.py | 51 | # ── patch prompt ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_untrusted.py | 86 | # ── report prompt ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/test_untrusted.py | 103 | # ── judge prompt ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_checkpoint.py | 19 | # ── run --resume ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_checkpoint.py | 57 | # ── --resume --stream: judge_log idempotence key ───────────────────────────── | COMMENT |
| MEDIUM | tests/test_checkpoint.py | 84 | # ── --resume layout guard ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/test_checkpoint.py | 115 | # ── report (skip-on-exists) ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 98 | # ── T0: apply + build ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 146 | # ── T1: PoC stops ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 168 | # ── T2: regression suite ───────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 186 | # ── re-attack ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 222 | # ── T3: style (advisory) ───────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 241 | # ── tier oracles ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 271 | # ── T3 style judge (advisory) ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/patch_grade.py | 294 | # ── helpers ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | harness/cli.py | 640 | # ── Build (once, shared by all runs) ────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | harness/cli.py | 655 | # ── Focus areas (optional auto-discover via recon) ─────────────────────────── | COMMENT |
| MEDIUM | harness/cli.py | 233 | # ── Find ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/cli.py | 305 | # ── Grade ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | harness/cli.py | 348 | # ── Streaming: judge → report dispatch ─────────────────────────────────────── | COMMENT |
| MEDIUM | harness/cli.py | 547 | # ── found_bugs.jsonl: runtime bug-sharing ─────────────────────────────────────── | COMMENT |
| 20 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_dedup.py | 39 | def test_signature_skips_interceptor(): | STRING |
| LOW⚡ | tests/test_dedup.py | 50 | def test_signature_no_frame_fallback(): | STRING |
| LOW⚡ | tests/test_dedup.py | 55 | def test_signature_missing_fields(): | STRING |
| LOW | tests/test_dedup.py | 105 | def test_dedup_groups_duplicates(tmp_path): | CODE |
| LOW | tests/test_dedup.py | 117 | def test_dedup_includes_rejected(tmp_path): | CODE |
| LOW | tests/test_dedup.py | 126 | def test_dedup_parses_operation(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 139 | def test_dedup_signature_prefers_parsed_type(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 149 | def test_dedup_skips_null_crash(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 158 | def test_dedup_walks_nested_batches(tmp_path): | CODE |
| LOW | tests/test_dedup.py | 172 | def test_dedup_skips_malformed_json(tmp_path): | CODE |
| LOW | tests/test_dedup.py | 190 | def test_format_report_sorted_by_count(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 205 | def test_format_report_shows_operation(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 212 | def test_format_report_shows_relative_paths(tmp_path): | CODE |
| LOW⚡ | tests/test_dedup.py | 220 | def test_format_report_shows_status(tmp_path): | CODE |
| LOW⚡ | tests/test_judge.py | 20 | def test_parse_judge_dup_skip(): | CODE |
| LOW⚡ | tests/test_judge.py | 26 | def test_parse_judge_dup_better(): | CODE |
| LOW⚡ | tests/test_judge.py | 32 | def test_parse_judge_dup_without_bug_id_falls_open(): | CODE |
| LOW⚡ | tests/test_judge.py | 39 | def test_parse_judge_unparseable_falls_open(): | CODE |
| LOW⚡ | tests/test_judge.py | 45 | def test_parse_judge_case_insensitive(): | CODE |
| LOW⚡ | tests/test_judge.py | 59 | def test_judge_prompt_empty_manifest(): | CODE |
| LOW | tests/test_judge.py | 73 | def test_judge_prompt_with_manifest(): | CODE |
| LOW | tests/test_judge.py | 93 | def test_compare_prompt_has_both(): | CODE |
| LOW | tests/test_judge.py | 113 | def test_manifest_append_and_read(tmp_path): | CODE |
| LOW | tests/test_judge.py | 127 | def test_manifest_picks_up_landed_report(tmp_path): | CODE |
| LOW | tests/test_patch_grade.py | 52 | def test_verdict_passed_all_true(): | CODE |
| LOW | tests/test_patch_grade.py | 91 | def test_verdict_failed_on_reattack(): | CODE |
| LOW | tests/test_patch_grade.py | 202 | def test_multi_diff_reland_collapses(mock_docker): | CODE |
| LOW | tests/test_patch_grade.py | 280 | def test_reattack_clean_when_no_crash(mock_docker): | CODE |
| LOW | tests/test_patch_grade.py | 296 | def test_reattack_dirty_when_same_signature(mock_docker): | CODE |
| LOW | tests/test_patch_grade.py | 322 | def test_reattack_any_crash_fails(mock_docker): | CODE |
| LOW | tests/test_patch_grade.py | 347 | def test_no_build_command_raises(): | CODE |
| LOW⚡ | tests/test_auth.py | 109 | def test_bedrock_missing_region_returns_none(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 116 | def test_bedrock_invalid_region_returns_none(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 124 | def test_bedrock_no_creds_returns_none(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 190 | def test_marker_replaces_ambient_headers(monkeypatch): | CODE |
| LOW⚡ | tests/test_auth.py | 202 | def test_warn_bedrock_model_bare_id_warns(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 211 | def test_warn_bedrock_model_prefixed_id_silent(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 217 | def test_warn_bedrock_model_arn_silent(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 225 | def test_warn_bedrock_model_off_bedrock_silent(capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 230 | def test_warn_bedrock_model_none_or_empty_silent(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 237 | def test_warn_bedrock_model_example_apac(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 244 | def test_warn_bedrock_model_example_eu(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 251 | def test_warn_bedrock_model_example_defaults_us(monkeypatch, capsys): | CODE |
| LOW⚡ | tests/test_auth.py | 263 | def test_required_egress_hosts_bedrock(monkeypatch): | CODE |
| LOW⚡ | tests/test_auth.py | 269 | def test_required_egress_hosts_vertex_exits(monkeypatch): | CODE |
| LOW⚡ | tests/test_auth.py | 277 | def test_check_egress_satisfied_ok(): | CODE |
| LOW⚡ | tests/test_auth.py | 281 | def test_check_egress_satisfied_missing_exits(monkeypatch): | CODE |
| LOW⚡ | tests/test_auth.py | 288 | def test_check_egress_satisfied_wildcard_covers(monkeypatch): | CODE |
| LOW⚡ | tests/test_auth.py | 294 | def test_no_auth_msg_lists_all_modes(): | CODE |
| LOW | tests/test_auth.py | 59 | def test_precedence_api_key_over_oauth(monkeypatch): | CODE |
| LOW | tests/test_auth.py | 98 | def test_bedrock_forwards_small_fast_model(monkeypatch): | CODE |
| LOW | tests/test_auth.py | 136 | def test_precedence_bedrock_over_api_key(monkeypatch): | CODE |
| LOW | tests/test_auth.py | 176 | def test_marker_identical_on_oauth(monkeypatch): | CODE |
| LOW | tests/test_xml_parse.py | 22 | def test_parse_multiline_content(): | CODE |
| LOW⚡ | tests/test_xml_parse.py | 39 | def test_parse_strips_whitespace(): | CODE |
| LOW⚡ | tests/test_xml_parse.py | 44 | def test_parse_tag_with_special_regex_chars(): | CODE |
| LOW⚡ | tests/test_xml_parse.py | 52 | def test_blocks_to_text_extracts_textblocks(): | CODE |
| LOW⚡ | tests/test_xml_parse.py | 61 | def test_blocks_to_text_string_passthrough(): | CODE |
| LOW⚡ | tests/test_xml_parse.py | 65 | def test_blocks_to_text_empty(): | CODE |
| LOW | tests/test_xml_parse.py | 81 | def test_find_tagged_message_tags_in_last(): | CODE |
| 121 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_patch_grade.py | 9 | CODE | |
| LOW | tests/test_patch_grade_e2e.py | 14 | CODE | |
| LOW | tests/test_patch.py | 5 | CODE | |
| LOW | tests/test_sandbox.py | 9 | CODE | |
| LOW | tests/test_untrusted.py | 5 | CODE | |
| LOW | tests/test_agent_sandbox.py | 12 | CODE | |
| LOW | .claude/skills/_lib/checkpoint.py | 28 | CODE | |
| LOW | harness/patch.py | 11 | CODE | |
| LOW | harness/config.py | 12 | CODE | |
| LOW | harness/agent_image.py | 12 | CODE | |
| LOW | harness/docker_ops.py | 9 | CODE | |
| LOW | harness/patch_grade.py | 17 | CODE | |
| LOW | harness/asan.py | 7 | CODE | |
| LOW | harness/sandbox.py | 13 | CODE | |
| LOW | harness/cli.py | 30 | CODE | |
| LOW | harness/dedup.py | 16 | CODE | |
| LOW | harness/judge.py | 9 | CODE | |
| LOW | harness/agent.py | 22 | CODE | |
| LOW | harness/find.py | 7 | CODE | |
| LOW | harness/artifacts.py | 7 | CODE | |
| LOW | harness/novelty.py | 12 | CODE | |
| LOW | harness/report.py | 13 | CODE | |
| LOW | harness/grade.py | 11 | CODE | |
| LOW | harness/recon.py | 11 | CODE | |
| LOW | harness/prompts/untrusted.py | 12 | CODE | |
| LOW | harness/prompts/system_prompt.py | 16 | CODE | |
| LOW | harness/prompts/patch_prompt.py | 8 | CODE | |
| LOW | scripts/egress_proxy.py | 15 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_dedup.py | 31 | ASSERTION_OUTPUT = "entry: /work/decoder.h:4521: decode_chunk: Assertion `n >= 1 && n <= 4' failed.\n" | STRING |
| HIGH | tests/test_asan.py | 44 | entry: /work/img.h:1761: convert_format: Assertion `n >= 1 && n <= 4' failed. | CODE |
| HIGH | harness/patch.py | 89 | f"({ignore}git init -q && git add -A && " | CODE |
| HIGH | harness/prompts/find_prompt.py | 68 | - SEGV at a non-null, attacker-influenced address (not 0x0 or 0x8) | CODE |
| HIGH | harness/prompts/find_prompt.py | 190 | - SEGV at a non-null, attacker-influenced address | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | harness/cli.py | 999 | def _cmd_recon(args) -> int: | CODE |
| LOW⚡ | harness/cli.py | 645 | except Exception as e: | CODE |
| LOW | harness/cli.py | 247 | except Exception as e: | CODE |
| LOW | harness/cli.py | 316 | except Exception as e: | CODE |
| LOW | harness/cli.py | 355 | except Exception: | CODE |
| LOW | harness/cli.py | 498 | except Exception as e: | CODE |
| LOW | harness/cli.py | 735 | except Exception: | CODE |
| LOW | harness/cli.py | 772 | except Exception as e: | CODE |
| LOW | harness/cli.py | 934 | except Exception as e: | CODE |
| LOW | harness/cli.py | 1003 | except Exception as e: | CODE |
| LOW | harness/cli.py | 1022 | except Exception as e: | CODE |
| LOW | harness/cli.py | 1128 | except Exception as e: | CODE |
| LOW | harness/cli.py | 1221 | except Exception as e: | CODE |
| LOW | harness/cli.py | 1349 | except Exception as e: | CODE |
| LOW | harness/agent.py | 339 | except Exception as e: | CODE |
| LOW | scripts/setup_sandbox.sh | 188 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | harness/prompts/report_prompt.py | 64 | ### 2. `<reachability>` — real attack surface or harness artifact? | COMMENT |
| MEDIUM | scripts/egress_proxy.py | 35 | # Keep in sync with harness/auth.py:_host_allowed | COMMENT |
| MEDIUM⚡ | scripts/setup_sandbox.sh | 93 | # the default from harness.auth so Bedrock/Vertex get the right host without a | COMMENT |
| MEDIUM⚡ | scripts/setup_sandbox.sh | 94 | # manual override. Needs the venv (harness package) — ensure it now. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | targets/htslib/entry.c | 1 | // Copyright 2026 Anthropic PBC | COMMENT |
| LOW | targets/canary/entry.c | 1 | // Copyright 2026 Anthropic PBC | COMMENT |
| LOW | targets/drlibs/entry.c | 1 | // Copyright 2026 Anthropic PBC | COMMENT |
| LOW | targets/alsa/entry.c | 1 | // Copyright 2026 Anthropic PBC | COMMENT |
| LOW | tests/__init__.py | 1 | # Copyright 2026 Anthropic PBC | COMMENT |
| LOW | harness/__init__.py | 1 | # Copyright 2026 Anthropic PBC | COMMENT |
| LOW | harness/cli.py | 1 | # Copyright 2026 Anthropic PBC | COMMENT |
| LOW | harness/prompts/__init__.py | 1 | # Copyright 2026 Anthropic PBC | COMMENT |
| LOW | scripts/setup_sandbox.sh | 121 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | harness/patch_grade.py | 37 | CODE | |
| LOW | harness/asan.py | 86 | CODE | |
| LOW | harness/cli.py | 631 | CODE | |
| LOW | harness/agent.py | 87 | CODE | |
| LOW | harness/agent.py | 113 | CODE | |
| LOW | harness/agent.py | 198 | CODE | |
| LOW | scripts/egress_proxy.py | 64 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/blog-post.md | 78 | **Refer to the [harness README.md](https://github.com/anthropics/defending-code-reference-harness/tree/main/harness) for | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | harness/patch.py | 30 | CODE | |
| LOW | harness/patch_grade.py | 37 | CODE | |
| LOW | harness/find.py | 21 | CODE | |
| LOW | harness/report.py | 37 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docs/blog-post.md | 187 | * [Claude Security](https://www.anthropic.com/product/security): Anthropic’s managed product for agentic vulnerability d | COMMENT |