74ec9843f0
prd-number-check / require-numbered-prds (pull_request) Successful in 9s
tracker-policy-pr / check-pr (pull_request) Successful in 10s
test / unit (pull_request) Successful in 49s
test / image-input-builds (pull_request) Successful in 50s
test / integration-docker (pull_request) Successful in 56s
test / coverage (pull_request) Successful in 15s
test / image-input-builds (push) Successful in 46s
Update Quality Badges / update-badges (push) Successful in 56s
test / coverage (push) Successful in 22s
test / integration-docker (push) Successful in 1m3s
test / unit (push) Successful in 48s
lint / lint (push) Successful in 2m59s
Lower the diff-coverage gate from 90% to 80% and the critical-module target from 90% to 85%. The 90% diff gate forced back-fill tests on nearly every changed line; 80% keeps new code honest without the churn. Global coverage stays informational per ADR 0004 (no new gate added). Updates scripts/diff_coverage.py, scripts/coverage.sh, scripts/critical-modules.txt, .gitea/workflows/test.yml, and records the change as a dated revision in ADR 0004. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
55 lines
1.9 KiB
Plaintext
55 lines
1.9 KiB
Plaintext
# Critical security/logic core held to the >=85% coverage bar by
|
|
# docs/decisions/0004-coverage-policy.md.
|
|
#
|
|
# SINGLE SOURCE OF TRUTH: scripts/coverage.sh (the `critical` report) and
|
|
# .gitea/workflows/update-badges.yml (the "core coverage" badge) both read
|
|
# this file. Add a module here when it becomes part of the core; a coverage
|
|
# number that silently stops measuring a module is worse than no badge.
|
|
#
|
|
# One module path per line, relative to the repo root. Blank lines and
|
|
# `#` comments are ignored. scripts/critical_modules.py rejects missing,
|
|
# duplicate, non-Python, and out-of-repository entries before coverage runs.
|
|
|
|
# Host-side egress planning and secret preparation.
|
|
bot_bottle/egress/plan.py
|
|
bot_bottle/egress/service.py
|
|
|
|
# Gateway egress policy, matching, and DLP enforcement.
|
|
bot_bottle/gateway/egress/addon.py
|
|
bot_bottle/gateway/egress/addon_core.py
|
|
bot_bottle/gateway/egress/context.py
|
|
bot_bottle/gateway/egress/dlp.py
|
|
bot_bottle/gateway/egress/dlp_config.py
|
|
bot_bottle/gateway/egress/dlp_detectors.py
|
|
bot_bottle/gateway/egress/matching.py
|
|
bot_bottle/gateway/egress/schema.py
|
|
bot_bottle/gateway/egress/types.py
|
|
|
|
# Manifest trust boundary and schema.
|
|
bot_bottle/manifest/agent.py
|
|
bot_bottle/manifest/bottle.py
|
|
bot_bottle/manifest/egress.py
|
|
bot_bottle/manifest/extends.py
|
|
bot_bottle/manifest/git.py
|
|
bot_bottle/manifest/index.py
|
|
bot_bottle/manifest/loader.py
|
|
bot_bottle/manifest/schema.py
|
|
bot_bottle/manifest/util.py
|
|
|
|
# Host-side and gateway-side git policy enforcement.
|
|
bot_bottle/git_gate/host_key.py
|
|
bot_bottle/git_gate/plan.py
|
|
bot_bottle/git_gate/provision.py
|
|
bot_bottle/git_gate/service.py
|
|
bot_bottle/gateway/git_gate/render.py
|
|
bot_bottle/gateway/git_gate/http_backend.py
|
|
|
|
# Supervise proposal protocol and data plane.
|
|
bot_bottle/supervisor/plan.py
|
|
bot_bottle/supervisor/types.py
|
|
bot_bottle/gateway/supervisor/server.py
|
|
|
|
# Shared parsers and state validation.
|
|
bot_bottle/yaml_subset.py
|
|
bot_bottle/bottle_state.py
|