Dashboard: keyboard triage queue for the Detections tab
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Tranquilo
- Stack tecnológico
- react, typescript
- Área
- accessibility, frontend, testing
Línea de trabajo
Start in apps/dashboard/components/detections-panel.tsx and inspect the existing detection list, detail pane, disposition flow, and tests; then run npm run test to understand current behavior. Add keyboard navigation, shortcut handling, and focus transitions while preserving the written-reason requirement and suppressing shortcuts in note and assignee fields. Done means the new key-handling tests pass, keyboard triage works end to end, and npm run lint plus npx tsc --noEmit are clean; bulk selection can be split into a separate PR.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The triage loop shipped in v0.3.0 and the product now tells operators to drive the untriaged count to zero. The UI makes that a mouse job.
Scored accessibility 4/10 in the 2026-07-25 review, and it is the widest gap against Splunk ES and Elastic Security. Analysts work a queue with the keyboard.
Task
In apps/dashboard/components/detections-panel.tsx:
j/kor arrow keys to move through the detection listEnterto open the detail pane- Shortcuts for the common dispositions (
aacknowledge,rresolve,ffalse positive,xaccepted risk) ?shows the shortcut list- Focus moves into the detail pane when it opens, and back to the list when it closes
Keep the note requirement intact. false_positive and risk_accepted still need a written reason, so those shortcuts should focus the note field rather than submitting.
Also worth doing here
Bulk selection. Twenty burst detections from one noisy week currently have to be closed one at a time, with a note typed into each. Shift-click range selection plus one disposition applied to the selection would fix it. Split into a separate PR if it makes the change easier to review.
Acceptance criteria
- Keyboard navigation works without a mouse, end to end
- Focus is managed when the detail pane opens and closes
- Shortcuts do not fire while typing in the note or assignee fields
-
npm run testgreen, plus tests for the new key handling -
npm run lintandnpx tsc --noEmitclean
Notes
Not labelled good first issue because it touches the flagship feature and needs real care around focus management. Comfortable with React and accessibility work is the bar.
- Lenguaje dominante
- Python
- Estrellas
- 10
- Forks
- 5
- Merge medio
- 9 h 7 min
- PR fusionados (30 d)
- 116
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 blitzcrieg1/agentmetry
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
blitzcrieg1/agentmetry#360 ·
Los mantenedores suelen responder en 1 día
-
bug detection-rule
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
blitzcrieg1/agentmetry#345 ·
Los mantenedores suelen responder en 1 día
-
detection-rule good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
blitzcrieg1/agentmetry#25 ·
Los mantenedores suelen responder en 1 día
-
enhancement good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
dlp-rule good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
blitzcrieg1/agentmetry#3 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de blitzcrieg1/agentmetry
Issues similares
-
Release notes from PR titlesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
[DATA] BDC portfolio DataFrame converts filed zero fair value and principal to missing valuesAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
dgunning/edgartools#1853 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
Imbad0202/academic-research-skills#1039 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
openmainframeproject/feilong#980 ·
Los mantenedores suelen responder en 5 días