Skip to content

Ground Control Configuration Panel

Jo An edited this page Apr 4, 2024 · 15 revisions

Ground Control Configuration Panel

Overview

Ground Control configuration is a user-friendly panel that allows the teaching admin easily manage their contests/assessments. Administrators can use the panel to toggle token counters, export contest leaderboards, assign entries for voting and customise assessments team sizes. Future developers working on assessments will benefit from a readily available panel for assessment-related controls and features.

Main Features

Feature 1: Token Counter (Completed)

Rationale: Enable administrators to enable token counters which are displayed upon running code. This allows students to easily check their token counts during contests without having to wrap their submissions in the count_tokens function.

Pull Requests

Changelog

  • Added hasTokenCounter to AssessmentConfiguration type in frontend
  • Added hasTokenCounter to assessment_config in backend
  • Added hasTokenCounter, tokenCount, and customNotification to workspace properties
  • Added new ENABLE_TOKEN_COUNTER and DISABLE_TOKEN_COUNTER action in WorkspaceSaga
  • Imported Acorn package to count tokens in the frontend
  • Added Repl output type named NOTIFICATION_OUTPUT with bright style to differentiate it from normal output
  • Added boolean cell in assessment configuration panel to toggle token counter
  • Added max_team_size to Assessment type

Outstanding issues

  • customNotification can be used to create NOTIFICATION_OUTPUT with custom strings, but is currently unused.

Feature 2: Score and Popular Vote Leaderboard for Contests (Completed)

Rationale: Enable students to view both score and popular vote leaderboards.

Pull Requests

Changelog

  • Added popularVoteLeaderboard attribute to IContestVotingQuestion type in frontend
  • Added new tab for leaderboard, which conditionally renders data depending on SideContentType
  • Added popular_score field to answers in backend
  • Added methods which mirrors calculation for relative_score to popular_score
  • Added popularVoteLeaderboard output for voting questions in backend

Feature 3: Ground Control Configuration Panel (Completed)

Rationale: Create a compact interface for assessment/contest management on an individual basis instead of on an assessment type basis for more flexibility.

Pull Requests

Changelog

  • Added ConfigureCell with DialogBox and switches for controlling token counter, voting features, and team assessments
  • Added Gear icon button in Ground Control to access configuration panel
  • Added handleConfigureAssessment action to update assessment properties
  • Added Has Voting Features boolean cell to assessment configurations
  • Added hasTokenCounter and hasVotingFeatures to assessments in backend
  • Added _groundcontrol.scss module for style

Notes

  • Changing assessment configurations in the admin panel will add relevant attributes to an assessment once they are created by default. However, any changes made in the ground control configure panel will override them.

Feature 4: Assign Entries for Voting (Completed)

(Documentation work in progress)


Feature 5: Export Score and Popular Vote Leaderboard (In Progress)

(Documentation work in progress)