refactor: Address PR review feedback on shared packages

- Standardize vitest to v4.0.16 across all packages
- Clean up type imports in events.ts (remove verbose inline casting)
- Expand skipDirs to support Python, Rust, Go, PHP, Gradle projects
- Document circular dependency prevention in @automaker/types
- Add comprehensive error handling documentation to @automaker/git-utils

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Kacper
2025-12-20 23:03:44 +01:00
parent 67788bee0b
commit 493c392422
6 changed files with 100 additions and 385 deletions

View File

@@ -118,6 +118,8 @@ const options: ExecuteOptions = {
None - this is a pure types package.
**IMPORTANT**: This package must NEVER depend on other `@automaker/*` packages to prevent circular dependencies. All other packages depend on this one, making it the foundation of the dependency tree.
## Used By
- `@automaker/utils`
@@ -127,3 +129,21 @@ None - this is a pure types package.
- `@automaker/git-utils`
- `@automaker/server`
- `@automaker/ui`
## Circular Dependency Prevention
To maintain the package dependency hierarchy and prevent circular dependencies:
1. **Never add dependencies** to other `@automaker/*` packages in `package.json`
2. **Keep result types here** - For example, `DependencyResolutionResult` should stay in `@automaker/dependency-resolver`, not be moved here
3. **Import only base types** - Other packages can import from here, but this package cannot import from them
4. **Document the rule** - When adding new functionality, ensure it follows this constraint
This constraint ensures a clean one-way dependency flow:
```
@automaker/types (foundation - no dependencies)
@automaker/utils, @automaker/platform, etc.
@automaker/server, @automaker/ui
```