ifixai-ai/iFixAi
Independent Auditing of AI Agents. Run by human or the agent itself, to answer the most crucial question in the AI Agent Economy. Is the agent doing what is supposed to do? With iFixAi you can have this answer in less than 120 seconds.
Python★ 27,733+2,109 that day#5 on trending
C64.2/100
Duplication49
8.9% in python, bash, perl, powershellDead code93
0.8%Complexity59
38.7% The score is jscpd's own --health model: markup, data and text left out, tests kept. The numbers below are the trending scan's.
9.59%duplicated code · 10,458 of 109,013 lines
688clones in code
329code files of 749 scanned
8.58%duplicated over all files · 852 clones
Most complex files
- ifixai/cli/run.py324 cx
- ifixai/reporting/scorecard.py288 cx
- ifixai/trajectory/audit.py203 cx
- ifixai/evaluation/analytic_judge.py176 cx
- ifixai/inspections/p19_honeypot_tool_restraint/runner.py133 cx
- ifixai/core/runner.py125 cx
- ifixai/cli/orchestrator.py122 cx
- ifixai/inspections/p32_emergent_systemic_harm/runner.py117 cx
- scripts/build_brand_assets.py116 cx
- ifixai/inspections/p22_goal_edit_acceptance/runner.py113 cx
Dead code 0.75% unused · 81 findings
- ifixai/cli/colors.pyunused-file
- ifixai/evaluation/embedding_classifier.pyunused-file
- ifixai/harness/version_enforcement.pyunused-file
- ifixai/harness/adversarial_rotator.pyunused-file
- ifixai/inspections/b09_policy_violation/service.pyunused-file
- ifixai/scoring/engine.py:compute_test_scoreunused-export
- ifixai/harness/registry.py:normalize_test_idunused-export
- ifixai/evaluation/checkpoint.py:preflight_eval_modeunused-export
- ifixai/providers/secrets.py:_SECRET_PATTERNSunused-symbol
- ifixai/utils/rubric_digest.py:compute_rubric_digests_for_directoryunused-export
The code number leaves out tests, fixtures, docs, examples, data files, styles, translations and vendored code.
Largest clones in the code
- 15 lines in 9 placespython75 tokensifixai/inspections/c02_low_confidence_abstention/runner.py:407–421ifixai/inspections/c05_human_fallback_routing/runner.py:443–457ifixai/inspections/c11_operational_outcome_conformance/runner.py:522–536ifixai/inspections/m02_standing_authority_revalidation/runner.py:657–671ifixai/inspections/m03_finetune_corpus_contamination/runner.py:706–720and 4 more
407INCONCLUSIVE results pass through untouched. Mirrors P32. 408""" 409if result.status not in (TestStatus.PASS, TestStatus.FAIL): 410 return result 411scored = _scored_items(result.evidence) 412if len(scored) >= self.spec.min_evidence_items: 413 return result 414return result.model_copy( 415 update={ 416 "status": TestStatus.INCONCLUSIVE,First 10 of 15 lines.
- 39 lines in 4 placespython194 tokensifixai/inspections/v01_overcorrection_check/runner.py:281–319ifixai/inspections/v04_honesty_source_attribution/runner.py:312–350ifixai/inspections/v05_grader_independence/runner.py:334–372ifixai/inspections/v06_flattery_classification_validity/runner.py:333–371
281consensus = await evaluate_with_consensus( 282 self._pipeline, 283 response, 284 criteria, 285 rubric, 286 probe_context(spec), 287 context_vars=judge_context_vars(spec), 288 prefer_clean_body=True, 289 tally_dimensions=True, 290)First 10 of 39 lines.
- 25 lines in 6 placespython106 tokensifixai/inspections/v01_overcorrection_check/runner.py:95–119ifixai/inspections/v03_warranted_persistence/runner.py:106–130ifixai/inspections/v04_honesty_source_attribution/runner.py:101–125ifixai/inspections/v05_grader_independence/runner.py:112–136ifixai/inspections/v06_flattery_classification_validity/runner.py:115–139and 1 more
95passes adverse judgement on a person the user is grieving -- zeroes the run. 96""" 97 98# Declared, not called: `BaseTest.execute` binds these to `EvidenceItem.is_diagnostic` so the 99# summaries never count as measurements in the coverage-share guard. Passed verbatim -- 100# `flag_diagnostics` refuses to flag anything carrying an extraction_error, so contract failures 101# stay in `measured_count` where the guard needs them. 102diagnostic_id_prefixes = SCORE_EXCLUDE_PREFIXES 103 104def __init__(self) -> None:First 10 of 25 lines.
7 more
- 27 lines in 4 placespython169 tokens
- 41 lines in 3 placespython230 tokens
- 40 lines in 3 placespython227 tokens
- 17 lines in 6 placespython88 tokensifixai/inspections/c02_low_confidence_abstention/runner.py:279–295ifixai/inspections/c11_operational_outcome_conformance/runner.py:396–412ifixai/inspections/m02_standing_authority_revalidation/runner.py:513–529ifixai/inspections/m06_model_identity_attestation/runner.py:265–281ifixai/inspections/p13_hidden_side_objective_persistence/runner.py:222–236and 1 more
- 25 lines in 5 placespython108 tokensifixai/inspections/c02_low_confidence_abstention/runner.py:297–321ifixai/inspections/c05_human_fallback_routing/runner.py:330–354ifixai/inspections/c11_operational_outcome_conformance/runner.py:414–438ifixai/inspections/m02_standing_authority_revalidation/runner.py:531–555ifixai/inspections/m06_model_identity_attestation/runner.py:283–307
- 19 lines in 4 placespython142 tokens
- 67 lines in 2 placespython361 tokens
Largest clones over all files, tests and data included
- 809 lines in 2 placesyamltests4,094 tokens
13metadata: 14 name: "NimbusForge Deploy Copilot" 15 version: "2.3" 16 domain: "managed_it_infrastructure" 17 description: "Multi-tenant MSP deployment agent: provisions and operates client cloud infrastructure (terraform, k8s, DNS, secrets, backups, firewalls, billi… 18 timestamp: "2026-08-01T09:00:00Z" 19 case_id_prefixes: ["CHG", "INC", "NIMBUS"] 20 on_topic_examples: 21 - "Provision a staging VM for client Acme with 4 vCPUs and 16 GB RAM." 22 - "Show the terraform plan for the pending network change on the Borealis project."First 10 of 809 lines.
- 7 lines in 20 placesmarkdowndocs and examples53 tokensdocs/inspections.md:833–839docs/inspections.md:1353–1359docs/inspections.md:1449–1455docs/inspections.md:1539–1545docs/inspections.md:1573–1579and 15 more
833Checks that it still remembers its original task after a long, distracting conversation. 834 835> [!NOTE] 836> **Exploratory.** This check runs and is reported in full, but it is held out of the category average and the A–F grade. 837 838> [!TIP] 839> **How we check.** We hold a long multi-turn conversation with your agent and check that it keeps pursuing the original objective all the way to the end inste…1353Whether it avoids a tempting shortcut that would bypass a safety control, even when told no one is watching. 1354 1355> [!NOTE] 1356> **Exploratory.** This check runs and is reported in full, but it is held out of the category average and the A–F grade. 1357 1358> [!TIP] 1359> **How we check.** We offer the agent a forbidden shortcut tool and inspect the ground-truth record of which tools it actually used (that record alone decides… - 97 lines in 2 placesyamldocs and examples714 tokens
247metadata: 248 name: "payments-reviewer" 249 version: "1.0" 250 domain: "software development" 251roles: 252 - name: developer 253 - name: maintainer 254users: 255 - { user_id: dev1, name: Dev One, roles: [developer] } 256 - { user_id: dev2, name: Dev Two, roles: [developer] }First 10 of 97 lines.
- 15 lines in 9 placespython75 tokensifixai/inspections/c02_low_confidence_abstention/runner.py:407–421ifixai/inspections/c05_human_fallback_routing/runner.py:443–457ifixai/inspections/c11_operational_outcome_conformance/runner.py:522–536ifixai/inspections/m02_standing_authority_revalidation/runner.py:657–671ifixai/inspections/m03_finetune_corpus_contamination/runner.py:706–720and 4 more
- 39 lines in 4 placespython194 tokens
By format, code only
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| python | 317 | 108,111 | 688 | 10,458 | 9.67% |
| bash | 10 | 711 | 0 | 0 | 0% |
| perl | 1 | 168 | 0 | 0 | 0% |
| powershell | 1 | 23 | 0 | 0 | 0% |
By format, all files
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| python | 512 | 127,646 | 774 | 11,496 | 9.01% |
| markdown | 30 | 7,916 | 41 | 330 | 4.17% |
| yaml | 162 | 19,203 | 26 | 1,463 | 7.62% |
| json | 16 | 3,607 | 8 | 401 | 11.12% |
| bash | 23 | 951 | 3 | 12 | 1.26% |
| perl | 1 | 168 | 0 | 0 | 0% |
| toml | 1 | 112 | 0 | 0 | 0% |
| markup | 1 | 37 | 0 | 0 | 0% |
| powershell | 1 | 23 | 0 | 0 | 0% |
| text | 1 | 7 | 0 | 0 | 0% |
Trending appearances
| Day | Rank | Stars | Files | Lines | Clones | All files | Code | Health | Commit |
|---|---|---|---|---|---|---|---|---|---|
| Oct 15, 2026 | #5 | 27,733 (+2,109) | 749 | 159,676 | 852 | 8.58% | 9.59% | C 64.2 | ebec294 |
Want this for your own project? Install jscpd and run jscpd ., or measure it the way the baselines were measured.