Files
claude-code-skills-reference/transcript-fixer/scripts/core/__init__.py
daymade 9b724f33e3 Release v1.9.0: Add video-comparer skill and enhance transcript-fixer
## New Skill: video-comparer v1.0.0
- Compare original and compressed videos with interactive HTML reports
- Calculate quality metrics (PSNR, SSIM) for compression analysis
- Generate frame-by-frame visual comparisons (slider, side-by-side, grid)
- Extract video metadata (codec, resolution, bitrate, duration)
- Multi-platform FFmpeg support with security features

## transcript-fixer Enhancements
- Add async AI processor for parallel processing
- Add connection pool management for database operations
- Add concurrency manager and rate limiter
- Add audit log retention and database migrations
- Add health check and metrics monitoring
- Add comprehensive test suite (8 new test files)
- Enhance security with domain and path validators

## Marketplace Updates
- Update marketplace version from 1.8.0 to 1.9.0
- Update skills count from 15 to 16
- Update documentation (README.md, CLAUDE.md, CHANGELOG.md)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 00:23:12 +08:00

46 lines
1.7 KiB
Python

"""
Core Module - Business Logic and Data Access
This module contains the core business logic for transcript correction:
- CorrectionRepository: Data access layer with ACID transactions
- CorrectionService: Business logic layer with validation
- DictionaryProcessor: Stage 1 dictionary-based corrections
- AIProcessor: Stage 2 AI-powered corrections
- LearningEngine: Pattern detection and learning
"""
# Core SQLite-based components (always available)
from .correction_repository import CorrectionRepository, Correction, DatabaseError, ValidationError
from .correction_service import CorrectionService, ValidationRules
# Processing components (imported lazily to avoid dependency issues)
def _lazy_import(name: str) -> object:
"""Lazy import to avoid loading heavy dependencies."""
if name == 'DictionaryProcessor':
from .dictionary_processor import DictionaryProcessor
return DictionaryProcessor
elif name == 'AIProcessor':
# Use async processor by default for 5-10x speedup on large files
from .ai_processor_async import AIProcessorAsync
return AIProcessorAsync
elif name == 'LearningEngine':
from .learning_engine import LearningEngine
return LearningEngine
raise ImportError(f"Unknown module: {name}")
# Export main classes
__all__ = [
'CorrectionRepository',
'CorrectionService',
'Correction',
'DatabaseError',
'ValidationError',
'ValidationRules',
]
# Make lazy imports available via __getattr__
def __getattr__(name):
if name in ['DictionaryProcessor', 'AIProcessor', 'LearningEngine']:
return _lazy_import(name)
raise AttributeError(f"module '{__name__}' has no attribute '{name}'")