A measurement project building a panel of enforcement actions across sanctioned states from 1945 to the present, disaggregated into separable layers rather than a single composite. The goal is to measure enforcement directly, not through proxies. Code and data are public on GitHub.
Four independent source layers. No hand-coding. The zeros are the quantity of interest.
| Year | States | Layer 1 | Layer 2 | Layer 3 | Layer 4 |
|---|---|---|---|---|---|
| 1945 | 1 | 0 | 0 | — | 0 |
| 1946 | 1 | 0 | 0 | — | 0 |
| 1947 | 1 | 0 | 0 | — | 0 |
| 1948 | 1 | 0 | 0 | — | 0 |
| 1949 | 1 | 0 | 0 | — | 0 |
| 1950 | 3 | 0 | 0 | — | 5 |
| 1951 | 3 | 0 | 0 | — | 5 |
| 1952 | 3 | 0 | 0 | — | 5 |
| 1953 | 3 | 0 | 0 | — | 5 |
| 1954 | 3 | 0 | 0 | — | 5 |
| 1955 | 3 | 0 | 0 | — | 0 |
| 1956 | 3 | 0 | 0 | — | 0 |
| 1957 | 3 | 0 | 0 | — | 0 |
| 1958 | 3 | 0 | 0 | — | 5 |
| 1959 | 3 | 0 | 0 | — | 0 |
| 1960 | 3 | 0 | 0 | — | 0 |
| 1961 | 3 | 0 | 0 | — | 0 |
| 1962 | 4 | 0 | 0 | — | 0 |
| 1963 | 4 | 0 | 0 | — | 0 |
| 1964 | 5 | 0 | 0 | — | 5 |
| 1965 | 6 | 0 | 0 | — | 10 |
| 1966 | 6 | 0 | 0 | — | 10 |
| 1967 | 6 | 0 | 0 | — | 10 |
| 1968 | 6 | 0 | 0 | — | 10 |
| 1969 | 6 | 0 | 0 | — | 10 |
| 1970 | 6 | 0 | 0 | — | 10 |
| 1971 | 6 | 0 | 0 | — | 10 |
| 1972 | 6 | 0 | 0 | — | 10 |
| 1973 | 6 | 0 | 0 | — | 10 |
| 1974 | 6 | 0 | 0 | — | 0 |
| 1975 | 8 | 0 | 0 | — | 0 |
| 1976 | 8 | 0 | 0 | — | 0 |
| 1977 | 8 | 0 | 0 | — | 0 |
| 1978 | 8 | 0 | 0 | — | 0 |
| 1979 | 10 | 4 | 0 | — | 0 |
| 1980 | 9 | 0 | 6 | — | 0 |
| 1981 | 9 | 0 | 6 | — | 0 |
| 1982 | 9 | 0 | 0 | — | 0 |
| 1983 | 9 | 0 | 0 | — | 0 |
| 1984 | 9 | 0 | 0 | — | 0 |
| 1985 | 11 | 4 | 0 | — | 0 |
| 1986 | 12 | 7 | 10 | — | 0 |
| 1987 | 12 | 3 | 18 | — | 0 |
| 1988 | 13 | 4 | 0 | — | 0 |
| 1989 | 13 | 0 | 14 | — | 7 |
| 1990 | 14 | 7 | 15 | — | 0 |
| 1991 | 12 | 4 | 24 | — | 5 |
| 1992 | 13 | 7 | 29 | — | 3 |
| 1993 | 13 | 7 | 52 | — | 7 |
| 1994 | 13 | 0 | 59 | — | 9 |
| 1995 | 11 | 0 | 42 | — | 4 |
| 1996 | 10 | 0 | 3 | — | 9 |
| 1997 | 12 | 8 | 6 | — | 4 |
| 1998 | 12 | 0 | 51 | — | 9 |
| 1999 | 13 | 4 | 50 | — | 15 |
| 2000 | 13 | 0 | 66 | — | 7 |
| 2001 | 16 | 8 | 1,995 | — | 165 |
| 2002 | 16 | 0 | 1,022 | — | 80 |
| 2003 | 17 | 4 | 1,716 | 45 | 143 |
| 2004 | 15 | 3 | 181 | 20 | 82 |
| 2005 | 14 | 0 | 629 | 16 | 54 |
| 2006 | 17 | 15 | 1,134 | 26 | 39 |
| 2007 | 18 | 4 | 460 | 20 | 39 |
| 2008 | 18 | 0 | 2,691 | 28 | 57 |
| 2009 | 18 | 0 | 1,308 | 15 | 72 |
| 2010 | 20 | 4 | 726 | 24 | 124 |
| 2011 | 20 | 3 | 1,538 | 13 | 84 |
| 2012 | 21 | 16 | 4,634 | 21 | 74 |
| 2013 | 21 | 0 | 2,989 | 24 | 52 |
| 2014 | 24 | 26 | 341 | 23 | 71 |
| 2015 | 26 | 13 | 237 | 23 | 47 |
| 2016 | 25 | 9 | 4,090 | 23 | 48 |
| 2017 | 24 | 9 | 339 | 27 | 41 |
| 2018 | 25 | 18 | 303 | 11 | 29 |
| 2019 | 25 | 15 | 1,418 | 52 | 32 |
| 2020 | 26 | 11 | 923 | 10 | 26 |
| 2021 | 27 | 10 | 50 | 20 | 22 |
Program events, multilateral measures, agency actions, and kinetic force — each drawn from a separate source so the layers cannot contaminate one another.
A triangulated count rather than a latent-trait model, so structural absence of enforcement stays visible instead of being smoothed toward the trait.
Predictions written before the data are seen; a validation harness against a cross-platform baseline; null results kept with their verdicts.
Posted as they mature.