Files
puaros/packages/guardian/examples/bad-architecture/circular/UserService.ts
imfozilbek 03705b5264 feat(guardian): add guardian package - code quality analyzer
Add @puaros/guardian package v0.1.0 - code quality guardian for vibe coders and enterprise teams.

Features:
- Hardcode detection (magic numbers, magic strings)
- Circular dependency detection
- Naming convention enforcement (Clean Architecture)
- Architecture violation detection
- CLI tool with comprehensive reporting
- 159 tests with 80%+ coverage
- Smart suggestions for fixes
- Built for AI-assisted development

Built with Clean Architecture and DDD principles.
Works with Claude, GPT, Copilot, Cursor, and any AI coding assistant.
2025-11-24 02:54:39 +05:00

35 lines
782 B
TypeScript

import { OrderService } from "./OrderService"
/**
* BAD EXAMPLE: Circular Dependency
*
* UserService -> OrderService -> UserService
*
* Guardian should detect:
* ❌ Circular dependency cycle
*
* Why bad:
* - Tight coupling
* - Hard to test
* - Difficult to understand
* - Can cause initialization issues
* - Maintenance nightmare
*
* Fix:
* - Use interfaces
* - Use domain events
* - Extract shared logic to third service
*/
export class UserService {
constructor(private readonly orderService: OrderService) {}
public getUserOrders(userId: string): void {
console.warn(`Getting orders for user ${userId}`)
this.orderService.getOrdersByUser(userId)
}
public getUserTotalSpent(userId: string): number {
return 0
}
}