Skip to content

Commit 7006815

Browse files
seonghobaecursoragentclaude
authored
docs: replay method citations on current review workflow (#1011)
* docs: cite Angoff delta-plot and Bradley-Terry MM from primary papers Add method pages and ADRs 0015-0016 for the shipped observed-score delta-plot DIF screen and Hunter MM Bradley-Terry ranking estimators. Expand ADR-0001/0005/0006/0007 with verified DOIs and AERA/APA/NCME 2014. Keep MH/logistic/SIBTEST citations and do not treat those methods, or NIST/OWASP, as the delta-plot basis. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com> * docs: apply CodeRabbit citation wording fixes bratt_mm rejects tie-free data rather than redirecting; delta-plot drops NaN per item/group instead of requiring a complete matrix; Angoff 1972 is an APA meeting presentation. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com> * docs(research): use final issue year for Uto citation * docs(dif): align delta-plot missingness contract * docs: align Uto citation metadata --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com>
1 parent 50b3ed2 commit 7006815

21 files changed

Lines changed: 788 additions & 26 deletions

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,17 @@
77
Latent Space Item Response Models, focused on MLS2PLM simulation, regularized
88
point estimation, and true-parameter recovery checks.
99

10+
The implemented simple-structure MLSIRM/MLS2PLM path follows Jeon, Jin,
11+
Schweinberger, and Baugh (2021), Kang and Jeon (2025), and Molenaar and Jeon
12+
(2026). Adjacent shipped screens include Angoff delta-plot DIF
13+
([`docs/delta_plot_dif.md`](docs/delta_plot_dif.md)) and Bradley–Terry MM
14+
ranking ([`docs/bradley_terry_mm.md`](docs/bradley_terry_mm.md)). Primary
15+
citations and decision records live in
16+
[`docs/traceability/research-basis.md`](docs/traceability/research-basis.md)
17+
and [`docs/adr/README.md`](docs/adr/README.md). Score interpretation and
18+
fairness remain governed by AERA, APA, and NCME (2014); those methods are not
19+
CWE/OWASP/NIST controls.
20+
1021
The first implementation keeps the public API small:
1122

1223
```python

docs/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ This index distinguishes governing product/architecture documents from implement
1717
| [`erd/domain-model.puml`](erd/domain-model.puml) | Logical reusable-domain artifact relationships; **not** a hosted ORM schema |
1818
| [`traceability/requirements-matrix.md`](traceability/requirements-matrix.md) | PRD/TRD/ADR -> protected-main implementation/evidence maturity |
1919
| [`traceability/research-basis.md`](traceability/research-basis.md) | Scientific/standards evidence and APA 7 reference mapping |
20+
| [`papers/implemented-literature-map.md`](papers/implemented-literature-map.md) | Paper-to-kernel map for implemented methods |
21+
| [`delta_plot_dif.md`](delta_plot_dif.md) | Angoff TID / delta-plot observed-score DIF screen (not a security control) |
22+
| [`bradley_terry_mm.md`](bradley_terry_mm.md) | Bradley–Terry / Hunter MM pairwise ranking and additive-ties BRATT |
2023
| [`documentation_coverage.md`](documentation_coverage.md) | Documentation completeness states, remaining P0/P1/P2 gaps and maintenance gate |
2124
| [`security/threat-model.md`](security/threat-model.md) | Reusable-core trust/threat model; hosted product threats remain downstream |
2225
| [`doctoring/`](doctoring/) | Method/security/interoperability evidence and conservative implementation boundaries |

docs/adr/0001-domain-neutral-measurement-boundary.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ Date: 2026-08-09
99

1010
Without an explicit boundary, the library can accidentally absorb participant/session state, identity, hosted persistence, UI and deployment logic. That would make the numerical core harder to install independently, create circular repository dependencies, and duplicate ownership already assigned to other CWL services.
1111

12+
The reusable core's scientific identity remains the simple-structure MLSIRM/MLS2PLM family and adjacent measurement contracts. Jeon, Jin, Schweinberger, and Baugh (2021) define the latent-space item-response interaction map; Kang and Jeon (2025) give the multidimensional extension and the relativity of conditional dependence; Molenaar and Jeon (2026) give the regularized joint-maximum-likelihood estimation strategy used by the point-estimate path. Score interpretation, fairness, and intended use remain governed by AERA, APA, and NCME (2014). ISO/IEC/IEEE 42010:2022 governs how this boundary is recorded as an architecture decision, not the psychometric likelihood.
13+
1214
## Decision
1315

1416
`fast-mlsirm` owns reusable domain-neutral measurement contracts and scientific/numerical capabilities:
@@ -67,6 +69,16 @@ Costs:
6769

6870
Supersede this ADR only if the organization intentionally redefines repository bounded contexts and provides a migration plan preserving independent scientific/numerical reuse.
6971

70-
## References
72+
## Research and standards basis
73+
74+
The architecture-description concern (stakeholders, viewpoints, correspondence, and decision records) follows ISO/IEC/IEEE 42010:2022. The measurement methods this boundary exists to keep independently reusable are the simple-structure MLSIRM/MLS2PLM specialization documented in `docs/papers/mls2plm-canonical-equations.md`, not a silent claim of the full discrimination-vector MLS2PLM model.
75+
76+
Jeon, M., Jin, I. H., Schweinberger, M., & Baugh, S. (2021). Mapping unobserved item-respondent interactions: A latent space item response model with interaction map. *Psychometrika, 86*(2), 378–403. https://doi.org/10.1007/s11336-021-09762-5
77+
78+
Kang, I., & Jeon, M. (2025). Multidimensional latent space item response models: A note on the relativity of conditional dependence. *Psychometrika, 90*(2), 799–826. https://doi.org/10.1017/psy.2025.5
79+
80+
Molenaar, D., & Jeon, M. (2026). Regularized joint maximum likelihood estimation of latent space item response models. *Psychometrika, 91*, 335–359. https://doi.org/10.1017/psy.2025.10068
81+
82+
American Educational Research Association, American Psychological Association, & National Council on Measurement in Education. (2014). *Standards for educational and psychological testing*. American Educational Research Association.
7183

7284
International Organization for Standardization, International Electrotechnical Commission, & Institute of Electrical and Electronics Engineers. (2022). *ISO/IEC/IEEE 42010:2022 Software, systems and enterprise—Architecture description*.

docs/adr/0005-automated-scoring-raters.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,14 @@ This supports defensible automated essay scoring, enterprise issue evaluation an
5858
- **Use one expert human as gold.** Rejected as the default scientific model; human anchors can be valuable but should retain rater uncertainty unless independently established as an authoritative answer key.
5959
- **Use raw machine-human correlation as the primary gate.** Rejected because correlation is insensitive to additive/scale bias and depends on sample heterogeneity.
6060

61-
## References
61+
## Research and standards basis
6262

63-
American Educational Research Association, American Psychological Association, & National Council on Measurement in Education. (2014). *Standards for educational and psychological testing*.
63+
This ADR is about rater/score interpretation, agreement, and fairness evidence. NIST, OWASP, and CWE catalogs are not the methodological basis.
6464

65-
Bland, J. M., & Altman, D. G. (1986). Statistical methods for assessing agreement between two methods of clinical measurement. *The Lancet, 327*(8476), 307–310.
65+
American Educational Research Association, American Psychological Association, & National Council on Measurement in Education. (2014). *Standards for educational and psychological testing*. American Educational Research Association.
6666

67-
Uto, M., & Ueno, M. (2020). A generalized many-facet Rasch model and its Bayesian estimation using Hamiltonian Monte Carlo. *Behaviormetrika, 47*, 469–496.
67+
Bland, J. M., & Altman, D. G. (1986). Statistical methods for assessing agreement between two methods of clinical measurement. *The Lancet, 327*(8476), 307–310. https://doi.org/10.1016/S0140-6736(86)90837-8
6868

69-
Williamson, D. M., Xi, X., & Breyer, F. J. (2012). A framework for evaluation and use of automated scoring. *Educational Measurement: Issues and Practice, 31*(1), 2–13.
69+
Uto, M., & Ueno, M. (2020). A generalized many-facet Rasch model and its Bayesian estimation using Hamiltonian Monte Carlo. *Behaviormetrika, 47*, 469–496. https://doi.org/10.1007/s41237-020-00115-7
70+
71+
Williamson, D. M., Xi, X., & Breyer, F. J. (2012). A framework for evaluation and use of automated scoring. *Educational Measurement: Issues and Practice, 31*(1), 2–13. https://doi.org/10.1111/j.1745-3992.2011.00223.x

docs/adr/0006-relation-safe-model-selection.md

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,20 @@ The system may return `indeterminate`, `requires_distinguishability_test`, or `r
6565
- **Always select bifactor when it fits better.** Rejected because bifactor flexibility does not establish scoreability.
6666
- **Always add latent space for residual fit.** Rejected; latent space is residual interaction after substantive/facet/testlet structure and must improve held-out/recovery evidence.
6767

68-
## References
68+
## Research and standards basis
6969

70-
Cai, L. (2010). A two-tier full-information item factor analysis model with applications. *Psychometrika, 75*, 581–612.
70+
This ADR is about factor retention and structural model choice, including when a latent-space residual interaction may be added. Score interpretation after a selected model remains governed by AERA, APA, and NCME (2014). NIST, OWASP, and CWE catalogs are not the methodological basis.
7171

72-
Preacher, K. J., Zhang, G., Kim, C., & Mels, G. (2013). Choosing the optimal number of factors in exploratory factor analysis: A model selection perspective. *Multivariate Behavioral Research, 48*, 28–56.
72+
American Educational Research Association, American Psychological Association, & National Council on Measurement in Education. (2014). *Standards for educational and psychological testing*. American Educational Research Association.
7373

74-
Rijmen, F. (2010). Formal relations and an empirical comparison among the bi-factor, the testlet, and a second-order multidimensional IRT model. *Journal of Educational Measurement, 47*, 361–372.
74+
Cai, L. (2010). A two-tier full-information item factor analysis model with applications. *Psychometrika, 75*, 581–612. https://doi.org/10.1007/s11336-010-9178-0
7575

76-
Schneider, L., Chalmers, R. P., Debelak, R., & Merkle, E. C. (2020). Model selection of nested and non-nested item response models using Vuong tests. *Multivariate Behavioral Research, 55*, 664–684.
76+
Jeon, M., Jin, I. H., Schweinberger, M., & Baugh, S. (2021). Mapping unobserved item-respondent interactions: A latent space item response model with interaction map. *Psychometrika, 86*(2), 378–403. https://doi.org/10.1007/s11336-021-09762-5
77+
78+
Kang, I., & Jeon, M. (2025). Multidimensional latent space item response models: A note on the relativity of conditional dependence. *Psychometrika, 90*(2), 799–826. https://doi.org/10.1017/psy.2025.5
79+
80+
Preacher, K. J., Zhang, G., Kim, C., & Mels, G. (2013). Choosing the optimal number of factors in exploratory factor analysis: A model selection perspective. *Multivariate Behavioral Research, 48*, 28–56. https://doi.org/10.1080/00273171.2012.710386
81+
82+
Rijmen, F. (2010). Formal relations and an empirical comparison among the bi-factor, the testlet, and a second-order multidimensional IRT model. *Journal of Educational Measurement, 47*, 361–372. https://doi.org/10.1111/j.1745-3984.2010.00118.x
83+
84+
Schneider, L., Chalmers, R. P., Debelak, R., & Merkle, E. C. (2020). Model selection of nested and non-nested item response models using Vuong tests. *Multivariate Behavioral Research, 55*, 664–684. https://doi.org/10.1080/00273171.2019.1664280

docs/adr/0007-multilevel-multiple-membership-temporal.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@ Psychometric and AI-evaluation observations commonly sit inside schools, teams,
99

1010
Reusable nested, cross-classified, multiple-membership, and longitudinal *contracts* are on protected main. A Rust MAP estimator now recovers crossed / weighted multiple-membership person effects `u_h` with RMSE evidence. OLS/AR longitudinal state estimation and MCMC variance-component engines remain separate slices, so this ADR stays Proposed until those numerical release-rule items are also evidenced.
1111

12+
This decision is about explicit context and time in the measurement design. It
13+
is not a claim that latent-space MLSIRM/MLS2PLM interaction (Jeon, Jin,
14+
Schweinberger, & Baugh, 2021; Kang & Jeon, 2025) absorbs hierarchy or drift.
15+
Residual latent-space interaction remains a later layer after known
16+
multilevel/temporal structure, consistent with ADR-0001 and ADR-0006.
17+
1218
## Decision
1319

1420
The architecture treats the following as distinct, explicit structures:
@@ -63,8 +69,16 @@ This architecture avoids forcing product-specific tenant/org structures into the
6369
- at least one Rust estimator or clear handoff contract exists for a supported multilevel/temporal inference use case;
6470
- recovery evidence meets the numerical release rule.
6571

66-
## References
72+
## Research and standards basis
73+
74+
Score interpretation that depends on context, occasion, or drift remains governed by AERA, APA, and NCME (2014). Full multilevel/temporal estimators stay Proposed until the numerical release rule above is met. NIST, OWASP, and CWE catalogs are not the methodological basis.
75+
76+
American Educational Research Association, American Psychological Association, & National Council on Measurement in Education. (2014). *Standards for educational and psychological testing*. American Educational Research Association.
77+
78+
Fox, J.-P., & Glas, C. A. W. (2001). Bayesian estimation of a multilevel IRT model. *Psychometrika, 66*, 271–288. https://doi.org/10.1007/BF02294839
79+
80+
Jeon, M., Jin, I. H., Schweinberger, M., & Baugh, S. (2021). Mapping unobserved item-respondent interactions: A latent space item response model with interaction map. *Psychometrika, 86*(2), 378–403. https://doi.org/10.1007/s11336-021-09762-5
6781

68-
Fox, J.-P., & Glas, C. A. W. (2001). Bayesian estimation of a multilevel IRT model. *Psychometrika, 66*, 271–288.
82+
Kang, I., & Jeon, M. (2025). Multidimensional latent space item response models: A note on the relativity of conditional dependence. *Psychometrika, 90*(2), 799–826. https://doi.org/10.1017/psy.2025.5
6983

70-
Uto, M. (2022). A Bayesian many-facet Rasch model with Markov modeling for rater severity drift. *Behavior Research Methods, 55*, 3910–3928.
84+
Uto, M. (2023). A Bayesian many-facet Rasch model with Markov modeling for rater severity drift. *Behavior Research Methods, 55*, 3910–3928. https://doi.org/10.3758/s13428-022-01997-z

docs/adr/0017-bradley-terry-mm.md

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
# ADR-0017: Adopt Bradley–Terry MM and additive-ties BRATT for pairwise ranking
2+
3+
Status: **Accepted**
4+
Date: 2026-08-16
5+
Supersedes: none
6+
Superseded by: none
7+
8+
## Context
9+
10+
Protected main already ships paired-comparison ranking kernels, including
11+
Bradley–Terry MM (`bradley_terry_mm`) and an additive-ties variant
12+
(`bratt_mm`). Implementation comments and changelog notes recorded that
13+
Bradley and Terry (1952) and Hunter (2004) were unread at port time and that
14+
`choix` / VGAM sources were the computational references. Those notes are
15+
source-governance history. They are not a reason to leave the shipped
16+
estimators without a primary-literature decision record, and they are not a
17+
license to claim Rao–Kupper or Davidson ties models.
18+
19+
The implemented objects are psychometric ranking estimators. They are not
20+
security controls.
21+
22+
## Decision drivers
23+
24+
- Pairwise win matrices are a reusable measurement primitive for rater,
25+
model, and item comparisons.
26+
- The shipped MM update is Hunter's algorithm for the Bradley–Terry model;
27+
the decision record must say so.
28+
- Ties are observed in some designs; the implemented ties likelihood is the
29+
additive-`alpha0` BRATT model, not Rao–Kupper or Davidson.
30+
- Score-use interpretation, when worths are treated as educational or
31+
psychological scores, is governed by AERA, APA, and NCME (2014).
32+
33+
## Ownership and dependency direction
34+
35+
`fast-mlsirm` owns the reusable ranking kernels. Hosted leaderboards,
36+
participant identity, and operational selection policy remain downstream.
37+
This ADR does not change the ADR-0001 repository boundary.
38+
39+
## Decision
40+
41+
Adopt the Bradley–Terry paired-comparison model (Bradley & Terry, 1952)
42+
fitted by Hunter (2004) MM as the repository's tie-free pairwise-ranking
43+
estimator (`fast_mlsirm.bradley_terry_mm`).
44+
45+
Adopt the implemented additive-ties BRATT variant (`fast_mlsirm.bratt_mm`)
46+
for data that contain ties:
47+
48+
```text
49+
P(i beats j) = alpha_i / (alpha_i + alpha_j + alpha0)
50+
P(i ties j) = alpha0 / (alpha_i + alpha_j + alpha0)
51+
```
52+
53+
Do not claim Rao–Kupper or Davidson unless a later model-design change
54+
implements those likelihoods, gradients, tests, and documentation together.
55+
56+
LSR / I-LSR, Rank Centrality, and Plackett–Luce ranking remain separate
57+
estimators. They are not aliases of Bradley–Terry MM.
58+
59+
Method documentation: [`../bradley_terry_mm.md`](../bradley_terry_mm.md).
60+
61+
## Invariants / acceptance evidence
62+
63+
1. `wins` is a square nonnegative matrix with a zero diagonal; non-finite or
64+
negative counts are rejected.
65+
2. `bradley_terry_mm` rejects an all-zero matrix and, at `alpha = 0`, any
66+
object with zero wins (no finite log-worth).
67+
3. `bratt_mm` rejects tie-free data and any contestant with zero wins.
68+
4. Numeric work is Rust-owned; Python validates and marshals.
69+
5. Documentation names Bradley and Terry (1952) and Hunter (2004) as the
70+
method basis and does not name Rao–Kupper or Davidson as implemented
71+
product behavior.
72+
73+
## Non-goals and claims not made
74+
75+
- Not Rao–Kupper (1967) or Davidson (1970) ties models.
76+
- Not a Ford (1957) connectivity pre-check; disconnected graphs fail at
77+
estimation.
78+
- Not an IRT, MLSIRM, or many-facet severity model.
79+
- Not a causal ranking or high-stakes selection rule.
80+
- `choix` and VGAM `bratt()` are computational comparison sources, not
81+
scientific oracles.
82+
83+
## Consequences and trade-offs
84+
85+
### Benefits
86+
87+
- Pairwise ranking has a named model and a named MM algorithm.
88+
- The ties path is explicitly the additive-`alpha0` variant.
89+
- Callers can choose `bradley_terry_mm` versus `bratt_mm` from the data
90+
contract (ties present or absent) rather than from package folklore.
91+
92+
### Costs / risks
93+
94+
- MM can fail to converge on sparse or one-sided graphs.
95+
- Fractional counts are accepted as weights; they are a derived extension of
96+
integer pair lists and must not be described as a different model.
97+
- Users may treat worths as IRT abilities unless the interpretation boundary
98+
stays adjacent to the API.
99+
100+
## Alternatives considered
101+
102+
### Claim Rao–Kupper or Davidson because the function mentions ties
103+
104+
Rejected. The implemented likelihood is additive `alpha0` in the denominator.
105+
Those alternative ties models are not coded.
106+
107+
### Treat changelog "NOT READ" notes as the bibliographic record
108+
109+
Rejected. The estimators implement the named methods. Primary papers are the
110+
method basis; unread-at-port-time notes are historical.
111+
112+
### Collapse all ranking kernels into one "Bradley–Terry" product claim
113+
114+
Rejected. LSR, Rank Centrality, and Plackett–Luce are different estimators.
115+
116+
## Failure, degraded, and recovery behavior
117+
118+
Invalid shapes, non-finite or negative counts, nonzero diagonals, empty
119+
comparison graphs, zero-win objects (where the MLE is outside the positive
120+
parameter space), and non-convergence return errors. `bratt_mm` rejects
121+
tie-free data; callers must use `bradley_terry_mm` rather than treating
122+
`alpha0 = 0` as a valid BRATT fit.
123+
124+
## Security and privacy implications
125+
126+
Win/tie matrices can encode identifiable rater or candidate comparisons.
127+
Purpose limitation follows ADR-0012. This ADR adds no new credential or
128+
provider surface and is not a CWE/OWASP/NIST control.
129+
130+
## Compatibility, migration, and rollback
131+
132+
Public Python/Rust entry points are unchanged. This ADR records the
133+
scientific identity of already-shipped kernels. Retiring or replacing the
134+
likelihood requires a superseding model-design ADR.
135+
136+
## Verification and release evidence
137+
138+
- Rust unit oracles and Python contract tests for `bradley_terry_mm` and
139+
`bratt_mm` on protected main.
140+
- Cross-algorithm agreement with I-LSR at `alpha = 0` is supplementary
141+
numerical evidence, not a substitute for the Bradley–Terry / Hunter
142+
citations.
143+
- This ADR does not authorize a formula change.
144+
145+
## Research and standards basis
146+
147+
Bradley, R. A., & Terry, M. E. (1952). Rank analysis of incomplete block
148+
designs: I. The method of paired comparisons. *Biometrika, 39*(3/4), 324–345.
149+
https://doi.org/10.2307/2334029
150+
151+
Hunter, D. R. (2004). MM algorithms for generalized Bradley–Terry models.
152+
*The Annals of Statistics, 32*(1), 384–406.
153+
https://doi.org/10.1214/aos/1079120141
154+
155+
American Educational Research Association, American Psychological
156+
Association, & National Council on Measurement in Education. (2014).
157+
*Standards for educational and psychological testing*. American Educational
158+
Research Association.
159+
160+
## Follow-ups
161+
162+
Rao–Kupper, Davidson, or other generalized paired-comparison likelihoods
163+
remain Proposed unless implemented as a complete model path. LSR input-bound
164+
doctoring remains a separate operational control
165+
([`../doctoring/lsr_ranking_input_bounds.md`](../doctoring/lsr_ranking_input_bounds.md)).
166+
167+
## Reversal / supersession conditions
168+
169+
Supersede this ADR if the repository retires the MM kernels, changes the
170+
Bradley–Terry or additive-ties likelihood, or implements a different ties
171+
model as the default product behavior.

0 commit comments

Comments
 (0)