Skip to content
Aabha AI Academy

All courses · Course overview · Lesson sequence

Skip to lesson text

capstone/check_submission.py

"""A formative local acceptance check; not a platform grader/certificate."""
import argparse
import importlib


def check(report):
    assert report["evidence_kind"] == "synthetic_local_capstone_no_llm"
    assert report["baseline"]["total"] >= 8 and report["baseline"]["all_gates_pass"]
    assert report["baseline"]["correct"] == report["baseline"]["total"]
    assert report["candidate"]["total"] == report["baseline"]["total"]
    assert 0 <= report["candidate"]["correct"] <= report["candidate"]["total"]
    assert report["candidate"]["all_gates_pass"]
    assert report["recovery"]["before_phase"] == "IN_FLIGHT"
    assert report["recovery"]["after_reservations"] > report["recovery"]["before_reservations"]
    assert report["review"]["receipt"]["real_writes"] == 0
    assert report["review"]["rejected_phase"] == "REJECTED" and report["review"]["rejected_receipt"] is None
    assert report["review"]["saved_receipt_replayed"]
    added = report["added_case"]
    assert type(added["observed_year"]) is int and 1000 <= added["observed_year"] <= 2100
    assert type(added["catalogue_year"]) is int and 1000 <= added["catalogue_year"] <= 2100
    assert added["finding"] == ("MATCH" if added["observed_year"] == added["catalogue_year"] else "MISMATCH")
    assert added["phase"] == "REJECTED"
    assert report["release_recommendation"] == "local_synthetic_demo_only"
    assert len(report["limitations"]) >= 3


if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--module", choices=("starter", "reference"), default="reference")
    selected = parser.parse_args().module
    check(importlib.import_module(selected).build_evidence())
    print(f"Formative capstone structure checks passed for {selected}; human explanation/rubric still required")

Download this source file