Loading PLAN.md +6 −6 Original line number Diff line number Diff line Loading @@ -307,9 +307,9 @@ Filenames MUST enable clear assignment back to the source document location (esp ## Progress - [x] (2026-03-26 00:30) Created PLAN.md - [ ] Phase 0: Quality gates defined - [ ] Phase 1: Implement ArtifactStorage utilities - [ ] Phase 2: Refactor convert.py to folder storage - [ ] Phase 3: Refactor processor.py to folder storage - [ ] Phase 4: Add skip logic for re-extraction - [ ] Phase 5: Integration test / end-to-end validation - [x] Phase 0: Quality gates defined - [x] Phase 1: Implement ArtifactStorage utilities (extraction_result.py) - [x] Phase 2: Refactor convert.py to folder storage - [x] Phase 3: Refactor processor.py to folder storage - [x] Phase 4: Add skip logic for re-extraction (extract_types parameter) - [x] Phase 5: Integration test / end-to-end validation (`tests/ai/test_ai_extraction_artifacts.py`, 10/10 passing) tests/ai/conftest.py +4 −4 Original line number Diff line number Diff line Loading @@ -17,12 +17,12 @@ _TDOC_AI_AVAILABLE = True try: from threegpp_ai.config import AiConfig from threegpp_ai.operations import workspaces as workspace_ops from threegpp_ai.operations.embeddings import EmbeddingsManager from threegpp_ai.storage import AiStorage except ModuleNotFoundError: _TDOC_AI_AVAILABLE = False AiConfig = None # type: ignore[assignment] workspace_ops = None # Removed classes - keep as None so fixture type annotations don't NameError AiStorage = None # type: ignore[assignment] EmbeddingsManager = None # type: ignore[assignment] Loading tests/ai/test_ai_cli.py +1 −1 Original line number Diff line number Diff line Loading @@ -7,9 +7,9 @@ from pathlib import Path from unittest.mock import patch import pytest import tdoc_crawler.cli.ai as ai_cli from typer.testing import CliRunner import tdoc_crawler.cli.ai as ai_cli from tdoc_crawler.cli.app import app Loading Loading
PLAN.md +6 −6 Original line number Diff line number Diff line Loading @@ -307,9 +307,9 @@ Filenames MUST enable clear assignment back to the source document location (esp ## Progress - [x] (2026-03-26 00:30) Created PLAN.md - [ ] Phase 0: Quality gates defined - [ ] Phase 1: Implement ArtifactStorage utilities - [ ] Phase 2: Refactor convert.py to folder storage - [ ] Phase 3: Refactor processor.py to folder storage - [ ] Phase 4: Add skip logic for re-extraction - [ ] Phase 5: Integration test / end-to-end validation - [x] Phase 0: Quality gates defined - [x] Phase 1: Implement ArtifactStorage utilities (extraction_result.py) - [x] Phase 2: Refactor convert.py to folder storage - [x] Phase 3: Refactor processor.py to folder storage - [x] Phase 4: Add skip logic for re-extraction (extract_types parameter) - [x] Phase 5: Integration test / end-to-end validation (`tests/ai/test_ai_extraction_artifacts.py`, 10/10 passing)
tests/ai/conftest.py +4 −4 Original line number Diff line number Diff line Loading @@ -17,12 +17,12 @@ _TDOC_AI_AVAILABLE = True try: from threegpp_ai.config import AiConfig from threegpp_ai.operations import workspaces as workspace_ops from threegpp_ai.operations.embeddings import EmbeddingsManager from threegpp_ai.storage import AiStorage except ModuleNotFoundError: _TDOC_AI_AVAILABLE = False AiConfig = None # type: ignore[assignment] workspace_ops = None # Removed classes - keep as None so fixture type annotations don't NameError AiStorage = None # type: ignore[assignment] EmbeddingsManager = None # type: ignore[assignment] Loading
tests/ai/test_ai_cli.py +1 −1 Original line number Diff line number Diff line Loading @@ -7,9 +7,9 @@ from pathlib import Path from unittest.mock import patch import pytest import tdoc_crawler.cli.ai as ai_cli from typer.testing import CliRunner import tdoc_crawler.cli.ai as ai_cli from tdoc_crawler.cli.app import app Loading