WARDEN-WP-0033 T01/T02: two under-graded lanes, and ADR-0008
secrets-engine reviewed our catalog metadata while drafting their five entries and graded issue-core-ingestion-api-key and reuse-surface-hub-write-token high. We had both as standard, and had deliberately regraded them DOWN on 2026-08-19. They are right. Both paths carry a second credential our grade never looked at -- GITEA_BACKEND_TOKEN (CCR-2026-0002, a deliberate field-set decision) and a dual-consumer webhook HMAC (CCR-2026-0005). Neither is recovered by rotating the credential the lane is named after. The defect is structural: we graded the lane by its headline field, but a read returns every field at the path. Worse, the evidence was already in the CCRs we cite as authoritative -- not missing, unread -- and a test asserted the wrong answer, so a correct first-pass grade got overruled by it. ADR-0008 records the rule: a grade covers every field its path discloses. ADR-0007 is unchanged and still governs; this says what the grade is of. Six of the remaining standard lanes have no KV path. Two have paths and no field evidence; per ADR-0008 they are stated as unknown rather than assumed, and left for operator-sanctioned grading. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
9b7e2e9bd2
commit
c357ce5908
8 changed files with 155 additions and 10 deletions
|
|
@ -543,8 +543,13 @@ def test_high_risk_lanes_classified():
|
|||
assert "railiance-backup-offsite-lane" in high
|
||||
assert "forgejo-admin-api-token" in high
|
||||
assert "openrouter-llm-connect" in high
|
||||
# Ordinary workload secrets stay standard unless reclassified.
|
||||
assert catalog.get("issue-core-ingestion-api-key").is_high_risk is False
|
||||
# WARDEN-WP-0033-T02: these two were asserted standard here, and the assertion
|
||||
# held a defective grade still. Both paths carry a second credential the grade
|
||||
# ignored -- GITEA_BACKEND_TOKEN (CCR-2026-0002) and the dual-consumer webhook
|
||||
# HMAC (CCR-2026-0005). A read discloses every field at a path, so the grade
|
||||
# must cover the union, not the headline field.
|
||||
assert "issue-core-ingestion-api-key" in high
|
||||
assert "reuse-surface-hub-write-token" in high
|
||||
|
||||
|
||||
def test_invalid_risk_rejected(tmp_path):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue