refactor: simplify to a list of intentionally-skipped rungs
Some checks failed
continuous-integration/drone/push Build is failing

Per operator: drop the gap-sensitivity / cap-intent-clause / stale-detection
machinery. Model is now dead simple — recipe_meta.EXPECTED_NA = {rung: reason}
lists the rungs a recipe intentionally skips; ANY rung skipped (N/A) and not in
that list is unintentional.

results.json: replace the 'na' block + level_cap_intent with
  skips: { intentional: {rung: reason}, unintentional: [rung] }
plus level_cap_rung (which rung capped). Badge/card derive intentional-vs-
unintentional from whether the capping rung is in the intentional list. Skips
still cap the level (never inflate). custom-html-tiny lists all three rungs it
intentionally skips (backup_restore, integration, recipe_local).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
autonomic-bot
2026-06-09 02:36:53 +00:00
parent d733e2c4ca
commit b3ab68a9dd
6 changed files with 105 additions and 146 deletions

View File

@ -4,14 +4,14 @@
DEPLOY_TIMEOUT = 120
HTTP_TIMEOUT = 90
# Intentionally-N/A tiers (reviewed opt-out, NOT a coverage gap). custom-html-tiny is a stateless
# static-web-server: it serves an ephemeral `content` volume that the harness seeds at deploy time
# (install_steps.sh) and holds no persistent or user data, so there is nothing to back up or restore.
# The recipe therefore declares no `backupbot.backup` label and the L3 backup/restore rung is N/A.
# Declaring it here marks that N/A as deliberate, so the run is annotated "intentional" instead of
# being flagged as a possible missing-coverage gap. (N/A still caps the level — the harness never
# claims a rung it did not verify; this only explains *why* the cap is expected.)
# Rungs this recipe INTENTIONALLY skips, each with a reason. Any rung that is skipped (N/A) and is
# NOT listed here is reported as an *unintentional* skip (a coverage gap to fill or declare). A skip
# still caps the level either way — the harness never claims a rung it did not verify; this only
# records that the skip is deliberate. custom-html-tiny is a stateless static-web-server, so:
EXPECTED_NA = {
"backup_restore": "stateless static file server: serves an ephemeral content volume seeded at "
"deploy, with no persistent/user data to back up or restore (no backupbot.backup label)",
"integration": "no SSO/OIDC or cross-app surface — a static file server has no auth integration",
"recipe_local": "the upstream recipe ships no tests/ of its own; coverage is the cc-ci generic "
"install tier + the functional serve test",
}