New wx-research crate added to the weather_bet Rust workspace on branch research/intraday-drift. Currently a skeleton with 7 empty module stubs; no logic yet.
Workspace Integration
Cargo.toml at the workspace root now lists "crates/wx-research" as a member. Two new workspace-level dependencies were added alongside it:
plotters = "0.3"(default features enabled)csv = "1"
The crate manifest follows the same pattern as the rest of the workspace: edition.workspace, rust-version.workspace, license.workspace, and [lints] workspace = true.
Module Layout
lib.rs declares 7 modules, all currently empty stubs to be filled in later tasks:
| Module | Intended purpose |
|---|---|
cache | Local caching of fetched weather / market data |
charts | Chart generation (via plotters) |
fetch | HTTP data fetching (NWP ensemble sources, market data) |
metrics | Statistical metrics for edge measurement / calibration |
report | Report assembly and rendering |
slugs | Slug normalization / ICAO-to-Polymarket market-slug mapping |
types | Shared domain types for research workflows |
Dependencies
Local crate dependencies (path references within the workspace):
wx-corewx-marketwx-data
Workspace dependencies pulled in:
| Crate | Role |
|---|---|
reqwest | HTTP |
serde, serde_json | Serialization |
tokio | Async runtime |
chrono, chrono-tz | Timestamps and timezone handling |
rand | Randomness (likely for simulation / bootstrap) |
anyhow | Error handling |
tracing | Structured logging / OTLP |
plotters | Chart rendering |
csv | CSV output for research reports |
Dev dependencies: wiremock, tempfile, tokio (test async).
Build Verification
cargo build -p wx-research compiled cleanly — 86 crates, 0 errors, 0 warnings.
Branch
All of this work lives on
research/intraday-drift. The crate is a stub; module implementations come in follow-on tasks.