Local recording ends at Finish, before the learning review

Ouverte Adaptée aux débutants
#663 2 commentaires 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

@richard81115 y travaille déjà.

Depuis le 11/11/2026.

  • #679 par @richard81115 — ouverte

Évaluation

Difficulté
1/5
Temps estimé
Moins d'une heure
Accessibilité débutants
84/100
Type d'issue
Documentation
Clarté
Clairement spécifiée
Activité
Active
Stack technique
rust
Domaine
documentation

Piste de recherche

Lisez la section « Local recordings » dans docs/task-mode.md et vérifiez sa description par rapport au comportement signalé ici : l’enregistrement se termine lorsque la tentative est terminée, avant l’apparition du bilan d’apprentissage. Ajoutez une phrase expliquant que le bilan n’est pas inclus et qu’il doit être enregistré séparément si nécessaire. La tâche est terminée lorsque la documentation décrit clairement où l’enregistrement s’arrête et ce que les apprenants peuvent faire pour enregistrer le bilan.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Observed behavior

The local task recorder stops as soon as the attempt is finished, so the downloaded WebM ends right after the "Finish and freeze this revision" dialog and never shows the learning review. docs/task-mode.md says that completion finalizes the recording, so the behavior matches the documentation.

Why it matters

The course assignment asks for a recording "from the rules page to the learning review after Finish". The built-in recorder cannot capture that last part, and a new capture cannot be started during the attempt.

Steps to reproduce

  1. Start the server with cargo run --release -- web --task-mode and open http://localhost:3000 in Chrome.
  2. Accept the rules, allow the microphone and camera, and calibrate.
  3. On the preparation page, start the local recording, choose this tab and share tab audio.
  4. Press Start, work on the task, press Finish and confirm.
  5. Open the downloaded WebM. Its last frame shows the workspace just after the dialog closes; the learning review that the page shows next is not in the file.

Cause

In web/task.js, attemptOver() calls stopMonitoring(), which calls localRecording.finish() and releases the camera and microphone. The result arrives later and renderReview() shows it, after the recorder has already saved the file.

Plan

The change I can send is a documentation one: a sentence in the "Local recordings" section of docs/task-mode.md stating that the recording ends when the attempt is finished and therefore does not include the learning review, so a learner who needs the review on video knows to capture it separately.

Recording through the review would be a larger change: for an attempt that ends with Finish, keep the tab capture running after monitoring stops, let the recorder drop its microphone input without reporting a lost microphone, and finalize in renderReview() once the review is in the page, with browser tests for both paths. I cannot commit to that before the assignment deadline, so I am leaving it as a direction rather than a promise.

Environment

codetrial 0.1.0 (5570fe9), built from source; server in WSL Ubuntu on Windows 11; Chrome 157.0.8103.39; default task rubik, language C.

Langage dominant
Rust
Étoiles
228
Forks
150
Merge moyen
1 j 3 h
PR mergées (30 j)
226

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de sysprog21/codetrial

Toutes les issues de sysprog21/codetrial

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.