Skip to content

feat(assessment): Configuration and Versioning - #1097

Open
vprashrex wants to merge 2 commits into
assessmentfrom
feat/assessment-config
Open

feat(assessment): Configuration and Versioning#1097
vprashrex wants to merge 2 commits into
assessmentfrom
feat/assessment-config

Conversation

@vprashrex

@vprashrex vprashrex commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Issue

Closes #1098

Summary

  • Before: There was no configuration and versioning for assessment module.
  • Now: Existing configuration and versioning module is extended to support assessment configuration and versioning.
  • The new implementation required creating the config handling logic.
  • Validation checks were introduced to discriminate the default or assessment tag.

Checklist

Before submitting a pull request, please ensure that you mark these task.

  • Ran fastapi run --reload app/main.py or docker compose up in the repository root and test.
  • If you've fixed a bug or added code that is tested and has test cases.

Notes

This is how the assessment config blob will look like:

{
  "name": "sst-grade10-grader",
  "description": "Rubric-based grader for Class 10 Social Science (SST) answers",
  "tag": "ASSESSMENT",
  "commit_message": "initial",
  "config_blob": {
    "pre_filters": {
      "topic_relevance": {
        "prompt": "Question: {{question}}\nStudent answer: {{student_answer}}\nRate 0-1 how on-topic the answer is for this SST question. Off-topic/blank answers score near 0."
      }
    },
    "assessment": {
      "system_prompt": "You are a CBSE Class 10 Social Science examiner. Grade the STUDENT ANSWER strictly against the MARKING RUBRIC and MODEL ANSWER...\n\nQUESTION ({{max_marks}} marks): {{question}}\nMODEL ANSWER: {{model_answer}}\nSTUDENT ANSWER: {{student_answer}}\n\nRUBRIC:\n- content_accuracy (40%)\n- relevance (25%)\n- terms_and_examples (20%)\n- structure (15%)\nSum into awarded_marks (0..{{max_marks}}).",
      "json_schema": {
        "type": "object",
        "properties": {
          "awarded_marks": { "type": "number" },
          "rubric_breakdown": {
            "type": "object",
            "properties": {
              "content_accuracy":   { "type": "object", "properties": { "score": {"type":"number"}, "comment": {"type":"string"} }, "required": ["score","comment"] },
              "relevance":          { "type": "object", "properties": { "score": {"type":"number"}, "comment": {"type":"string"} }, "required": ["score","comment"] },
              "terms_and_examples": { "type": "object", "properties": { "score": {"type":"number"}, "comment": {"type":"string"} }, "required": ["score","comment"] },
              "structure":          { "type": "object", "properties": { "score": {"type":"number"}, "comment": {"type":"string"} }, "required": ["score","comment"] }
            },
            "required": ["content_accuracy","relevance","terms_and_examples","structure"]
          },
          "keywords_missing": { "type": "array", "items": { "type": "string" } },
          "overall_feedback": { "type": "string" }
        },
        "required": ["awarded_marks", "rubric_breakdown", "overall_feedback"]
      },
      "model": { "provider": "openai", "model": "gpt-4o", "temperature": 0.0 }
    }
  }
}

@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • ready-for-review

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 859b775c-8d68-4c5a-a4f6-9b4c3d4e4421

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot changed the title feat(assessment): add assessment config handling and validation feat(assessment): Add config handling validation Jul 31, 2026
@vprashrex vprashrex self-assigned this Jul 31, 2026
@vprashrex vprashrex changed the title feat(assessment): Add config handling validation feat(assessment): Configuration and Versioning Jul 31, 2026
@vprashrex vprashrex linked an issue Jul 31, 2026 that may be closed by this pull request
@vprashrex vprashrex added the enhancement New feature or request label Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Assessment: Configuration and Versioning

2 participants