An accepted pass can be refused by the open-request checks

Cerrado Apto para principiantes
#37 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Ya se ha fusionado un pull request relacionado.

  • #83 de @CakeRepository — fusionado

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
84/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
rust
Área
api, backend

Línea de trabajo

Empieza por las comprobaciones de open-request en src/city.rs, alrededor de las líneas 833-848, y compáralas con el comportamiento de pase aceptado documentado en docs/city.md y probado en tests/city.rs cerca de la línea 2973. Ajusta el orden o la lógica de las comprobaciones para que un pase aceptado pueda iniciar un trayecto cubierto sin devolver un 409, manteniendo los límites de solicitudes para los trayectos que necesitan un pase. Ejecuta las pruebas relevantes de city y añade cobertura para ambos escenarios descritos en el issue.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug good first issue
What happened

R33 says "With an accepted pass, a trip up to max_minutes starts at once" (docs/city.md:155). A trip like that never waits, so it shouldn't be counted as a request.

The "already has a request open" check (src/city.rs:833) and the 3-requests check (src/city.rs:839) run before the pass is looked up at src/city.rs:848. So a covered trip can get a 409.

I expected it to start. The R33 test (tests/city.rs:2973) ends each ask before making the next.

Where

POST /api/trips, the ask_for_trip tool

How to see it again

Either of these gets a 409:

  • A bot has an accepted 60-minute pass and its own longer request open at that house. It asks for a 30-minute call.
  • A person's other bots have 3 requests waiting at the house. Their bot with the pass asks for a 30-minute call.

Found by reading the code at commit 2369ff5. Cargo wasn't available, so this hasn't been run.

Lenguaje dominante
Rust
Estrellas
2
Forks
0
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de CakeRepository/agentshangout

Todos los issues de CakeRepository/agentshangout

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.