Remediation trusts the audit cache regardless of framework, level, or tag filter
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
Direzione di ricerca
Start with core/audit_cache.py and remediation/orchestrator.py, then trace how run_sieve_audit writes the cache and how [stores.cache] is configured. Check the existing cache and remediation tests. Done means cache reads reject mismatched framework or scope, filtered audits do not replace the unfiltered cache, and remediation reads from the configured store; an open linked pull request is already addressing this issue.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Remediation uses cached audit results without checking that the cached audit covers what it is about to remediate.
remediation/orchestrator.py reads the cache with read_audit_cache(local_path) and remediates every cached result whose status is FAIL.
core/audit_cache.py checks only the TTL, the HEAD commit, and whether the working tree is dirty. The envelope records framework and level, but the read never compares them. A tag filter (audit_openssf_baseline(tags="domain=VM")) is not recorded at all.
What goes wrong:
- A level 1 audit, a tag-filtered audit, or an audit of another framework (for example the reproducibility framework in the same checkout) leaves a cache that a later Baseline remediation treats as the full Baseline audit.
- The remediation then fixes only the subset it sees, or nothing, and reports accordingly.
run_sieve_auditalways wrote the cache, so any subset run replaced the full-audit cache. The 043 branch addswrite_cache=Falsefor its post-remediation re-check only; filtered audits still overwrite the cache.
Also: the orchestrator reads with the default cache store, ignoring an operator's [stores.cache] setting, which the audit honors when writing (feature 035).
Proposed fix:
- Record the framework, level, and tag filter in the envelope.
- Have
read_audit_cachetake the expected framework and scope, and treat a mismatch as a miss. - Don't let a filtered audit replace an unfiltered cache.
- Read through the same configured store the audit writes to.
- Lingua principale
- Python
- Stelle
- 22
- Fork
- 27
- Merge medio
- 1g 19h
- PR unite (30g)
- 39
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di darnitdevorg/darnit
-
ci needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
darnitdevorg/darnit#607 ·
I maintainer di solito rispondono entro 1 giorno
-
dependencies module-baseline needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
darnitdevorg/darnit#606 ·
I maintainer di solito rispondono entro 1 giorno
-
A test starts real Sigstore signing (interactive OIDC login) when the attestation extra is installedApertamodule-baseline needs triage testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
darnitdevorg/darnit#604 ·
I maintainer di solito rispondono entro 1 giorno
-
`darnit validate` crashes on openssf-baseline.toml summarising levelsForse già presa @i-am-paradox l’ha presa 3 giorni fa. Apertainterface-cli module-core
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
darnitdevorg/darnit#589 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Plugins hard-code version "0.1.0" while the packages are at 0.1.1Forse già presa Una pull request collegata a questa issue è aperta o già unita. Apertagood first issue maintenance
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
darnitdevorg/darnit#587 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di darnitdevorg/darnit
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
PolicyEngine/policyengine-us#10262 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
kellyjonbrazil/jc#788 ·
I maintainer di solito rispondono entro 2 giorni
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
`/search.json` ignores the documented `editions.sort` parameterForse già presa @PranavD2905 l’ha presa oggi. ApertaAffects: Server Good First Issue Module: Solr Needs: Triage Theme: Public APIs Theme: Search
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
internetarchive/openlibrary#13989 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug P2: misleading query
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
jeffknupp/association#478 ·