web: mobile permission card overflows and the approval buttons become unreachable
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 66/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- frontend
Línea de trabajo
Busca la tarjeta de solicitud de permisos de la interfaz web y examina cómo distribuye el texto de comandos largos y los botones Allow once, Allow always y Reject en una ventana gráfica de 375×667. Reprodúcelo con un comando de varias líneas y luego verifica que el área del comando pueda desplazarse y que todos los botones de aprobación sigan siendo accesibles.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
On a phone-sized viewport the web UI's permission request card grows with the command it shows. A long or multi-line command pushes the Allow once / Allow always / Reject buttons past the bottom of the screen, and the card does not scroll, so the request cannot be answered from the client.
Environment
- opencode version: 2.1.1
- OS: Windows_NT 10.0.26300 (win32 x64)
- Terminal: Unavailable: terminal environment variables are not set
- Shell: C:\WINDOWS\system32\cmd.exe
- Install/channel: latest (npm global
@opencode/[email protected]) - Active plugins:
free_models_drift_check.js(local plugin in~/.config/opencode/plugins)
Reproduction
-
Run the v2 server and open the web UI in a phone-sized viewport (iPhone SE, 375x667 CSS pixels), or in a desktop browser in device mode.
-
Add a permission rule that asks, in
opencode.jsonc:{ "permissions": [{ "action": "shell", "resource": "*", "effect": "ask" }] } -
Make the agent run a command that spans several lines, for example a PowerShell pipeline or a multi-line
python -c. -
The permission card shows the whole command, the card ends up taller than the viewport, and the buttons are below the fold with no way to scroll to them.
Expected Behavior
The command text should be clamped (for example a maximum height) and scrollable, so the approval buttons always stay reachable regardless of the command length.
Actual Behavior
The card overflows the viewport, the buttons are cut off and cannot be tapped, and the client is left with a pending permission request it cannot answer.
Additional Context
- The server side works correctly: the request is created, the
permission.askedevent is delivered, and the reply is applied. Verified by creating a request through the API and replying through the API. - Reproducible every time on a phone-sized viewport with a long command, fine on a desktop viewport, so this looks like a small-screen layout problem.
- The same card carries the "always" reply, which stores a durable project-scoped allow rule, so being unable to answer also blocks saving approvals.
- Workaround used for now: keep approval-triggering commands on one short line (write a script file, then run it with a one-line command).
- Related: the request list endpoint
/api/permission/requestis location-scoped, so a client has to pass the session location to see pending requests.
- Lenguaje dominante
- TypeScript
- Estrellas
- 215k
- Forks
- 28.9k
- Merge medio
- 8 h 11 min
- PR fusionados (30 d)
- 365
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una 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 anomalyco/opencode
-
reproduced
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
anomalyco/opencode#57711 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
anomalyco/opencode#57698 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
anomalyco/opencode#57579 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
anomalyco/opencode#57536 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
fs: /cd and file pickers fail on FreeBSD/ZFS — `stat` throws "dev exceeds the safe integer range" (fixed in @effect/platform-node-shared 4.0.5)Posiblemente ocupada @argszero la tomó hoy. Abiertoreproduced
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
anomalyco/opencode#57518 · 3 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
Todos los issues de anomalyco/opencode
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
paperclipai/paperclip#17151 ·
Los mantenedores suelen responder en 1 día
-
needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
AgoraIO-Extensions/agent-infra#3159 ·
Los mantenedores suelen responder en 1 día
-
blocklist addition
Dificultad 1/5 Menos de una hora Aptitud para principiantes 66/100
MetaMask/eth-phishing-detect#304596 ·
Los mantenedores suelen responder en 1 día
-
friction
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
kentcdodds/kody#4142 ·
-
[Bug] Statistics | Task statistics are always empty on MikroORM with MySQL or SQLitePosiblemente ocupada @NdekoCode la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
ever-co/ever-gauzy#11214 ·
Los mantenedores suelen responder en 1 día