Let candidates choose a report improvement as the next practice focus
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 74/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- javascript
- Bereich
- frontend
Rechercherichtung
Start by reading web/render.js::reportMarkup() and the practice-focus flow in web/problem-picker.js and web/app.js. Trace how a selected item can reach the lobby without changing the existing automatic Carry forward behavior or the separate sharing opt-in, then add browser regression coverage for both paths. Done means the exact item is selected, sharing remains unchecked, and the listed interview settings and downloadable Markdown report remain unchanged.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Problem
A report may recommend several different improvements, such as problem restatement and edge-case enumeration. When a candidate prepares another practice session or uses Try again, CodeTrial currently derives the practice focus from saved reports automatically. The candidate cannot explicitly choose which improvement item should become that focus.
Current behavior
The existing practice-focus flow was introduced as part of #38, including commit 26410f7 (Let a candidate share a practice focus).
I reviewed current main at revision 8f5ad5c.
web/render.js::reportMarkup()renders everyimprovementPlanitem under Practice next, including its phase, drill, duration, success criterion, and self-review checks.web/problem-picker.js::practiceFocus()derives one focus from saved reports. A weakness repeated across reports wins, while ties preserve the newer report and plan ordering.- The derived focus contains the weakness, drill, success criterion, and occurrence count. It does not change problem selection or become new assessment evidence.
web/app.jsdisplays the derived focus in the lobby as Carry forward and lets the candidate explicitly choose whether to share it with Jim.web/interview.jsconsumes the shared focus from session storage.src/agent/prompts.rsallows the shared practice focus to guide at most one neutral follow-up. It does not change the problem, expected solution, rubric, score, or correctness decision.- The existing Try again action selects the previous problem and restores related interview settings, but it does not select a particular
improvementPlanitem from that report.
The existing path therefore supports carrying an automatically selected practice focus into another interview, but it does not let the candidate choose a specific improvement item from the report.
Desired outcome
Each improvement item in the web report has a Practice this action. Pressing it carries that specific improvement item into the lobby as the selected practice focus.
For example, if the candidate chooses an edge-case enumeration item, the existing practice-focus area could show:
Selected practice focus · Test
Drill: Enumerate boundary and edge cases before running tests.
Success: Identify the relevant boundary cases before execution.
The existing Share this focus with Jim checkbox remains below the selected focus and stays unchecked until the candidate explicitly opts in. If the candidate does not press Practice this, the current automatically derived Carry forward behavior remains unchanged.
Proposed scope
- Add a Practice this action to each valid
improvementPlanitem in the web report. - Carry the selected item's phase, weakness, drill, and success criterion into the lobby.
- Let the explicitly selected item take precedence over
practiceFocus(reports)for that lobby session. - Render the selected item in the existing practice-focus area above Share this focus with Jim.
- Keep sharing the focus with Jim as a separate explicit opt-in.
Acceptance criteria
- Each valid Practice next item in the web report offers Practice this.
- Pressing Practice this makes that exact improvement item the selected practice focus in the lobby.
- The explicitly selected item takes precedence over the automatically derived recurring focus for that lobby session.
- Share this focus with Jim remains unchecked after selecting an item.
- If no improvement item is explicitly selected, the existing
practiceFocus()behavior remains unchanged. - Selecting a practice focus does not change the selected problem, difficulty, session length, interview format, or editor settings.
- The downloadable Markdown report remains unchanged.
- Browser regression coverage verifies that Practice this carries the exact selected item into the lobby, leaves sharing with Jim unchecked, and preserves the existing automatic Carry forward behavior when no item is selected.
- Vorherrschende Sprache
- Rust
- Sterne
- 228
- Forks
- 150
- Ø Merge
- 1 T. 3 Std.
- Gemergte PRs (30 T.)
- 230
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus sysprog21/codetrial
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
sysprog21/codetrial#646 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
sysprog21/codetrial#645 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Show recorded scores in past attempt rowsEvtl. vergeben @liehcheng hat das vor 3 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
sysprog21/codetrial#604 · 4 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Calibration can pass invalid assessability dataEvtl. vergeben @Jonathas2127 hat das heute übernommen. Offen
sysprog21/codetrial#649 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
A failed GitHub sign-in shows only a JSON errorEvtl. vergeben @Ray891220 hat das heute übernommen. Offen
sysprog21/codetrial#644 · 2 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in sysprog21/codetrial
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 94/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 2 Tagen
-
ci enhancement need-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement good first issue help wanted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
area:ui
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
openfootmanager/openfootmanager#1365 ·
Maintainer antworten meist innerhalb von 1 Tag