Version history for the PEPIndex (Presidential Economic Pressure Index)
| Identifier | Current | Meaning |
|---|---|---|
| API path version | v1 | URL contract — /api/v1/… |
| API implementation | 2.0.0 | App / OpenAPI version |
| Schema (data dictionary) | 1.3.6 | Output / table schema |
| Methodology | 1.2.13 | Scoring framework |
| Data build | generated_at | ISO timestamp on every snapshot |
Corrected an artifact where the index recorded a ~97% chicken-out rate with zero follow-throughs. Four fixes (migration v25):
new_threat, action_claim, deescalation, or reiteration. Only a new threat mints a trackable event, so reposts and self-reported wins no longer inflate the pending count.indeterminate state. Non-trade events that lapse with no evidence now finalize to indeterminate (not scored, excluded from the chicken-out rate) instead of a fabricated abandoned. Trade lapses still slip to abandoned (the statutory↔applied gap is observable evidence).Closed a limbo gap where deadline-after-threat events could drop out of both the live-pressure and settled index between their threat-aging and finalization anchors. Live pressure now runs from the stated deadline to deadline + 90 days, the exact complement of finalization.
Every event now terminates as a TACO or a facilitation rather than tracking indefinitely. Historical backfill finalizes immediately instead of parking in monitoring. Migration v24 makes calibration_locked consistent across both seed loaders.
Overdue, unresolved threats now build a provisional live_pressure_score each cycle, so an unmet deadline visibly accrues pressure over time. The settled index value is unchanged; a new index.live_value folds overdue pressure in so the headline can move in real time.
Section 301 USTR actions publish as Federal Register NOTICE documents (not presidential documents) and were previously invisible to the index. The pipeline now ingests USTR notices (threat_source='ustr_notice'), with a notice-window backfill fix (v1.2.9) and a calibration-catalogue lock (v1.2.8) that freezes hand-curated benchmarks so their values never drift.
The dashboard now reads live data from GET /api/v1/snapshot, decoupling published-data freshness from deployments. Presidential proclamations (Section 232 / reciprocal tariffs) are now classified into events. Academic-only replication datasets were removed in favor of freely-citable published constants.
Added the statutory_authority field (IEEPA, Section 301/232/122, etc.), PACER PCL as an automated court fallback, and BEA PCE pass-through series for cross-validation against the Yale Budget Lab Tariff Tracker.
Integrated the four-group economic-impact methodology, formalized the six-dimension behavioral scoring framework (weights 30/20/15/15/10/10), added the rolling 30-day exponentially-weighted index (~23-day half-life), and published the REST API specification.
Four-criterion event definition (specificity, actionability, measurability, materiality), four-domain taxonomy (Trade, Foreign Policy, Domestic, Rhetorical), five-stage event lifecycle, and AI-assisted detection with human-in-the-loop review.