Skip to content

Type everything - #1

Merged
aledlie merged 7 commits into
mainfrom
type-everything
Dec 8, 2025
Merged

aledlie merged 7 commits into
mainfrom
type-everything

Conversation

@aledlie

@aledlie aledlie commented Dec 8, 2025

Copy link
Copy Markdown
Collaborator

No description provided.

aledlie and others added 7 commits November 24, 2025 19:32
Added comprehensive type checking infrastructure:

**Configuration:**
- Created mypy.ini with strict type checking rules
- Added pydantic>=2.0.0 and mypy>=1.0.0 to requirements.txt
- Configured virtual environment (.venv) for type checking tools

**Type Fixes in src/validators/schema.py:**
- Added Optional[str] return type for _read_file_content()
- Added Optional[Dict[str, Any]] return type for _load_json_file()
- Added int return type for main()
- Added argparse.Namespace return type for _parse_arguments()
- Added proper type hints to _process_files() and _should_process_as_json()
- Added List[str] type annotation for errors and warnings attributes
- Added -> None return type for __init__()

**Impact:**
- Enables static type checking with mypy
- Catches type errors before runtime
- Provides better IDE autocomplete and documentation
- Foundation for adding Pydantic validation models

Next steps: Fix remaining type issues in utils/, generators/, analyzers/

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

Co-Authored-By: Claude <noreply@anthropic.com>
Fixed comprehensive type annotations across utility modules and RSS generator:

**src/utils/performance_monitor.py:**
- Fixed Optional[Path] for cache_dir parameter
- Added -> None return types for save_report(), print_report(), main()

**src/utils/git_operations.py:**
- Added Dict import to typing imports
- Added -> None return type for main()
- Added Dict[str, List[str]] type annotation for results dictionary

**src/generators/rss.py:**
- Fixed Optional[Path] for git_repo parameter
- Fixed Optional[Dict[str, Any]] for _parse_commit_line()
- Added bool() wrapper for _is_git_repo() return value
- Added -> None return types for all helper methods:
  - _parse_stats_line()
  - _add_channel_metadata()
  - _add_atom_link()
  - _add_channel_items()
  - _create_item()

**Progress:**
- validators/ ✅ Complete
- utils/ ✅ Complete
- generators/rss.py ✅ Complete
- Remaining: generators/dashboard.py, generators/schema.py, analyzers/

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

Co-Authored-By: Claude <noreply@anthropic.com>
- Move AST_GREP_MCP_INTEGRATION.md to docs/
- Move SCHEMA_ORG_EXAMPLES.md to docs/
- Move SCHEMA_ORG_MCP_INTEGRATION.md to docs/
- Clean up root directory for better organization

Keeps documentation centralized in docs/ directory.
- Mark all 5 Phase 3 tasks as complete
- Add Phase 3 commit history with 10 commits
- Update implementation sequence to reflect completion
- Add notes on Phase 4 (repository organization)
- Add ongoing type hints work tracking

Phase 3 is fully complete with optimizations, testing, dashboard
enhancements, CI/CD integration, and performance monitoring.
- Add type hints to git_operations.py functions
- Add type hints to logging_config.py module
- Enable mypy checking for utility module

Improves code quality and IDE support for shared utilities.
- Add type hints to dashboard.py functions
- Add type hints to rss.py functions
- Add type hints to schema.py functions
- Enable mypy checking for generator modules

Improves code quality and IDE support across generators.
- Replace actions/upload-artifact@v3 with v4
- Replace actions/download-artifact@v3 with v4
- Fixes GitHub Actions workflow failure due to v3 deprecation

The v3 artifact actions were deprecated and now automatically fail.
This update ensures the CI pipeline continues to work correctly.

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

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@aledlie
aledlie merged commit 9d1133e into main Dec 8, 2025
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant