Chicago City Council, 2003–2026

Technical appendix

Author

Boris Shor

Updated

October 18, 2026

This appendix documents the pooled analysis in the main report: 132 members, 693 contested roll calls and 32,980 observed binary responses, 2003–2026. The earlier analyses are preserved separately.

Source, identity and construction

The input is the corrected Chicago journal package downloaded October 16 from PR #32, with source coverage January 16, 2003–June 17, 2026. It contains 26,215 roll calls, 727 with both recorded yeas and nays. This is a journal-only delivery; the overlapping recent ELMS source is not added, preventing double ingestion. The earlier recent-only report uses a different source/window and is not simply appended to this matrix.

The preserved delivery SHA-256 is 1be2b79dd4481c00c1fbfd1b1ee78f307e4f50eb37c2670a73268eff6a19c08e. It was downloaded via rclone, checked for ZIP integrity and preserved separately from the prior delivery. Every file inside the ZIP matches the committed package manifest on repair branch commit 12e7271.

The published replay inputs were also downloaded and checked. The row-level author validator passes, and an independent local replay reproduces all 20 delivered files byte-for-byte.

Dated roster identities resolve people before constructing the vote matrix. This separates the Moore, Burnett, Mell and Colon/Colom successions and Milly Santiago from Miguel Santiago. Michael Chandler and Michael D. Chandler are an explicit same-person variant. Internal analysis keys do not allocate permanent IDs. Conflicted or missing registry IDs remain blank in metadata rather than defining a fictional person. Rows lacking a resolved roster identity, and explicitly flagged out-of-term rows, are excluded.

The upstream package restores 1,028 previously dropped responses across 1,019 ballots. Whole-file checks reproduce its response totals and find no duplicate roster-person response within an event. Thirty-nine events retain printed-versus-counted tally discrepancies; unresolved responses are not invented to close them. Our seven source-verified omissions and the two Scott/Solis misassignments are now corrected upstream, so no local vote additions or identity overrides are applied. The raw delivery remains unchanged.

Compared with the preceding prepared matrix, the new input adds 47 observed cells, changes none of the 32,933 already observed responses and removes none. The member and retained-event universes are unchanged. This is an input-conservation check, not a source-accuracy estimate.

Source roll-call key Member Upstream-restored response
2020:2020_06_17_1:9 Emma M. Mitts Y
2017:2017_04_19_VI_VII(1)_2:66 George A. Cardenas Y
2021:2021_10_27_1:0 George A. Cardenas Y
2020:2020_06_17_1:4 George A. Cardenas Y
2020:2020_01_15 (1)_1:21 George A. Cardenas Y
2021:2021_07_21_VI_VII (2)_1:10 George A. Cardenas Y
2021:2021_11_17_1:28 George A. Cardenas Y

The culling rule retains members with at least four observed contested responses, and events with at least one observed yea and one observed nay. Both are rechecked until stable, yielding 132 members and 693 events. No new minimum-attendance threshold is imposed. Structural nonmembership and missing-not-listed responses remain unknown; neither is an observed absence or a nay.

Identical duplicate person/event responses would be reduced to one; conflicting responses would be excluded with a ledger. There are no remaining duplicate cells in the roster-resolved analysis input after the explicit identity corrections. Source event IDs are retained as package-scoped keys, not claimed as implemented permanent RC identifiers.

Model and estimation

The one-dimensional probit model is

Pr⁡(yij=1)=Φ(xiβj−αj). \Pr(y_{ij}=1)=\Phi(x_i\beta_j-\alpha_j).

Each member has a constant pooled position xᵢ; each item has a discrimination βⱼ and difficulty αⱼ. Default pscl::ideal() priors have member variance 1 and item-parameter variance 25. Output is normalized, and posterior signs are aligned to a vote-derived singular-vector reference with Raymond Lopez positive. That convention does not fix his score or supply an external ideological calibration.

Exactly two chains use party starting values: Democratic −1, Republican +1 and unknown or conflicting/multiple designations 0. The completed party research supplies 113 Democratic starts, one Republican and 18 zero starts (15 Unknown and three with multiple/changing designations). Starting values enter neither the likelihood nor the priors.

Each chain uses 100,000 post-burn-in iterations plus 10,000 burn-in, thinned by 100; seeds are 20261015 and 20261016. No additional sensitivity fit or label-free start was run.

