🚨 ARCHITECTURAL DISASTER: THREE Competing Type Sources Discovered

## Critical Investigation Results

**DISASTER CONFIRMED**: Agents discovered THREE type sources instead of ONE:
1. foxhunt-common-types/ (SHOULD NOT EXIST - still active!)
2. trading_engine/src/types/ (massive duplication)
3. common/src/types.rs (depends on competing crate)

## Evidence of Violations
- foxhunt-common-types still in workspace members (line 86)
- common/Cargo.toml depends on foxhunt-common-types (line 48)
- 48+ duplicate type definitions across OrderSide, OrderStatus, OrderType
- Compilation failures due to competing imports

## Immediate Action Required
- Choose ONE canonical source
- DELETE foxhunt-common-types completely
- Consolidate ALL types to single source
- Fix THREE-WAY import chaos

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
jgrusewski
2025-09-26 15:33:34 +02:00
parent f58d14ccc3
commit ea9d8f2c88
87 changed files with 2192 additions and 817 deletions

View File

@@ -458,7 +458,7 @@ mod tests {
#[test]
fn test_database_config_default() {
let config = DatabaseConfig::default();
assert_eq!(config.application_name, "database-lib");
assert_eq!(config.application_name, "foxhunt-config");
assert!(!config.enable_query_logging);
assert!(config.enable_metrics);
}

View File

@@ -49,16 +49,16 @@ impl TransactionManager {
let start_time = Instant::now();
self.total_transactions.fetch_add(1, Ordering::Relaxed);
self.active_transactions.fetch_add(1, Ordering::Relaxed);
debug!(
"Beginning new database transaction with {}s timeout",
timeout_duration.as_secs()
);
let mut conn = self.pool.acquire().await?;
let transaction = conn.begin().await?;
// Get the transaction directly from the pool to avoid lifetime issues
let transaction = self.pool.inner().begin().await?;
let transaction_id = Uuid::new_v4();
debug!("Transaction {} started successfully", transaction_id);
Ok(DatabaseTransaction {
inner: Some(transaction),