Skip to content

Packet 4: typed forecast provider boundary - #15

Merged
howdymary merged 2 commits into
mainfrom
codex/packet-4-forecast-provider
Jul 15, 2026
Merged

Packet 4: typed forecast provider boundary#15
howdymary merged 2 commits into
mainfrom
codex/packet-4-forecast-provider

Conversation

@howdymary

Copy link
Copy Markdown
Owner

Summary

  • add immutable forecast-safe requests and exact source/order-book provenance types
  • add validated result, abstention, and provider-failure contracts with stable provider provenance
  • implement market-baseline, bounded recalibration, and user callable adapters
  • evaluate typed providers against paired market forecasts in deterministic v2 reports
  • isolate opaque legacy model injection from maintained exports, registries, and genomes

Safety and integrity

  • requests structurally exclude outcomes, resolutions, and fair probabilities
  • stale/future timestamps, non-finite outputs, dynamic/mismatched provenance, and nested label injection fail closed
  • provider configurations are strict JSON, deeply copied/frozen, and deterministically hashed
  • no live, credential, network, or order path is enabled

Verification

  • 347 tests pass
  • compile, changed-file Black, scoped mypy, and diff checks pass
  • deterministic baseline/recalibration CLI checks pass
  • independent reviewer approved after adversarial structural-boundary review

Parent: #2
Closes #8
Depends on: #14

Stacked draft based on codex/packet-3-canonical-evaluation; retarget after prerequisites merge.

@howdymary
howdymary force-pushed the codex/packet-4-forecast-provider branch from 11c7cd8 to d49bc39 Compare July 15, 2026 00:06
@howdymary
howdymary changed the base branch from codex/packet-3-canonical-evaluation to main July 15, 2026 00:15
@howdymary
howdymary marked this pull request as ready for review July 15, 2026 00:15
@howdymary
howdymary merged commit 10afe77 into main Jul 15, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Packet 4: introduce a typed forecast-provider boundary

1 participant