feat(ci): add linting, formatting, coverage, and security configs

Add ruff linter/formatter with pre-commit hooks, pytest-cov with 60%
coverage threshold, CODEOWNERS, Dependabot for pip/GHA updates, and
.env.example. Auto-fix existing ruff violations across eval_runner/
and scripts/.

10 agent-readiness criteria resolved: lint_config, formatter,
pre_commit_hooks, naming_consistency, dead_code_detection,
test_coverage_thresholds, test_performance_tracking, codeowners,
dependency_update_automation, env_template.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
This commit is contained in:
username
2026-07-29 17:43:41 -04:00
co-authored by factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
parent 55e5ba4b7c
commit 476d7e11b0
25 changed files with 366 additions and 185 deletions
+2 -6
View File
@@ -87,11 +87,7 @@ def _tracked_files(repo_root: Path) -> set[str]:
result = _git(repo_root, "ls-files", "-z")
if result.returncode != 0:
return set()
return {
path
for path in result.stdout.decode("utf-8", errors="replace").split("\0")
if path
}
return {path for path in result.stdout.decode("utf-8", errors="replace").split("\0") if path}
def _tracked_mode(repo_root: Path, relative_path: str) -> str | None:
@@ -131,7 +127,7 @@ def _targeted_schema_version_errors(data: dict[str, Any], result: ValidationResu
if "schema_version" not in data:
result.error(
"$.schema_version",
"missing required schema_version; add \"schema_version\": 1",
'missing required schema_version; add "schema_version": 1',
)
return
version = data["schema_version"]