Bug: curated starter accepts an empty URL fragment despite its no-fragments contract
I maintainer di solito rispondono entro 1 giorno
Una pull request collegata è già stata integrata.
- #37 di @drevendev — integrata
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Review examples/curated-starter/curate.py and the existing candidate fix in beautifulrepo/workshop-hardening-20261018; this issue says that work is already underway. Check the regression cases for /#, /path#, /#section, and /%23, then run the repository checks. Done means the empty literal fragment is rejected while %23 remains accepted and the listed URL behaviors are preserved.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Reproduced on the public product
Review: 2026-10-19; master c2cbcf07ae67263ec7dbeb7cfb5822ea65b49c38.
examples/curated-starter/curate.py, blob 32cdddb2b79696ee2bb75dfa37ca7105292ef22a.
checked_url() accepts https://example.org/# and https://example.org/path#. A trailing literal # introduces an empty fragment, but parts.fragment is the empty string, so the current truthiness check misses it. The curated starter explicitly intends to reject fragment-bearing URLs.
Priority and existing work
P2 contract regression. A candidate fix already exists in beautifulrepo/workshop-hardening-20261018; review that work instead of creating another implementation. It has not reached the reviewed master.
Acceptance
- Reject a literal fragment delimiter even when the fragment text is empty.
- Continue accepting the encoded character
%23within an otherwise valid path/query. - Add regression cases for
/#,/path#,/#sectionand/%23. - Preserve original no-credentials, URL encoding and deterministic-output behavior.
- Run current full repository checks before integration.
This is deliberately separate from #26: the core catalog and curated starter have different fragment policies. Do not apply a global fragment ban to the core catalog merely to unify implementations.
- Lingua principale
- Python
- Stelle
- 2
- Fork
- 0
- Merge medio
- 3h 40m
- PR unite (30g)
- 174
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 drevendev/BeautifulRepo
-
agent-skill help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
drevendev/BeautifulRepo#258 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
agent-skill
Difficoltà 5/5 Più di una settimana Idoneità per principianti 5/100
drevendev/BeautifulRepo#257 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
drevendev/BeautifulRepo#255 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 22/100
drevendev/BeautifulRepo#254 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Retire the hacktoberfest label: it claims participation the programs guide rules outForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertadocumentation self-check
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
drevendev/BeautifulRepo#100 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di drevendev/BeautifulRepo
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
FinanceFlash/unvibecode#509 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
FAIRmat-NFDI/nomad-distro-dev#161 ·
-
bug v2
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
modelcontextprotocol/python-sdk#3821 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug severity:low
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 2 giorni
-
Log-odds calibration uses upper middle score instead of median for even candidate setsForse già presa @flysheep-ai l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno