gate() accepts an unvalidated floor: enforce duplicate-identity rejection at the gate boundary
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- typescript
- Área
- accessibility, testing
Línea de trabajo
Read the existing duplicate check in parseEvidenceFloor and inspect the exported gate() implementation and its GateInput type. Trace how duplicate keys become a last-wins map, then add coverage for passing duplicate entries directly to gate(). Done means this path rejects duplicates or accepts only a validated floor type, preventing an order-sensitive false green.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Follow-up to #217.
What is wrong
#217 rejects duplicate floor identities in parseEvidenceFloor, which covers the real run path. But gate() is exported and accepts an EvidenceFloor directly, and it builds a last-wins map without validation. Two same-key entries passed straight to gate() let one current barrier be marked carried, so the verdict is order-sensitive and can be a false green.
Fix
Enforce duplicate-identity rejection at the gate boundary as well as at parse, or change GateInput to accept only a validated floor type.
- Lenguaje dominante
- TypeScript
- Estrellas
- 0
- Forks
- 0
- Merge medio
- 2 h 48 min
- PR fusionados (30 d)
- 8
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de usabl-dev/usabl
-
area: engine bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
-
Stop hook allows a stop on an unknown verdict, and the self-check prints IDLE for a null verdictAbiertoarea: assistants bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
area: engine bug security
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Overlay: browser context failures are counted per plugin, not per browser, and close is not sharedAbiertoarea: overlay bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
-
area: engine enhancement performance
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Todos los issues de usabl-dev/usabl
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
maniator/verticopolis#1303 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
components-web-app/docs#297 ·
-
listFeatures/getFeatureExamples never return Kotlin examples for Android or server Kotlin SDKsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
appwrite/mcp-for-docs#23 · 1 comentario ·
-
`@vanilla-extract/turbopack-plugin`: "getImageSize is not a function" with Next.js 16.4.x when a `.css.ts` file imports an imagePosiblemente ocupada @aevarOrigo la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
vanilla-extract-css/vanilla-extract#1799 · 1 comentario ·
-
native
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
prime-radiant-inc/evener#4839 ·
Los mantenedores suelen responder en 1 día