Diagnostics

Measure Value
Chains 2
Post-burn-in iterations per chain 100,000
Burn-in iterations 10,000
Thinning 100
Maximum R-hat 1.0113
Minimum ESS 113
Correlation of chain means 0.999895

Root independently recomputed the diagnostics from the saved draws. No member has R-hat above 1.1. Agreement supports convergence within the sampled solution; it is not proof that no other posterior mode exists, that the source is error-free or that a single dimension captures every issue.

Historical and recent councils share many members. The overlap table records people with observed contested responses in adjacent years, not full service rosters:

Year Next year Shared observed members
2003 2004 50
2004 2005 50
2005 2006 50
2006 2007 47
2007 2008 50
2008 2009 50
2009 2010 48
2010 2011 46
2011 2012 50
2012 2013 49
2013 2014 50
2014 2015 49
2015 2016 50
2016 2017 50
2017 2018 50
2018 2019 49
2019 2020 50
2020 2021 50
2021 2022 50
2022 2023 49
2023 2024 50
2024 2025 50
2025 2026 50

Several members present only in the outgoing 2003 fragment have five to seven observations and wide intervals. Their apparent endpoint ranks are not precise ideological findings. All displayed council periods use one pooled position per member; changes in council composition are not individual ideological trajectories.

Party, caucus and election validation

Party research combines the existing upstream pilot, the 2003–2007 council review and supervised follow-ups. Four initially unresolved cases were already labeled under the same local ID but a different name. Subsequent research resolves thirteen of the final fifteen gaps, leaving Darcel Beavers and Leonard DeVille Unknown. The report has 126 Democratic-affiliated, one Republican, three multiple/changing designations and two Unknown. These latest labels enrich the report only: the fitted draws and the 113 Democratic, one Republican and eighteen zero initialization values described above are unchanged.

The new evidence includes candidate questionnaires, explicit reporting of party-organizational membership, a corporate PAC’s stated party classification, and reported convention participation. These are not all registration or original party records. Granato and Colom’s convention evidence is from 1996, Rice’s explicit reporting postdates council service, and other source-specific timing limits remain in the evidence ledger; a person-level designation does not imply verified continuous affiliation throughout local service. Cullerton’s evidence is his former campaign manager’s retrospective description, not Cullerton’s own self-identification. Mosley’s report is preserved through a third-party republication. No affiliation is inferred from a donor’s party, relatives, or roll-call behavior.

Evidence types distinguish party records, self-identification, reporting and party-organization alignment. Source dates are not automatically party start/end dates. UIC’s January 25, 2006 report supplies a 2004 snapshot; it does not establish continuous affiliation throughout later service. Fioretti’s Republican evidence postdates his council service. Uncited infoboxes alone remain leads. Research contribution and source justifications.

The 2024 UIC caucus comparisons classify only the 50 people covered by the roster. Historic ward holders and later successors are unclassified. The separately recorded 2027 DSA endorsement comparison uses only the 52 current-period members; older councillors are not coded non-endorsed from their absence in a later announcement. Tables show group medians and differences, with group sizes; no rank correlations or pairwise-ordering shares are added.

The presidential comparison preserves the previously validated NYT precinct aggregation and matches all 50 wards to the dated roster on November 5, 2024. Ward labels are offset from the points. These votes measure residents, not councilmembers. Prior county/city reconciliation is unchanged; the NYT major-party totals differ slightly from the certified canvass and are not silently adjusted.

Full estimates

