{ "codeflash_base": "https://github.com/codeflash-ai/codeflash/pull", "internal_base": "https://github.com/codeflash-ai/codeflash-internal/pull", "audit_date": "2026-04-09", "completion_date": "2026-04-23", "org": "codeflash-ai", "total_forks": 200, "active_forks": 26, "fork_runs_audit_period": 7012, "fork_runs_monthly": 23373, "fork_failing_monthly": 960, "fork_cost_yr": 248, "ghost_workflows_disabled": 13, "workflows_before": 22, "workflows_after": 7, "required_checks_before": 13, "required_checks_after": 1, "skip_savings_per_pr": 1.85, "fork_ci": [ {"repo": "sglang", "runs": 4936, "cost_yr": 4, "runners": "Linux", "pattern": "CI Failure Monitor (cron, skips on fork)"}, {"repo": "kornia", "runs": 308, "cost_yr": 226, "runners": "Linux + Windows + macOS", "pattern": "Daily scheduled CPU test matrix"}, {"repo": "ray", "runs": 527, "cost_yr": 3, "runners": "Linux", "pattern": "Dependabot + Stale PR bot"}, {"repo": "lerobot", "runs": 330, "cost_yr": 12, "runners": "Linux", "pattern": "Dependabot + Full Tests"}, {"repo": "next.js", "runs": 217, "cost_yr": 3, "runners": "Linux", "pattern": "Dependabot only"}, {"repo": "strapi", "runs": 118, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot (lodash x 20+ packages)"}, {"repo": "rasa", "runs": 85, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot"}, {"repo": "Rocket.Chat", "runs": 80, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot"}, {"repo": "nest", "runs": 73, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot (@nestjs/core x 20+ samples)"}, {"repo": "openclaw", "runs": 68, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot"}, {"repo": "appsmith", "runs": 64, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot"}, {"repo": "15 others", "runs": 206, "cost_yr": 1, "runners": "Linux", "pattern": "Dependabot / misc"} ], "findings": { "codeflash": [ {"finding": "Wildcard path triggers on 12 E2E workflows", "impact": "Every PR triggered ~2hrs of E2E tests", "fix": "Targeted path filters", "pr": 2025}, {"finding": "Broken claude-code-action (v1.0.90 Bedrock OIDC)", "impact": "60-100% failure rate on Claude Code workflows", "fix": "Pinned to v1.0.89", "pr": 2026}, {"finding": "Dependabot scanning test fixtures", "impact": "70% of Dependabot runs failing", "fix": "Added dependabot.yml excluding code_to_optimize/", "pr": 2027}, {"finding": "13 ghost workflows (deleted source files)", "impact": "Actions dashboard clutter, confusing signals", "fix": "gh workflow disable on all 13", "pr": null}, {"finding": "17 separate workflow files, 13 required checks", "impact": "Workflow-only PRs stuck at Pending, admin merge required", "fix": "Single ci.yaml with gate job", "pr": 2044}, {"finding": "No npm/Maven caching, duplicate workflows", "impact": "Slow JS/Java CI, redundant compute", "fix": "Consolidated + caching", "pr": 2050}, {"finding": "Outdated action versions, broken Windows paths", "impact": "CI failures on Windows matrix", "fix": "Upgraded actions + fixed paths", "pr": 2052}, {"finding": "Stale codeflash.yaml", "impact": "Superseded by codeflash-optimize.yaml", "fix": "Deleted", "pr": 2056} ], "codeflash-internal": [ {"finding": "Deploy AI Service path included .github/workflows/**", "impact": "Any workflow edit triggered production deploy", "fix": "Scoped to actual service paths", "pr": 2588}, {"finding": "Claude Code workflow had no path filters", "impact": "Fired on every PR/comment", "fix": "Added paths-ignore", "pr": 2588}, {"finding": "Publish to PyPI permanently disabled (if: false)", "impact": "Skipped run noise on every push to main", "fix": "Disabled via API", "pr": 2588}, {"finding": "Broken claude-code-action (same v1.0.90 regression)", "impact": "85% failure rate", "fix": "Pinned to v1.0.89", "pr": 2587} ] }, "prs_merged": [ {"pr": 2025, "repo": "codeflash", "date": "2026-04-09", "title": "Replace wildcard path triggers on 12 E2E workflows"}, {"pr": 2026, "repo": "codeflash", "date": "2026-04-09", "title": "Pin claude-code-action to v1.0.89 (Bedrock auth fix)"}, {"pr": 2027, "repo": "codeflash", "date": "2026-04-09", "title": "Exclude test fixtures from Dependabot"}, {"pr": 2044, "repo": "codeflash", "date": "2026-04-09", "title": "Consolidate 17 workflows into single ci.yaml with gate job"}, {"pr": 2047, "repo": "codeflash", "date": "2026-04-09", "title": "Path filters, validate-pr action, fetch-depth, continue-on-error"}, {"pr": 2050, "repo": "codeflash", "date": "2026-04-09", "title": "npm cache, Maven consolidation, remove duplicate workflow"}, {"pr": 2052, "repo": "codeflash", "date": "2026-04-10", "title": "Upgrade action versions, add uv cache, fix broken paths, DRY publish"}, {"pr": 2053, "repo": "codeflash", "date": "2026-04-10", "title": "Fix shell: bash for Windows conditional install"}, {"pr": 2056, "repo": "codeflash", "date": "2026-04-10", "title": "Delete disabled codeflash.yaml workflow"}, {"pr": 2587, "repo": "codeflash-internal", "date": "2026-04-09", "title": "Pin claude-code-action to v1.0.89"}, {"pr": 2588, "repo": "codeflash-internal", "date": "2026-04-09", "title": "Fix deploy path filter, Claude Code paths, disable PyPI"} ], "direct_actions": [ {"action": "Disabled 13 ghost workflows", "date": "2026-04-09", "repo": "codeflash"}, {"action": "Disabled Publish to PyPI workflow", "date": "2026-04-09", "repo": "codeflash-internal"}, {"action": "Closed stale Dependabot PR #2012", "date": "2026-04-09", "repo": "codeflash"}, {"action": "Migrated branch protection to rulesets", "date": "2026-04-09", "repo": "codeflash"}, {"action": "Disabled Actions on 200+ forks", "date": "2026-04-23", "repo": "org-wide"} ], "operational_before_after": { "workflow_files": [22, 7], "required_checks": [13, 1], "non_code_pr_cost": [1.85, 0.001], "fork_failing_runs_monthly": [960, 0], "admin_merges_needed": true }, "run_volume": { "codeflash_feb": 21307, "codeflash_apr_projected": 6219, "codeflash_reduction_pct": 71, "internal_feb": 2494, "internal_apr_projected": 3864, "total_eliminated_monthly": 16000 }, "billing": { "enterprise_included_min": 50000, "overage_before_min": 214872, "overage_after_min": 89613, "overage_saved_min": 125259, "overage_saved_monthly_usd": 1002, "overage_saved_annual_usd": 12025, "non_code_pr_before_sec": 780, "non_code_pr_after_sec": 8 } }