Claude
cef6903cbc
feat: implement production-ready features from improvement plan phase 2.5 & 2.6
Phase 2.5: Fix Foundation (CRITICAL)
- Fixed 4 failing tests by adding cache attribute to mock_client fixture
- Created comprehensive cache tests for Pages endpoint (test_pages_cache.py)
- Added missing dependencies: pydantic[email] and aiohttp to core requirements
- Updated requirements.txt with proper dependency versions
- Achieved 82.67% test coverage with 454 passing tests
Phase 2.6: Production Essentials
- Implemented structured logging (wikijs/logging.py)
* JSON and text log formatters
* Configurable log levels and output destinations
* Integration with client operations
- Implemented metrics and telemetry (wikijs/metrics.py)
* Request tracking with duration, status codes, errors
* Latency percentiles (min, max, avg, p50, p95, p99)
* Error rate calculation
* Thread-safe metrics collection
- Implemented rate limiting (wikijs/ratelimit.py)
* Token bucket algorithm for request throttling
* Per-endpoint rate limiting support
* Configurable timeout handling
* Burst capacity management
- Created SECURITY.md policy
* Vulnerability reporting procedures
* Security best practices
* Response timelines
* Supported versions
Documentation
- Added comprehensive logging guide (docs/logging.md)
- Added metrics and telemetry guide (docs/metrics.md)
- Added rate limiting guide (docs/rate_limiting.md)
- Updated README.md with production features section
- Updated IMPROVEMENT_PLAN_2.md with completed checkboxes
Testing
- Created test suite for logging (tests/test_logging.py)
- Created test suite for metrics (tests/test_metrics.py)
- Created test suite for rate limiting (tests/test_ratelimit.py)
- All 454 tests passing
- Test coverage: 82.67%
Breaking Changes: None
Dependencies Added: pydantic[email], email-validator, dnspython
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:45:02 +00:00
..
2025-10-22 20:45:59 +00:00
2025-10-22 17:44:44 +00:00
2025-10-23 14:46:58 +00:00
2025-10-23 14:46:58 +00:00
2025-10-23 01:59:15 +00:00
2025-07-30 21:10:44 -04:00
2025-10-22 18:07:29 +00:00
2025-10-23 14:46:58 +00:00
2025-10-22 17:44:44 +00:00
2025-10-23 16:45:02 +00:00
2025-10-23 16:45:02 +00:00
2025-07-29 13:25:36 -04:00
2025-10-23 16:45:02 +00:00
2025-07-30 20:49:40 -04:00