Unified learning + research: one construct, three axes, one selection policy
Status: accepted
Assessment delivery and educational research run on one system, not two. The spine is a single construct identity (the measured ability; the psychometric pooling unit). Three orthogonal factor-axes overlay a construct without forking it:
- Version — immutable time-ordered edits (integrity/audit; ADR-0003).
- Locale — a language rendition; may translate both display content and the
response key (e.g. construct
write-cardinal-7→en:"seven",fr:"sept",ja:{七, なな, しち}). - Variant — an experimental treatment (feedback wording, scaffolding, distractor surface).
Every Attempt records its coordinates on all axes plus condition,
selection_policy_version, and a prior-learner-state snapshot. Psychometrics pool by
construct or contrast by any axis as the analysis demands.
The two load-bearing rules
Section titled “The two load-bearing rules”- Construct identity is author-declared, not system-inferred. Whether a set of renditions measures one construct (poolable, per-locale keys allowed) or distinct constructs (related only via competency alignment) is a property of the research question, so the author/researcher declares it. The same surface item can be either — “write 7 in words” is one language-agnostic construct or three language-specific ones depending on what is being measured. Both are first-class.
- The declaration is empirically falsifiable. Because attempts are pooled under a declared construct, Differential Item Functioning analysis can flag when a declared-shared construct behaves differently across Locale or Variant. The system stores the researcher’s claim and lets real data refute it — a research instrument, not just bookkeeping. Construct-constancy is therefore an enforced, tested invariant (the analog of the round-trip CI gate), not a guideline.
One selection policy
Section titled “One selection policy”CAT (optimize measurement precision), spaced repetition (optimize retention), and
experiment assignment (randomize / explore–exploit via bandits) are the same
operation: given learner state + a pool + an objective, choose the next
(item, variant). Build one objective-aware Selection Policy interface and get
all three. “Learning” vs “experiment” is a mode/objective, not a separate system;
bandits dissolve the “deliver the best vs randomize for knowledge” conflict, with
governance deciding which population is in which mode.
Why this is the asset
Section titled “Why this is the asset”Most platforms bolt research onto an LMS after the fact. Two of the hard pieces are already in hand: immutable Item Versions (ADR-0003) give experiment reproducibility, and the QTI CAT / Usage Data / Results Reporting contracts (conform-ed) are the adaptive-selection substrate and the research export format.
Open challenges (not yet decided)
Section titled “Open challenges (not yet decided)”- Selection locus — deterministic local assignment (
hash(subject, experiment, salt)) for offline, vs server-side adaptive policy updates (eventually consistent). Same hybrid shape as ADR-0003 scoring. - Consent & governance — experiment definition, cohort eligibility, consent state, withdrawal, data-use scope, frozen analysis cohorts. The compliance moat; expensive to retrofit.
- Objective choice is an ethics decision — optimizing immediate correctness or engagement can harm learning; retention/transfer are the real targets. The objective must be explicit and reviewable.
- Attempt provenance expands the attempt record and the sync payload.