{% extends 'base.html' %} {% block title %}Documentation - AutograderGen{% endblock %} {% block content %}

Configuration Schema Explorer

Pydantic v2 Schema

AutograderGen validates your autograder_gen.yaml against a strict structure defined by Config. Use this explorer to understand all properties, nested components, and validation rules.

{% macro render_model_card(title, model_id, model_def) %}

{{ title }}

{% if model_def.description %}

{{ model_def.description }}

{% endif %}
{% for name, prop in (model_def.properties or {}).items() %} {% endfor %}
Field Type Requirement Description & Constraints
{{ name }} {%- if prop.type -%} {{ prop.type }} {%- if prop.type == 'array' and prop.items -%} {%- if prop.items.type -%} [{{ prop.items.type }}] {%- elif prop.items['$ref'] -%} [{{ prop.items['$ref'].split('/')[-1] }}] {%- endif -%} {%- endif -%} {%- elif prop['$ref'] -%} {{ prop['$ref'].split('/')[-1] }} {%- else -%} any {%- endif -%} {% if name in (model_def.required or []) %} Required {% elif prop.default is defined and prop.default is not none %} Default: {{ prop.default }} {% else %} Optional {% endif %} {{ prop.description or prop.title or '' }} {% if prop.enum %}
Allowed: {{ prop.enum|join(', ') }} {% endif %} {% if prop.minimum is defined %}
Min: {{ prop.minimum }} {% endif %} {% if prop.maximum is defined %}
Max: {{ prop.maximum }} {% endif %}
{% endmacro %} {{ render_model_card('Root Configuration', 'config-model', schema_dict) }} {{ render_model_card('Question Model', 'question-model', schema_dict.get('$defs', {}).get('Question', {})) }} {{ render_model_card('Marking Item Model', 'marking-item-model', schema_dict.get('$defs', {}).get('MarkingItem', {})) }}

{{ schema }}
{% endblock %}