Skip to content

Spec drift: metaculus — July–August 2026 behavior changes: inline gated_action on social auth; gated action + atomic Key Factors on comment create; notebooks text/markdown content negotiation #2129

Description

@realfishsam

Exchange

metaculus

Drift Type

CHANGED_REQUEST / NEW_FEATURE

Severity

LOW — new optional capabilities; no runtime breakage if not used

Their Docs

Sources:

1. Social OAuth login — inline gated_action in request body (Jul 28)
Social auth sign-in now accepts an optional gated_action payload in the POST body. It is applied best-effort during the login (never blocks sign-in, logs warning on failure). This is architecturally distinct from the queued_action_token mechanism in #1871 (which stores the action in Redis and retrieves it later). The cached spec models no auth/social endpoints; #1871 does not mention this inline field variant.

2. POST /comments/create/ — gated action routing + atomic Key Factors (Jul 30)
Comment creation now:

3. GET /notebooks/{id}/{slug}/ — Accept: text/markdown content negotiation (Aug 12)
When the request carries Accept: text/markdown, the endpoint returns Content-Type: text/markdown; charset=utf-8 with a YAML frontmatter block (title, type, published_at, authors) followed by the markdown body. Response also carries Vary: Accept, Accept-Language and a Link: <html-url>; rel="canonical" header. The cached spec models no notebooks endpoint at all. #1950 lists notebooks endpoints as newly discovered but does not capture this content-negotiation behavior.

Our Cached Spec

core/specs/metaculus/Metaculus.yaml (generated 2026-03-01). No auth/social, notebooks, or new comment behavior is modelled.

callApi() References at Risk

  • Hardcoded bypass at createOrder.ts:396 for /questions/forecast/ is unrelated, but the equivalent bypass for /comments/create/ may be affected by the rollback behavior change.

Impact

  • Inline gated actions during login not leveraged (low urgency — it's additive)
  • Comment creation rollback semantics change (previously a Key Factors failure was silent)
  • Notebook markdown export not available via typed client

Found by automated spec drift audit — 2026-08-23

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3: lowcoreCore sidecar/server logiceffort: mediumenhancementNew feature or requestspec-driftCached OpenAPI spec out of date vs venue's live docs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions