Invalid custom filter regex becomes HTTP 500 instead of a query error
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 20/100
Línea de trabajo
Start at the query-function boundary for filter_keyvals_regex and trace how regex compilation errors become query errors; the issue names the offline Flask query route as the integration point. Check existing QueryFunctionException and QueryExecutionError handling, then review regression coverage for empty and populated input, valid matching and nonmatching patterns, and the HTTP route. Done means malformed patterns return HTTP 400 with a useful diagnostic while valid matching and the stated TypeError behavior remain intact.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Reproduced on current master c7821899ab38c1a39c87d7bf011c22a78de9b205 with the real offline Flask query route (aw-server 994ea988, MemoryStorage, query cache disabled): RETURN = filter_keyvals_regex([], "title", "["); returns HTTP 500 with an uncaught regex compilation error. A valid regex returns HTTP 200.
Expected: malformed custom AQL filter patterns raise the existing QueryFunctionException/QueryExecutionError hierarchy and return HTTP 400 with a useful diagnostic. This is separate from category-rule invalid-regex handling fixed in ActivityWatch/aw-core#176.
Scope: translate regex compilation errors at the query-function boundary only; preserve the low-level transform contract, valid matching, and event-data TypeError behavior. Regression coverage should include empty/populated input, valid matching/nonmatching patterns, and the actual offline HTTP route. I am preparing the scoped repair.
- Lenguaje dominante
- Python
- Estrellas
- 65
- Forks
- 74
- Merge medio
- 2 d 8 h
- PR fusionados (30 d)
- 6
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 ActivityWatch/aw-core
-
Peewee explicit event IDs can move events between bucketsPosiblemente ocupada @TimeToBuildBob la tomó hace 7 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
ActivityWatch/aw-core#195 ·
Los mantenedores suelen responder en 1 día
-
Peewee range queries omit accepted events longer than 24 hoursPosiblemente ocupada @TimeToBuildBob la tomó hace 7 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
ActivityWatch/aw-core#194 ·
Los mantenedores suelen responder en 1 día
-
Truncated AQL dictionary keys raise IndexError instead of a parse errorPosiblemente ocupada @TimeToBuildBob la tomó hace 7 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
ActivityWatch/aw-core#190 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Missing required AQL arguments raise IndexError instead of a query errorPosiblemente ocupada @TimeToBuildBob la tomó hace 7 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
ActivityWatch/aw-core#188 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Whitespace-only empty AQL collections raise QueryParseExceptionPosiblemente ocupada @TimeToBuildBob la tomó hace 7 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 20/100
ActivityWatch/aw-core#186 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de ActivityWatch/aw-core
Issues similares
-
bug severity:low
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
curriculum documentation quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
githubnext/gh-aw-workshop#5367 ·
Los mantenedores suelen responder en 3 días
-
OAuth documentation for GET /api/v2/users/me/ appears inconsistent with required global read scopeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Create Noise Latents ignores randomize_seed and produces the same noise every runPosiblemente ocupada @griptapeops la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
griptape-ai/griptape-nodes-library-diffusers#127 ·
Los mantenedores suelen responder en 1 día
-
Jenkins capacity report: metrics history is lost when archiving a month failsPosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
adoptium/infrastructure#4568 ·
Los mantenedores suelen responder en 1 día