Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

An abandoned start holds its interviewer slot for five minutes

Aperta
#539 3 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@matthiola0 ci sta già lavorando.

Dal 29/10/2026.

  • #552 di @matthiola0 — aperta

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
43/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
rust
Ambito
api, backend

Direzione di ricerca

Start by tracing /api/token and claim_and_dispatch, then inspect LocalDispatcher and the room task's candidate join timeout (CANDIDATE_JOIN_LIMIT). Identify how room ownership is authorized and how the existing no-show path releases consent; the proposed release endpoint should stop only an owned room that has not yet been joined. Done means an ended start releases its waiting slot promptly, while joined rooms and unauthorized callers are unaffected.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Follow-up to this review comment on #519.

By the time /api/token answers, claim_and_dispatch has already claimed consent and asked the dispatcher for an interviewer. LocalDispatcher reserves a slot and spawns the room task, and the slot is released only when that task returns. The agent then waits up to CANDIDATE_JOIN_LIMIT (300 s) for the candidate to join.

Since #519 the page can give up a start after the token response. If the candidate presses End while the Strict problem loads or while the LiveKit join is still in progress, connect stops the start and leaves any room it joined, but nothing tells the server. The agent waits for a candidate who will not come, and the slot counts against max_concurrent until the 300 s run out. A guest's slot also counts against the cap of two guest interviews. Other starts in that time can be refused with "The server is running as many interviews as it can right now." For a signed-in candidate, the consent claim stays until the no-show path releases it at the end of the wait.

Proposed fix:

  • Once a token was granted, abandonStart calls a release endpoint with the room name, for example POST /api/token/release.
  • The server releases only a room the caller owns, and does nothing once the candidate has joined. A signed-in caller can be checked against the room authorization /api/token already grants. Guests get no such grant today, so they would need their own check, or could be left out at first.
  • The dispatcher stops the waiting room task, which drops the slot and releases consent through the existing no-show path.

A closed tab still waits out the 300 s, since nothing can send the call then. This only covers starts the page ends itself.

Lingua principale
Rust
Stelle
215
Fork
141
Merge medio
1g 12h
PR unite (30g)
228

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di sysprog21/codetrial

Tutte le issue di sysprog21/codetrial

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.