{
  "change_id": "ENG-DESIGN-ACADEMY-0002F",
  "version": "0002F",
  "purpose": "Schema-constrained and conservatively canonicalised Academy micro-exam output",
  "primary_build_engine": "CadQuery",
  "cadquery_version": "2.8.0",
  "blender_required": false,
  "practice_endpoint": "/academy/practice/ask",
  "output_contract": "academy_structured_json_v2",
  "structured_output_schema": true,
  "canonical_json_gate": true,
  "raw_answer_audited": true,
  "missing_content_invented": false,
  "invalid_syntax_retryable": true,
  "normal_ask_route_preserved": true,
  "preserves_existing_practice_state": true,
  "starts_worker": false,
  "restarts_services": false,
  "original_file_sha256": {
    "armor/ai/brain_server.py": "50c6d542f170ba97516673ba01fd2d9f8c14f80cc23758ee817073cfe5a12a39",
    "armor/services/design_academy_practice_service.py": "2a593805d19dde0108b750944d5402390f9e93d42bf599b2e46e81bd2b209af8"
  },
  "new_files_expected_absent": [
    "armor/tools/design_academy_structured_output_selftest.py",
    "armor/docs/ENG_DESIGN_ACADEMY_0002F.md"
  ]
}
