-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Add claude GitHub actions 1760073638092 #66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
taroguru
wants to merge
14
commits into
https-deeplearning-ai:main
Choose a base branch
from
taroguru:add-claude-github-actions-1760073638092
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Add claude GitHub actions 1760073638092 #66
taroguru
wants to merge
14
commits into
https-deeplearning-ai:main
from
taroguru:add-claude-github-actions-1760073638092
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
## Testing
- Added 56 comprehensive tests across 3 test files
- test_search_tools.py: 25 tests for CourseSearchTool.execute()
- test_ai_generator.py: 13 tests for AI tool calling mechanism
- test_rag_integration.py: 18 tests for end-to-end integration
- Created test infrastructure with fixtures in conftest.py
- Added comprehensive test documentation (README.md, test analysis, fixes)
## Critical Fixes
### 1. Fixed chunk context inconsistency (document_processor.py)
- **Issue**: Different context formats between regular and last lesson chunks
- **Impact**: Inconsistent semantic embeddings, unpredictable search behavior
- **Fix**: Standardized all chunks to use "Course {title} Lesson {n} content: {chunk}"
- **Tests**: test_chunk_context_consistency, test_semantic_search_relevance
### 2. Removed one-tool-call limitation (ai_generator.py)
- **Issue**: System prompt restricted AI to single tool call per query
- **Impact**: Limited comprehensive answers, couldn't compare across courses
- **Fix**: Changed to "Use tools judiciously; may use multiple tools if necessary"
- **Tests**: test_multiple_tool_calls_in_sequence, test_query_content_question
### 3. Added tool usage logging (ai_generator.py)
- **Issue**: No visibility into when tools were used vs general knowledge
- **Impact**: Impossible to debug or monitor AI decision-making
- **Fix**: Added logging to track [TOOL USE] vs [NO TOOL] for each query
- **Benefits**: Better debugging, monitoring, and optimization capability
## Documentation
- TESTING_SUMMARY.md: Executive summary of testing and improvements
- backend/tests/README.md: Test suite guide and usage instructions
- backend/tests/TEST_RESULTS_AND_FINDINGS.md: Detailed analysis and issues
- backend/tests/FIXES_APPLIED.md: Comprehensive fix documentation
## Impact
- More consistent and predictable search behavior
- More capable AI responses with multi-tool calling
- Better observability and debugging capability
- Foundation for continuous quality validation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Implemented a complete theme toggle system with the following features: - Toggle button in header with sun/moon icons - Light and dark theme CSS variables - Smooth transitions between themes - Theme persistence using localStorage - Full keyboard accessibility with ARIA labels - WCAG AA compliant color contrast 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
- Added git and file read permissions to settings.local.json - Added implement-feature slash command 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
- Added pytest configuration in pyproject.toml with test markers, filters, and clean output settings - Enhanced conftest.py with API testing fixtures including mock RAG system and FastAPI test client - Created test_api_endpoints.py with 24 tests covering all API endpoints: - /api/query endpoint testing (9 tests) - /api/courses endpoint testing (5 tests) - Session management across requests (2 tests) - Error handling and validation (7 tests) - Response schema compliance (3 tests) - Test client avoids static file mounting issues by creating clean test app - Added pytest and httpx as dev dependencies - All 24 new API tests passing 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Set up professional code quality infrastructure with Black, isort, Flake8, MyPy, and pre-commit hooks. All Python files have been automatically formatted for consistency. Changes: - Add Black (v25.9.0) for automatic code formatting (88 char line length) - Add isort (v6.1.0) for import organization (Black-compatible) - Add Flake8 (v7.3.0) for PEP 8 style enforcement - Add MyPy (v1.18.2) for static type checking - Add pre-commit (v4.3.0) with automated git hooks Configuration: - pyproject.toml: Black, isort, and MyPy settings - .flake8: Linting rules and exclusions (relaxed for gradual adoption) - .pre-commit-config.yaml: Pre-commit hooks for formatting only Development Scripts: - scripts/format.sh: Auto-format with Black and isort - scripts/lint.sh: Run Flake8 and MyPy checks - scripts/quality-check.sh: Run all quality checks Documentation: - Updated CLAUDE.md with code quality tools section - Added CODE_QUALITY.md with comprehensive tooling guide - Added scripts/README.md for development scripts Formatting: - Formatted all 17 Python files with Black - Organized imports in all files with isort - Pre-commit hooks configured to auto-format on commit Note: Flake8 and MyPy are available via scripts but not enforced in pre-commit hooks to allow for incremental quality improvements. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Integrate comprehensive code quality tooling from quality_feature branch. Merged changes: - Code quality tools: Black, isort, Flake8, MyPy, pre-commit - Development scripts for formatting and linting - Configuration files for all quality tools - Formatted all Python files with Black and isort - Combined dev dependencies from both branches (pytest + quality tools) - Combined permissions from both branches 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.