Files
foxhunt/common/src/lib.rs
jgrusewski 6bd5b18465 🔧 Wave 33: Test Compilation Improvements - 57 errors remaining
**Progress: 1,178 → 57 test errors (95% reduction)**

## Status Summary
-  Production code: Compiles cleanly (0 errors)
- ⚠️  Test code: 57 errors remain (massive improvement)
- ⚙️  All services build successfully
- 📊 Warning count: 253 (target: <20) - AGENTS WILL FIX

## Remaining Test Errors (57 total)
### Primary Issues:
1. 23× E0308 mismatched types
2. 17× E0433 undeclared Decimal
3. 15× E0433 compliance module not found
4. 6× E0624 private method access
5. Various import and type issues

## Next Phase: Wave 33-2
Launch 10+ parallel agents to:
- Fix remaining 57 test compilation errors
- Reduce 253 warnings to <20
- Achieve 95% test coverage
- Ensure all tests pass

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 21:24:28 +02:00

70 lines
2.5 KiB
Rust

//! Common utilities and shared types for Foxhunt HFT Trading System
//!
//! This crate contains shared utilities that are used across multiple services
//! in the Foxhunt HFT trading system, eliminating code duplication and providing
//! a consistent interface for common operations.
//!
//! # Modules
//!
//! - [`database`] - Database connection utilities and configurations
//! - [`error`] - Common error types and utilities
//! - [`traits`] - Shared traits used across services
//! - [`constants`] - Shared constants and configuration values
//! - [`types`] - Common data types
#![allow(missing_docs)] // Internal implementation details
#![warn(missing_debug_implementations)]
#![warn(rust_2018_idioms)]
#![deny(
clippy::unwrap_used,
clippy::expect_used,
clippy::panic,
clippy::unimplemented,
clippy::unreachable
)]
pub mod constants;
pub mod database;
pub mod error;
pub mod market_data;
pub mod traits;
pub mod types;
// Re-export database types for external use
pub use database::{DatabaseConfig, DatabaseError, DatabasePool};
// Re-export commonly used types at crate root for convenience
pub use types::{
AccountId, Aggregate, BarEvent, BrokerType, CommonTypeError, ConfigVersion, ConnectionEvent,
ConnectionInfo, ConnectionStatus, Currency, DataType, ErrorEvent, Execution, GenericTimestamp,
HftTimestamp, Level2Update, MarketDataEvent, MarketRegime, MarketStatus, Money, Order,
OrderBookEvent, OrderEvent, OrderEventType, OrderId, OrderSide, OrderStatus, OrderType,
Position, PositionMap, Price, PriceLevel, Quantity, QuoteEvent, RequestId, ResourceLimits,
ServiceId, ServiceStatus, Subscription, Symbol, TimeInForce, Timestamp, TradeEvent, TradeId,
Volume,
};
// Re-export error types
pub use error::{CommonError, CommonResult};
// Re-export common traits for convenience
pub use traits::{
CircuitBreaker, Configurable, DetailedHealth, GracefulShutdown, HealthCheck, HealthStatus,
Metrics, RateLimitStatus, RateLimited, Reloadable, Service,
};
pub use market_data::{
BarEvent as BarEventFromMarketData, BarInterval,
MarketDataEvent as MarketDataEventFromMarketData, NewsEvent,
OrderBookEvent as OrderBookEventFromMarketData, QuoteEvent as QuoteEventFromMarketData,
TradeEvent as TradeEventFromMarketData,
};
// Import market data types for canonical use
// Use common::market_data::{MarketDataEvent, TradeEvent, QuoteEvent, BarEvent} etc.
pub mod trading;
// Test module for database features
#[cfg(all(test, feature = "database"))]
mod sqlx_test;