Conversation
brianrodri
approved these changes
Aug 20, 2026
…TML templates removing inconsistency of next 20 files (part-10) (oppia#27119) * Fix part of oppia#25941: Clean up legacy embedded <style> tags from HTML templates (part-10) * Fixed import and styleUrls in ts file * Fixed import path * Fixed failing acceptance tests * Fixed feedback-updates-page css
…ent start and submission flow (oppia#27121) * Created stub intent handler and frontend/backend API services with initial GET logic * Add unit tests for handler and async API service call * Create initial service, decorator, and handler * Lint checks * Add docstrings, improve test coverage, and fix failing lint and backend tests * Update docstrings, add test coverage, and fix failing tests * Updated submission flow fixed mypy checks * Updated test and logic * Fixed query * Reverted some changes and fix failing test * Remove CertificateAssessmentAnswer and validate responses before write * Add indexed certificate_id field and use bounded query for next attempt index * Updated docstring * Address review comments in certificate assessment submission flow * Fixed lint checks * Fix submit certificate assessment handler unit tests to mock attempt retrieval service * Fix lint and mypy errors in certificate assessment code * Use attempt_id in certificate question access decorator * [GSoC 2026] M2.16 - Fix part of oppia#24717: Restrict certificate assessment player to logged-in learners and show 404 for unavailable certificates * Lint check * Fixed typescript error * [GSoC 2026] Fix part of oppia#24717: Improve certificate assessment player page and fix bugs * Fix strict typescript check errors in conversation skin spec * fix: Harden certificate assessment player page (auth guard, root component, player component) * Fix lint errors in certificate assessment player page spec * Address brianrodri review: rename bannerClick, reorder interfaces, JSDoc, constants * Add CertificateAssessmentQuestionData domain model to avoid snake_case bleed * Replace manual answer comparison with AnswerClassificationService Instead of extracting correct answers from rule inputs and comparing them manually (extractCorrectAnswerText, extractCorrectAnswerIndex, extractCorrectAnswerOptionIds, isResponseCorrect), delegate correctness checking to the shared AnswerClassificationService. This reuses the existing interaction-specific rule functions (Equals, FuzzyEquals, etc.) and avoids introducing a bifurcated helper that could diverge from the shared implementation. - Remove correctAnswerText, correctAnswerIndex, correctAnswerOptionIds from AssessmentQuestion; add stateData field instead. - Inject AnswerClassificationService and 4 rules services (MultipleChoiceInput, ItemSelectionInput, TextInput, NumericInput). - Add convertAnswerForClassification to convert raw string answers to the typed format expected by each interaction's rules service. - Fix test data: default_outcome now has labelled_as_correct: false so that incorrect answers are properly classified as incorrect. * Support all 8 question interactions in certificate assessment player Add support for FractionInput, NumberWithUnits, DragAndDropSortInput, and ImageClickInput interactions alongside the existing MultipleChoice, ItemSelection, TextInput, and NumericInput. - Import rules services for all 8 interactions. - Update AssessmentQuestionType union with fraction_input, number_with_units, drag_and_drop_sort, and image_click. - Update getQuestionType, getRulesService, and convertAnswerForClassification for each new interaction. - Add conversation skin templates for drag-and-drop sort (checkboxes) and image click (text fallback) interactions. - Remove dead NumberWithUnits constant that was incorrectly mapped to numeric_input. * Refactor certificate assessment player to use native interaction components Replace custom question rendering with oppia-interaction-display driven by ExplorationHtmlFormatterService, and route answers through CurrentInteractionService with typed InteractionAnswer values. Extend interaction components with a lastAnswer input to restore previous selections when navigating between questions. * Fix certificate assessment review findings and CI failures * Add lifecycle cleanup and strict typing fixes for certificate assessment * Remove dead code and redundant comments from certificate assessment player * Fix type errors in DragAndDropSortInput spec * Fix coverage --------- Co-authored-by: mosin74 <mosin74@gmail.com>
# Conflicts: # core/templates/pages/certificate-assessment-player-page/certificate-assessment-player-page-root.component.html # core/templates/pages/certificate-assessment-player-page/certificate-assessment-player-page-root.component.spec.ts # core/templates/pages/certificate-assessment-player-page/certificate-assessment-player-page-root.component.ts # core/templates/pages/certificate-assessment-player-page/certificate-assessment-player-page.component.spec.ts # core/templates/pages/certificate-assessment-player-page/certificate-assessment-player-page.component.ts
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Essential Checklist
Please follow the instructions for making a code change.
Proof that changes are correct
PR Pointers