@@ -0,0 +1,27 @@
|
||||
// SPDX-License-Identifier: Prosperity-3.0.0
|
||||
// Copyright Scientific Computing Studio
|
||||
// Source: https://git.scient.ing/education/coursebank
|
||||
|
||||
//! Support for writing items and building assessments from them.
|
||||
//!
|
||||
//! The three modules here are what you interact with before an exam exists, and
|
||||
//! they divide by how much authority each one has.
|
||||
//!
|
||||
//! [`lint`] has none. Its 26 rules are advice with stable codes, every one
|
||||
//! silenceable with `--ignore`. It is deliberately separate from the validation in
|
||||
//! [`crate::model::bank`], which enforces what must be true and fails. Conflating
|
||||
//! the two produces a tool that either blocks you on style or lets real errors
|
||||
//! through.
|
||||
//!
|
||||
//! [`select`] draws an assessment from a blueprint. It places objective minimums
|
||||
//! before level quotas, because a coverage requirement is the constraint most
|
||||
//! likely to become unsatisfiable, and it prefers least-recently-used items so a
|
||||
//! bank rotates rather than converging on your favourites.
|
||||
//!
|
||||
//! [`jsonschema`] emits JSON Schema so an editor autocompletes the YAML. That is
|
||||
//! a better authoring experience than any validator: catching `cognitve_process`
|
||||
//! as you type beats reading it in a list afterward.
|
||||
|
||||
pub mod jsonschema;
|
||||
pub mod lint;
|
||||
pub mod select;
|
||||
Reference in New Issue
Block a user