Member Researched designation Observed votes Position 95% lower 95% upper R-hat ESS
Daniel La Spata Democratic 333 -2.536 -3.453 -1.759 1.000 206.745
Rossana Rodriguez Sanchez Democratic 315 -2.408 -3.275 -1.667 1.007 258.032
Jessica Fuentes Democratic 206 -2.035 -2.780 -1.411 1.010 551.814
Anthony Quezada Democratic 79 -1.908 -2.974 -1.167 1.000 694.801
Leni Manaa-Hoppenworth Democratic 205 -1.828 -2.514 -1.281 1.002 307.833
Maria Hadden Democratic 315 -1.823 -2.436 -1.314 1.000 275.547
William E. Hall Democratic 205 -1.820 -2.541 -1.244 1.002 418.707
Byron Sigcho-Lopez Democratic 329 -1.818 -2.459 -1.306 1.003 325.850
John Arena Democratic 233 -1.792 -2.265 -1.364 1.004 344.912
Angela Clay Democratic 202 -1.732 -2.335 -1.204 1.002 415.613
Michael D. Rodriguez Democratic 323 -1.731 -2.258 -1.257 1.001 545.689
Carlos Ramirez-Rosa Democratic 392 -1.650 -2.085 -1.235 1.003 346.205
Julia M. Ramirez Democratic 205 -1.590 -2.111 -1.142 1.000 433.236
Bob Fioretti Multiple / changing designations 142 -1.578 -1.992 -1.194 1.009 465.510
Toni Preckwinkle Democratic 107 -1.572 -2.087 -1.116 1.002 566.832
Matt Martin Democratic 331 -1.452 -1.909 -1.074 1.001 409.679
Lamont Robinson Democratic 201 -1.389 -1.889 -0.960 1.001 404.060
Jeylu B. Gutierrez Democratic 206 -1.237 -1.638 -0.887 1.002 436.171
Dorothy Tillman Democratic 52 -1.220 -1.733 -0.813 1.001 603.269
Andre Vasquez Democratic 330 -1.166 -1.529 -0.854 1.000 266.081
Walter Redmond Burnett Democratic 57 -1.104 -1.593 -0.701 1.001 520.728
Jeanette B. Taylor Democratic 254 -1.070 -1.451 -0.727 1.005 386.460
Sandi Jackson Democratic 65 -1.001 -1.450 -0.604 1.005 410.842
Arenda Troutman Democratic 54 -0.984 -1.424 -0.599 1.001 520.640
Ricardo Munoz Democratic 350 -0.745 -0.979 -0.506 1.011 189.370
Susan Sadlowski Garza Democratic 260 -0.625 -0.958 -0.284 1.000 376.563
Ruth Cruz Democratic 202 -0.621 -0.848 -0.395 1.000 174.284
Jason C. Ervin Democratic 570 -0.607 -0.818 -0.393 1.001 118.418
Ronnie L. Mosley Democratic 188 -0.578 -0.813 -0.340 1.000 184.960
Sophia King Democratic 242 -0.573 -0.906 -0.250 1.000 506.906
Desmon C. Yancy Democratic 196 -0.561 -0.795 -0.341 1.002 177.991
Leslie Hairston Democratic 455 -0.559 -0.786 -0.326 1.000 227.165
Billy Ocasio Democratic 79 -0.543 -0.886 -0.218 1.000 349.147
Toni L. Foulkes Democratic 285 -0.459 -0.720 -0.206 1.002 217.909
Anabel Abarca Democratic 16 -0.440 -1.635 0.506 1.000 1903.686
Joe Moore Democratic 331 -0.417 -0.652 -0.172 1.004 185.807
Theodore Thomas Democratic 58 -0.397 -0.781 -0.028 1.000 641.009
Scott Waguespack Democratic 611 -0.373 -0.564 -0.168 1.000 171.406
Chris Taliaferro Democratic 475 -0.348 -0.540 -0.154 1.001 143.723
Timmy Knudsen Democratic 237 -0.323 -0.524 -0.120 1.000 148.275
Walter Burnett Jr. Democratic 596 -0.321 -0.522 -0.126 1.000 113.521
Pat Dowell Democratic 621 -0.303 -0.484 -0.118 1.001 162.094
Michael Chandler Democratic 137 -0.292 -0.577 0.003 1.000 314.739
Stephanie D. Coleman Democratic 317 -0.286 -0.474 -0.079 1.000 116.599
Ed Smith Democratic 114 -0.278 -0.563 0.014 1.001 326.359
Harry Osterman Democratic 361 -0.261 -0.524 0.013 1.002 245.589
Shirley Coleman Democratic 49 -0.257 -0.758 0.383 1.001 878.617
Michelle A. Harris Democratic 629 -0.224 -0.407 -0.035 1.000 112.852
Manuel Flores Democratic 84 -0.215 -0.543 0.118 1.000 598.686
Sharon Denise Dixon Democratic 58 -0.212 -0.603 0.189 1.000 467.970
Ameya Pawar Democratic 232 -0.194 -0.502 0.130 1.001 269.469
Gregory I. Mitchell Democratic 467 -0.189 -0.384 -0.001 1.000 129.904
Rey Colon Democratic 192 -0.189 -0.459 0.087 1.002 240.884
Milly Santiago Democratic 144 -0.178 -0.606 0.269 1.000 956.653
Bennett R. Lawson Democratic 204 -0.162 -0.358 0.033 1.002 156.923
Emma M. Mitts Democratic 626 -0.145 -0.341 0.052 1.000 153.943
Nicole Lee Democratic 255 -0.125 -0.306 0.067 1.000 154.198
James Cappleman Democratic 364 -0.120 -0.378 0.153 1.000 258.937
Deborah L. Mell Democratic 195 -0.101 -0.456 0.321 1.003 593.052
Madeline Haithcock Democratic 58 -0.094 -0.431 0.218 1.001 370.151
Roberto Maldonado Democratic 354 -0.083 -0.360 0.205 1.000 293.882
Freddrenna Lyle Democratic 108 -0.073 -0.353 0.186 1.000 340.221
Helen Shiller Democratic 102 -0.061 -0.365 0.245 1.000 366.182
Roderick T. Sawyer Democratic 349 -0.052 -0.342 0.230 1.001 279.049
Bill Conway Democratic 202 -0.043 -0.226 0.150 1.000 164.519
David H. Moore Democratic 470 -0.009 -0.200 0.188 1.000 131.335
Michele Smith Democratic 326 -0.004 -0.318 0.309 1.001 430.225
Howard B. Brookins Jr. Democratic 453 0.040 -0.202 0.282 1.005 222.307
Michael Scott Jr. Democratic 233 0.057 -0.282 0.394 1.000 450.218
Monique L. Scott Democratic 245 0.078 -0.097 0.267 1.000 126.711
Gilbert Villegas Democratic 450 0.082 -0.108 0.264 1.000 141.141
Samantha Nugent Democratic 332 0.156 -0.025 0.339 1.000 160.112
Derrick G. Curtis Democratic 451 0.158 -0.026 0.345 1.000 163.381
Gene Schulter Democratic 104 0.215 -0.171 0.640 1.003 636.283
George A. Cardenas Democratic 441 0.242 -0.004 0.477 1.000 274.368
Brian Hopkins Democratic 472 0.266 0.091 0.451 1.000 141.850
Matthew J. O'Shea Democratic 564 0.271 0.090 0.458 1.002 147.286
Debra Silverstein Democratic 529 0.272 0.093 0.455 1.000 144.654
Thomas M. Tunney Democratic 471 0.308 0.088 0.533 1.000 193.550
Ariel E. Reboyras Democratic 464 0.316 0.073 0.558 1.000 201.596
Proco Joe Moreno Democratic 249 0.325 -0.064 0.725 1.006 955.471
Natashia Holmes Democratic 50 0.329 -0.273 1.122 1.000 1263.189
Thomas Murphy Democratic 51 0.365 0.033 0.779 1.001 507.294
Peter Chico Democratic 205 0.366 0.189 0.565 1.000 162.169
William D. Burns Democratic 110 0.395 -0.120 0.999 1.004 1365.723
Nicholas Sposato Multiple / changing designations 559 0.417 0.233 0.611 1.002 187.369
Deborah L. Graham Democratic 100 0.424 -0.057 0.966 1.003 1370.203
Felix Cardona Jr. Democratic 327 0.437 0.256 0.629 1.001 147.166
Willie B. Cochran Democratic 257 0.454 0.086 0.824 1.001 689.550
Brendan Reilly Democratic 603 0.488 0.306 0.684 1.001 150.370
Brian Doherty Republican 109 0.502 0.113 1.079 1.000 1103.006
JoAnn Thompson Democratic 130 0.508 0.072 1.003 1.002 824.519
Patrick Daley Thompson Democratic 225 0.514 0.194 0.817 1.001 327.315
Timothy M. Cullerton Democratic 87 0.557 -0.043 1.285 1.001 1313.962
Anthony Beale Democratic 639 0.569 0.385 0.767 1.001 195.180
Vi Daley Democratic 113 0.605 0.224 1.090 1.000 749.990
Margaret Laurino Democratic 354 0.631 0.347 0.945 1.002 310.465
Daniel Solis Democratic 332 0.633 0.329 0.941 1.000 265.006
Patrick O'Connor Democratic 322 0.637 0.332 0.961 1.000 446.159
Lona Lane Democratic 144 0.641 0.187 1.136 1.000 732.937
Edward M. Burke Democratic 430 0.689 0.464 0.919 1.003 269.757
Michael Zalewski Democratic 316 0.690 0.393 1.008 1.001 423.782
Thomas Allen Democratic 107 0.710 0.304 1.219 1.000 692.724
James Gardiner Democratic 333 0.735 0.533 0.935 1.002 162.295
Richard Mell Democratic 150 0.745 0.349 1.188 1.002 648.214
Silvana Tabares Democratic 357 0.760 0.569 0.964 1.003 201.763
Mary O'Connor Democratic 80 0.763 -0.067 1.633 1.009 1165.689
Raymond A. Lopez Democratic 462 0.806 0.610 1.015 1.000 217.104
John Rice Democratic 25 0.816 0.054 1.648 1.001 1680.539
Anthony V. Napolitano Multiple / changing designations 478 0.825 0.633 1.029 1.007 167.706
Latasha R. Thomas Democratic 186 0.835 0.418 1.334 1.001 672.127
Frank Olivo Democratic 111 0.846 0.376 1.433 1.000 772.889
Marty Quinn Democratic 573 0.902 0.705 1.109 1.001 156.982
John Pope Democratic 202 0.951 0.523 1.415 1.002 582.907
Patrick Levar Democratic 107 1.001 0.444 1.635 1.000 1027.714
Todd H. Stroger Democratic 51 1.032 0.347 1.869 1.001 1228.656
Mary Ann Smith Democratic 100 1.062 0.530 1.717 1.001 755.768
William Banks Democratic 85 1.087 0.498 1.795 1.000 691.870
Virginia Rugai Democratic 116 1.098 0.573 1.647 1.001 901.455
Isaac Carothers Democratic 96 1.138 0.538 1.830 1.000 888.828
Ray Suarez Democratic 193 1.186 0.623 1.722 1.000 515.749
Carrie Austin Democratic 419 1.243 1.004 1.487 1.000 197.980
Bernard Stone Democratic 112 1.644 1.019 2.309 1.005 557.043
Ted Matlak Democratic 58 1.757 0.888 2.605 1.000 695.762
William Beavers Democratic 53 1.796 0.775 2.794 1.001 514.652
Burton Natarus Democratic 60 1.844 0.793 2.823 1.000 510.569
Jesse Granato Democratic 7 1.882 0.348 4.927 1.001 482.786
Darcel A. Beavers Unknown 5 1.950 0.093 5.034 1.001 1490.618
Leonard DeVille Unknown 7 1.966 0.374 5.049 1.001 396.498
Vilma Colom Democratic 7 1.983 0.341 5.131 1.002 337.688
Michael Wojcik Democratic 7 2.007 0.348 4.844 1.002 488.755
James Balcer Democratic 202 2.078 1.567 2.708 1.000 438.964

Reproduction and retained versions

Run from the Local project root:

Rscript Code/66_prepare_chicago_2003.r
Rscript Code/67_fit_chicago_2003.r
Rscript Code/69_chicago_2003_report.r
quarto render chicago-report.qmd
quarto render chicago-technical-appendix.qmd

The corrected raw delivery, replay inputs and checks are under Jacob/2026-10-16-chicago/; prepared data, chains, scores, audit tables and exact session information are in Results/Chicago-2003-oct16/. Research inputs are under Data/Chicago/party_research_2003/, Data/Chicago/party_research_remaining_2026-10-15/, Data/Chicago/party_research_final15_2026-10-16/ and Data/Chicago/party_research_final10_2026-10-18/. Code/70 consolidates the last follow-up; Code/69 applies it to report outputs without changing the fitted draws. The preceding pooled fit remains in Results/Chicago-2003/ and its pages in Results/chicago-report-before-oct16/. Recent-only results and archived pages are also preserved.

Historical repeated-pattern sensitivity and alternative starts from the earlier recent-only appendix are not newly completed checks of this expanded input.