Exchange
metaculus
Drift Type
REMOVED_FIELD / CHANGED_RESPONSE
Severity
MEDIUM — callers silently receive empty aggregation data; closed question text may be empty
Their Docs
Source: https://www.metaculus.com/notebooks/42554/changes-to-the-metaculus-api/ (March 2026 API changelog)
Two breaking changes documented in the March 2026 changelog that are not covered by any existing issues (#1362, #1734, #1871, #1950, #2000):
1. Community Prediction (aggregations) removed from general API
question.aggregations data is now only populated on a limited internal test set. For the vast majority of questions, aggregations returns an empty or sparse object. The cached spec (core/specs/metaculus/Metaculus.yaml) models aggregations as a populated field on question objects. Any code reading question.aggregations.recency_weighted or other aggregation sub-keys will silently receive null/undefined.
2. Closed question text access restricted
Authenticated users who have NOT made at least one forecast on a question no longer receive full question text when that question is closed. The API returns a truncated or empty question_text for such users. The cached spec has no description of this authentication gate and the PMXT adapter has no mechanism to detect or handle the truncation.
Our Cached Spec
core/specs/metaculus/Metaculus.yaml (generated 2026-03-01T14:46:24.859Z — the spec was generated just before or at the same time as these changes). The Post schema and Question schema model these fields without restriction notices.
callApi() References at Risk
callApi("GetPosts", ...) at fetchMarkets.ts:50 and fetchEvents.ts:37 — returns posts with aggregations that are now sparse
callApi("GetPost", { postId }) at fetchMarkets.ts:95 and fetchEvents.ts:106 — may return empty question text for closed questions
Impact
- Forecasting-based features that display community consensus will show empty data for most questions
- Normalizer may misinterpret empty aggregations as "no forecasts" rather than "data withheld"
- Question display for closed questions shows empty text for non-forecasting users
Found by automated spec drift audit — 2026-08-23
Exchange
metaculus
Drift Type
REMOVED_FIELD / CHANGED_RESPONSE
Severity
MEDIUM — callers silently receive empty aggregation data; closed question text may be empty
Their Docs
Source: https://www.metaculus.com/notebooks/42554/changes-to-the-metaculus-api/ (March 2026 API changelog)
Two breaking changes documented in the March 2026 changelog that are not covered by any existing issues (#1362, #1734, #1871, #1950, #2000):
1. Community Prediction (aggregations) removed from general API
question.aggregationsdata is now only populated on a limited internal test set. For the vast majority of questions,aggregationsreturns an empty or sparse object. The cached spec (core/specs/metaculus/Metaculus.yaml) modelsaggregationsas a populated field on question objects. Any code readingquestion.aggregations.recency_weightedor other aggregation sub-keys will silently receivenull/undefined.2. Closed question text access restricted
Authenticated users who have NOT made at least one forecast on a question no longer receive full question text when that question is closed. The API returns a truncated or empty
question_textfor such users. The cached spec has no description of this authentication gate and the PMXT adapter has no mechanism to detect or handle the truncation.Our Cached Spec
core/specs/metaculus/Metaculus.yaml(generated 2026-03-01T14:46:24.859Z — the spec was generated just before or at the same time as these changes). The Post schema and Question schema model these fields without restriction notices.callApi() References at Risk
callApi("GetPosts", ...)at fetchMarkets.ts:50 and fetchEvents.ts:37 — returns posts with aggregations that are now sparsecallApi("GetPost", { postId })at fetchMarkets.ts:95 and fetchEvents.ts:106 — may return empty question text for closed questionsImpact
Found by automated spec drift audit — 2026-08-23