diff --git a/ingest_pipeline/cli/__pycache__/main.cpython-312.pyc b/ingest_pipeline/cli/__pycache__/main.cpython-312.pyc index bb38b8b..76569d8 100644 Binary files a/ingest_pipeline/cli/__pycache__/main.cpython-312.pyc and b/ingest_pipeline/cli/__pycache__/main.cpython-312.pyc differ diff --git a/ingest_pipeline/cli/main.py b/ingest_pipeline/cli/main.py index b52c4a0..a82eef1 100644 --- a/ingest_pipeline/cli/main.py +++ b/ingest_pipeline/cli/main.py @@ -17,7 +17,7 @@ from ..core.models import ( StorageBackend, StorageConfig, ) -from ..flows.ingestion import create_ingestion_flow +from ..flows.ingestion_flows import create_ingestion_flow from ..flows.scheduler import create_scheduled_deployment, serve_deployments app = typer.Typer( diff --git a/ingest_pipeline/cli/tui/screens/__pycache__/dashboard.cpython-312.pyc b/ingest_pipeline/cli/tui/screens/__pycache__/dashboard.cpython-312.pyc index 7f7ff94..2ef4b4d 100644 Binary files a/ingest_pipeline/cli/tui/screens/__pycache__/dashboard.cpython-312.pyc and b/ingest_pipeline/cli/tui/screens/__pycache__/dashboard.cpython-312.pyc differ diff --git a/ingest_pipeline/cli/tui/screens/__pycache__/dialogs.cpython-312.pyc b/ingest_pipeline/cli/tui/screens/__pycache__/dialogs.cpython-312.pyc index ca4fcd6..5ccd95d 100644 Binary files a/ingest_pipeline/cli/tui/screens/__pycache__/dialogs.cpython-312.pyc and b/ingest_pipeline/cli/tui/screens/__pycache__/dialogs.cpython-312.pyc differ diff --git a/ingest_pipeline/cli/tui/screens/__pycache__/ingestion.cpython-312.pyc b/ingest_pipeline/cli/tui/screens/__pycache__/ingestion.cpython-312.pyc index e42797b..1f9335a 100644 Binary files a/ingest_pipeline/cli/tui/screens/__pycache__/ingestion.cpython-312.pyc and b/ingest_pipeline/cli/tui/screens/__pycache__/ingestion.cpython-312.pyc differ diff --git a/ingest_pipeline/cli/tui/screens/dashboard.py b/ingest_pipeline/cli/tui/screens/dashboard.py index bf48eb1..bd8d5aa 100644 --- a/ingest_pipeline/cli/tui/screens/dashboard.py +++ b/ingest_pipeline/cli/tui/screens/dashboard.py @@ -363,7 +363,9 @@ class CollectionOverviewScreen(Screen[None]): table.clear(columns=True) # Add enhanced columns with more metadata - table.add_columns("Collection", "Backend", "Documents", "Size", "Type", "Status", "Updated") + table.add_columns( + "Collection", "Backend", "Documents", "Size", "Type", "Status", "Updated" + ) # Add rows with enhanced formatting for collection in self.collections: @@ -395,7 +397,9 @@ class CollectionOverviewScreen(Screen[None]): collection["last_updated"], ) except Exception as e: - LOGGER.warning(f"Failed to add collection row for {collection.get('name', 'unknown')}: {e}") + LOGGER.warning( + f"Failed to add collection row for {collection.get('name', 'unknown')}: {e}" + ) continue if self.collections: diff --git a/ingest_pipeline/cli/tui/screens/dialogs.py b/ingest_pipeline/cli/tui/screens/dialogs.py index 6d5325a..bb6d926 100644 --- a/ingest_pipeline/cli/tui/screens/dialogs.py +++ b/ingest_pipeline/cli/tui/screens/dialogs.py @@ -150,12 +150,13 @@ class ConfirmDeleteScreen(Screen[None]): except Exception as e: self.notify(f"Failed to delete collection: {e}", severity="error", markup=False) - def _refresh_parent_collections(self) -> None: + def _refresh_parent_collections(self, *args) -> None: """Helper method to refresh parent collections.""" try: self.parent_screen.refresh_collections() except Exception as e: import logging + logger = logging.getLogger(__name__) logger.exception(f"Failed to refresh parent collections after deletion: {e}") # Don't re-raise to prevent TUI crash diff --git a/ingest_pipeline/cli/tui/screens/ingestion.py b/ingest_pipeline/cli/tui/screens/ingestion.py index 6149a19..8cf3e28 100644 --- a/ingest_pipeline/cli/tui/screens/ingestion.py +++ b/ingest_pipeline/cli/tui/screens/ingestion.py @@ -13,7 +13,7 @@ from textual.widgets import Button, Checkbox, Input, Label, LoadingIndicator, Ru from typing_extensions import override from ....core.models import IngestionResult, IngestionSource, StorageBackend -from ....flows.ingestion import create_ingestion_flow +from ....flows.ingestion_flows import create_ingestion_flow from ..models import CollectionInfo from ..utils.storage_manager import StorageManager from ..widgets import EnhancedProgressBar diff --git a/ingest_pipeline/core/__pycache__/models.cpython-312.pyc b/ingest_pipeline/core/__pycache__/models.cpython-312.pyc index accf339..7ac1a1e 100644 Binary files a/ingest_pipeline/core/__pycache__/models.cpython-312.pyc and b/ingest_pipeline/core/__pycache__/models.cpython-312.pyc differ diff --git a/ingest_pipeline/core/models.py b/ingest_pipeline/core/models.py index e2ca503..3ce2214 100644 --- a/ingest_pipeline/core/models.py +++ b/ingest_pipeline/core/models.py @@ -2,7 +2,7 @@ from datetime import UTC, datetime from enum import Enum -from typing import Annotated, ClassVar, TypedDict +from typing import Annotated, ClassVar, Literal, TypedDict from uuid import UUID, uuid4 from prefect.blocks.core import Block @@ -105,8 +105,8 @@ class FirecrawlConfig(Block): _description: ClassVar[str | None] = "Configures Firecrawl web scraping and crawling parameters" formats: list[str] = Field(default_factory=lambda: ["markdown", "html"]) - max_depth: Annotated[int, Field(ge=1, le=20)] = Field(default_factory=_default_max_crawl_depth) - limit: Annotated[int, Field(ge=1, le=1000)] = Field(default_factory=_default_max_crawl_pages) + max_depth: Annotated[int, Field(ge=1, le=100)] = Field(default_factory=_default_max_crawl_depth) + limit: Annotated[int, Field(ge=1, le=5000)] = Field(default_factory=_default_max_crawl_pages) only_main_content: bool = Field(default=True) include_subdomains: bool = Field(default=False) @@ -129,6 +129,30 @@ class RepomixConfig(Block): max_file_size: int = Field(default_factory=_default_max_file_size) # 1MB respect_gitignore: bool = Field(default=True) + # Smart extraction configuration + extraction_mode: Literal["full", "smart", "structure", "docs"] = Field( + default="smart", + description="Extraction strategy: full=all files, smart=prioritized, structure=compress only, docs=documentation only", + ) + use_compression: bool = Field( + default=False, description="Use repomix --compress to extract code structure only" + ) + prioritize_docs: bool = Field( + default=True, description="Prioritize README and documentation files in extraction" + ) + max_output_size: Annotated[int, Field(ge=1_000_000, le=50_000_000)] = Field( + default=5_000_000, description="Maximum output size in bytes (1MB-50MB)" + ) + include_git_history: bool = Field( + default=False, description="Include git diffs and commit history" + ) + top_files_count: Annotated[int, Field(ge=1, le=50)] = Field( + default=10, description="Number of top files to show in summary" + ) + output_format: Literal["xml", "markdown", "json"] = Field( + default="markdown", description="Repomix output format" + ) + class R2RConfig(Block): """Configuration for R2R ingestion.""" @@ -198,6 +222,7 @@ class DocumentMetadata(DocumentMetadataRequired, total=False): # Custom business metadata importance_score: float | None + extraction_mode: str | None review_status: str | None assigned_team: str | None @@ -226,6 +251,7 @@ class IngestionJob(BaseModel): completed_at: datetime | None = Field(default=None) error_message: str | None = Field(default=None) document_count: int = Field(default=0) + documents_skipped: int = Field(default=0) storage_backend: StorageBackend @@ -236,5 +262,6 @@ class IngestionResult(BaseModel): status: IngestionStatus documents_processed: int documents_failed: int + documents_skipped: int = Field(default=0) duration_seconds: float error_messages: list[str] = Field(default_factory=list) diff --git a/ingest_pipeline/flows/__init__.py b/ingest_pipeline/flows/__init__.py index 1a30ea4..d7f5ce5 100644 --- a/ingest_pipeline/flows/__init__.py +++ b/ingest_pipeline/flows/__init__.py @@ -1,6 +1,6 @@ """Prefect flows for orchestration.""" -from .ingestion import create_ingestion_flow +from .ingestion_flows import create_ingestion_flow from .scheduler import create_scheduled_deployment __all__ = [ diff --git a/ingest_pipeline/flows/__pycache__/__init__.cpython-312.pyc b/ingest_pipeline/flows/__pycache__/__init__.cpython-312.pyc index f01c833..9c1d574 100644 Binary files a/ingest_pipeline/flows/__pycache__/__init__.cpython-312.pyc and b/ingest_pipeline/flows/__pycache__/__init__.cpython-312.pyc differ diff --git a/ingest_pipeline/flows/__pycache__/ingestion.cpython-312.pyc b/ingest_pipeline/flows/__pycache__/ingestion.cpython-312.pyc index 4384a6b..b510732 100644 Binary files a/ingest_pipeline/flows/__pycache__/ingestion.cpython-312.pyc and b/ingest_pipeline/flows/__pycache__/ingestion.cpython-312.pyc differ diff --git a/ingest_pipeline/flows/__pycache__/scheduler.cpython-312.pyc b/ingest_pipeline/flows/__pycache__/scheduler.cpython-312.pyc index ec27d15..79ee8a7 100644 Binary files a/ingest_pipeline/flows/__pycache__/scheduler.cpython-312.pyc and b/ingest_pipeline/flows/__pycache__/scheduler.cpython-312.pyc differ diff --git a/ingest_pipeline/flows/ingestion.py b/ingest_pipeline/flows/ingestion_flows.py similarity index 62% rename from ingest_pipeline/flows/ingestion.py rename to ingest_pipeline/flows/ingestion_flows.py index e18709e..0a9a3a7 100644 --- a/ingest_pipeline/flows/ingestion.py +++ b/ingest_pipeline/flows/ingestion_flows.py @@ -1,7 +1,8 @@ -"""Prefect flow for ingestion pipeline.""" +"""Main ingestion flows with improved duplicate handling and logging.""" from __future__ import annotations +import asyncio from collections.abc import Callable from datetime import UTC, datetime from typing import TYPE_CHECKING, Literal, TypeAlias, assert_never, cast @@ -29,221 +30,51 @@ from ..storage import OpenWebUIStorage, WeaviateStorage from ..storage import R2RStorage as RuntimeR2RStorage from ..storage.base import BaseStorage from ..utils.metadata_tagger import MetadataTagger +from .tasks import ( + annotate_firecrawl_metadata_task, + filter_existing_documents_task, + initialize_storage_task, + map_firecrawl_site_task, + scrape_firecrawl_batch_task, + update_job_status_task, + upsert_r2r_documents_task, + validate_source_task, +) SourceTypeLiteral = Literal["web", "repository", "documentation"] StorageBackendLiteral = Literal["weaviate", "open_webui", "r2r"] SourceTypeLike: TypeAlias = IngestionSource | SourceTypeLiteral StorageBackendLike: TypeAlias = StorageBackend | StorageBackendLiteral - -def _safe_cache_key(prefix: str, params: dict[str, object], key: str) -> str: - """Create a type-safe cache key from task parameters.""" - value = params.get(key, "") - return f"{prefix}_{hash(str(value))}" - - if TYPE_CHECKING: from ..storage.r2r.storage import R2RStorage as R2RStorageType else: R2RStorageType = BaseStorage -@task(name="validate_source", retries=2, retry_delay_seconds=10, tags=["validation"]) -async def validate_source_task(source_url: str, source_type: IngestionSource) -> bool: - """ - Validate that a source is accessible. - - Args: - source_url: URL or path to source - source_type: Type of source - - Returns: - True if valid - """ - if source_type == IngestionSource.WEB: - ingestor = FirecrawlIngestor() - elif source_type == IngestionSource.REPOSITORY: - ingestor = RepomixIngestor() - else: - raise ValueError(f"Unsupported source type: {source_type}") - - result = await ingestor.validate_source(source_url) - return bool(result) - - -@task(name="initialize_storage", retries=3, retry_delay_seconds=5, tags=["storage"]) -async def initialize_storage_task(config: StorageConfig | str) -> BaseStorage: - """ - Initialize storage backend. - - Args: - config: Storage configuration block or block name - - Returns: - Initialized storage adapter - """ - # Load block if string provided - if isinstance(config, str): - # Use Block.aload with type slug for better type inference - loaded_block = await Block.aload(f"storage-config/{config}") - config = cast(StorageConfig, loaded_block) - - if config.backend == StorageBackend.WEAVIATE: - storage = WeaviateStorage(config) - elif config.backend == StorageBackend.OPEN_WEBUI: - storage = OpenWebUIStorage(config) - elif config.backend == StorageBackend.R2R: - if RuntimeR2RStorage is None: - raise ValueError("R2R storage not available. Check dependencies.") - storage = RuntimeR2RStorage(config) - else: - raise ValueError(f"Unsupported backend: {config.backend}") - - await storage.initialize() - return storage +def _cache_key_for_ingest_documents(ctx, params): + """Custom cache key function that excludes non-serializable progress_callback.""" + # Create cache key from serializable parameters only + job = params.get("job") + cache_params = { + "job_id": getattr(job, "id", None) if job else None, + "job_source_url": str(getattr(job, "source_url", "")) if job else "", + "job_source_type": getattr(job, "source_type", None) if job else None, + "collection_name": params.get("collection_name"), + "batch_size": params.get("batch_size"), + "storage_block_name": params.get("storage_block_name"), + "ingestor_config_block_name": params.get("ingestor_config_block_name"), + } + return f"ingest_docs_{hash(str(cache_params))}" @task( - name="map_firecrawl_site", + name="ingest_documents", retries=2, - retry_delay_seconds=15, - tags=["firecrawl", "map"], - cache_key_fn=lambda ctx, p: _safe_cache_key("firecrawl_map", p, "source_url"), + retry_delay_seconds=30, + tags=["ingestion"], + cache_key_fn=_cache_key_for_ingest_documents, ) -async def map_firecrawl_site_task(source_url: str, config: FirecrawlConfig | str) -> list[str]: - """Map a site using Firecrawl and return discovered URLs.""" - # Load block if string provided - if isinstance(config, str): - # Use Block.aload with type slug for better type inference - loaded_block = await Block.aload(f"firecrawl-config/{config}") - config = cast(FirecrawlConfig, loaded_block) - - ingestor = FirecrawlIngestor(config) - mapped = await ingestor.map_site(source_url) - return mapped or [source_url] - - -@task( - name="filter_existing_documents", - retries=1, - retry_delay_seconds=5, - tags=["dedup"], - cache_key_fn=lambda ctx, p: _safe_cache_key("filter_docs", p, "urls"), -) # Cache based on URL list -async def filter_existing_documents_task( - urls: list[str], - storage_client: BaseStorage, - stale_after_days: int = 30, - *, - collection_name: str | None = None, -) -> list[str]: - """Filter URLs to only those that need scraping (missing or stale in storage).""" - import asyncio - - logger = get_run_logger() - - # Use semaphore to limit concurrent existence checks - semaphore = asyncio.Semaphore(20) - - async def check_url_exists(url: str) -> tuple[str, bool]: - async with semaphore: - try: - document_id = str(FirecrawlIngestor.compute_document_id(url)) - exists = await storage_client.check_exists( - document_id, collection_name=collection_name, stale_after_days=stale_after_days - ) - return url, exists - except Exception as e: - logger.warning("Error checking existence for URL %s: %s", url, e) - # Assume doesn't exist on error to ensure we scrape it - return url, False - - # Check all URLs in parallel - use return_exceptions=True for partial failure handling - results = await asyncio.gather(*[check_url_exists(url) for url in urls], return_exceptions=True) - - # Collect URLs that need scraping, handling any exceptions - eligible = [] - for result in results: - if isinstance(result, Exception): - logger.error("Unexpected error in parallel existence check: %s", result) - continue - # Type narrowing: result is now known to be tuple[str, bool] - if isinstance(result, tuple) and len(result) == 2: - url, exists = result - if not exists: - eligible.append(url) - - skipped = len(urls) - len(eligible) - if skipped > 0: - logger.info("Skipping %s up-to-date documents in %s", skipped, storage_client.display_name) - - return eligible - - -@task( - name="scrape_firecrawl_batch", retries=2, retry_delay_seconds=20, tags=["firecrawl", "scrape"] -) -async def scrape_firecrawl_batch_task( - batch_urls: list[str], config: FirecrawlConfig -) -> list[FirecrawlPage]: - """Scrape a batch of URLs via Firecrawl.""" - ingestor = FirecrawlIngestor(config) - result: list[FirecrawlPage] = await ingestor.scrape_pages(batch_urls) - return result - - -@task(name="annotate_firecrawl_metadata", retries=1, retry_delay_seconds=10, tags=["metadata"]) -async def annotate_firecrawl_metadata_task( - pages: list[FirecrawlPage], job: IngestionJob -) -> list[Document]: - """Annotate scraped pages with standardized metadata.""" - if not pages: - return [] - - ingestor = FirecrawlIngestor() - documents = [ingestor.create_document(page, job) for page in pages] - - try: - from ..config import get_settings - - settings = get_settings() - async with MetadataTagger(llm_endpoint=str(settings.llm_endpoint)) as tagger: - tagged_documents: list[Document] = await tagger.tag_batch(documents) - return tagged_documents - except IngestionError as exc: # pragma: no cover - logging side effect - logger = get_run_logger() - logger.warning("Metadata tagging failed: %s", exc) - return documents - except Exception as exc: # pragma: no cover - defensive - logger = get_run_logger() - logger.warning("Metadata tagging unavailable, using base metadata: %s", exc) - return documents - - -@task(name="upsert_r2r_documents", retries=2, retry_delay_seconds=20, tags=["storage", "r2r"]) -async def upsert_r2r_documents_task( - storage_client: R2RStorageType, - documents: list[Document], - collection_name: str | None, -) -> tuple[int, int]: - """Upsert documents into R2R storage.""" - if not documents: - return 0, 0 - - stored_ids: list[str] = await storage_client.store_batch( - documents, collection_name=collection_name - ) - processed = len(stored_ids) - failed = len(documents) - processed - - if failed: - logger = get_run_logger() - logger.warning("Failed to upsert %s documents to R2R", failed) - - return processed, failed - - -@task(name="ingest_documents", retries=2, retry_delay_seconds=30, tags=["ingestion"]) async def ingest_documents_task( job: IngestionJob, collection_name: str | None = None, @@ -252,7 +83,7 @@ async def ingest_documents_task( storage_block_name: str | None = None, ingestor_config_block_name: str | None = None, progress_callback: Callable[[int, str], None] | None = None, -) -> tuple[int, int]: +) -> tuple[int, int, int]: """ Ingest documents from source with optional pre-initialized storage client. @@ -266,8 +97,11 @@ async def ingest_documents_task( progress_callback: Optional callback for progress updates Returns: - Tuple of (processed_count, failed_count) + Tuple of (processed_count, failed_count, skipped_count) """ + logger = get_run_logger() + logger.info("Starting document ingestion from %s source", job.source_type.value) + if progress_callback: progress_callback(35, "Creating ingestor and storage clients...") @@ -288,6 +122,10 @@ async def ingest_documents_task( ingestor = await _create_ingestor(job, ingestor_config_block_name) storage = storage_client or await _create_storage(job, collection_name, storage_block_name) + logger.info( + "Using %s storage backend with batch size %d", storage.__class__.__name__, batch_size + ) + if progress_callback: progress_callback(40, "Starting document processing...") @@ -298,14 +136,40 @@ async def ingest_documents_task( async def _create_ingestor(job: IngestionJob, config_block_name: str | None = None) -> BaseIngestor: """Create appropriate ingestor based on job source type.""" + logger = get_run_logger() + if job.source_type == IngestionSource.WEB: if config_block_name: + logger.info("Loading Firecrawl configuration block: %s", config_block_name) # Use Block.aload with type slug for better type inference loaded_block = await Block.aload(f"firecrawl-config/{config_block_name}") config = cast(FirecrawlConfig, loaded_block) else: # Fallback to default configuration config = FirecrawlConfig() + logger.info( + "Created Firecrawl ingestor with max depth %d, limit %d", config.max_depth, config.limit + ) + return FirecrawlIngestor(config) + elif job.source_type == IngestionSource.DOCUMENTATION: + if config_block_name: + # Use Block.aload with type slug for better type inference + loaded_block = await Block.aload(f"firecrawl-config/{config_block_name}") + config = cast(FirecrawlConfig, loaded_block) + else: + # Use documentation-optimized configuration with deep crawling + config = FirecrawlConfig( + max_depth=50, + limit=2000, + include_subdomains=True, + only_main_content=True, + formats=["markdown", "html"], + ) + logger.info( + "Created documentation ingestor with max depth %d, limit %d", + config.max_depth, + config.limit, + ) return FirecrawlIngestor(config) elif job.source_type == IngestionSource.REPOSITORY: if config_block_name: @@ -313,8 +177,41 @@ async def _create_ingestor(job: IngestionJob, config_block_name: str | None = No loaded_block = await Block.aload(f"repomix-config/{config_block_name}") config = cast(RepomixConfig, loaded_block) else: - # Fallback to default configuration - config = RepomixConfig() + # Create configuration with smart defaults from Prefect Variables + extraction_mode_var = await Variable.aget( + "default_repo_extraction_mode", default="smart" + ) + max_output_size_var = await Variable.aget( + "default_repo_max_output_size", default="5000000" + ) + + # Handle variable types safely + extraction_mode = str(extraction_mode_var) if extraction_mode_var else "smart" + try: + max_output_size = int(float(str(max_output_size_var))) + except (ValueError, TypeError): + max_output_size = 5_000_000 + + # Validate extraction mode + valid_modes = ["full", "smart", "structure", "docs"] + if extraction_mode not in valid_modes: + extraction_mode = "smart" + + config = RepomixConfig( + extraction_mode=cast( + Literal["full", "smart", "structure", "docs"], extraction_mode + ), + max_output_size=max_output_size, + prioritize_docs=True, + use_compression=extraction_mode in ["structure", "smart"], + ) + + logger.info( + "Created Repomix ingestor with extraction mode '%s', max file size %d, max output size %d", + config.extraction_mode, + config.max_file_size, + config.max_output_size, + ) return RepomixIngestor(config) else: raise ValueError(f"Unsupported source: {job.source_type}") @@ -324,12 +221,15 @@ async def _create_storage( job: IngestionJob, collection_name: str | None, storage_block_name: str | None = None ) -> BaseStorage: """Create and initialize storage client.""" + logger = get_run_logger() + if collection_name is None: # Use variable for default collection prefix prefix = await Variable.aget("default_collection_prefix", default="docs") collection_name = f"{prefix}_{job.source_type.value}" if storage_block_name: + logger.info("Loading storage configuration block: %s", storage_block_name) # Load storage config from block loaded_block = await Block.aload(f"storage-config/{storage_block_name}") storage_config = cast(StorageConfig, loaded_block) @@ -344,6 +244,7 @@ async def _create_storage( storage = _instantiate_storage(job.storage_backend, storage_config) await storage.initialize() + logger.info("Storage client initialized for collection: %s", collection_name) return storage @@ -415,10 +316,12 @@ async def _process_documents( batch_size: int, collection_name: str | None, progress_callback: Callable[[int, str], None] | None = None, -) -> tuple[int, int]: +) -> tuple[int, int, int]: """Process documents in batches.""" + logger = get_run_logger() processed = 0 failed = 0 + skipped = 0 batch: list[Document] = [] total_documents = 0 batch_count = 0 @@ -429,14 +332,17 @@ async def _process_documents( # Use smart ingestion with deduplication if storage supports it if hasattr(storage, "check_exists"): try: + logger.info("Using smart ingestion with deduplication") # Try to use the smart ingestion method document_generator = ingestor.ingest_with_dedup( job, storage, collection_name=collection_name ) - except Exception: + except Exception as e: + logger.warning("Smart ingestion failed, falling back to regular ingestion: %s", e) # Fall back to regular ingestion if smart method fails document_generator = ingestor.ingest(job) else: + logger.info("Using regular ingestion (storage doesn't support existence checks)") document_generator = ingestor.ingest(job) async for document in document_generator: @@ -451,7 +357,7 @@ async def _process_documents( f"Processing batch {batch_count} ({total_documents} documents so far)...", ) - batch_processed, batch_failed = await _store_batch(storage, batch, collection_name) + batch_processed, batch_failed, _ = await _store_batch(storage, batch, collection_name) processed += batch_processed failed += batch_failed batch = [] @@ -462,22 +368,31 @@ async def _process_documents( if progress_callback: progress_callback(80, f"Processing final batch ({total_documents} total documents)...") - batch_processed, batch_failed = await _store_batch(storage, batch, collection_name) + batch_processed, batch_failed, _ = await _store_batch(storage, batch, collection_name) processed += batch_processed failed += batch_failed if progress_callback: progress_callback(85, f"Completed processing {total_documents} documents") - return processed, failed + logger.info( + "Document processing complete: %d processed, %d failed, %d skipped", + processed, + failed, + skipped, + ) + + return processed, failed, skipped async def _store_batch( storage: BaseStorage, batch: list[Document], collection_name: str | None, -) -> tuple[int, int]: - """Store a batch of documents and return processed/failed counts.""" +) -> tuple[int, int, int]: + """Store a batch of documents and return processed/failed counts and skipped count.""" + logger = get_run_logger() + try: # Apply metadata tagging for backends that benefit from it processed_batch = batch @@ -489,10 +404,11 @@ async def _store_batch( from ..config import get_settings settings = get_settings() + logger.info("Enhancing batch with LLM metadata tagging") async with MetadataTagger(llm_endpoint=str(settings.llm_endpoint)) as tagger: processed_batch = await tagger.tag_batch(batch) except Exception as exc: - print(f"Metadata tagging failed, using original documents: {exc}") + logger.warning("Metadata tagging failed, using original documents: %s", exc) processed_batch = batch stored_ids = await storage.store_batch(processed_batch, collection_name=collection_name) @@ -502,13 +418,17 @@ async def _store_batch( batch_type = ( "final" if len(processed_batch) < 50 else "" ) # Assume standard batch size is 50 - print(f"Successfully stored {processed_count} documents in {batch_type} batch".strip()) + logger.info( + "Successfully stored %d documents in %s batch", + processed_count, + batch_type if batch_type else "regular", + ) - return processed_count, failed_count + return processed_count, failed_count, 0 # No skipped in storage batch except Exception as e: batch_type = "Final" if len(batch) < 50 else "Batch" - print(f"{batch_type} storage failed: {e}") - return 0, len(batch) + logger.error("%s storage failed: %s", batch_type, e) + return 0, len(batch), 0 # 0 processed, all failed, 0 skipped @flow( @@ -521,9 +441,11 @@ async def firecrawl_to_r2r_flow( job: IngestionJob, collection_name: str | None = None, progress_callback: Callable[[int, str], None] | None = None, -) -> tuple[int, int]: +) -> tuple[int, int, int]: """Specialized flow for Firecrawl ingestion into R2R.""" logger = get_run_logger() + logger.info("Starting Firecrawl to R2R ingestion for %s", job.source_url) + from ..config import get_settings if progress_callback: @@ -556,38 +478,40 @@ async def firecrawl_to_r2r_flow( logger.info("Base URL %s exists and is fresh, skipping expensive mapping", base_url) if progress_callback: progress_callback(100, "Content is up to date, no processing needed") - return 0, 0 + return 0, 0, 1 # 0 processed, 0 failed, 1 skipped if progress_callback: progress_callback(50, "Discovering pages with Firecrawl...") discovered_urls = await map_firecrawl_site_task(base_url, firecrawl_config) unique_urls = _deduplicate_urls(discovered_urls) - logger.info("Discovered %s unique URLs from Firecrawl map", len(unique_urls)) + logger.info("Discovered %d unique URLs from Firecrawl map", len(unique_urls)) if progress_callback: progress_callback(60, f"Found {len(unique_urls)} pages, filtering existing content...") - eligible_urls = await filter_existing_documents_task( + eligible_urls, skipped_count = await filter_existing_documents_task( unique_urls, r2r_storage, collection_name=resolved_collection ) if not eligible_urls: - logger.info("All Firecrawl pages are up to date for %s", job.source_url) + logger.info( + "All %d Firecrawl pages are up to date for %s", len(unique_urls), job.source_url + ) if progress_callback: - progress_callback(100, "All pages are up to date, no processing needed") - return 0, 0 + progress_callback( + 100, f"All {len(unique_urls)} pages are up to date, no processing needed" + ) + return 0, 0, skipped_count if progress_callback: progress_callback(70, f"Scraping {len(eligible_urls)} new/updated pages...") batch_size = min(settings.default_batch_size, firecrawl_config.limit) url_batches = _chunk_urls(eligible_urls, batch_size) - logger.info("Scraping %s batches of Firecrawl pages", len(url_batches)) + logger.info("Scraping %d URLs in %d batches", len(eligible_urls), len(url_batches)) # Use asyncio.gather for concurrent scraping - import asyncio - scrape_tasks = [scrape_firecrawl_batch_task(batch, firecrawl_config) for batch in url_batches] batch_results = await asyncio.gather(*scrape_tasks) @@ -595,6 +519,8 @@ async def firecrawl_to_r2r_flow( for batch_pages in batch_results: scraped_pages.extend(batch_pages) + logger.info("Successfully scraped %d pages", len(scraped_pages)) + if progress_callback: progress_callback(80, f"Processing {len(scraped_pages)} scraped pages...") @@ -602,50 +528,23 @@ async def firecrawl_to_r2r_flow( if not documents: logger.warning("No documents produced after scraping for %s", job.source_url) - return 0, len(eligible_urls) + return 0, len(eligible_urls), skipped_count if progress_callback: progress_callback(90, f"Storing {len(documents)} documents in R2R...") - processed, failed = await upsert_r2r_documents_task(r2r_storage, documents, resolved_collection) + processed, failed, _ = await upsert_r2r_documents_task( + r2r_storage, documents, resolved_collection + ) - logger.info("Upserted %s documents into R2R (%s failed)", processed, failed) + logger.info( + "Firecrawl to R2R flow complete: %d processed, %d failed, %d skipped", + processed, + failed, + skipped_count, + ) - return processed, failed - - -@task(name="update_job_status", tags=["tracking"]) -async def update_job_status_task( - job: IngestionJob, - status: IngestionStatus, - processed: int = 0, - _failed: int = 0, - error: str | None = None, -) -> IngestionJob: - """ - Update job status. - - Args: - job: Ingestion job - status: New status - processed: Documents processed - _failed: Documents failed (currently unused) - error: Error message if any - - Returns: - Updated job - """ - job.status = status - job.updated_at = datetime.now(UTC) - job.document_count = processed - - if status == IngestionStatus.COMPLETED: - job.completed_at = datetime.now(UTC) - - if error: - job.error_message = error - - return job + return processed, failed, skipped_count @flow( @@ -677,7 +576,13 @@ async def create_ingestion_flow( Returns: Ingestion result """ - print(f"Starting ingestion from {source_url}") + logger = get_run_logger() + logger.info( + "Starting ingestion pipeline: source=%s, type=%s, backend=%s", + source_url, + source_type, + storage_backend, + ) source_enum = IngestionSource(source_type) backend_enum = StorageBackend(storage_backend) @@ -694,18 +599,21 @@ async def create_ingestion_flow( error_messages: list[str] = [] processed = 0 failed = 0 + skipped = 0 try: # Validate source if requested if validate_first: if progress_callback: progress_callback(10, "Validating source...") - print("Validating source...") + logger.info("Validating source accessibility: %s", source_url) is_valid = await validate_source_task(source_url, job.source_type) if not is_valid: raise IngestionError(f"Source validation failed: {source_url}") + logger.info("Source validation successful") + # Update status to in progress if progress_callback: progress_callback(20, "Initializing storage...") @@ -714,52 +622,78 @@ async def create_ingestion_flow( # Run ingestion if progress_callback: progress_callback(30, "Starting document ingestion...") - print("Ingesting documents...") - if job.source_type == IngestionSource.WEB and job.storage_backend == StorageBackend.R2R: - processed, failed = await firecrawl_to_r2r_flow( + logger.info("Starting document ingestion process") + + if ( + job.source_type in (IngestionSource.WEB, IngestionSource.DOCUMENTATION) + and job.storage_backend == StorageBackend.R2R + ): + processed, failed, skipped = await firecrawl_to_r2r_flow( job, collection_name, progress_callback=progress_callback ) else: - processed, failed = await ingest_documents_task( + processed, failed, skipped = await ingest_documents_task( job, collection_name, progress_callback=progress_callback ) if progress_callback: progress_callback(90, "Finalizing ingestion...") - # Update final status + # Update final status with improved logic if failed > 0: error_messages.append(f"{failed} documents failed to process") - # Set status based on results - if processed == 0 and failed > 0: + # Improved status determination logic + if processed == 0 and skipped > 0 and failed == 0: + final_status = IngestionStatus.COMPLETED # All documents were up-to-date + logger.info("Ingestion completed: all %d documents were already up-to-date", skipped) + elif processed == 0 and failed > 0: final_status = IngestionStatus.FAILED + logger.error("Ingestion failed: %d failed, %d skipped", failed, skipped) elif failed > 0: final_status = IngestionStatus.PARTIAL + logger.warning( + "Ingestion partial: %d processed, %d failed, %d skipped", processed, failed, skipped + ) else: final_status = IngestionStatus.COMPLETED + logger.info("Ingestion completed: %d processed, %d skipped", processed, skipped) - job = await update_job_status_task(job, final_status, processed=processed, _failed=failed) - - print(f"Ingestion completed: {processed} processed, {failed} failed") + job = await update_job_status_task( + job, final_status, processed=processed, _failed=failed, skipped=skipped + ) except Exception as e: - print(f"Ingestion failed: {e}") + logger.error("Ingestion failed with exception: %s", e) error_messages.append(str(e)) # Don't reset counts - keep whatever was processed before the error job = await update_job_status_task( - job, IngestionStatus.FAILED, processed=processed, _failed=failed, error=str(e) + job, + IngestionStatus.FAILED, + processed=processed, + _failed=failed, + skipped=skipped, + error=str(e), ) # Calculate duration duration = (datetime.now(UTC) - start_time).total_seconds() + logger.info( + "Ingestion pipeline completed in %.2f seconds: %d processed, %d failed, %d skipped", + duration, + processed, + failed, + skipped, + ) + return IngestionResult( job_id=job.id, status=job.status, documents_processed=processed, documents_failed=failed, + documents_skipped=skipped, duration_seconds=duration, error_messages=error_messages, ) diff --git a/ingest_pipeline/flows/scheduler.py b/ingest_pipeline/flows/scheduler.py index 748705f..8b861f9 100644 --- a/ingest_pipeline/flows/scheduler.py +++ b/ingest_pipeline/flows/scheduler.py @@ -9,7 +9,7 @@ from prefect.schedules import Cron, Interval from prefect.variables import Variable from ..core.models import IngestionSource, StorageBackend -from .ingestion import SourceTypeLike, StorageBackendLike, create_ingestion_flow +from .ingestion_flows import SourceTypeLike, StorageBackendLike, create_ingestion_flow class FlowWithDeployment(Protocol): diff --git a/ingest_pipeline/flows/tasks/__init__.py b/ingest_pipeline/flows/tasks/__init__.py new file mode 100644 index 0000000..3cefc62 --- /dev/null +++ b/ingest_pipeline/flows/tasks/__init__.py @@ -0,0 +1,24 @@ +"""Task modules for ingestion flows.""" + +from .firecrawl_tasks import ( + annotate_firecrawl_metadata_task, + map_firecrawl_site_task, + scrape_firecrawl_batch_task, +) +from .storage_tasks import ( + filter_existing_documents_task, + initialize_storage_task, + upsert_r2r_documents_task, +) +from .validation_tasks import update_job_status_task, validate_source_task + +__all__ = [ + "annotate_firecrawl_metadata_task", + "filter_existing_documents_task", + "initialize_storage_task", + "map_firecrawl_site_task", + "scrape_firecrawl_batch_task", + "update_job_status_task", + "upsert_r2r_documents_task", + "validate_source_task", +] diff --git a/ingest_pipeline/flows/tasks/firecrawl_tasks.py b/ingest_pipeline/flows/tasks/firecrawl_tasks.py new file mode 100644 index 0000000..2d7c979 --- /dev/null +++ b/ingest_pipeline/flows/tasks/firecrawl_tasks.py @@ -0,0 +1,100 @@ +"""Firecrawl-specific tasks for ingestion flows.""" + +from typing import cast + +from prefect import get_run_logger, task +from prefect.blocks.core import Block + +from ...core.exceptions import IngestionError +from ...core.models import Document, FirecrawlConfig, IngestionJob +from ...ingestors import FirecrawlIngestor, FirecrawlPage +from ...utils.metadata_tagger import MetadataTagger + + +def _safe_cache_key(prefix: str, params: dict[str, object], key: str) -> str: + """Create a type-safe cache key from task parameters.""" + value = params.get(key, "") + return f"{prefix}_{hash(str(value))}" + + +@task( + name="map_firecrawl_site", + retries=2, + retry_delay_seconds=15, + tags=["firecrawl", "map"], + cache_key_fn=lambda ctx, p: _safe_cache_key("firecrawl_map", p, "source_url"), +) +async def map_firecrawl_site_task(source_url: str, config: FirecrawlConfig | str) -> list[str]: + """Map a site using Firecrawl and return discovered URLs.""" + logger = get_run_logger() + logger.info("Mapping site: %s", source_url) + + # Load block if string provided + if isinstance(config, str): + logger.info("Loading Firecrawl configuration block: %s", config) + # Use Block.aload with type slug for better type inference + loaded_block = await Block.aload(f"firecrawl-config/{config}") + config = cast(FirecrawlConfig, loaded_block) + + ingestor = FirecrawlIngestor(config) + mapped = await ingestor.map_site(source_url) + + urls = mapped or [source_url] + logger.info("Site map complete: found %d URLs", len(urls)) + + return urls + + +@task( + name="scrape_firecrawl_batch", retries=2, retry_delay_seconds=20, tags=["firecrawl", "scrape"] +) +async def scrape_firecrawl_batch_task( + batch_urls: list[str], config: FirecrawlConfig +) -> list[FirecrawlPage]: + """Scrape a batch of URLs via Firecrawl.""" + logger = get_run_logger() + logger.info("Scraping batch of %d URLs", len(batch_urls)) + + ingestor = FirecrawlIngestor(config) + result: list[FirecrawlPage] = await ingestor.scrape_pages(batch_urls) + + logger.info( + "Batch scrape complete: %d successful, %d failed", + len(result), + len(batch_urls) - len(result), + ) + + return result + + +@task(name="annotate_firecrawl_metadata", retries=1, retry_delay_seconds=10, tags=["metadata"]) +async def annotate_firecrawl_metadata_task( + pages: list[FirecrawlPage], job: IngestionJob +) -> list[Document]: + """Annotate scraped pages with standardized metadata.""" + logger = get_run_logger() + + if not pages: + logger.info("No pages to annotate") + return [] + + logger.info("Annotating %d pages with metadata", len(pages)) + + ingestor = FirecrawlIngestor() + documents = [ingestor.create_document(page, job) for page in pages] + + try: + from ...config import get_settings + + settings = get_settings() + logger.info("Enhancing metadata with LLM tagging") + async with MetadataTagger(llm_endpoint=str(settings.llm_endpoint)) as tagger: + tagged_documents: list[Document] = await tagger.tag_batch(documents) + logger.info("Successfully enhanced metadata for %d documents", len(tagged_documents)) + return tagged_documents + except IngestionError as exc: # pragma: no cover - logging side effect + logger.warning("Metadata tagging failed: %s", exc) + return documents + except Exception as exc: # pragma: no cover - defensive + logger.warning("Metadata tagging unavailable, using base metadata: %s", exc) + return documents diff --git a/ingest_pipeline/flows/tasks/storage_tasks.py b/ingest_pipeline/flows/tasks/storage_tasks.py new file mode 100644 index 0000000..eab9dfc --- /dev/null +++ b/ingest_pipeline/flows/tasks/storage_tasks.py @@ -0,0 +1,195 @@ +"""Storage-related tasks for ingestion flows.""" + +from typing import TYPE_CHECKING, cast + +from prefect import get_run_logger, task +from prefect.blocks.core import Block + +from ...core.models import Document, StorageBackend, StorageConfig +from ...ingestors import FirecrawlIngestor +from ...storage import OpenWebUIStorage, WeaviateStorage +from ...storage import R2RStorage as RuntimeR2RStorage +from ...storage.base import BaseStorage + +if TYPE_CHECKING: + from ...storage.r2r.storage import R2RStorage as R2RStorageType +else: + R2RStorageType = BaseStorage + + +def _safe_cache_key(prefix: str, params: dict[str, object], key: str) -> str: + """Create a type-safe cache key from task parameters.""" + value = params.get(key, "") + return f"{prefix}_{hash(str(value))}" + + +@task(name="initialize_storage", retries=3, retry_delay_seconds=5, tags=["storage"]) +async def initialize_storage_task(config: StorageConfig | str) -> BaseStorage: + """ + Initialize storage backend. + + Args: + config: Storage configuration block or block name + + Returns: + Initialized storage adapter + """ + logger = get_run_logger() + + # Load block if string provided + if isinstance(config, str): + logger.info("Loading storage configuration block: %s", config) + # Use Block.aload with type slug for better type inference + loaded_block = await Block.aload(f"storage-config/{config}") + config = cast(StorageConfig, loaded_block) + + logger.info("Initializing %s storage backend at %s", config.backend.value, config.endpoint) + + if config.backend == StorageBackend.WEAVIATE: + storage = WeaviateStorage(config) + elif config.backend == StorageBackend.OPEN_WEBUI: + storage = OpenWebUIStorage(config) + elif config.backend == StorageBackend.R2R: + if RuntimeR2RStorage is None: + raise ValueError("R2R storage not available. Check dependencies.") + storage = RuntimeR2RStorage(config) + else: + raise ValueError(f"Unsupported backend: {config.backend}") + + await storage.initialize() + logger.info("Storage backend initialized successfully") + return storage + + +def _cache_key_for_filter_documents(ctx, params): + """Custom cache key function that excludes non-serializable storage_client.""" + # Create cache key from serializable parameters only + cache_params = { + "urls": params.get("urls"), + "stale_after_days": params.get("stale_after_days"), + "collection_name": params.get("collection_name"), + } + return f"filter_docs_{hash(str(cache_params))}" + + +@task( + name="filter_existing_documents", + retries=1, + retry_delay_seconds=5, + tags=["dedup"], + cache_key_fn=_cache_key_for_filter_documents, +) +async def filter_existing_documents_task( + urls: list[str], + storage_client: BaseStorage, + stale_after_days: int = 30, + *, + collection_name: str | None = None, +) -> tuple[list[str], int]: + """ + Filter URLs to only those that need scraping (missing or stale in storage). + + Returns: + Tuple of (eligible_urls, skipped_count) + """ + import asyncio + + logger = get_run_logger() + logger.info( + "Checking %d URLs for existing documents in %s", len(urls), storage_client.display_name + ) + + # Use semaphore to limit concurrent existence checks + semaphore = asyncio.Semaphore(20) + + async def check_url_exists(url: str) -> tuple[str, bool]: + async with semaphore: + try: + document_id = str(FirecrawlIngestor.compute_document_id(url)) + exists = await storage_client.check_exists( + document_id, collection_name=collection_name, stale_after_days=stale_after_days + ) + return url, exists + except Exception as e: + logger.warning("Error checking existence for URL %s: %s", url, e) + # Assume doesn't exist on error to ensure we scrape it + return url, False + + # Check all URLs in parallel - use return_exceptions=True for partial failure handling + results = await asyncio.gather(*[check_url_exists(url) for url in urls], return_exceptions=True) + + # Collect URLs that need scraping, handling any exceptions + eligible = [] + for result in results: + if isinstance(result, Exception): + logger.error("Unexpected error in parallel existence check: %s", result) + continue + # Type narrowing: result is now known to be tuple[str, bool] + if isinstance(result, tuple) and len(result) == 2: + url, exists = result + if not exists: + eligible.append(url) + + skipped = len(urls) - len(eligible) + if skipped > 0: + logger.info( + "Found %d existing up-to-date documents, %d need processing", skipped, len(eligible) + ) + else: + logger.info("All %d URLs need processing (no existing documents found)", len(urls)) + + return eligible, skipped + + +def _cache_key_for_upsert_r2r(ctx, params): + """Custom cache key function that excludes non-serializable storage_client.""" + # Create cache key from serializable parameters only + documents = params.get("documents", []) + cache_params = { + "documents_count": len(documents), + "collection_name": params.get("collection_name"), + "document_ids": [getattr(doc, "id", None) for doc in documents if hasattr(doc, "id")], + } + return f"upsert_r2r_{hash(str(cache_params))}" + + +@task( + name="upsert_r2r_documents", + retries=2, + retry_delay_seconds=20, + tags=["storage", "r2r"], + cache_key_fn=_cache_key_for_upsert_r2r, +) +async def upsert_r2r_documents_task( + storage_client: R2RStorageType, + documents: list[Document], + collection_name: str | None, +) -> tuple[int, int, int]: + """ + Upsert documents into R2R storage. + + Returns: + Tuple of (processed_count, failed_count, skipped_count) + """ + logger = get_run_logger() + + if not documents: + logger.info("No documents to upsert") + return 0, 0, 0 + + logger.info( + "Upserting %d documents to R2R collection: %s", len(documents), collection_name or "default" + ) + + stored_ids: list[str] = await storage_client.store_batch( + documents, collection_name=collection_name + ) + processed = len(stored_ids) + failed = len(documents) - processed + + if failed: + logger.warning("Failed to upsert %d documents to R2R", failed) + else: + logger.info("Successfully upserted all %d documents to R2R", processed) + + return processed, failed, 0 # No skipped in R2R upsert diff --git a/ingest_pipeline/flows/tasks/validation_tasks.py b/ingest_pipeline/flows/tasks/validation_tasks.py new file mode 100644 index 0000000..aac31a9 --- /dev/null +++ b/ingest_pipeline/flows/tasks/validation_tasks.py @@ -0,0 +1,70 @@ +"""Validation and job management tasks.""" + +from datetime import UTC, datetime + +from prefect import task + +from ...core.models import IngestionJob, IngestionSource, IngestionStatus +from ...ingestors import FirecrawlIngestor, RepomixIngestor + + +@task(name="validate_source", retries=2, retry_delay_seconds=10, tags=["validation"]) +async def validate_source_task(source_url: str, source_type: IngestionSource) -> bool: + """ + Validate that a source is accessible. + + Args: + source_url: URL or path to source + source_type: Type of source + + Returns: + True if valid + """ + if source_type == IngestionSource.WEB: + ingestor = FirecrawlIngestor() + elif source_type == IngestionSource.DOCUMENTATION: + ingestor = FirecrawlIngestor() + elif source_type == IngestionSource.REPOSITORY: + ingestor = RepomixIngestor() + else: + raise ValueError(f"Unsupported source type: {source_type}") + + result = await ingestor.validate_source(source_url) + return bool(result) + + +@task(name="update_job_status", tags=["tracking"]) +async def update_job_status_task( + job: IngestionJob, + status: IngestionStatus, + processed: int = 0, + _failed: int = 0, + skipped: int = 0, + error: str | None = None, +) -> IngestionJob: + """ + Update job status. + + Args: + job: Ingestion job + status: New status + processed: Documents processed + _failed: Documents failed (currently unused) + skipped: Documents skipped + error: Error message if any + + Returns: + Updated job + """ + job.status = status + job.updated_at = datetime.now(UTC) + job.document_count = processed + job.documents_skipped = skipped + + if status == IngestionStatus.COMPLETED: + job.completed_at = datetime.now(UTC) + + if error: + job.error_message = error + + return job diff --git a/ingest_pipeline/ingestors/__pycache__/firecrawl.cpython-312.pyc b/ingest_pipeline/ingestors/__pycache__/firecrawl.cpython-312.pyc index 1ef9e56..580fecd 100644 Binary files a/ingest_pipeline/ingestors/__pycache__/firecrawl.cpython-312.pyc and b/ingest_pipeline/ingestors/__pycache__/firecrawl.cpython-312.pyc differ diff --git a/ingest_pipeline/ingestors/__pycache__/repomix.cpython-312.pyc b/ingest_pipeline/ingestors/__pycache__/repomix.cpython-312.pyc index e4260d9..fd3574b 100644 Binary files a/ingest_pipeline/ingestors/__pycache__/repomix.cpython-312.pyc and b/ingest_pipeline/ingestors/__pycache__/repomix.cpython-312.pyc differ diff --git a/ingest_pipeline/ingestors/firecrawl.py b/ingest_pipeline/ingestors/firecrawl.py index 1db5cee..f87c490 100644 --- a/ingest_pipeline/ingestors/firecrawl.py +++ b/ingest_pipeline/ingestors/firecrawl.py @@ -20,7 +20,6 @@ from ..core.models import ( DocumentMetadata, FirecrawlConfig, IngestionJob, - IngestionSource, ) from .base import BaseIngestor @@ -252,6 +251,17 @@ class FirecrawlIngestor(BaseIngestor): # First, map the site to understand its structure site_map = await self.map_site(url) or [url] + # Use Prefect logger if available, fall back to standard logging + try: + from prefect import get_run_logger + + logger = get_run_logger() + except ImportError: + import logging + + logger = logging.getLogger(__name__) + logger.info(f"Mapped {len(site_map)} URLs from {url}") + # Filter out URLs that already exist in storage and are fresh eligible_urls: list[str] = [] for check_url in site_map: @@ -262,7 +272,11 @@ class FirecrawlIngestor(BaseIngestor): if not exists: eligible_urls.append(check_url) + skipped_count = len(site_map) - len(eligible_urls) + logger.info(f"Found {len(eligible_urls)} new URLs, {skipped_count} already exist") + if not eligible_urls: + logger.info("No new documents to scrape - all are up to date") return # No new documents to scrape # Process eligible pages in batches @@ -638,7 +652,7 @@ class FirecrawlIngestor(BaseIngestor): id=self.compute_document_id(source_url), content=content, metadata=metadata, - source=IngestionSource.WEB, + source=job.source_type, collection=job.storage_backend.value, ) diff --git a/ingest_pipeline/ingestors/repomix.py b/ingest_pipeline/ingestors/repomix.py index 0448599..22067af 100644 --- a/ingest_pipeline/ingestors/repomix.py +++ b/ingest_pipeline/ingestors/repomix.py @@ -1,6 +1,7 @@ """Repomix ingestor for Git repositories.""" import asyncio +import logging import re import subprocess import tempfile @@ -78,9 +79,7 @@ class RepomixIngestor(BaseIngestor): ["git", "ls-remote", "--heads", source_url], timeout=10 ) return result.returncode == 0 - except Exception as e: - import logging - + except (subprocess.SubprocessError, TimeoutError, OSError) as e: logging.warning(f"Failed to validate repository {source_url}: {e}") return False @@ -108,9 +107,7 @@ class RepomixIngestor(BaseIngestor): file_count += len(files) return file_count - except Exception as e: - import logging - + except (subprocess.SubprocessError, TimeoutError, OSError, IngestionError) as e: logging.warning(f"Failed to estimate size for repository {source_url}: {e}") return 0 @@ -143,6 +140,102 @@ class RepomixIngestor(BaseIngestor): return repo_path + def _build_repomix_command(self, repo_path: Path, output_file: Path) -> list[str]: + """ + Build repomix command based on extraction mode and configuration. + + Args: + repo_path: Path to the repository + output_file: Path for output file + + Returns: + Complete repomix command as list of strings + """ + cmd = ["repomix", "--output", str(output_file)] + + # Set output format + cmd.extend(["--style", self.config.output_format]) + + # Configure based on extraction mode + if self.config.extraction_mode == "structure": + cmd.append("--compress") + cmd.append("--no-file-summary") + elif self.config.extraction_mode == "docs": + cmd.append("--no-files") + cmd.append("--no-directory-structure") + elif self.config.extraction_mode == "smart": + if self.config.use_compression: + cmd.append("--compress") + cmd.extend(["--top-files-len", str(self.config.top_files_count)]) + cmd.append("--output-show-line-numbers") + + # Add include patterns based on extraction mode + include_patterns = self._get_smart_include_patterns() + for pattern in include_patterns: + if pattern.strip(): # Avoid empty patterns + cmd.extend(["--include", pattern]) + + # Add ignore patterns (repomix uses --ignore, not --exclude) + if self.config.exclude_patterns: + for pattern in self.config.exclude_patterns: + if pattern.strip(): # Avoid empty patterns + cmd.extend(["--ignore", pattern]) + + # Git-related options + if self.config.include_git_history: + cmd.append("--include-diffs") + cmd.append("--include-logs") + + # Other options - gitignore is respected by default + if not self.config.respect_gitignore: + cmd.append("--no-gitignore") + + cmd.append("--truncate-base64") + + return cmd + + def _get_smart_include_patterns(self) -> list[str]: + """Get include patterns based on extraction mode and prioritization.""" + if self.config.extraction_mode == "docs": + return [ + "README*", + "*.md", + "docs/**", + "documentation/**", + "*.rst", + "*.txt", + "CHANGELOG*", + "LICENSE*", + "CONTRIBUTING*", + ] + elif self.config.extraction_mode == "structure": + return self.config.include_patterns + elif self.config.extraction_mode == "smart" and self.config.prioritize_docs: + # Prioritize docs but include code patterns + return [ + "README*", + "*.md", + "docs/**", + "*.py", + "*.js", + "*.ts", + "*.jsx", + "*.tsx", + "*.java", + "*.go", + "*.rs", + "*.yaml", + "*.yml", + "*.json", + "package.json", + "pyproject.toml", + "Cargo.toml", + "go.mod", + "requirements*.txt", + ] + else: + return self.config.include_patterns + async def _run_repomix(self, repo_path: Path) -> Path: """ Run repomix on a repository. @@ -153,23 +246,13 @@ class RepomixIngestor(BaseIngestor): Returns: Path to repomix output file """ - output_file = repo_path / "repomix-output.md" + # Set output file extension based on format + extension_map = {"xml": "xml", "markdown": "md", "json": "json"} + ext = extension_map.get(self.config.output_format, "md") + output_file = repo_path / f"repomix-output.{ext}" - # Build repomix command - cmd = ["npx", "repomix", "--output", str(output_file)] - - # Add include patterns - if self.config.include_patterns: - for pattern in self.config.include_patterns: - cmd.extend(["--include", pattern]) - - # Add exclude patterns - if self.config.exclude_patterns: - for pattern in self.config.exclude_patterns: - cmd.extend(["--exclude", pattern]) - - if self.config.respect_gitignore: - cmd.append("--respect-gitignore") + # Build command using the new smart command builder + cmd = self._build_repomix_command(repo_path, output_file) result = await self._run_command(cmd, cwd=str(repo_path), timeout=120) @@ -181,14 +264,14 @@ class RepomixIngestor(BaseIngestor): async def _parse_repomix_output(self, output_file: Path, job: IngestionJob) -> list[Document]: """ - Parse repomix output into documents. + Parse repomix output into documents with intelligent content extraction. Args: output_file: Path to repomix output job: The ingestion job Returns: - List of documents + List of documents, prioritized by importance """ documents: list[Document] = [] @@ -199,14 +282,51 @@ class RepomixIngestor(BaseIngestor): repo_info = self._extract_repository_info(str(job.source_url)) content = output_file.read_text() + + # Check if output exceeds size limit + if len(content) > self.config.max_output_size: + logging.warning( + f"Repomix output size ({len(content)} bytes) exceeds limit ({self.config.max_output_size} bytes)" + ) + # Split by file markers (repomix uses specific delimiters) file_sections = self._split_by_files(content) + # Calculate importance scores for all files + file_importance_scores: list[tuple[str, str, float]] = [] for file_path, file_content in file_sections.items(): - if len(file_content) > self.config.max_file_size: - # Split large files into chunks - chunks = self._chunk_content(file_content) + if file_path != "repository": # Skip the general repository content + importance = self._calculate_file_importance(file_path, file_content) + file_importance_scores.append((file_path, file_content, importance)) + + # Sort by importance (highest first) + file_importance_scores.sort(key=lambda x: x[2], reverse=True) + + # Process files in order of importance, stopping if size limit reached + current_output_size = 0 + processed_files = 0 + + for file_path, file_content, importance in file_importance_scores: + # Early termination if we've reached size limit + if current_output_size >= self.config.max_output_size: + logging.info(f"Stopping processing at file {processed_files} due to size limit") + break + + # Extract meaningful content based on extraction mode + meaningful_content = self._extract_meaningful_content( + file_path, file_content, self.config.extraction_mode + ) + + if not meaningful_content.strip(): + continue + + # Handle large files with chunking + if len(meaningful_content) > self.config.max_file_size: + chunks = self._chunk_content(meaningful_content) for i, chunk in enumerate(chunks): + if current_output_size + len(chunk) > self.config.max_output_size: + break + doc = self._create_document( file_path, chunk, @@ -214,19 +334,162 @@ class RepomixIngestor(BaseIngestor): chunk_index=i, git_metadata=git_metadata, repo_info=repo_info, + importance_score=importance, ) documents.append(doc) + current_output_size += len(chunk) else: - doc = self._create_document( - file_path, file_content, job, git_metadata=git_metadata, repo_info=repo_info - ) - documents.append(doc) + if current_output_size + len(meaningful_content) <= self.config.max_output_size: + doc = self._create_document( + file_path, + meaningful_content, + job, + git_metadata=git_metadata, + repo_info=repo_info, + importance_score=importance, + ) + documents.append(doc) + current_output_size += len(meaningful_content) + + processed_files += 1 + + # Add repository summary if we have space and it exists + if ( + "repository" in file_sections + and current_output_size < self.config.max_output_size * 0.8 + ): + repo_content = file_sections["repository"] + if repo_content.strip(): + # Limit repo content to stay within size bounds + truncated_content = repo_content[: self.config.max_file_size] + if current_output_size + len(truncated_content) <= self.config.max_output_size: + doc = self._create_document( + "repository_summary", + truncated_content, + job, + git_metadata=git_metadata, + repo_info=repo_info, + importance_score=0.9, + ) + documents.append(doc) + current_output_size += len(truncated_content) + + logging.info( + f"Processed {processed_files} files, created {len(documents)} documents, " + f"total size: {current_output_size} bytes" + ) except Exception as e: raise IngestionError(f"Failed to parse repomix output: {e}") from e return documents + def _extract_meaningful_content( + self, file_path: str, content: str, extraction_mode: str + ) -> str: + """ + Extract meaningful content from a file based on extraction mode. + + Args: + file_path: Path to the file + content: File content + extraction_mode: Extraction strategy + + Returns: + Processed content with meaningful parts extracted + """ + if extraction_mode == "full": + return content + + # For documentation files, preserve full content + if any(ext in file_path.lower() for ext in [".md", ".rst", ".txt", "readme", "changelog"]): + return content + + # For structure mode, content should already be compressed by repomix + if extraction_mode == "structure": + return content + + # For smart mode, extract key patterns based on file type + if extraction_mode == "smart": + return self._extract_code_surface(file_path, content) + + return content + + def _extract_code_surface(self, file_path: str, content: str) -> str: + """ + Extract surface-level code patterns (APIs, interfaces, classes) from code files. + + Args: + file_path: Path to the file + content: File content + + Returns: + Extracted surface content + """ + lines = content.split("\n") + extracted_lines: list[str] = [] + + language = self._detect_programming_language(file_path, content) + + # Always include imports and module-level declarations + for line in lines[:50]: # Check first 50 lines for imports + stripped = line.strip() + if not stripped or stripped.startswith("#"): + continue + + # Python imports and class/function definitions + if language == "python": + if any( + stripped.startswith(keyword) + for keyword in ["import ", "from ", "class ", "def ", "async def ", "@"] + ): + extracted_lines.append(line) + elif stripped.startswith('"""') or stripped.startswith("'''"): + # Include docstrings + extracted_lines.append(line) + + # JavaScript/TypeScript exports, imports, interfaces + elif language in ["javascript", "typescript"]: + if any( + keyword in stripped + for keyword in [ + "import ", + "export ", + "interface ", + "type ", + "class ", + "function ", + "const ", + "let ", + "var ", + ] + ) and not stripped.startswith("//"): + extracted_lines.append(line) + + # Java public declarations + elif language == "java": + if any( + keyword in stripped + for keyword in [ + "package ", + "import ", + "public class", + "public interface", + "public ", + "@", + ] + ) and not stripped.startswith("//"): + extracted_lines.append(line) + + # Include meaningful content but limit size + result = "\n".join(extracted_lines) + + # If we extracted very little, include more of the original + if len(result) < len(content) * 0.1: + return content[:2000] # First 2KB as fallback + + return result + def _split_by_files(self, content: str) -> dict[str, str]: """ Split repomix output by files. @@ -243,10 +506,15 @@ class RepomixIngestor(BaseIngestor): for line in content.split("\n"): # Look for file markers (adjust based on actual repomix format) - if line.startswith("## File:") or line.startswith("### "): + if line.startswith("## File:"): if current_file: files[current_file] = "\n".join(current_content) - current_file = line.replace("## File:", "").replace("### ", "").strip() + current_file = line.replace("## File:", "").strip() + current_content = [] + elif line.startswith("### "): + if current_file: + files[current_file] = "\n".join(current_content) + current_file = line.replace("### ", "").strip() current_content = [] else: current_content.append(line) @@ -355,6 +623,91 @@ class RepomixIngestor(BaseIngestor): return None + @staticmethod + def _calculate_file_importance(file_path: str, content: str) -> float: + """ + Calculate importance score for a file based on path and content. + + Returns score from 0.0 to 1.0 where 1.0 is most important. + """ + path = Path(file_path) + filename = path.name.lower() + path_parts = [part.lower() for part in path.parts] + + # Documentation files get highest priority + if any( + keyword in filename for keyword in ["readme", "changelog", "license", "contributing"] + ): + return 1.0 + + if path.suffix.lower() in [".md", ".rst", ".txt"] and any( + keyword in path_parts for keyword in ["docs", "documentation", "guide"] + ): + return 0.95 + + # Configuration and project files + config_files = { + "package.json": 0.9, + "pyproject.toml": 0.9, + "cargo.toml": 0.9, + "go.mod": 0.9, + "pom.xml": 0.9, + "dockerfile": 0.85, + "docker-compose.yml": 0.85, + "requirements.txt": 0.8, + "makefile": 0.8, + } + + if filename in config_files: + return config_files[filename] + + # API and interface files + if any(keyword in filename for keyword in ["api", "interface", "types", "schema"]): + return 0.85 + + # Main entry points + if filename in ["main.py", "index.js", "app.py", "server.py", "main.go", "lib.rs"]: + return 0.8 + + # Source code by language (prioritize by surface area) + extension_scores = { + ".py": 0.7, + ".js": 0.7, + ".ts": 0.75, # TypeScript often has better interfaces + ".jsx": 0.65, + ".tsx": 0.7, + ".java": 0.65, + ".go": 0.7, + ".rs": 0.7, + ".cpp": 0.6, + ".c": 0.6, + ".h": 0.75, # Header files are interfaces + ".hpp": 0.75, + } + + if path.suffix.lower() in extension_scores: + base_score = extension_scores[path.suffix.lower()] + + # Reduce score for test files + if any(keyword in path_parts for keyword in ["test", "tests", "spec", "__tests__"]): + return base_score * 0.3 + + # Reduce score for generated or build files + if any( + keyword in path_parts + for keyword in ["dist", "build", "generated", ".next", "target"] + ): + return base_score * 0.1 + + return base_score + + # YAML/JSON configuration files + if path.suffix.lower() in [".yaml", ".yml", ".json"]: + return 0.6 + + # Other files get low priority + return 0.3 + @staticmethod def _analyze_code_structure(content: str, language: str | None) -> dict[str, object]: """Analyze code structure and extract metadata.""" @@ -441,7 +794,7 @@ class RepomixIngestor(BaseIngestor): "branch_name": branch_name, "commit_hash": commit_hash[:8] if commit_hash else None, # Short hash } - except Exception: + except (subprocess.SubprocessError, TimeoutError, OSError): return {"branch_name": None, "commit_hash": None} def _create_document( @@ -452,6 +805,7 @@ class RepomixIngestor(BaseIngestor): chunk_index: int = 0, git_metadata: dict[str, str | None] | None = None, repo_info: dict[str, str] | None = None, + importance_score: float | None = None, ) -> Document: """ Create a Document from repository content with enriched metadata. @@ -463,6 +817,7 @@ class RepomixIngestor(BaseIngestor): chunk_index: Index if content is chunked git_metadata: Git repository metadata repo_info: Repository information + importance_score: File importance score (0.0-1.0) Returns: Document instance with rich metadata @@ -515,6 +870,13 @@ class RepomixIngestor(BaseIngestor): metadata["branch_name"] = git_metadata.get("branch_name") metadata["commit_hash"] = git_metadata.get("commit_hash") + # Add file importance score + if importance_score is not None: + metadata["importance_score"] = importance_score + + # Add extraction mode info + metadata["extraction_mode"] = self.config.extraction_mode + # Add code-specific metadata for programming files if programming_language and structure_info: # Calculate code quality score @@ -577,7 +939,5 @@ class RepomixIngestor(BaseIngestor): try: await asyncio.wait_for(proc.wait(), timeout=2.0) except TimeoutError: - import logging - logging.warning(f"Process {proc.pid} did not terminate cleanly") raise IngestionError(f"Command timed out: {' '.join(cmd)}") from e diff --git a/ingest_pipeline/utils/__pycache__/metadata_tagger.cpython-312.pyc b/ingest_pipeline/utils/__pycache__/metadata_tagger.cpython-312.pyc index daf5fc0..6a7ac1a 100644 Binary files a/ingest_pipeline/utils/__pycache__/metadata_tagger.cpython-312.pyc and b/ingest_pipeline/utils/__pycache__/metadata_tagger.cpython-312.pyc differ diff --git a/ingest_pipeline/utils/metadata_tagger.py b/ingest_pipeline/utils/metadata_tagger.py index ebc9318..8ba5323 100644 --- a/ingest_pipeline/utils/metadata_tagger.py +++ b/ingest_pipeline/utils/metadata_tagger.py @@ -114,7 +114,7 @@ class MetadataTagger: self, document: Document, custom_instructions: str | None = None ) -> Document: """ - Analyze document and generate metadata tags. + Analyze document and generate metadata tags with retry logic. Args: document: Document to tag @@ -126,16 +126,77 @@ class MetadataTagger: if not document.content: return document + return await self._tag_with_retry(document, custom_instructions, max_retries=2) + + async def _tag_with_retry( + self, document: Document, custom_instructions: str | None = None, max_retries: int = 2 + ) -> Document: + """ + Tag document with retry logic for handling LLM failures. + + Args: + document: Document to tag + custom_instructions: Optional custom instructions for tagging + max_retries: Maximum number of retry attempts + + Returns: + Document with enriched metadata + + Raises: + IngestionError: If all retry attempts fail + """ + last_error: Exception | None = None + + for attempt in range(max_retries + 1): + try: + # Generate metadata using LLM + metadata = await self._generate_metadata( + document.content, + document.metadata.get("title") if document.metadata else None, + custom_instructions, + ) + + # If we got here, LLM call succeeded, process the metadata + return await self._apply_metadata_to_document(document, metadata) + + except IngestionError as e: + last_error = e + if attempt < max_retries: + # Log retry attempt and wait briefly before retrying + import logging + + logger = logging.getLogger(__name__) + logger.warning( + f"Metadata tagging attempt {attempt + 1} failed: {e}. Retrying..." + ) + import asyncio + + await asyncio.sleep(0.5 * (attempt + 1)) # Exponential backoff + else: + # All retries exhausted + raise e + + # This should never be reached, but satisfy type checker + if last_error: + raise last_error + else: + raise IngestionError("Unknown error in metadata tagging retry logic") + + async def _apply_metadata_to_document( + self, document: Document, metadata: DocumentMetadata + ) -> Document: + """ + Apply generated metadata to document. + + Args: + document: Document to update + metadata: Generated metadata to apply + + Returns: + Document with updated metadata + """ try: - # Generate metadata using LLM - metadata = await self._generate_metadata( - document.content, - document.metadata.get("title") if document.metadata else None, - custom_instructions, - ) - # Merge with existing metadata - preserve ALL existing fields and add LLM-generated ones - from ..core.models import DocumentMetadata as CoreDocumentMetadata # Start with a copy of existing metadata to preserve all fields @@ -185,11 +246,10 @@ class MetadataTagger: new_metadata["language"] = str(updated_metadata["language"]) document.metadata = new_metadata - return document except Exception as e: - raise IngestionError(f"Failed to tag document: {e}") from e + raise IngestionError(f"Failed to apply metadata to document: {e}") from e async def tag_batch( self, @@ -234,16 +294,29 @@ class MetadataTagger: # Prepare the prompt system_prompt = """You are a document metadata tagger. Analyze the given content and generate relevant metadata. -Return a JSON object with the following structure: +CRITICAL: Return ONLY a valid JSON object with no additional text, comments, or markdown formatting. + +Required JSON structure (no comments allowed in actual response): { - "tags": ["tag1", "tag2", ...], # 3-7 relevant topic tags - "category": "string", # Main category - "summary": "string", # 1-2 sentence summary - "key_topics": ["topic1", "topic2", ...], # Main topics discussed - "document_type": "string", # Type of document (e.g., "technical", "tutorial", "reference") - "language": "string", # Primary language (e.g., "en", "es") - "technical_level": "string" # One of: "beginner", "intermediate", "advanced" -}""" + "tags": ["tag1", "tag2"], + "category": "string", + "summary": "string", + "key_topics": ["topic1", "topic2"], + "document_type": "string", + "language": "string", + "technical_level": "string" +} + +Rules: +- tags: 3-7 relevant topic tags +- category: Main category (one word/phrase) +- summary: 1-2 sentence summary (under 200 chars) +- key_topics: Main topics discussed (2-5 items) +- document_type: One of "technical", "tutorial", "reference", "guide", "documentation" +- language: Primary language code (e.g., "en", "es", "fr") +- technical_level: One of "beginner", "intermediate", "advanced" + +Do not include any text before or after the JSON object.""" if custom_instructions: system_prompt += f"\n\nAdditional instructions: {custom_instructions}" @@ -296,7 +369,12 @@ Return a JSON object with the following structure: try: raw_metadata = cast(dict[str, object], json.loads(content_str)) except json.JSONDecodeError as e: - raise IngestionError(f"Failed to parse LLM response: {e}") from e + # Attempt to repair common JSON issues + try: + repaired_content = self._attempt_json_repair(content_str) + raw_metadata = cast(dict[str, object], json.loads(repaired_content)) + except json.JSONDecodeError: + raise IngestionError(f"Failed to parse LLM response: {e}") from e # Ensure it's a dict before processing if not isinstance(raw_metadata, dict): @@ -305,6 +383,56 @@ Return a JSON object with the following structure: # Validate and sanitize metadata return self._sanitize_metadata(raw_metadata) + def _attempt_json_repair(self, content: str) -> str: + """ + Attempt to repair common JSON issues in LLM responses. + + Args: + content: The potentially malformed JSON string + + Returns: + Repaired JSON string + """ + # Remove common prefixes/suffixes that LLMs sometimes add + content = content.strip() + + # Remove markdown code block markers + if content.startswith("```json"): + content = content[7:] + if content.startswith("```"): + content = content[3:] + if content.endswith("```"): + content = content[:-3] + + content = content.strip() + + # Try to find JSON object boundaries + start_idx = content.find("{") + end_idx = content.rfind("}") + + if start_idx != -1 and end_idx != -1 and end_idx > start_idx: + content = content[start_idx : end_idx + 1] + + # Fix common quote issues + quote_count = content.count('"') + if quote_count % 2 != 0: # Odd number of quotes + # Try to close the last unterminated string + content = content.rstrip() + '"' + + # Fix missing closing brace + open_braces = content.count("{") + close_braces = content.count("}") + if open_braces > close_braces: + content += "}" * (open_braces - close_braces) + + # Fix missing closing bracket for arrays + open_brackets = content.count("[") + close_brackets = content.count("]") + if open_brackets > close_brackets: + content += "]" * (open_brackets - close_brackets) + + return content + def _sanitize_metadata(self, metadata: dict[str, object]) -> DocumentMetadata: """ Sanitize and validate metadata. diff --git a/logs/tui.log b/logs/tui.log index 9cf50e2..84ec2f3 100644 --- a/logs/tui.log +++ b/logs/tui.log @@ -1301,3 +1301,3986 @@ metadata.author 2025-09-21 03:00:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" 2025-09-21 03:00:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" 2025-09-21 03:00:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/db6f7f9e-3915-4086-a9cf-4b498df90395/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/eb597b49-5fea-4612-93ff-f83a88e5b91e/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/84e273f7-f8b4-40c5-a5fc-d656340fc7cc/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:06:04 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:06:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:06:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:06:28 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:06:28 | INFO | httpx | HTTP Request: DELETE http://r2r.lab/v3/collections/db6f7f9e-3915-4086-a9cf-4b498df90395 "HTTP/1.1 200 OK" +2025-09-21 03:06:29 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 03:06:29 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 03:10:39 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 03:10:39 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 03:10:39 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 03:10:39 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/eb597b49-5fea-4612-93ff-f83a88e5b91e/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/84e273f7-f8b4-40c5-a5fc-d656340fc7cc/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:40 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:10:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: DELETE http://r2r.lab/v3/collections/eb597b49-5fea-4612-93ff-f83a88e5b91e "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/84e273f7-f8b4-40c5-a5fc-d656340fc7cc/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:52 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:10:53 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:11:05 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: DELETE http://r2r.lab/v3/collections/84e273f7-f8b4-40c5-a5fc-d656340fc7cc "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:11:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:07 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:11:07 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:07 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:11:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents?offset=0&limit=50 "HTTP/1.1 200 OK" +2025-09-21 03:11:27 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:27 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents?offset=0&limit=50 "HTTP/1.1 200 OK" +2025-09-21 03:11:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents?offset=0&limit=50 "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:11:45 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:24:10 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:24:11 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:30:57 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 03:30:57 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 03:31:02 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 03:31:02 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 03:31:02 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 03:31:03 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=f6c5cbcb-df2b-447a-92fd-1f1b67219afe "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 04:00:59 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/e313bfd0-f0c0-4704-8bd9-22195848f675 +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e313bfd0-f0c0-4704-8bd9-22195848f675/set_state "HTTP/1.1 201 Created" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/e313bfd0-f0c0-4704-8bd9-22195848f675 "HTTP/1.1 200 OK" +2025-09-21 04:00:59 | INFO | prefect.flow_runs | Beginning flow run 'accelerated-malkoha' for flow 'ingestion_pipeline' +2025-09-21 04:00:59 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/e313bfd0-f0c0-4704-8bd9-22195848f675 +2025-09-21 04:00:59 | INFO | prefect.flow_runs | Starting ingestion from https://docs.openwebui.com/ +2025-09-21 04:00:59 | INFO | prefect.flow_runs | Validating source... +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=c0b0c31a-8565-4f19-8d81-c27a96be3e59 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:00:59 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 04:01:01 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=addfea55-1831-4328-8a64-f340c0592087 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:01:01 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:01:03 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=e9d06af2-2336-44c2-b87c-3362dd711e7c "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:01:03 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:01:03 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=86facd02-54d8-4f38-b07a-d54149d67384 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:01:03 | ERROR | prefect.task_runs | Error encountered when computing cache key - result will not be persisted. +Traceback (most recent call last): + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/cache_policies.py", line 374, in compute_key + return hash_objects(hashed_inputs, raise_on_failure=True) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/utilities/hashing.py", line 89, in hash_objects + raise HashError(msg) +prefect.exceptions.HashError: Unable to create hash - objects could not be serialized. + JSON error: Unable to serialize unknown type: + Pickle error: cannot pickle 'weakref.ReferenceType' object + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/task_engine.py", line 172, in compute_transaction_key + key = self.task.cache_policy.compute_key( + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/cache_policies.py", line 214, in compute_key + policy_key = policy.compute_key( + ^^^^^^^^^^^^^^^^^^^ + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/cache_policies.py", line 384, in compute_key + raise ValueError(msg) from exc +ValueError: Unable to create hash - objects could not be serialized. + JSON error: Unable to serialize unknown type: + Pickle error: cannot pickle 'weakref.ReferenceType' object + +This often occurs when task inputs contain objects that cannot be cached like locks, file handles, or other system resources. + +To resolve this, you can: + 1. Exclude these arguments by defining a custom `cache_key_fn` + 2. Disable caching by passing `cache_policy=NO_CACHE` + +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 04:01:03 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 04:01:05 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:01:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:01:08 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:01:18 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/files/?process=true&process_in_background=false "HTTP/1.1 200 OK" +2025-09-21 04:01:22 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf/file/add "HTTP/1.1 200 OK" +2025-09-21 04:01:22 | INFO | prefect.task_runs | Successfully stored 1 documents in final batch +2025-09-21 04:01:22 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:01:22 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:01:22 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:01:22 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:01:22 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:01:22 | INFO | prefect.flow_runs | Ingestion completed: 1 processed, 0 failed +2025-09-21 04:01:22 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e313bfd0-f0c0-4704-8bd9-22195848f675/set_state "HTTP/1.1 201 Created" +2025-09-21 04:01:22 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 04:01:23 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:01:28 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:01:28 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:01:28 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:01:28 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:04:41 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 04:04:41 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 04:04:46 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 04:04:46 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 04:04:46 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:04:47 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=cfb832cd-571e-46fd-90fc-b53b70d5e3cc "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 04:05:00 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/13005e16-0eca-45cf-a9e7-9fd3a1c653a6 +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/13005e16-0eca-45cf-a9e7-9fd3a1c653a6/set_state "HTTP/1.1 201 Created" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/13005e16-0eca-45cf-a9e7-9fd3a1c653a6 "HTTP/1.1 200 OK" +2025-09-21 04:05:00 | INFO | prefect.flow_runs | Beginning flow run 'attractive-mouflon' for flow 'ingestion_pipeline' +2025-09-21 04:05:00 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/13005e16-0eca-45cf-a9e7-9fd3a1c653a6 +2025-09-21 04:05:00 | INFO | prefect.flow_runs | Starting ingestion from https://docs.openwebui.com/features/ +2025-09-21 04:05:00 | INFO | prefect.flow_runs | Validating source... +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=cd3ddae8-ad8c-43c5-aa37-12c6b3caecfe "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 04:05:00 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:05:02 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=8e0eaa30-3710-45a3-ad6e-650065c5fbc6 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:05:02 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:05:04 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=3abb3ee0-77aa-4c19-9fbe-f245673f6398 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:05:04 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:05:04 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=2f6ce904-62e4-4b94-b5a0-bce7af01906d "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:05:04 | ERROR | prefect.task_runs | Error encountered when computing cache key - result will not be persisted. +Traceback (most recent call last): + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/task_engine.py", line 172, in compute_transaction_key + key = self.task.cache_policy.compute_key( + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/cache_policies.py", line 174, in compute_key + return self.cache_key_fn(task_ctx, inputs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/ingest_pipeline/flows/ingestion.py", line 280, in _cache_key_for_ingest_documents + "job_id": params.get("job", {}).get("id") if params.get("job") else None, + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/.venv/lib/python3.12/site-packages/pydantic/main.py", line 991, in __getattr__ + raise AttributeError(f'{type(self).__name__!r} object has no attribute {item!r}') +AttributeError: 'IngestionJob' object has no attribute 'get' +2025-09-21 04:05:04 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 04:05:05 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:05:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 04:05:06 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:05:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:05:08 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:05:20 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/files/?process=true&process_in_background=false "HTTP/1.1 200 OK" +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf/file/add "HTTP/1.1 200 OK" +2025-09-21 04:05:28 | INFO | prefect.task_runs | Successfully stored 1 documents in final batch +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:05:28 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:05:28 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:05:28 | INFO | prefect.flow_runs | Ingestion completed: 1 processed, 0 failed +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/13005e16-0eca-45cf-a9e7-9fd3a1c653a6/set_state "HTTP/1.1 201 Created" +2025-09-21 04:05:28 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 04:05:28 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:08:14 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 04:08:14 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 04:08:18 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 04:08:18 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 04:08:18 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:18 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=d95660eb-0a27-4324-a0ee-963026e2960b "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 04:08:32 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/ce2cc56b-f6d8-46c0-837a-77d5f6d718b9 +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ce2cc56b-f6d8-46c0-837a-77d5f6d718b9/set_state "HTTP/1.1 201 Created" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/ce2cc56b-f6d8-46c0-837a-77d5f6d718b9 "HTTP/1.1 200 OK" +2025-09-21 04:08:32 | INFO | prefect.flow_runs | Beginning flow run 'spiffy-hedgehog' for flow 'ingestion_pipeline' +2025-09-21 04:08:32 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/ce2cc56b-f6d8-46c0-837a-77d5f6d718b9 +2025-09-21 04:08:32 | INFO | prefect.flow_runs | Starting ingestion from https://docs.openwebui.com/getting-started/ +2025-09-21 04:08:32 | INFO | prefect.flow_runs | Validating source... +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=5b5338ce-5075-4a57-a1d4-7573e508ee46 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:08:32 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 04:08:34 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=f34aaecb-6426-4bfa-9ba3-63f01eecc3b7 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:08:34 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:08:35 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=14181d00-2968-4d67-94fc-7af2cdfbad19 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:08:35 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:08:35 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=9b5d0ccb-be98-4e50-87a5-c26182746960 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 04:08:35 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:08:36 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:08:36 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 04:08:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:08:39 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:08:43 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/files/?process=true&process_in_background=false "HTTP/1.1 200 OK" +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf/file/add "HTTP/1.1 200 OK" +2025-09-21 04:08:46 | INFO | prefect.task_runs | Successfully stored 1 documents in final batch +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:08:46 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:08:46 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:08:46 | INFO | prefect.flow_runs | Ingestion completed: 1 processed, 0 failed +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ce2cc56b-f6d8-46c0-837a-77d5f6d718b9/set_state "HTTP/1.1 201 Created" +2025-09-21 04:08:46 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 04:08:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:10:52 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 04:10:52 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 04:10:57 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 04:10:57 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 04:10:57 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 04:10:57 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:10:58 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:10:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=2eafe6da-88da-4084-9e13-94e33447e7a7 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 04:11:37 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/e0d8165e-9d47-4ba1-97b8-9723aff7b7f6 +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e0d8165e-9d47-4ba1-97b8-9723aff7b7f6/set_state "HTTP/1.1 201 Created" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/e0d8165e-9d47-4ba1-97b8-9723aff7b7f6 "HTTP/1.1 200 OK" +2025-09-21 04:11:37 | INFO | prefect.flow_runs | Beginning flow run 'russet-cassowary' for flow 'ingestion_pipeline' +2025-09-21 04:11:37 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/e0d8165e-9d47-4ba1-97b8-9723aff7b7f6 +2025-09-21 04:11:37 | INFO | prefect.flow_runs | Starting ingestion from https://r2r-docs.sciphi.ai/ +2025-09-21 04:11:37 | INFO | prefect.flow_runs | Validating source... +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=cd377deb-949a-478c-abe8-e872b8a2eea9 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:11:37 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 04:11:39 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=a65c036e-b101-4ee9-a5e9-14bf21d3c1b9 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:11:39 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=d3fa6560-dee5-4e90-96ba-37818b579c4f "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:11:43 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=f6d250ae-5147-4121-9640-6803d0000c99 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:11:43 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/da5b264b-9988-5005-9753-1e6844eb4561 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00e04984-3bb8-51b7-b852-b607e5471d58 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c8a9ce4-1724-5702-aeef-02b2fc8a6367 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73bfa7e1-0f80-545b-a12f-fa871033586a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7c4512c2-01cf-5aec-acb8-cff19ff52e02 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/905e4073-a1fb-5edb-9608-7f8ba6c562bd "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/51db6e0e-90d9-5953-a7cb-af8445354c62 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6d344441-1281-5242-82e4-1ad4dbc96f1d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4d558964-add4-5ce9-85a1-797fa7d34328 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/dd5eb440-2e8e-5a23-9ea5-831847386a09 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b7ef2176-6c42-5f9b-a13b-5ba9af07937e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/28549f12-72ff-59e0-9f5a-a47c03ef1ea8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ca67125-150c-5b4e-b4e9-61a9a76b1313 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6ee93df2-8120-58d0-b4a8-06a008dcf7ff "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ba22e49b-428c-5830-96ff-b328ec7c660b "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1fb9deb-b956-5491-84ba-fafb0df09786 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ec23195-b59a-5cdb-93b8-fbe6006d8c82 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4ace956e-7ce0-577f-be9b-23e12657a3b9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8f1109fe-8598-5d7c-9853-f83fdec586a6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b030413a-d0e5-5866-b12a-7a059e7b340f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b598f4d9-da44-5080-8e7b-628fb526af09 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2408eb-f02e-5816-ad09-17b8d8e17e43 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2b75c9ad-3708-5abb-99a0-974790f046b1 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4e0a5349-3e1e-584f-9fc0-6cb3354131bf "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9322916-fc78-5a20-959a-4d8711dd7a3b "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/181f4bb9-d23e-5741-b5f3-1f6242443018 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08cb03b5-c97c-5725-a763-05161c5c79c6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d4bd8457-c134-5a80-9c12-3d884c3eea4b "HTTP/1.1 404 Not Found" +2025-09-21 04:11:44 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e719d733-b4ce-5942-a6a6-c31563faaceb "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/41792944-6572-5068-896b-2b5363c15e48 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/154c26e1-c3be-57ac-ab85-3a75c2c1b268 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/079105f9-aa68-569d-b94f-3d51ec14e862 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32669b12-849b-52d0-86fb-9c5f237e0e49 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8801bae7-4c9b-5c04-b4cf-90accc1f25ff "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/21522a0b-7eeb-5d94-b624-c1dc8b52f7af "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ecff7ca-531e-5510-954c-2fc69528fe10 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/436df0af-82cd-5f71-95e0-07b6ad47be34 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/949f5b00-4d59-58b6-956a-946596f90863 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/59ab47b1-dea6-5506-8721-98a12c2336f6 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f1d6494-4f7f-5c53-a052-f45033c37fac "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/24ed1ce8-e344-5143-9bf1-ef047d5579e5 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c11dc4d5-724b-57c3-b9d0-ab8228de857a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/83f1d7c2-e856-5284-a46b-d536c4e54840 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bda19630-0b8e-578a-b367-e8871f9bdb0a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/87ee082f-1089-5d04-bec9-f8c7f0f4e762 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f1de489-790e-5d30-bc09-1e90feead052 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790d8c6d-4252-5df3-b5fa-aebf0f86426e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6317ba60-9c00-5b45-b837-9035f71786b5 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9d1179cd-d618-533d-ac94-3f781c9b59fa "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/111d9ca8-1ca1-5635-a542-93ab86103204 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a87c50da-9af3-59bc-a906-a0654cac47a3 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6c3b0f80-9759-5436-b6b6-46ea8909fccf "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32cf7b16-a235-54fd-916f-1c8a25baf37e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3a78f4db-1bff-546f-88f9-14dfcec6496f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/43c7e085-b75c-577f-97bb-5af2745a7088 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/18f0931a-ce62-5ce4-9356-ca492331e5d0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b99f9a68-7d5f-537e-82a3-dcab22572d7e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c4e2448-8fc7-58d1-9e28-558e34382cfa "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/92a15034-430b-551e-93de-d66da3b9e515 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/04327af3-2a79-55e6-a5d7-a0fe1348f99e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5725c465-23fd-5a81-a41b-d791e0012814 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/52670f46-93f7-5dc1-8a36-8292cb23ae84 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c638c07d-cc1a-5bf0-b5e2-4a623abe87ce "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/91620560-11f0-54be-aecd-cd82d87a1f58 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a0193994-d4e0-5299-aa35-5100fccfdad5 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/712c89a8-e61d-5516-888e-9cc07b73d39f "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e74849ce-42a4-5459-8aae-aaa43a94f32c "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b6d69ac2-e050-5fd6-9863-c74cb906ba16 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/228b09ee-e843-503e-9710-5e212de7c7cc "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/728c43be-83b8-5756-9c03-21590fc36a53 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c459aef-1b22-598c-a394-245ef3cfdbd8 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/36617525-8d6c-5978-9c7e-341439c7fef0 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b96ed7bc-69c7-55db-a55e-beed4af95169 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0b01c5c1-3014-53c3-b083-d4c911cd45db "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1238cd8-fe1e-5a38-8377-b68062d1bec4 "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c37a96cd-2c46-50da-8a30-472167c6284a "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4201a52b-43ed-5c59-8c2c-b49b62dbf1bc "HTTP/1.1 404 Not Found" +2025-09-21 04:11:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/139ecc77-e5c4-5508-bf58-57257652360e "HTTP/1.1 404 Not Found" +2025-09-21 04:11:49 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:51 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:53 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:53 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:11:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:09 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:12 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:17 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:19 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:25 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:25 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:25 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:25 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:26 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:29 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:31 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:32 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:34 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:35 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:36 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:37 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:40 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:12:40 | INFO | prefect.task_runs | Metadata tagging failed, using original documents: Failed to tag document: Failed to parse LLM response: Unterminated string starting at: line 50 column 1 (char 1532) +2025-09-21 04:12:40 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:12:40 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 659456d3-a40c-4325-85dd-82feec5dc4f7 for collection: default +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 66b2fd4a-5cfe-56e8-8c53-eb37621614e1 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 66b2fd4a-5cfe-56e8-8c53-eb37621614e1 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5c29b6af-9abf-5651-b09f-da481a196324 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 5c29b6af-9abf-5651-b09f-da481a196324 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 10fafbe0-7a69-5242-b62c-58b23c2ff1c3 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 10fafbe0-7a69-5242-b62c-58b23c2ff1c3 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c6753de9-c614-5cb6-800a-2a738e1d9748 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document c6753de9-c614-5cb6-800a-2a738e1d9748 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e8d4bb71-11fa-5972-94e3-17ad3fdae6fb +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document e8d4bb71-11fa-5972-94e3-17ad3fdae6fb should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: bd9a2f95-d6f9-5476-8248-dfb56df5041d +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document bd9a2f95-d6f9-5476-8248-dfb56df5041d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 750a0d67-0d10-5968-9a92-552e23f79aa9 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 750a0d67-0d10-5968-9a92-552e23f79aa9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b43a8933-c2dd-5a97-8c6b-6382af6435dc +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document b43a8933-c2dd-5a97-8c6b-6382af6435dc should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7f5a16cc-1a5d-572e-8cc4-96a0c935004d +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 7f5a16cc-1a5d-572e-8cc4-96a0c935004d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:41 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 07228b52-a7d9-5691-8f63-9dbf729a04a9 +2025-09-21 04:12:41 | INFO | ingest_pipeline.storage.r2r.storage | Document 07228b52-a7d9-5691-8f63-9dbf729a04a9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5dd5f847-acc3-5255-b090-aa6af3cf3acd +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 5dd5f847-acc3-5255-b090-aa6af3cf3acd should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 09592e75-f2e9-5b4e-af4c-1f8674b92273 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 09592e75-f2e9-5b4e-af4c-1f8674b92273 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: af4505e9-fb96-5009-91ad-7aa0f9f07ef2 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document af4505e9-fb96-5009-91ad-7aa0f9f07ef2 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 74090e1e-933e-5063-a19f-4ebce5eddc03 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 74090e1e-933e-5063-a19f-4ebce5eddc03 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1edd7262-3e5e-5df1-90d2-2f161e826e84 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 1edd7262-3e5e-5df1-90d2-2f161e826e84 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4f5b1903-7a77-5ec9-ad81-3f5565c564dd +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 4f5b1903-7a77-5ec9-ad81-3f5565c564dd should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a625610c-91cd-523f-b15c-2fdb48e7e4d8 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document a625610c-91cd-523f-b15c-2fdb48e7e4d8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 986b4c31-e6fd-5c94-aa2e-cda40198fd1c +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 986b4c31-e6fd-5c94-aa2e-cda40198fd1c should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: de2cc244-9197-5b8b-8434-8ce4edab85bd +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document de2cc244-9197-5b8b-8434-8ce4edab85bd should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 406037b3-ab03-51a1-9adc-8c0d83e83bf0 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 406037b3-ab03-51a1-9adc-8c0d83e83bf0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5c0d9f30-b91c-5149-a213-05b1648219c9 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 5c0d9f30-b91c-5149-a213-05b1648219c9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 733713e8-b0e6-5fdd-8181-aa477a2b3ac0 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 733713e8-b0e6-5fdd-8181-aa477a2b3ac0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e137e9af-86f6-5530-a59a-126b72957e78 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document e137e9af-86f6-5530-a59a-126b72957e78 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c64996e2-36e7-5818-b7dd-71c98047933a +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document c64996e2-36e7-5818-b7dd-71c98047933a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c2b7a30e-f616-5d01-b6b0-4894ffffd1ff +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document c2b7a30e-f616-5d01-b6b0-4894ffffd1ff should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 27c3aef5-8a87-5f1d-b3e3-b4200163946d +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 27c3aef5-8a87-5f1d-b3e3-b4200163946d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7cb4d95c-e1e6-5724-aed7-794d7cc1af48 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 7cb4d95c-e1e6-5724-aed7-794d7cc1af48 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document 1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:42 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: bc40d2ba-d53f-5fd8-95cd-f47e45576487 +2025-09-21 04:12:42 | INFO | ingest_pipeline.storage.r2r.storage | Document bc40d2ba-d53f-5fd8-95cd-f47e45576487 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: affbd879-964c-5dc9-92ab-086f2771a894 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document affbd879-964c-5dc9-92ab-086f2771a894 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a5e1ffc2-5c75-54e1-941e-abefb2786afa +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document a5e1ffc2-5c75-54e1-941e-abefb2786afa should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b63afd41-2e15-5ebf-be91-297ea358da3d +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document b63afd41-2e15-5ebf-be91-297ea358da3d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b8ca2841-5304-5ae3-8bd0-fdebad56e411 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document b8ca2841-5304-5ae3-8bd0-fdebad56e411 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b50fa232-25d1-51ac-b28b-f2378e191db8 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document b50fa232-25d1-51ac-b28b-f2378e191db8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 790b756b-ceaa-5a56-a34e-fcc414ffaa57 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 790b756b-ceaa-5a56-a34e-fcc414ffaa57 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 3c564dfd-23ef-5f18-b608-012855a7464a +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 3c564dfd-23ef-5f18-b608-012855a7464a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a9b10faf-a895-560f-af53-6b3b2ef7fea6 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document a9b10faf-a895-560f-af53-6b3b2ef7fea6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9c82f7fb-dc11-5d21-a842-f1faa9df1edc +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 9c82f7fb-dc11-5d21-a842-f1faa9df1edc should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d58c39ba-6644-5914-9d10-12f8d012f849 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document d58c39ba-6644-5914-9d10-12f8d012f849 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5229425d-be48-5a73-b9f6-9a62f8f09c87 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 5229425d-be48-5a73-b9f6-9a62f8f09c87 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: deb36ad6-8db7-587e-8cd5-7bbf11e6e093 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document deb36ad6-8db7-587e-8cd5-7bbf11e6e093 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: af0e238b-359e-5864-b7fa-520f5f54e83f +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document af0e238b-359e-5864-b7fa-520f5f54e83f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f525ced3-e336-5729-b887-e61ecea95b90 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document f525ced3-e336-5729-b887-e61ecea95b90 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0d3befb-8d21-5f25-8f60-88f05b470339 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document d0d3befb-8d21-5f25-8f60-88f05b470339 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 73091fdb-b53a-5fea-ab5f-e2a6f11204b4 +2025-09-21 04:12:43 | INFO | ingest_pipeline.storage.r2r.storage | Document 73091fdb-b53a-5fea-ab5f-e2a6f11204b4 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:12:43 | INFO | prefect.task_runs | Successfully stored 50 documents in batch +2025-09-21 04:12:45 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:12:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:48 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:50 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:50 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:50 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:50 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:51 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:54 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:54 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:54 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:55 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:55 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:12:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:08 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:12 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:12 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:16 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:16 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:23 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:23 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:49 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:13:51 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:13:52 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:13:52 | INFO | prefect.task_runs | Metadata tagging failed, using original documents: Failed to tag document: Failed to parse LLM response: Unterminated string starting at: line 8 column 1 (char 241) +2025-09-21 04:13:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:13:52 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 659456d3-a40c-4325-85dd-82feec5dc4f7 for collection: default +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 30289db0-a4d4-5c0f-811f-7d6b122724a4 +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | Document 30289db0-a4d4-5c0f-811f-7d6b122724a4 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 2bfab044-da68-5d56-9d9b-6aacb2e99031 +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | Document 2bfab044-da68-5d56-9d9b-6aacb2e99031 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c4f28724-33b8-5567-9fab-85e3cbea929e +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | Document c4f28724-33b8-5567-9fab-85e3cbea929e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f2be3dc3-b332-5777-8843-10240d1445fe +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | Document f2be3dc3-b332-5777-8843-10240d1445fe should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:53 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d9328438-3272-582e-a931-44a4cc0481ed +2025-09-21 04:13:53 | INFO | ingest_pipeline.storage.r2r.storage | Document d9328438-3272-582e-a931-44a4cc0481ed should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4020aa8b-7533-5ec0-a71b-c01cdc0446f8 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 4020aa8b-7533-5ec0-a71b-c01cdc0446f8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 76728a5f-2aa1-53c4-aef0-25a0b3fa993e +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 76728a5f-2aa1-53c4-aef0-25a0b3fa993e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5c0f5439-6a60-5751-87c4-dd9192add4df +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 5c0f5439-6a60-5751-87c4-dd9192add4df should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 53b4bd4a-478c-534f-9c52-38eea1e2d27d +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 53b4bd4a-478c-534f-9c52-38eea1e2d27d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8d56663d-6f89-5689-a0e7-e75e5f764eca +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 8d56663d-6f89-5689-a0e7-e75e5f764eca should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6013c994-8cd9-5207-ad16-6b3adc27e307 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 6013c994-8cd9-5207-ad16-6b3adc27e307 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1efde2ca-f016-510f-bf6b-daf76a7505c7 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 1efde2ca-f016-510f-bf6b-daf76a7505c7 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4949f2f7-f2f0-508d-9e7c-1ab8565ce759 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 4949f2f7-f2f0-508d-9e7c-1ab8565ce759 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 08606537-601f-5463-80bf-1a61e056653e +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 08606537-601f-5463-80bf-1a61e056653e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: fea7a8e9-3249-53ad-a35f-0b1b764564de +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document fea7a8e9-3249-53ad-a35f-0b1b764564de should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9e88e2b7-4752-5684-a3e9-acb127eebf80 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 9e88e2b7-4752-5684-a3e9-acb127eebf80 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 93ec310e-e24e-5a61-a6c9-047f551bb696 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 93ec310e-e24e-5a61-a6c9-047f551bb696 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c16fa3c1-3b16-54e7-8bbc-b58a0d253afd +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document c16fa3c1-3b16-54e7-8bbc-b58a0d253afd should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b21eaee1-cc59-555c-b99f-35bada3e776f +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document b21eaee1-cc59-555c-b99f-35bada3e776f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f64a1f21-5a31-538d-9973-d2fa1d87272c +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document f64a1f21-5a31-538d-9973-d2fa1d87272c should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 743be286-e82a-57f8-add9-fb39921aa9e7 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document 743be286-e82a-57f8-add9-fb39921aa9e7 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0070e7b-82d0-5540-9f87-e593f9f6a9c6 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document d0070e7b-82d0-5540-9f87-e593f9f6a9c6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d6b5272c-75b0-51c8-b819-3121ad033b37 +2025-09-21 04:13:54 | INFO | ingest_pipeline.storage.r2r.storage | Document d6b5272c-75b0-51c8-b819-3121ad033b37 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5d596734-c9ed-5a3c-8472-7746c9d91629 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 5d596734-c9ed-5a3c-8472-7746c9d91629 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: ad803dd4-5a50-500a-bc84-efe1027b3c35 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document ad803dd4-5a50-500a-bc84-efe1027b3c35 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9253cc3c-9cbd-5815-85ad-7431e7ec3463 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 9253cc3c-9cbd-5815-85ad-7431e7ec3463 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 76c07289-d88d-516b-b1d5-05cbf7d70622 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 76c07289-d88d-516b-b1d5-05cbf7d70622 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a2143ecd-83d5-5afe-9081-fd702ee8a21a +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document a2143ecd-83d5-5afe-9081-fd702ee8a21a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8640ad90-e05b-59f6-a338-9ad497d77ef6 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 8640ad90-e05b-59f6-a338-9ad497d77ef6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 471ebd4a-d1d5-5742-a5c4-ba8916a433e0 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 471ebd4a-d1d5-5742-a5c4-ba8916a433e0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1548171f-84e0-5cad-8c79-eccb6f005fb6 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 1548171f-84e0-5cad-8c79-eccb6f005fb6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 03a25e92-68fa-5b7b-93b9-27980abca325 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 03a25e92-68fa-5b7b-93b9-27980abca325 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9359a055-431c-57e7-9b55-de7c1b02a59d +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 9359a055-431c-57e7-9b55-de7c1b02a59d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b0106193-2326-50cd-8873-4db97b77fb04 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document b0106193-2326-50cd-8873-4db97b77fb04 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: fb1cf655-de1a-5144-b136-b497d2e5786b +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document fb1cf655-de1a-5144-b136-b497d2e5786b should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5912697f-6337-59ec-8580-b7b1d8dfa950 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 5912697f-6337-59ec-8580-b7b1d8dfa950 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 0d6153e4-394d-5254-b3f6-79dc4abf93b0 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 0d6153e4-394d-5254-b3f6-79dc4abf93b0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f403e497-6a11-5cf3-a50b-035cf6c948fc +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document f403e497-6a11-5cf3-a50b-035cf6c948fc should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0b21e05-9dc4-5fba-9169-06e596edd48d +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document d0b21e05-9dc4-5fba-9169-06e596edd48d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 953ffc4a-4a92-5cde-af40-c65295cf7465 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 953ffc4a-4a92-5cde-af40-c65295cf7465 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: da5b264b-9988-5005-9753-1e6844eb4561 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document da5b264b-9988-5005-9753-1e6844eb4561 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 22a4a940-c558-5b9c-8751-137958ee34ca +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 22a4a940-c558-5b9c-8751-137958ee34ca should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b16f1680-da26-51a9-ae8c-d5ea8e13675f +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document b16f1680-da26-51a9-ae8c-d5ea8e13675f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 00e04984-3bb8-51b7-b852-b607e5471d58 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 00e04984-3bb8-51b7-b852-b607e5471d58 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9c8a9ce4-1724-5702-aeef-02b2fc8a6367 +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document 9c8a9ce4-1724-5702-aeef-02b2fc8a6367 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:55 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea +2025-09-21 04:13:55 | INFO | ingest_pipeline.storage.r2r.storage | Document a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:56 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:13:56 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 73bfa7e1-0f80-545b-a12f-fa871033586a +2025-09-21 04:13:56 | INFO | ingest_pipeline.storage.r2r.storage | Document 73bfa7e1-0f80-545b-a12f-fa871033586a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:13:56 | INFO | prefect.task_runs | Successfully stored 50 documents in batch +2025-09-21 04:13:57 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:14:00 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:07 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:16 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:19 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:19 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:23 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:23 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:26 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:27 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:27 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:27 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:29 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:30 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:31 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:31 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:32 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:37 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:38 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:39 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:39 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:39 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:14:41 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:42 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:43 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:44 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:45 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:46 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:48 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:49 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:50 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:52 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:54 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:55 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:56 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:58 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:14:59 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:00 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:01 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:02 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:03 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:04 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:04 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:05 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:05 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:07 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:07 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:09 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:10 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:12 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:14 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:15 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:16 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:18 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:19 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:21 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:23 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:24 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:26 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:28 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:29 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:30 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:32 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:33 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:34 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:35 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:37 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:39 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:40 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:42 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:43 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 659456d3-a40c-4325-85dd-82feec5dc4f7 for collection: default +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 51db6e0e-90d9-5953-a7cb-af8445354c62 +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 51db6e0e-90d9-5953-a7cb-af8445354c62 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6d344441-1281-5242-82e4-1ad4dbc96f1d +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 6d344441-1281-5242-82e4-1ad4dbc96f1d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7c4512c2-01cf-5aec-acb8-cff19ff52e02 +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 7c4512c2-01cf-5aec-acb8-cff19ff52e02 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 905e4073-a1fb-5edb-9608-7f8ba6c562bd +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 905e4073-a1fb-5edb-9608-7f8ba6c562bd should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:45 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4d558964-add4-5ce9-85a1-797fa7d34328 +2025-09-21 04:15:45 | INFO | ingest_pipeline.storage.r2r.storage | Document 4d558964-add4-5ce9-85a1-797fa7d34328 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 28549f12-72ff-59e0-9f5a-a47c03ef1ea8 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 28549f12-72ff-59e0-9f5a-a47c03ef1ea8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b7ef2176-6c42-5f9b-a13b-5ba9af07937e +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document b7ef2176-6c42-5f9b-a13b-5ba9af07937e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: dd5eb440-2e8e-5a23-9ea5-831847386a09 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document dd5eb440-2e8e-5a23-9ea5-831847386a09 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7ca67125-150c-5b4e-b4e9-61a9a76b1313 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 7ca67125-150c-5b4e-b4e9-61a9a76b1313 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a1fb9deb-b956-5491-84ba-fafb0df09786 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document a1fb9deb-b956-5491-84ba-fafb0df09786 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: ba22e49b-428c-5830-96ff-b328ec7c660b +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document ba22e49b-428c-5830-96ff-b328ec7c660b should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6ee93df2-8120-58d0-b4a8-06a008dcf7ff +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 6ee93df2-8120-58d0-b4a8-06a008dcf7ff should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7ec23195-b59a-5cdb-93b8-fbe6006d8c82 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 7ec23195-b59a-5cdb-93b8-fbe6006d8c82 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4ace956e-7ce0-577f-be9b-23e12657a3b9 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 4ace956e-7ce0-577f-be9b-23e12657a3b9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8f1109fe-8598-5d7c-9853-f83fdec586a6 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 8f1109fe-8598-5d7c-9853-f83fdec586a6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b598f4d9-da44-5080-8e7b-628fb526af09 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document b598f4d9-da44-5080-8e7b-628fb526af09 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b030413a-d0e5-5866-b12a-7a059e7b340f +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document b030413a-d0e5-5866-b12a-7a059e7b340f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9a2408eb-f02e-5816-ad09-17b8d8e17e43 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 9a2408eb-f02e-5816-ad09-17b8d8e17e43 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:46 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 2b75c9ad-3708-5abb-99a0-974790f046b1 +2025-09-21 04:15:46 | INFO | ingest_pipeline.storage.r2r.storage | Document 2b75c9ad-3708-5abb-99a0-974790f046b1 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 08cb03b5-c97c-5725-a763-05161c5c79c6 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 08cb03b5-c97c-5725-a763-05161c5c79c6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 181f4bb9-d23e-5741-b5f3-1f6242443018 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 181f4bb9-d23e-5741-b5f3-1f6242443018 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4e0a5349-3e1e-584f-9fc0-6cb3354131bf +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 4e0a5349-3e1e-584f-9fc0-6cb3354131bf should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d9322916-fc78-5a20-959a-4d8711dd7a3b +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document d9322916-fc78-5a20-959a-4d8711dd7a3b should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d4bd8457-c134-5a80-9c12-3d884c3eea4b +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document d4bd8457-c134-5a80-9c12-3d884c3eea4b should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 41792944-6572-5068-896b-2b5363c15e48 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 41792944-6572-5068-896b-2b5363c15e48 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e719d733-b4ce-5942-a6a6-c31563faaceb +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document e719d733-b4ce-5942-a6a6-c31563faaceb should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 154c26e1-c3be-57ac-ab85-3a75c2c1b268 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 154c26e1-c3be-57ac-ab85-3a75c2c1b268 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 079105f9-aa68-569d-b94f-3d51ec14e862 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 079105f9-aa68-569d-b94f-3d51ec14e862 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 21522a0b-7eeb-5d94-b624-c1dc8b52f7af +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 21522a0b-7eeb-5d94-b624-c1dc8b52f7af should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8801bae7-4c9b-5c04-b4cf-90accc1f25ff +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 8801bae7-4c9b-5c04-b4cf-90accc1f25ff should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5ecff7ca-531e-5510-954c-2fc69528fe10 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 5ecff7ca-531e-5510-954c-2fc69528fe10 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 32669b12-849b-52d0-86fb-9c5f237e0e49 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 32669b12-849b-52d0-86fb-9c5f237e0e49 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 436df0af-82cd-5f71-95e0-07b6ad47be34 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 436df0af-82cd-5f71-95e0-07b6ad47be34 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 949f5b00-4d59-58b6-956a-946596f90863 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 949f5b00-4d59-58b6-956a-946596f90863 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 59ab47b1-dea6-5506-8721-98a12c2336f6 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 59ab47b1-dea6-5506-8721-98a12c2336f6 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 24ed1ce8-e344-5143-9bf1-ef047d5579e5 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 24ed1ce8-e344-5143-9bf1-ef047d5579e5 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7f1d6494-4f7f-5c53-a052-f45033c37fac +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 7f1d6494-4f7f-5c53-a052-f45033c37fac should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c11dc4d5-724b-57c3-b9d0-ab8228de857a +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document c11dc4d5-724b-57c3-b9d0-ab8228de857a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: bda19630-0b8e-578a-b367-e8871f9bdb0a +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document bda19630-0b8e-578a-b367-e8871f9bdb0a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 87ee082f-1089-5d04-bec9-f8c7f0f4e762 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 87ee082f-1089-5d04-bec9-f8c7f0f4e762 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 83f1d7c2-e856-5284-a46b-d536c4e54840 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 83f1d7c2-e856-5284-a46b-d536c4e54840 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:47 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4f1de489-790e-5d30-bc09-1e90feead052 +2025-09-21 04:15:47 | INFO | ingest_pipeline.storage.r2r.storage | Document 4f1de489-790e-5d30-bc09-1e90feead052 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:48 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:48 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 790d8c6d-4252-5df3-b5fa-aebf0f86426e +2025-09-21 04:15:48 | INFO | ingest_pipeline.storage.r2r.storage | Document 790d8c6d-4252-5df3-b5fa-aebf0f86426e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:48 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:15:48 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6317ba60-9c00-5b45-b837-9035f71786b5 +2025-09-21 04:15:48 | INFO | ingest_pipeline.storage.r2r.storage | Document 6317ba60-9c00-5b45-b837-9035f71786b5 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:15:48 | INFO | prefect.task_runs | Successfully stored 50 documents in batch +2025-09-21 04:15:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:15:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:15:59 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:00 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:00 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:07 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:12 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:19 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 04:16:21 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:16:22 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:16:23 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:16:23 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:16:27 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 04:16:27 | INFO | prefect.task_runs | Metadata tagging failed, using original documents: Failed to tag document: Failed to parse LLM response: Unterminated string starting at: line 31 column 1 (char 1703) +2025-09-21 04:16:27 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:16:27 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 659456d3-a40c-4325-85dd-82feec5dc4f7 for collection: default +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9d1179cd-d618-533d-ac94-3f781c9b59fa +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 9d1179cd-d618-533d-ac94-3f781c9b59fa should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6c3b0f80-9759-5436-b6b6-46ea8909fccf +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 6c3b0f80-9759-5436-b6b6-46ea8909fccf should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 111d9ca8-1ca1-5635-a542-93ab86103204 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 111d9ca8-1ca1-5635-a542-93ab86103204 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 32cf7b16-a235-54fd-916f-1c8a25baf37e +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 32cf7b16-a235-54fd-916f-1c8a25baf37e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a87c50da-9af3-59bc-a906-a0654cac47a3 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document a87c50da-9af3-59bc-a906-a0654cac47a3 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 43c7e085-b75c-577f-97bb-5af2745a7088 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 43c7e085-b75c-577f-97bb-5af2745a7088 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 3a78f4db-1bff-546f-88f9-14dfcec6496f +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 3a78f4db-1bff-546f-88f9-14dfcec6496f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b99f9a68-7d5f-537e-82a3-dcab22572d7e +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document b99f9a68-7d5f-537e-82a3-dcab22572d7e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 18f0931a-ce62-5ce4-9356-ca492331e5d0 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 18f0931a-ce62-5ce4-9356-ca492331e5d0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 04327af3-2a79-55e6-a5d7-a0fe1348f99e +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 04327af3-2a79-55e6-a5d7-a0fe1348f99e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 92a15034-430b-551e-93de-d66da3b9e515 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 92a15034-430b-551e-93de-d66da3b9e515 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 52670f46-93f7-5dc1-8a36-8292cb23ae84 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 52670f46-93f7-5dc1-8a36-8292cb23ae84 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9c4e2448-8fc7-58d1-9e28-558e34382cfa +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 9c4e2448-8fc7-58d1-9e28-558e34382cfa should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:28 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5725c465-23fd-5a81-a41b-d791e0012814 +2025-09-21 04:16:28 | INFO | ingest_pipeline.storage.r2r.storage | Document 5725c465-23fd-5a81-a41b-d791e0012814 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 91620560-11f0-54be-aecd-cd82d87a1f58 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 91620560-11f0-54be-aecd-cd82d87a1f58 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a0193994-d4e0-5299-aa35-5100fccfdad5 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document a0193994-d4e0-5299-aa35-5100fccfdad5 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 712c89a8-e61d-5516-888e-9cc07b73d39f +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 712c89a8-e61d-5516-888e-9cc07b73d39f should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c638c07d-cc1a-5bf0-b5e2-4a623abe87ce +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document c638c07d-cc1a-5bf0-b5e2-4a623abe87ce should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b6d69ac2-e050-5fd6-9863-c74cb906ba16 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document b6d69ac2-e050-5fd6-9863-c74cb906ba16 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e74849ce-42a4-5459-8aae-aaa43a94f32c +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document e74849ce-42a4-5459-8aae-aaa43a94f32c should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 228b09ee-e843-503e-9710-5e212de7c7cc +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 228b09ee-e843-503e-9710-5e212de7c7cc should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 728c43be-83b8-5756-9c03-21590fc36a53 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 728c43be-83b8-5756-9c03-21590fc36a53 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 36617525-8d6c-5978-9c7e-341439c7fef0 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 36617525-8d6c-5978-9c7e-341439c7fef0 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 0b01c5c1-3014-53c3-b083-d4c911cd45db +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 0b01c5c1-3014-53c3-b083-d4c911cd45db should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4c459aef-1b22-598c-a394-245ef3cfdbd8 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document 4c459aef-1b22-598c-a394-245ef3cfdbd8 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b96ed7bc-69c7-55db-a55e-beed4af95169 +2025-09-21 04:16:29 | INFO | ingest_pipeline.storage.r2r.storage | Document b96ed7bc-69c7-55db-a55e-beed4af95169 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c37a96cd-2c46-50da-8a30-472167c6284a +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | Document c37a96cd-2c46-50da-8a30-472167c6284a should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | Document 4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4201a52b-43ed-5c59-8c2c-b49b62dbf1bc +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | Document 4201a52b-43ed-5c59-8c2c-b49b62dbf1bc should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a1238cd8-fe1e-5a38-8377-b68062d1bec4 +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | Document a1238cd8-fe1e-5a38-8377-b68062d1bec4 should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 139ecc77-e5c4-5508-bf58-57257652360e +2025-09-21 04:16:30 | INFO | ingest_pipeline.storage.r2r.storage | Document 139ecc77-e5c4-5508-bf58-57257652360e should be assigned to collection 659456d3-a40c-4325-85dd-82feec5dc4f7 via creation API +2025-09-21 04:16:30 | INFO | prefect.task_runs | Successfully stored 35 documents in final batch +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:16:30 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 04:16:30 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 04:16:30 | INFO | prefect.flow_runs | Ingestion completed: 185 processed, 0 failed +2025-09-21 04:16:30 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e0d8165e-9d47-4ba1-97b8-9723aff7b7f6/set_state "HTTP/1.1 201 Created" +2025-09-21 04:16:30 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 04:16:31 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:12 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:13 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 04:28:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: DELETE http://r2r.lab/v3/collections/659456d3-a40c-4325-85dd-82feec5dc4f7 "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 06:52:13 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:52:14 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=be3ea5bc-0ef1-407a-bfe3-c43c20eae0e6 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 06:52:43 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/95097569-b704-4769-a8f6-c969429a7b79 +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/95097569-b704-4769-a8f6-c969429a7b79/set_state "HTTP/1.1 201 Created" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/95097569-b704-4769-a8f6-c969429a7b79 "HTTP/1.1 200 OK" +2025-09-21 06:52:43 | INFO | prefect.flow_runs | Beginning flow run 'uber-tiger' for flow 'ingestion_pipeline' +2025-09-21 06:52:43 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/95097569-b704-4769-a8f6-c969429a7b79 +2025-09-21 06:52:43 | INFO | prefect.flow_runs | Starting ingestion from https://r2r-docs.sciphi.ai/ +2025-09-21 06:52:43 | INFO | prefect.flow_runs | Validating source... +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:52:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:52:48 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 06:52:49 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/da5b264b-9988-5005-9753-1e6844eb4561 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00e04984-3bb8-51b7-b852-b607e5471d58 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c8a9ce4-1724-5702-aeef-02b2fc8a6367 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73bfa7e1-0f80-545b-a12f-fa871033586a "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7c4512c2-01cf-5aec-acb8-cff19ff52e02 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/905e4073-a1fb-5edb-9608-7f8ba6c562bd "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/51db6e0e-90d9-5953-a7cb-af8445354c62 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6d344441-1281-5242-82e4-1ad4dbc96f1d "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4d558964-add4-5ce9-85a1-797fa7d34328 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/dd5eb440-2e8e-5a23-9ea5-831847386a09 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b7ef2176-6c42-5f9b-a13b-5ba9af07937e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/28549f12-72ff-59e0-9f5a-a47c03ef1ea8 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ca67125-150c-5b4e-b4e9-61a9a76b1313 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6ee93df2-8120-58d0-b4a8-06a008dcf7ff "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ba22e49b-428c-5830-96ff-b328ec7c660b "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1fb9deb-b956-5491-84ba-fafb0df09786 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ec23195-b59a-5cdb-93b8-fbe6006d8c82 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4ace956e-7ce0-577f-be9b-23e12657a3b9 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8f1109fe-8598-5d7c-9853-f83fdec586a6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b030413a-d0e5-5866-b12a-7a059e7b340f "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b598f4d9-da44-5080-8e7b-628fb526af09 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2408eb-f02e-5816-ad09-17b8d8e17e43 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2b75c9ad-3708-5abb-99a0-974790f046b1 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4e0a5349-3e1e-584f-9fc0-6cb3354131bf "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9322916-fc78-5a20-959a-4d8711dd7a3b "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/181f4bb9-d23e-5741-b5f3-1f6242443018 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08cb03b5-c97c-5725-a763-05161c5c79c6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d4bd8457-c134-5a80-9c12-3d884c3eea4b "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e719d733-b4ce-5942-a6a6-c31563faaceb "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/41792944-6572-5068-896b-2b5363c15e48 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/154c26e1-c3be-57ac-ab85-3a75c2c1b268 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/079105f9-aa68-569d-b94f-3d51ec14e862 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32669b12-849b-52d0-86fb-9c5f237e0e49 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8801bae7-4c9b-5c04-b4cf-90accc1f25ff "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/21522a0b-7eeb-5d94-b624-c1dc8b52f7af "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ecff7ca-531e-5510-954c-2fc69528fe10 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/436df0af-82cd-5f71-95e0-07b6ad47be34 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/949f5b00-4d59-58b6-956a-946596f90863 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/59ab47b1-dea6-5506-8721-98a12c2336f6 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f1d6494-4f7f-5c53-a052-f45033c37fac "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/24ed1ce8-e344-5143-9bf1-ef047d5579e5 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c11dc4d5-724b-57c3-b9d0-ab8228de857a "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/83f1d7c2-e856-5284-a46b-d536c4e54840 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bda19630-0b8e-578a-b367-e8871f9bdb0a "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/87ee082f-1089-5d04-bec9-f8c7f0f4e762 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f1de489-790e-5d30-bc09-1e90feead052 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790d8c6d-4252-5df3-b5fa-aebf0f86426e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6317ba60-9c00-5b45-b837-9035f71786b5 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9d1179cd-d618-533d-ac94-3f781c9b59fa "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/111d9ca8-1ca1-5635-a542-93ab86103204 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a87c50da-9af3-59bc-a906-a0654cac47a3 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6c3b0f80-9759-5436-b6b6-46ea8909fccf "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32cf7b16-a235-54fd-916f-1c8a25baf37e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3a78f4db-1bff-546f-88f9-14dfcec6496f "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/43c7e085-b75c-577f-97bb-5af2745a7088 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/18f0931a-ce62-5ce4-9356-ca492331e5d0 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b99f9a68-7d5f-537e-82a3-dcab22572d7e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c4e2448-8fc7-58d1-9e28-558e34382cfa "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/92a15034-430b-551e-93de-d66da3b9e515 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/04327af3-2a79-55e6-a5d7-a0fe1348f99e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5725c465-23fd-5a81-a41b-d791e0012814 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/52670f46-93f7-5dc1-8a36-8292cb23ae84 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c638c07d-cc1a-5bf0-b5e2-4a623abe87ce "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/91620560-11f0-54be-aecd-cd82d87a1f58 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a0193994-d4e0-5299-aa35-5100fccfdad5 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/712c89a8-e61d-5516-888e-9cc07b73d39f "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e74849ce-42a4-5459-8aae-aaa43a94f32c "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b6d69ac2-e050-5fd6-9863-c74cb906ba16 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/228b09ee-e843-503e-9710-5e212de7c7cc "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/728c43be-83b8-5756-9c03-21590fc36a53 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c459aef-1b22-598c-a394-245ef3cfdbd8 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/36617525-8d6c-5978-9c7e-341439c7fef0 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b96ed7bc-69c7-55db-a55e-beed4af95169 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0b01c5c1-3014-53c3-b083-d4c911cd45db "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1238cd8-fe1e-5a38-8377-b68062d1bec4 "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c37a96cd-2c46-50da-8a30-472167c6284a "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4201a52b-43ed-5c59-8c2c-b49b62dbf1bc "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/139ecc77-e5c4-5508-bf58-57257652360e "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:52:50 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:52:50 | INFO | prefect.flow_runs | Ingestion completed: 0 processed, 0 failed +2025-09-21 06:52:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/95097569-b704-4769-a8f6-c969429a7b79/set_state "HTTP/1.1 201 Created" +2025-09-21 06:52:51 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 06:52:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:34 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 06:57:37 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=a49a3b57-3218-44ab-8084-4cbdb957ee1a "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 06:57:51 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/85201d25-7284-4e54-936d-1ca178784c0c +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/85201d25-7284-4e54-936d-1ca178784c0c/set_state "HTTP/1.1 201 Created" +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/85201d25-7284-4e54-936d-1ca178784c0c "HTTP/1.1 200 OK" +2025-09-21 06:57:51 | INFO | prefect.flow_runs | Beginning flow run 'loose-sawfly' for flow 'ingestion_pipeline' +2025-09-21 06:57:51 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/85201d25-7284-4e54-936d-1ca178784c0c +2025-09-21 06:57:51 | INFO | prefect.flow_runs | Starting ingestion from https://r2r-docs.sciphi.ai/ +2025-09-21 06:57:51 | INFO | prefect.flow_runs | Validating source... +2025-09-21 06:57:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:57:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:57:56 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:56 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 06:57:57 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/da5b264b-9988-5005-9753-1e6844eb4561 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00e04984-3bb8-51b7-b852-b607e5471d58 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c8a9ce4-1724-5702-aeef-02b2fc8a6367 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73bfa7e1-0f80-545b-a12f-fa871033586a "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7c4512c2-01cf-5aec-acb8-cff19ff52e02 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/905e4073-a1fb-5edb-9608-7f8ba6c562bd "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/51db6e0e-90d9-5953-a7cb-af8445354c62 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6d344441-1281-5242-82e4-1ad4dbc96f1d "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4d558964-add4-5ce9-85a1-797fa7d34328 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/dd5eb440-2e8e-5a23-9ea5-831847386a09 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b7ef2176-6c42-5f9b-a13b-5ba9af07937e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/28549f12-72ff-59e0-9f5a-a47c03ef1ea8 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ca67125-150c-5b4e-b4e9-61a9a76b1313 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6ee93df2-8120-58d0-b4a8-06a008dcf7ff "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ba22e49b-428c-5830-96ff-b328ec7c660b "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1fb9deb-b956-5491-84ba-fafb0df09786 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ec23195-b59a-5cdb-93b8-fbe6006d8c82 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4ace956e-7ce0-577f-be9b-23e12657a3b9 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8f1109fe-8598-5d7c-9853-f83fdec586a6 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b030413a-d0e5-5866-b12a-7a059e7b340f "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b598f4d9-da44-5080-8e7b-628fb526af09 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2408eb-f02e-5816-ad09-17b8d8e17e43 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2b75c9ad-3708-5abb-99a0-974790f046b1 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4e0a5349-3e1e-584f-9fc0-6cb3354131bf "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9322916-fc78-5a20-959a-4d8711dd7a3b "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/181f4bb9-d23e-5741-b5f3-1f6242443018 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08cb03b5-c97c-5725-a763-05161c5c79c6 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d4bd8457-c134-5a80-9c12-3d884c3eea4b "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e719d733-b4ce-5942-a6a6-c31563faaceb "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/41792944-6572-5068-896b-2b5363c15e48 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/154c26e1-c3be-57ac-ab85-3a75c2c1b268 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/079105f9-aa68-569d-b94f-3d51ec14e862 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32669b12-849b-52d0-86fb-9c5f237e0e49 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8801bae7-4c9b-5c04-b4cf-90accc1f25ff "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/21522a0b-7eeb-5d94-b624-c1dc8b52f7af "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ecff7ca-531e-5510-954c-2fc69528fe10 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/436df0af-82cd-5f71-95e0-07b6ad47be34 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/949f5b00-4d59-58b6-956a-946596f90863 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/59ab47b1-dea6-5506-8721-98a12c2336f6 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f1d6494-4f7f-5c53-a052-f45033c37fac "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/24ed1ce8-e344-5143-9bf1-ef047d5579e5 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c11dc4d5-724b-57c3-b9d0-ab8228de857a "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/83f1d7c2-e856-5284-a46b-d536c4e54840 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bda19630-0b8e-578a-b367-e8871f9bdb0a "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/87ee082f-1089-5d04-bec9-f8c7f0f4e762 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f1de489-790e-5d30-bc09-1e90feead052 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790d8c6d-4252-5df3-b5fa-aebf0f86426e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6317ba60-9c00-5b45-b837-9035f71786b5 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9d1179cd-d618-533d-ac94-3f781c9b59fa "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/111d9ca8-1ca1-5635-a542-93ab86103204 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a87c50da-9af3-59bc-a906-a0654cac47a3 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6c3b0f80-9759-5436-b6b6-46ea8909fccf "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32cf7b16-a235-54fd-916f-1c8a25baf37e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3a78f4db-1bff-546f-88f9-14dfcec6496f "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/43c7e085-b75c-577f-97bb-5af2745a7088 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/18f0931a-ce62-5ce4-9356-ca492331e5d0 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b99f9a68-7d5f-537e-82a3-dcab22572d7e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c4e2448-8fc7-58d1-9e28-558e34382cfa "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/92a15034-430b-551e-93de-d66da3b9e515 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/04327af3-2a79-55e6-a5d7-a0fe1348f99e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5725c465-23fd-5a81-a41b-d791e0012814 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/52670f46-93f7-5dc1-8a36-8292cb23ae84 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c638c07d-cc1a-5bf0-b5e2-4a623abe87ce "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/91620560-11f0-54be-aecd-cd82d87a1f58 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a0193994-d4e0-5299-aa35-5100fccfdad5 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/712c89a8-e61d-5516-888e-9cc07b73d39f "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e74849ce-42a4-5459-8aae-aaa43a94f32c "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b6d69ac2-e050-5fd6-9863-c74cb906ba16 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/228b09ee-e843-503e-9710-5e212de7c7cc "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/728c43be-83b8-5756-9c03-21590fc36a53 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c459aef-1b22-598c-a394-245ef3cfdbd8 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/36617525-8d6c-5978-9c7e-341439c7fef0 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b96ed7bc-69c7-55db-a55e-beed4af95169 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0b01c5c1-3014-53c3-b083-d4c911cd45db "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1238cd8-fe1e-5a38-8377-b68062d1bec4 "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c37a96cd-2c46-50da-8a30-472167c6284a "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4201a52b-43ed-5c59-8c2c-b49b62dbf1bc "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/139ecc77-e5c4-5508-bf58-57257652360e "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 06:57:58 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 06:57:58 | INFO | prefect.flow_runs | Ingestion completed: 0 processed, 0 failed +2025-09-21 06:57:58 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/85201d25-7284-4e54-936d-1ca178784c0c/set_state "HTTP/1.1 201 Created" +2025-09-21 06:57:58 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 06:57:59 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:21 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:01:23 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:01:24 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 07:01:24 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 07:01:29 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 07:01:29 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 07:01:29 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 07:01:29 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/36e9bd90-ea5a-440e-bd99-3583f8b40d0c/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:30 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:01:31 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=087720e3-2c48-4799-b756-b2c252640deb "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:47 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/0c1d6e6b-c16c-4059-9e1c-02c0d6b72a39 +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/0c1d6e6b-c16c-4059-9e1c-02c0d6b72a39/set_state "HTTP/1.1 201 Created" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/0c1d6e6b-c16c-4059-9e1c-02c0d6b72a39 "HTTP/1.1 200 OK" +2025-09-21 07:01:47 | INFO | prefect.flow_runs | Beginning flow run 'aloof-fennec' for flow 'ingestion_pipeline' +2025-09-21 07:01:47 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/0c1d6e6b-c16c-4059-9e1c-02c0d6b72a39 +2025-09-21 07:01:47 | INFO | prefect.flow_runs | Starting ingestion from https://r2r-docs.sciphi.ai/ +2025-09-21 07:01:47 | INFO | prefect.flow_runs | Validating source... +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=44fbceb0-7617-4f2b-80fd-479c188bfb2b "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 07:01:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=2329e2e2-91e5-465f-a466-c62193957108 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=02136667-8b9d-4ec5-9054-913fcbfab012 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:50 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/task_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:50 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/19f3bb96-0796-417e-bd68-511d356d45f6 +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/19f3bb96-0796-417e-bd68-511d356d45f6/set_state "HTTP/1.1 201 Created" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/19f3bb96-0796-417e-bd68-511d356d45f6 "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | prefect.flow_runs | Beginning subflow run 'sceptical-ostrich' for flow 'firecrawl_to_r2r' +2025-09-21 07:01:50 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/19f3bb96-0796-417e-bd68-511d356d45f6 +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/bac48c85-e6dc-4da0-99d5-6f26e027cabb "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=5dbd389d-cd7d-43e0-9a8c-f9cea53f33ad "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:50 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb6c770-32d4-564f-9c94-9b49b6b62834 "HTTP/1.1 404 Not Found" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=700f654e-d2f1-46f4-9745-ac794eff84b0 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:50 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:51 | INFO | prefect.flow_runs | Discovered 100 unique URLs from Firecrawl map +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=9b1355f5-ce09-474f-8175-fc1805e45455 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 07:01:51 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | prefect.task_runs | Skipping 100 up-to-date documents in R2R +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:52 | INFO | prefect.flow_runs | All Firecrawl pages are up to date for https://r2r-docs.sciphi.ai/ +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/19f3bb96-0796-417e-bd68-511d356d45f6/set_state "HTTP/1.1 201 Created" +2025-09-21 07:01:52 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:01:52 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:01:52 | INFO | prefect.flow_runs | Ingestion completed: 0 processed, 0 failed +2025-09-21 07:01:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/0c1d6e6b-c16c-4059-9e1c-02c0d6b72a39/set_state "HTTP/1.1 201 Created" +2025-09-21 07:01:52 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:01:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=6b7e3c5b-6f18-435e-8030-317064290f46 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:02:03 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/2acbdb7d-28f9-4ce3-b881-29888339c448 +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/2acbdb7d-28f9-4ce3-b881-29888339c448/set_state "HTTP/1.1 201 Created" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/2acbdb7d-28f9-4ce3-b881-29888339c448 "HTTP/1.1 200 OK" +2025-09-21 07:02:03 | INFO | prefect.flow_runs | Beginning flow run 'delicate-harrier' for flow 'ingestion_pipeline' +2025-09-21 07:02:03 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/2acbdb7d-28f9-4ce3-b881-29888339c448 +2025-09-21 07:02:03 | INFO | prefect.flow_runs | Starting ingestion from https://r2r-docs.sciphi.ai/ +2025-09-21 07:02:03 | INFO | prefect.flow_runs | Validating source... +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:02:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:02:08 | INFO | prefect.flow_runs | Ingesting documents... +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=a54ed3af-ac70-4a33-b8ab-bd029e011860 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:02:08 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/da5b264b-9988-5005-9753-1e6844eb4561 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00e04984-3bb8-51b7-b852-b607e5471d58 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c8a9ce4-1724-5702-aeef-02b2fc8a6367 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73bfa7e1-0f80-545b-a12f-fa871033586a "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7c4512c2-01cf-5aec-acb8-cff19ff52e02 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/905e4073-a1fb-5edb-9608-7f8ba6c562bd "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/51db6e0e-90d9-5953-a7cb-af8445354c62 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6d344441-1281-5242-82e4-1ad4dbc96f1d "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4d558964-add4-5ce9-85a1-797fa7d34328 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/dd5eb440-2e8e-5a23-9ea5-831847386a09 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b7ef2176-6c42-5f9b-a13b-5ba9af07937e "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/28549f12-72ff-59e0-9f5a-a47c03ef1ea8 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ca67125-150c-5b4e-b4e9-61a9a76b1313 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6ee93df2-8120-58d0-b4a8-06a008dcf7ff "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ba22e49b-428c-5830-96ff-b328ec7c660b "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1fb9deb-b956-5491-84ba-fafb0df09786 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ec23195-b59a-5cdb-93b8-fbe6006d8c82 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4ace956e-7ce0-577f-be9b-23e12657a3b9 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8f1109fe-8598-5d7c-9853-f83fdec586a6 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b030413a-d0e5-5866-b12a-7a059e7b340f "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b598f4d9-da44-5080-8e7b-628fb526af09 "HTTP/1.1 200 OK" +2025-09-21 07:02:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2408eb-f02e-5816-ad09-17b8d8e17e43 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2b75c9ad-3708-5abb-99a0-974790f046b1 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4e0a5349-3e1e-584f-9fc0-6cb3354131bf "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9322916-fc78-5a20-959a-4d8711dd7a3b "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/181f4bb9-d23e-5741-b5f3-1f6242443018 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08cb03b5-c97c-5725-a763-05161c5c79c6 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d4bd8457-c134-5a80-9c12-3d884c3eea4b "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e719d733-b4ce-5942-a6a6-c31563faaceb "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/41792944-6572-5068-896b-2b5363c15e48 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/154c26e1-c3be-57ac-ab85-3a75c2c1b268 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/079105f9-aa68-569d-b94f-3d51ec14e862 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32669b12-849b-52d0-86fb-9c5f237e0e49 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8801bae7-4c9b-5c04-b4cf-90accc1f25ff "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/21522a0b-7eeb-5d94-b624-c1dc8b52f7af "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ecff7ca-531e-5510-954c-2fc69528fe10 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/436df0af-82cd-5f71-95e0-07b6ad47be34 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/949f5b00-4d59-58b6-956a-946596f90863 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/59ab47b1-dea6-5506-8721-98a12c2336f6 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f1d6494-4f7f-5c53-a052-f45033c37fac "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/24ed1ce8-e344-5143-9bf1-ef047d5579e5 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c11dc4d5-724b-57c3-b9d0-ab8228de857a "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/83f1d7c2-e856-5284-a46b-d536c4e54840 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bda19630-0b8e-578a-b367-e8871f9bdb0a "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/87ee082f-1089-5d04-bec9-f8c7f0f4e762 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f1de489-790e-5d30-bc09-1e90feead052 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790d8c6d-4252-5df3-b5fa-aebf0f86426e "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6317ba60-9c00-5b45-b837-9035f71786b5 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9d1179cd-d618-533d-ac94-3f781c9b59fa "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/111d9ca8-1ca1-5635-a542-93ab86103204 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a87c50da-9af3-59bc-a906-a0654cac47a3 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6c3b0f80-9759-5436-b6b6-46ea8909fccf "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32cf7b16-a235-54fd-916f-1c8a25baf37e "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3a78f4db-1bff-546f-88f9-14dfcec6496f "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/43c7e085-b75c-577f-97bb-5af2745a7088 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/18f0931a-ce62-5ce4-9356-ca492331e5d0 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b99f9a68-7d5f-537e-82a3-dcab22572d7e "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c4e2448-8fc7-58d1-9e28-558e34382cfa "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/92a15034-430b-551e-93de-d66da3b9e515 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/04327af3-2a79-55e6-a5d7-a0fe1348f99e "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5725c465-23fd-5a81-a41b-d791e0012814 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/52670f46-93f7-5dc1-8a36-8292cb23ae84 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c638c07d-cc1a-5bf0-b5e2-4a623abe87ce "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/91620560-11f0-54be-aecd-cd82d87a1f58 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a0193994-d4e0-5299-aa35-5100fccfdad5 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/712c89a8-e61d-5516-888e-9cc07b73d39f "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e74849ce-42a4-5459-8aae-aaa43a94f32c "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b6d69ac2-e050-5fd6-9863-c74cb906ba16 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/228b09ee-e843-503e-9710-5e212de7c7cc "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/728c43be-83b8-5756-9c03-21590fc36a53 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c459aef-1b22-598c-a394-245ef3cfdbd8 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/36617525-8d6c-5978-9c7e-341439c7fef0 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b96ed7bc-69c7-55db-a55e-beed4af95169 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0b01c5c1-3014-53c3-b083-d4c911cd45db "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1238cd8-fe1e-5a38-8377-b68062d1bec4 "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c37a96cd-2c46-50da-8a30-472167c6284a "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4201a52b-43ed-5c59-8c2c-b49b62dbf1bc "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/139ecc77-e5c4-5508-bf58-57257652360e "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:02:10 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:02:10 | INFO | prefect.flow_runs | Ingestion completed: 0 processed, 0 failed +2025-09-21 07:02:10 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/2acbdb7d-28f9-4ce3-b881-29888339c448/set_state "HTTP/1.1 201 Created" +2025-09-21 07:02:10 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:02:11 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:33:49 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 07:33:49 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 07:33:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 07:33:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 07:33:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/36e9bd90-ea5a-440e-bd99-3583f8b40d0c/documents "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:33:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=d0fa64a0-9d58-40a3-b28a-12b8759ad413 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:34:14 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/0bc09e15-cdd9-4da2-a375-734f661da052 +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/0bc09e15-cdd9-4da2-a375-734f661da052/set_state "HTTP/1.1 201 Created" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/0bc09e15-cdd9-4da2-a375-734f661da052 "HTTP/1.1 200 OK" +2025-09-21 07:34:14 | INFO | prefect.flow_runs | Beginning flow run 'diligent-ladybug' for flow 'ingestion_pipeline' +2025-09-21 07:34:14 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/0bc09e15-cdd9-4da2-a375-734f661da052 +2025-09-21 07:34:14 | INFO | prefect.flow_runs | Starting ingestion pipeline: source=https://r2r-docs.sciphi.ai/, type=IngestionSource.DOCUMENTATION, backend=StorageBackend.R2R +2025-09-21 07:34:14 | INFO | prefect.flow_runs | Validating source accessibility: https://r2r-docs.sciphi.ai/ +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=cc3f621a-9c7f-4720-b0a1-f70ace6bcac2 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:34:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 07:34:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=574a36f2-39bf-4b3e-89c3-533fcccfd0f1 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:34:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:34:18 | INFO | prefect.flow_runs | Source validation successful +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=84fce52b-94c5-4550-91e4-87cf1909a424 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:34:18 | INFO | prefect.flow_runs | Starting document ingestion process +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=999ad5b6-77e6-484c-b24a-28d3e892a711 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | prefect.task_runs | Starting document ingestion from documentation source +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 07:34:18 | INFO | prefect.task_runs | Created documentation ingestor with max depth 50, limit 2000 +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:34:18 | INFO | prefect.task_runs | Storage client initialized for collection: r2r +2025-09-21 07:34:18 | INFO | prefect.task_runs | Using R2RStorage storage backend with batch size 50 +2025-09-21 07:34:18 | INFO | prefect.task_runs | Using smart ingestion with deduplication +2025-09-21 07:34:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/da5b264b-9988-5005-9753-1e6844eb4561 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00e04984-3bb8-51b7-b852-b607e5471d58 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c8a9ce4-1724-5702-aeef-02b2fc8a6367 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a4e0f8f9-b772-5d6e-8cfc-cc7a4ec23aea "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73bfa7e1-0f80-545b-a12f-fa871033586a "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/00d68eca-a8fa-5af0-bcf0-ae0cdf6f49f9 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7c4512c2-01cf-5aec-acb8-cff19ff52e02 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/905e4073-a1fb-5edb-9608-7f8ba6c562bd "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/51db6e0e-90d9-5953-a7cb-af8445354c62 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6d344441-1281-5242-82e4-1ad4dbc96f1d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4d558964-add4-5ce9-85a1-797fa7d34328 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/06de6f8c-0dea-5dc0-9b1f-bda91fa3e439 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/dd5eb440-2e8e-5a23-9ea5-831847386a09 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b7ef2176-6c42-5f9b-a13b-5ba9af07937e "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/28549f12-72ff-59e0-9f5a-a47c03ef1ea8 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ca67125-150c-5b4e-b4e9-61a9a76b1313 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6ee93df2-8120-58d0-b4a8-06a008dcf7ff "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ba22e49b-428c-5830-96ff-b328ec7c660b "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1fb9deb-b956-5491-84ba-fafb0df09786 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7ec23195-b59a-5cdb-93b8-fbe6006d8c82 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4ace956e-7ce0-577f-be9b-23e12657a3b9 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b1f9dbb1-6f0d-5e52-a8f5-1d13866a18f3 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8f1109fe-8598-5d7c-9853-f83fdec586a6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b030413a-d0e5-5866-b12a-7a059e7b340f "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b598f4d9-da44-5080-8e7b-628fb526af09 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2408eb-f02e-5816-ad09-17b8d8e17e43 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2b75c9ad-3708-5abb-99a0-974790f046b1 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4e0a5349-3e1e-584f-9fc0-6cb3354131bf "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9322916-fc78-5a20-959a-4d8711dd7a3b "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/181f4bb9-d23e-5741-b5f3-1f6242443018 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08cb03b5-c97c-5725-a763-05161c5c79c6 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d4bd8457-c134-5a80-9c12-3d884c3eea4b "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e719d733-b4ce-5942-a6a6-c31563faaceb "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/41792944-6572-5068-896b-2b5363c15e48 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f5c4dfe5-fb7b-5554-b9ef-0d0a0903f27d "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/154c26e1-c3be-57ac-ab85-3a75c2c1b268 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/079105f9-aa68-569d-b94f-3d51ec14e862 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32669b12-849b-52d0-86fb-9c5f237e0e49 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8801bae7-4c9b-5c04-b4cf-90accc1f25ff "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/21522a0b-7eeb-5d94-b624-c1dc8b52f7af "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ecff7ca-531e-5510-954c-2fc69528fe10 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/436df0af-82cd-5f71-95e0-07b6ad47be34 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/949f5b00-4d59-58b6-956a-946596f90863 "HTTP/1.1 200 OK" +2025-09-21 07:34:19 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/59ab47b1-dea6-5506-8721-98a12c2336f6 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f1d6494-4f7f-5c53-a052-f45033c37fac "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c1fc02d-5c41-503e-9d21-cbd6cb5bd591 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/24ed1ce8-e344-5143-9bf1-ef047d5579e5 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c11dc4d5-724b-57c3-b9d0-ab8228de857a "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/83f1d7c2-e856-5284-a46b-d536c4e54840 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bda19630-0b8e-578a-b367-e8871f9bdb0a "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e3783a0c-3a99-5180-b3ae-da3aa62a7cf7 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/87ee082f-1089-5d04-bec9-f8c7f0f4e762 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f1de489-790e-5d30-bc09-1e90feead052 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790d8c6d-4252-5df3-b5fa-aebf0f86426e "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6317ba60-9c00-5b45-b837-9035f71786b5 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9d1179cd-d618-533d-ac94-3f781c9b59fa "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/111d9ca8-1ca1-5635-a542-93ab86103204 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a87c50da-9af3-59bc-a906-a0654cac47a3 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6c3b0f80-9759-5436-b6b6-46ea8909fccf "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/32cf7b16-a235-54fd-916f-1c8a25baf37e "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3a78f4db-1bff-546f-88f9-14dfcec6496f "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/43c7e085-b75c-577f-97bb-5af2745a7088 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/18f0931a-ce62-5ce4-9356-ca492331e5d0 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5ce5bbee-6098-5ee8-a2b3-f33e6e9623c9 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b99f9a68-7d5f-537e-82a3-dcab22572d7e "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c4e2448-8fc7-58d1-9e28-558e34382cfa "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/92a15034-430b-551e-93de-d66da3b9e515 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/04327af3-2a79-55e6-a5d7-a0fe1348f99e "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5725c465-23fd-5a81-a41b-d791e0012814 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/52670f46-93f7-5dc1-8a36-8292cb23ae84 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c638c07d-cc1a-5bf0-b5e2-4a623abe87ce "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/91620560-11f0-54be-aecd-cd82d87a1f58 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c7b892ff-ebb0-5dba-b3f4-87e83a5f9d06 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a0193994-d4e0-5299-aa35-5100fccfdad5 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/712c89a8-e61d-5516-888e-9cc07b73d39f "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e74849ce-42a4-5459-8aae-aaa43a94f32c "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4632d1f9-71c2-5c6c-9150-6443a2fbf6d5 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b6d69ac2-e050-5fd6-9863-c74cb906ba16 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/228b09ee-e843-503e-9710-5e212de7c7cc "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/728c43be-83b8-5756-9c03-21590fc36a53 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4c459aef-1b22-598c-a394-245ef3cfdbd8 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/36617525-8d6c-5978-9c7e-341439c7fef0 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b96ed7bc-69c7-55db-a55e-beed4af95169 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0b01c5c1-3014-53c3-b083-d4c911cd45db "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/cd6c42ba-fa17-5fc8-afc2-6fe1d30d8dfe "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4bd1b56f-f1fb-5b52-9a82-6116f18e4a73 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a1238cd8-fe1e-5a38-8377-b68062d1bec4 "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c37a96cd-2c46-50da-8a30-472167c6284a "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4201a52b-43ed-5c59-8c2c-b49b62dbf1bc "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/139ecc77-e5c4-5508-bf58-57257652360e "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | prefect.task_runs | Document processing complete: 0 processed, 0 failed, 0 skipped +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:34:20 | INFO | prefect.flow_runs | Ingestion completed: 0 processed, 0 skipped +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:34:20 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:34:20 | INFO | prefect.flow_runs | Ingestion pipeline completed in 5.71 seconds: 0 processed, 0 failed, 0 skipped +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/0bc09e15-cdd9-4da2-a375-734f661da052/set_state "HTTP/1.1 201 Created" +2025-09-21 07:34:20 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:34:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:10 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 07:38:10 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 07:38:15 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 07:38:15 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 07:38:15 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/36e9bd90-ea5a-440e-bd99-3583f8b40d0c/documents "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:38:15 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:38:16 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=2f2abb62-e1d8-4a0a-afb6-e7da3d80525e "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:41 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/70e27b7c-93d1-44d5-8d3f-884b9d375093 +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/70e27b7c-93d1-44d5-8d3f-884b9d375093/set_state "HTTP/1.1 201 Created" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/70e27b7c-93d1-44d5-8d3f-884b9d375093 "HTTP/1.1 200 OK" +2025-09-21 07:38:41 | INFO | prefect.flow_runs | Beginning flow run 'electric-mustang' for flow 'ingestion_pipeline' +2025-09-21 07:38:41 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/70e27b7c-93d1-44d5-8d3f-884b9d375093 +2025-09-21 07:38:41 | INFO | prefect.flow_runs | Starting ingestion pipeline: source=https://r2r-docs.sciphi.ai/, type=IngestionSource.DOCUMENTATION, backend=StorageBackend.R2R +2025-09-21 07:38:41 | INFO | prefect.flow_runs | Validating source accessibility: https://r2r-docs.sciphi.ai/ +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=1f1f1c44-1574-4241-a360-a8da0a0bb145 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 07:38:43 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=d76ccf54-825c-40ee-b6b8-53abf349cbe3 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:46 | INFO | prefect.flow_runs | Source validation successful +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=8207d47f-c9e0-4357-b139-5adebfd5250b "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:46 | INFO | prefect.flow_runs | Starting document ingestion process +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/task_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:46 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/28f15090-f06b-48be-9d82-d5dc96d49945 +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/28f15090-f06b-48be-9d82-d5dc96d49945/set_state "HTTP/1.1 201 Created" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/28f15090-f06b-48be-9d82-d5dc96d49945 "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.flow_runs | Beginning subflow run 'magenta-kiwi' for flow 'firecrawl_to_r2r' +2025-09-21 07:38:46 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/28f15090-f06b-48be-9d82-d5dc96d49945 +2025-09-21 07:38:46 | INFO | prefect.flow_runs | Starting Firecrawl to R2R ingestion for https://r2r-docs.sciphi.ai/ +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/bac48c85-e6dc-4da0-99d5-6f26e027cabb "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=a0c938e6-9f62-4d96-a330-7d9f0f70a3ba "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Initializing r2r storage backend at http://r2r.lab/ +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Storage backend initialized successfully +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb6c770-32d4-564f-9c94-9b49b6b62834 "HTTP/1.1 404 Not Found" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=b740978a-554e-4c52-a626-51468b7f97f6 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:46 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:46 | INFO | prefect.task_runs | Mapping site: https://r2r-docs.sciphi.ai/ +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | prefect.task_runs | Site map complete: found 100 URLs +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:47 | INFO | prefect.flow_runs | Discovered 100 unique URLs from Firecrawl map +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=6e08c39b-5903-462d-8175-fd67a6297e5a "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | prefect.task_runs | Checking 100 URLs for existing documents in R2R +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 200 OK" +2025-09-21 07:38:47 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | prefect.task_runs | Found 100 existing up-to-date documents, 0 need processing +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:48 | INFO | prefect.flow_runs | All 100 Firecrawl pages are up to date for https://r2r-docs.sciphi.ai/ +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/28f15090-f06b-48be-9d82-d5dc96d49945/set_state "HTTP/1.1 201 Created" +2025-09-21 07:38:48 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:38:48 | INFO | prefect.flow_runs | Ingestion completed: all 100 documents were already up-to-date +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:38:48 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:38:48 | INFO | prefect.flow_runs | Ingestion pipeline completed in 6.56 seconds: 0 processed, 0 failed, 100 skipped +2025-09-21 07:38:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/70e27b7c-93d1-44d5-8d3f-884b9d375093/set_state "HTTP/1.1 201 Created" +2025-09-21 07:38:48 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:38:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:26 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 07:42:26 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 07:42:32 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 07:42:32 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 07:42:32 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:42:32 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/0020e8d8-061b-4402-9c7a-135c33604efb/documents "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:33 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=478f2a9a-fa02-4c64-8ffa-45d31761996d "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:49 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/e0988143-3080-4476-9488-0ff8d4faf38a +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e0988143-3080-4476-9488-0ff8d4faf38a/set_state "HTTP/1.1 201 Created" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/e0988143-3080-4476-9488-0ff8d4faf38a "HTTP/1.1 200 OK" +2025-09-21 07:42:49 | INFO | prefect.flow_runs | Beginning flow run 'cordial-flounder' for flow 'ingestion_pipeline' +2025-09-21 07:42:49 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/e0988143-3080-4476-9488-0ff8d4faf38a +2025-09-21 07:42:49 | INFO | prefect.flow_runs | Starting ingestion pipeline: source=https://r2r-docs.sciphi.ai/, type=IngestionSource.DOCUMENTATION, backend=StorageBackend.R2R +2025-09-21 07:42:49 | INFO | prefect.flow_runs | Validating source accessibility: https://r2r-docs.sciphi.ai/ +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=c644c2d5-e958-4cc8-98cf-a038b5451c9f "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:49 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 07:42:51 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=a63241e3-ac82-4f8f-a6cf-16abe0cf1d16 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:51 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:42:52 | INFO | prefect.flow_runs | Source validation successful +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=f4051c85-4ffe-479f-9260-276732745c62 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:42:52 | INFO | prefect.flow_runs | Starting document ingestion process +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/task_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:52 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/cfeb5f11-4de0-498b-8ffb-16fbe85025f8 +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/cfeb5f11-4de0-498b-8ffb-16fbe85025f8/set_state "HTTP/1.1 201 Created" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/cfeb5f11-4de0-498b-8ffb-16fbe85025f8 "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.flow_runs | Beginning subflow run 'tacky-goat' for flow 'firecrawl_to_r2r' +2025-09-21 07:42:52 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/cfeb5f11-4de0-498b-8ffb-16fbe85025f8 +2025-09-21 07:42:52 | INFO | prefect.flow_runs | Starting Firecrawl to R2R ingestion for https://r2r-docs.sciphi.ai/ +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/bac48c85-e6dc-4da0-99d5-6f26e027cabb "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=56b70bfa-beed-4131-9c43-e20eb1bdbb88 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Initializing r2r storage backend at http://r2r.lab/ +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Storage backend initialized successfully +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb6c770-32d4-564f-9c94-9b49b6b62834 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=7233ec16-e35c-461e-be28-b068a93efcf7 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:52 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:52 | INFO | prefect.task_runs | Mapping site: https://r2r-docs.sciphi.ai/ +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/map "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Site map complete: found 100 URLs +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:42:53 | INFO | prefect.flow_runs | Discovered 100 unique URLs from Firecrawl map +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=db7eab71-ac47-480d-9e2d-798752b5d60b "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Checking 100 URLs for existing documents in R2R +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c5c726b4-805a-5e22-ad13-323750b25efa "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a534965a-9da2-566e-a9ad-3e0da59bd3ae "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8af54b00-fe82-55c5-a1a5-fd0544139b62 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9a2d0156-602f-5e4a-a8e1-22edd4c987e6 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c01a1979-1dba-5731-bc71-39daff2e6ca2 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/97a4d9bf-c3a9-5ab5-a00a-24d8ae5f03c8 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/74090e1e-933e-5063-a19f-4ebce5eddc03 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c6753de9-c614-5cb6-800a-2a738e1d9748 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c29b6af-9abf-5651-b09f-da481a196324 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/66b2fd4a-5cfe-56e8-8c53-eb37621614e1 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7f5a16cc-1a5d-572e-8cc4-96a0c935004d "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b43a8933-c2dd-5a97-8c6b-6382af6435dc "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e8d4bb71-11fa-5972-94e3-17ad3fdae6fb "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bd9a2f95-d6f9-5476-8248-dfb56df5041d "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5dd5f847-acc3-5255-b090-aa6af3cf3acd "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/750a0d67-0d10-5968-9a92-552e23f79aa9 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09592e75-f2e9-5b4e-af4c-1f8674b92273 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2e5a3ea9-85c8-52c8-8c95-aa7988d0a820 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af4505e9-fb96-5009-91ad-7aa0f9f07ef2 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/07228b52-a7d9-5691-8f63-9dbf729a04a9 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/10fafbe0-7a69-5242-b62c-58b23c2ff1c3 "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a625610c-91cd-523f-b15c-2fdb48e7e4d8 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1edd7262-3e5e-5df1-90d2-2f161e826e84 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f5b1903-7a77-5ec9-ad81-3f5565c564dd "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/986b4c31-e6fd-5c94-aa2e-cda40198fd1c "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/de2cc244-9197-5b8b-8434-8ce4edab85bd "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/733713e8-b0e6-5fdd-8181-aa477a2b3ac0 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/e137e9af-86f6-5530-a59a-126b72957e78 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/406037b3-ab03-51a1-9adc-8c0d83e83bf0 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0d9f30-b91c-5149-a213-05b1648219c9 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/affbd879-964c-5dc9-92ab-086f2771a894 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/7cb4d95c-e1e6-5724-aed7-794d7cc1af48 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/bc40d2ba-d53f-5fd8-95cd-f47e45576487 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a5e1ffc2-5c75-54e1-941e-abefb2786afa "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c2b7a30e-f616-5d01-b6b0-4894ffffd1ff "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d58c39ba-6644-5914-9d10-12f8d012f849 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a9b10faf-a895-560f-af53-6b3b2ef7fea6 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/3c564dfd-23ef-5f18-b608-012855a7464a "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b50fa232-25d1-51ac-b28b-f2378e191db8 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b8ca2841-5304-5ae3-8bd0-fdebad56e411 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b63afd41-2e15-5ebf-be91-297ea358da3d "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/27c3aef5-8a87-5f1d-b3e3-b4200163946d "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5229425d-be48-5a73-b9f6-9a62f8f09c87 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/790b756b-ceaa-5a56-a34e-fcc414ffaa57 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9c82f7fb-dc11-5d21-a842-f1faa9df1edc "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c64996e2-36e7-5818-b7dd-71c98047933a "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/deb36ad6-8db7-587e-8cd5-7bbf11e6e093 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/af0e238b-359e-5864-b7fa-520f5f54e83f "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f525ced3-e336-5729-b887-e61ecea95b90 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/73091fdb-b53a-5fea-ab5f-e2a6f11204b4 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0d3befb-8d21-5f25-8f60-88f05b470339 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d9328438-3272-582e-a931-44a4cc0481ed "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c4f28724-33b8-5567-9fab-85e3cbea929e "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/2bfab044-da68-5d56-9d9b-6aacb2e99031 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/30289db0-a4d4-5c0f-811f-7d6b122724a4 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f2be3dc3-b332-5777-8843-10240d1445fe "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5c0f5439-6a60-5751-87c4-dd9192add4df "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4020aa8b-7533-5ec0-a71b-c01cdc0446f8 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8d56663d-6f89-5689-a0e7-e75e5f764eca "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76728a5f-2aa1-53c4-aef0-25a0b3fa993e "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/53b4bd4a-478c-534f-9c52-38eea1e2d27d "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/6013c994-8cd9-5207-ad16-6b3adc27e307 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4949f2f7-f2f0-508d-9e7c-1ab8565ce759 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/08606537-601f-5463-80bf-1a61e056653e "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1efde2ca-f016-510f-bf6b-daf76a7505c7 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fea7a8e9-3249-53ad-a35f-0b1b764564de "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9e88e2b7-4752-5684-a3e9-acb127eebf80 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/93ec310e-e24e-5a61-a6c9-047f551bb696 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/c16fa3c1-3b16-54e7-8bbc-b58a0d253afd "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b21eaee1-cc59-555c-b99f-35bada3e776f "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f64a1f21-5a31-538d-9973-d2fa1d87272c "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0070e7b-82d0-5540-9f87-e593f9f6a9c6 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/743be286-e82a-57f8-add9-fb39921aa9e7 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d6b5272c-75b0-51c8-b819-3121ad033b37 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5d596734-c9ed-5a3c-8472-7746c9d91629 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/ad803dd4-5a50-500a-bc84-efe1027b3c35 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/76c07289-d88d-516b-b1d5-05cbf7d70622 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9253cc3c-9cbd-5815-85ad-7431e7ec3463 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/a2143ecd-83d5-5afe-9081-fd702ee8a21a "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/8640ad90-e05b-59f6-a338-9ad497d77ef6 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/1548171f-84e0-5cad-8c79-eccb6f005fb6 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/471ebd4a-d1d5-5742-a5c4-ba8916a433e0 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/03a25e92-68fa-5b7b-93b9-27980abca325 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/9359a055-431c-57e7-9b55-de7c1b02a59d "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b0106193-2326-50cd-8873-4db97b77fb04 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/0d6153e4-394d-5254-b3f6-79dc4abf93b0 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/5912697f-6337-59ec-8580-b7b1d8dfa950 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/f403e497-6a11-5cf3-a50b-035cf6c948fc "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/d0b21e05-9dc4-5fba-9169-06e596edd48d "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/953ffc4a-4a92-5cde-af40-c65295cf7465 "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/fb1cf655-de1a-5144-b136-b497d2e5786b "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/22a4a940-c558-5b9c-8751-137958ee34ca "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/documents/b16f1680-da26-51a9-ae8c-d5ea8e13675f "HTTP/1.1 404 Not Found" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Found 18 existing up-to-date documents, 82 need processing +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:42:53 | INFO | prefect.flow_runs | Scraping 82 URLs in 2 batches +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=9ece8383-20c1-4b31-9fff-96dfa1c0e59d "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Scraping batch of 50 URLs +2025-09-21 07:42:53 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:42:53 | INFO | prefect.task_runs | Scraping batch of 32 URLs +2025-09-21 07:42:55 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:42:56 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:42:58 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:01 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:02 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:03 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:04 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:05 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:06 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:07 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:07 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:07 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:08 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:09 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:09 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:10 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:11 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:12 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:13 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:14 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:15 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:17 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:17 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:18 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:20 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:21 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:22 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:24 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:25 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:26 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:26 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:27 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:28 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:29 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:29 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:30 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:30 | INFO | prefect.task_runs | Batch scrape complete: 50 successful, 0 failed +2025-09-21 07:43:30 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:43:30 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:43:30 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:31 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:31 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:43:32 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:33 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:33 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:33 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:33 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:35 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:36 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:37 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:37 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:38 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:38 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:39 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:40 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:40 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:41 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:41 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:41 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:43 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:43 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:44 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:44 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:45 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:46 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:46 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:47 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:48 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:48 | INFO | httpx | HTTP Request: POST http://crawl.lab:30002/v2/scrape "HTTP/1.1 200 OK" +2025-09-21 07:43:48 | INFO | prefect.task_runs | Batch scrape complete: 32 successful, 0 failed +2025-09-21 07:43:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:43:48 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:43:48 | INFO | prefect.flow_runs | Successfully scraped 82 pages +2025-09-21 07:43:48 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=4fdfdf9b-b740-46c6-8856-7c5c2becb689 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:43:48 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:43:48 | INFO | prefect.task_runs | Annotating 82 pages with metadata +2025-09-21 07:43:48 | INFO | prefect.task_runs | Enhancing metadata with LLM tagging +2025-09-21 07:43:49 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:43:50 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:52 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:53 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:54 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:55 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:56 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:58 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:43:59 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:44:00 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 07:44:02 | WARNING | prefect.task_runs | Metadata tagging failed: Failed to tag document: Failed to parse LLM response: Unterminated string starting at: line 1 column 357 (char 356) +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:44:02 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=3ea03a22-8c02-469d-83bd-b115973a6ce3 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:44:02 | INFO | prefect.task_runs | Upserting 82 documents to R2R collection: r2r +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 866022d4-9a5d-4ff2-9609-1412502d44a1 for collection: r2r +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 09592e75-f2e9-5b4e-af4c-1f8674b92273 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 09592e75-f2e9-5b4e-af4c-1f8674b92273 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: af4505e9-fb96-5009-91ad-7aa0f9f07ef2 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document af4505e9-fb96-5009-91ad-7aa0f9f07ef2 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a625610c-91cd-523f-b15c-2fdb48e7e4d8 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document a625610c-91cd-523f-b15c-2fdb48e7e4d8 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1edd7262-3e5e-5df1-90d2-2f161e826e84 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 1edd7262-3e5e-5df1-90d2-2f161e826e84 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 74090e1e-933e-5063-a19f-4ebce5eddc03 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 74090e1e-933e-5063-a19f-4ebce5eddc03 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4f5b1903-7a77-5ec9-ad81-3f5565c564dd +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 4f5b1903-7a77-5ec9-ad81-3f5565c564dd should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: e137e9af-86f6-5530-a59a-126b72957e78 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document e137e9af-86f6-5530-a59a-126b72957e78 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: de2cc244-9197-5b8b-8434-8ce4edab85bd +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document de2cc244-9197-5b8b-8434-8ce4edab85bd should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 986b4c31-e6fd-5c94-aa2e-cda40198fd1c +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 986b4c31-e6fd-5c94-aa2e-cda40198fd1c should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:02 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 733713e8-b0e6-5fdd-8181-aa477a2b3ac0 +2025-09-21 07:44:02 | INFO | ingest_pipeline.storage.r2r.storage | Document 733713e8-b0e6-5fdd-8181-aa477a2b3ac0 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 406037b3-ab03-51a1-9adc-8c0d83e83bf0 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 406037b3-ab03-51a1-9adc-8c0d83e83bf0 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5c0d9f30-b91c-5149-a213-05b1648219c9 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 5c0d9f30-b91c-5149-a213-05b1648219c9 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c64996e2-36e7-5818-b7dd-71c98047933a +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document c64996e2-36e7-5818-b7dd-71c98047933a should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 27c3aef5-8a87-5f1d-b3e3-b4200163946d +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 27c3aef5-8a87-5f1d-b3e3-b4200163946d should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 1fcfd4df-197f-5a4f-9e97-f39c0fcf20f8 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document a65d7e4a-c4eb-5578-a8f5-fdb8111e2039 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a5e1ffc2-5c75-54e1-941e-abefb2786afa +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document a5e1ffc2-5c75-54e1-941e-abefb2786afa should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: bc40d2ba-d53f-5fd8-95cd-f47e45576487 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document bc40d2ba-d53f-5fd8-95cd-f47e45576487 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: affbd879-964c-5dc9-92ab-086f2771a894 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document affbd879-964c-5dc9-92ab-086f2771a894 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c2b7a30e-f616-5d01-b6b0-4894ffffd1ff +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document c2b7a30e-f616-5d01-b6b0-4894ffffd1ff should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 7cb4d95c-e1e6-5724-aed7-794d7cc1af48 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 7cb4d95c-e1e6-5724-aed7-794d7cc1af48 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 96a7d693-a1e6-5a5b-aa44-e75b0cc06d53 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 3c564dfd-23ef-5f18-b608-012855a7464a +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 3c564dfd-23ef-5f18-b608-012855a7464a should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a9b10faf-a895-560f-af53-6b3b2ef7fea6 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document a9b10faf-a895-560f-af53-6b3b2ef7fea6 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b63afd41-2e15-5ebf-be91-297ea358da3d +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document b63afd41-2e15-5ebf-be91-297ea358da3d should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b8ca2841-5304-5ae3-8bd0-fdebad56e411 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document b8ca2841-5304-5ae3-8bd0-fdebad56e411 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 790b756b-ceaa-5a56-a34e-fcc414ffaa57 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 790b756b-ceaa-5a56-a34e-fcc414ffaa57 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d58c39ba-6644-5914-9d10-12f8d012f849 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document d58c39ba-6644-5914-9d10-12f8d012f849 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5229425d-be48-5a73-b9f6-9a62f8f09c87 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 5229425d-be48-5a73-b9f6-9a62f8f09c87 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9c82f7fb-dc11-5d21-a842-f1faa9df1edc +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document 9c82f7fb-dc11-5d21-a842-f1faa9df1edc should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b50fa232-25d1-51ac-b28b-f2378e191db8 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document b50fa232-25d1-51ac-b28b-f2378e191db8 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:03 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: deb36ad6-8db7-587e-8cd5-7bbf11e6e093 +2025-09-21 07:44:03 | INFO | ingest_pipeline.storage.r2r.storage | Document deb36ad6-8db7-587e-8cd5-7bbf11e6e093 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 73091fdb-b53a-5fea-ab5f-e2a6f11204b4 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 73091fdb-b53a-5fea-ab5f-e2a6f11204b4 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f525ced3-e336-5729-b887-e61ecea95b90 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document f525ced3-e336-5729-b887-e61ecea95b90 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0d3befb-8d21-5f25-8f60-88f05b470339 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document d0d3befb-8d21-5f25-8f60-88f05b470339 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: af0e238b-359e-5864-b7fa-520f5f54e83f +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document af0e238b-359e-5864-b7fa-520f5f54e83f should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document ea754253-b2ea-5ab5-8d81-5faa5a6d5e9f should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d9328438-3272-582e-a931-44a4cc0481ed +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document d9328438-3272-582e-a931-44a4cc0481ed should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 2bfab044-da68-5d56-9d9b-6aacb2e99031 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 2bfab044-da68-5d56-9d9b-6aacb2e99031 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c4f28724-33b8-5567-9fab-85e3cbea929e +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document c4f28724-33b8-5567-9fab-85e3cbea929e should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 30289db0-a4d4-5c0f-811f-7d6b122724a4 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 30289db0-a4d4-5c0f-811f-7d6b122724a4 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f2be3dc3-b332-5777-8843-10240d1445fe +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document f2be3dc3-b332-5777-8843-10240d1445fe should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4020aa8b-7533-5ec0-a71b-c01cdc0446f8 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 4020aa8b-7533-5ec0-a71b-c01cdc0446f8 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 76728a5f-2aa1-53c4-aef0-25a0b3fa993e +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 76728a5f-2aa1-53c4-aef0-25a0b3fa993e should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 53b4bd4a-478c-534f-9c52-38eea1e2d27d +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 53b4bd4a-478c-534f-9c52-38eea1e2d27d should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5c0f5439-6a60-5751-87c4-dd9192add4df +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 5c0f5439-6a60-5751-87c4-dd9192add4df should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 09c58a8d-d3d8-5c40-8208-ddb2c88e9a51 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:04 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8d56663d-6f89-5689-a0e7-e75e5f764eca +2025-09-21 07:44:04 | INFO | ingest_pipeline.storage.r2r.storage | Document 8d56663d-6f89-5689-a0e7-e75e5f764eca should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: fea7a8e9-3249-53ad-a35f-0b1b764564de +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document fea7a8e9-3249-53ad-a35f-0b1b764564de should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1efde2ca-f016-510f-bf6b-daf76a7505c7 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 1efde2ca-f016-510f-bf6b-daf76a7505c7 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4949f2f7-f2f0-508d-9e7c-1ab8565ce759 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 4949f2f7-f2f0-508d-9e7c-1ab8565ce759 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 08606537-601f-5463-80bf-1a61e056653e +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 08606537-601f-5463-80bf-1a61e056653e should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 6013c994-8cd9-5207-ad16-6b3adc27e307 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 6013c994-8cd9-5207-ad16-6b3adc27e307 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9e88e2b7-4752-5684-a3e9-acb127eebf80 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 9e88e2b7-4752-5684-a3e9-acb127eebf80 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document eb25e6d2-fa85-5ac9-ac4d-d08fde12aa0c should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: c16fa3c1-3b16-54e7-8bbc-b58a0d253afd +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document c16fa3c1-3b16-54e7-8bbc-b58a0d253afd should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 93ec310e-e24e-5a61-a6c9-047f551bb696 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 93ec310e-e24e-5a61-a6c9-047f551bb696 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b21eaee1-cc59-555c-b99f-35bada3e776f +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document b21eaee1-cc59-555c-b99f-35bada3e776f should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f64a1f21-5a31-538d-9973-d2fa1d87272c +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document f64a1f21-5a31-538d-9973-d2fa1d87272c should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0070e7b-82d0-5540-9f87-e593f9f6a9c6 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document d0070e7b-82d0-5540-9f87-e593f9f6a9c6 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d6b5272c-75b0-51c8-b819-3121ad033b37 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document d6b5272c-75b0-51c8-b819-3121ad033b37 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 743be286-e82a-57f8-add9-fb39921aa9e7 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 743be286-e82a-57f8-add9-fb39921aa9e7 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5d596734-c9ed-5a3c-8472-7746c9d91629 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document 5d596734-c9ed-5a3c-8472-7746c9d91629 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:05 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: ad803dd4-5a50-500a-bc84-efe1027b3c35 +2025-09-21 07:44:05 | INFO | ingest_pipeline.storage.r2r.storage | Document ad803dd4-5a50-500a-bc84-efe1027b3c35 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 4f907ce1-c2a6-5df7-a0b0-38be0d81f9d8 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9253cc3c-9cbd-5815-85ad-7431e7ec3463 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 9253cc3c-9cbd-5815-85ad-7431e7ec3463 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: a2143ecd-83d5-5afe-9081-fd702ee8a21a +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document a2143ecd-83d5-5afe-9081-fd702ee8a21a should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 76c07289-d88d-516b-b1d5-05cbf7d70622 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 76c07289-d88d-516b-b1d5-05cbf7d70622 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 8640ad90-e05b-59f6-a338-9ad497d77ef6 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 8640ad90-e05b-59f6-a338-9ad497d77ef6 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 1548171f-84e0-5cad-8c79-eccb6f005fb6 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 1548171f-84e0-5cad-8c79-eccb6f005fb6 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b0106193-2326-50cd-8873-4db97b77fb04 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document b0106193-2326-50cd-8873-4db97b77fb04 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 471ebd4a-d1d5-5742-a5c4-ba8916a433e0 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 471ebd4a-d1d5-5742-a5c4-ba8916a433e0 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 03a25e92-68fa-5b7b-93b9-27980abca325 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 03a25e92-68fa-5b7b-93b9-27980abca325 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 9359a055-431c-57e7-9b55-de7c1b02a59d +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 9359a055-431c-57e7-9b55-de7c1b02a59d should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 0d6153e4-394d-5254-b3f6-79dc4abf93b0 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 0d6153e4-394d-5254-b3f6-79dc4abf93b0 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f403e497-6a11-5cf3-a50b-035cf6c948fc +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document f403e497-6a11-5cf3-a50b-035cf6c948fc should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: d0b21e05-9dc4-5fba-9169-06e596edd48d +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document d0b21e05-9dc4-5fba-9169-06e596edd48d should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 5912697f-6337-59ec-8580-b7b1d8dfa950 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 5912697f-6337-59ec-8580-b7b1d8dfa950 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: fb1cf655-de1a-5144-b136-b497d2e5786b +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document fb1cf655-de1a-5144-b136-b497d2e5786b should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 953ffc4a-4a92-5cde-af40-c65295cf7465 +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 953ffc4a-4a92-5cde-af40-c65295cf7465 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: 22a4a940-c558-5b9c-8751-137958ee34ca +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document 22a4a940-c558-5b9c-8751-137958ee34ca should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: b16f1680-da26-51a9-ae8c-d5ea8e13675f +2025-09-21 07:44:06 | INFO | ingest_pipeline.storage.r2r.storage | Document b16f1680-da26-51a9-ae8c-d5ea8e13675f should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 07:44:06 | INFO | prefect.task_runs | Successfully upserted all 82 documents to R2R +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:44:06 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:44:06 | INFO | prefect.flow_runs | Firecrawl to R2R flow complete: 82 processed, 0 failed, 18 skipped +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/cfeb5f11-4de0-498b-8ffb-16fbe85025f8/set_state "HTTP/1.1 201 Created" +2025-09-21 07:44:06 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:44:06 | INFO | prefect.flow_runs | Ingestion completed: 82 processed, 18 skipped +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 07:44:06 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 07:44:06 | INFO | prefect.flow_runs | Ingestion pipeline completed in 77.56 seconds: 82 processed, 0 failed, 18 skipped +2025-09-21 07:44:06 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/e0988143-3080-4476-9488-0ff8d4faf38a/set_state "HTTP/1.1 201 Created" +2025-09-21 07:44:06 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 07:44:07 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 09:51:46 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 09:51:46 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 10:17:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 10:17:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 10:17:53 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 10:17:53 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/0020e8d8-061b-4402-9c7a-135c33604efb/documents "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:17:54 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=fc74b441-5bf3-4e2f-9e9a-0b15cf89503b "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 10:18:09 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/8bf2dad1-6e31-40f1-8d3b-f8898e1f7efc +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/8bf2dad1-6e31-40f1-8d3b-f8898e1f7efc/set_state "HTTP/1.1 201 Created" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/8bf2dad1-6e31-40f1-8d3b-f8898e1f7efc "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | prefect.flow_runs | Beginning flow run 'viridian-prawn' for flow 'ingestion_pipeline' +2025-09-21 10:18:09 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/8bf2dad1-6e31-40f1-8d3b-f8898e1f7efc +2025-09-21 10:18:09 | INFO | prefect.flow_runs | Starting ingestion pipeline: source=https://github.com/SciPhi-AI/R2R, type=IngestionSource.REPOSITORY, backend=StorageBackend.R2R +2025-09-21 10:18:09 | INFO | prefect.flow_runs | Validating source accessibility: https://github.com/SciPhi-AI/R2R +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=5340e71a-3c7a-4a1d-900a-a4020b229a5f "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:18:09 | INFO | prefect.flow_runs | Source validation successful +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=cce9e01f-b619-4331-8a45-44c87aa086b4 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:18:09 | INFO | prefect.flow_runs | Starting document ingestion process +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=2c24b8db-61f4-4704-bfa5-a4a143677878 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | prefect.task_runs | Starting document ingestion from repository source +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_extraction_mode "HTTP/1.1 404 Not Found" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_max_output_size "HTTP/1.1 404 Not Found" +2025-09-21 10:18:09 | INFO | prefect.task_runs | Created Repomix ingestor with extraction mode 'smart', max file size 1000000, max output size 5000000 +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:18:09 | INFO | prefect.task_runs | Storage client initialized for collection: r2r +2025-09-21 10:18:09 | INFO | prefect.task_runs | Using R2RStorage storage backend with batch size 50 +2025-09-21 10:18:09 | INFO | prefect.task_runs | Using smart ingestion with deduplication +2025-09-21 10:18:11 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=932515e7-cdca-4cf0-bef1-1a7d4b37e1a4 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:18:11 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:18:11 | INFO | prefect.task_runs | Task run failed with exception: IngestionError('Repomix failed: ✖ Unknown option: --exclude\n') - Retry 1/2 will start 30 second(s) from now +2025-09-21 10:18:13 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:18:41 | INFO | prefect.task_runs | Starting document ingestion from repository source +2025-09-21 10:18:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 10:18:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_extraction_mode "HTTP/1.1 404 Not Found" +2025-09-21 10:18:41 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_max_output_size "HTTP/1.1 404 Not Found" +2025-09-21 10:18:41 | INFO | prefect.task_runs | Created Repomix ingestor with extraction mode 'smart', max file size 1000000, max output size 5000000 +2025-09-21 10:18:41 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:18:41 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:18:41 | INFO | prefect.task_runs | Storage client initialized for collection: r2r +2025-09-21 10:18:41 | INFO | prefect.task_runs | Using R2RStorage storage backend with batch size 50 +2025-09-21 10:18:41 | INFO | prefect.task_runs | Using smart ingestion with deduplication +2025-09-21 10:18:43 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:18:44 | INFO | prefect.task_runs | Task run failed with exception: IngestionError('Repomix failed: ✖ Unknown option: --exclude\n') - Retry 2/2 will start 30 second(s) from now +2025-09-21 10:18:45 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:19:14 | INFO | prefect.task_runs | Starting document ingestion from repository source +2025-09-21 10:19:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 10:19:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_extraction_mode "HTTP/1.1 404 Not Found" +2025-09-21 10:19:14 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_max_output_size "HTTP/1.1 404 Not Found" +2025-09-21 10:19:14 | INFO | prefect.task_runs | Created Repomix ingestor with extraction mode 'smart', max file size 1000000, max output size 5000000 +2025-09-21 10:19:14 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:19:14 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:19:14 | INFO | prefect.task_runs | Storage client initialized for collection: r2r +2025-09-21 10:19:14 | INFO | prefect.task_runs | Using R2RStorage storage backend with batch size 50 +2025-09-21 10:19:14 | INFO | prefect.task_runs | Using smart ingestion with deduplication +2025-09-21 10:19:15 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:19:16 | ERROR | prefect.task_runs | Task run failed with exception: IngestionError('Repomix failed: ✖ Unknown option: --exclude\n') - Retries are exhausted +Traceback (most recent call last): + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/task_engine.py", line 1459, in run_context + yield self + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/task_engine.py", line 1538, in run_task_async + await engine.call_task_fn(txn) + File "/workspaces/.venv/lib/python3.12/site-packages/prefect/task_engine.py", line 1476, in call_task_fn + result = await call_with_parameters(self.task.fn, parameters) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/ingest_pipeline/flows/ingestion_flows.py", line 132, in ingest_documents_task + return await _process_documents( + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/ingest_pipeline/flows/ingestion_flows.py", line 348, in _process_documents + async for document in document_generator: + File "/workspaces/ingest_pipeline/ingestors/base.py", line 81, in ingest_with_dedup + async for document in self.ingest(job): + File "/workspaces/ingest_pipeline/ingestors/repomix.py", line 58, in ingest + output_file = await self._run_repomix(repo_path) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/workspaces/ingest_pipeline/ingestors/repomix.py", line 263, in _run_repomix + raise IngestionError(f"Repomix failed: {stderr_text}") +ingest_pipeline.core.exceptions.IngestionError: Repomix failed: ✖ Unknown option: --exclude + +2025-09-21 10:19:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:19:16 | ERROR | prefect.task_runs | Finished in state Failed('Task run encountered an exception IngestionError: Repomix failed: ✖ Unknown option: --exclude\n') +2025-09-21 10:19:16 | ERROR | prefect.flow_runs | Ingestion failed with exception: Repomix failed: ✖ Unknown option: --exclude + +2025-09-21 10:19:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:19:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:19:16 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:19:16 | INFO | prefect.flow_runs | Ingestion pipeline completed in 66.89 seconds: 0 processed, 0 failed, 0 skipped +2025-09-21 10:19:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/8bf2dad1-6e31-40f1-8d3b-f8898e1f7efc/set_state "HTTP/1.1 201 Created" +2025-09-21 10:19:16 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 10:19:17 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:20:54 | INFO | ingest_pipeline.cli.tui.utils.runners | Shutting down storage connections +2025-09-21 10:20:54 | INFO | ingest_pipeline.cli.tui.utils.runners | All storage connections closed gracefully +2025-09-21 10:20:58 | INFO | ingest_pipeline.cli.tui.utils.runners | Initializing collection management TUI +2025-09-21 10:20:58 | INFO | ingest_pipeline.cli.tui.utils.runners | Scanning available storage backends +2025-09-21 10:20:58 | INFO | ingest_pipeline.cli.tui.utils.runners | Launching TUI - storage backends will initialize in background +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/meta "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/0020e8d8-061b-4402-9c7a-135c33604efb/documents "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/866022d4-9a5d-4ff2-9609-1412502d44a1/documents "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:20:59 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/b1e15a85-1de5-4a6f-8261-cabcd5e8e7df/documents "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections/53d07287-146d-5849-a0ce-95b0e5fa0e7e/documents "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://weaviate.yo/v1/schema "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: POST http://weaviate.yo/v1/graphql "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/96832710-8146-4e3b-88f3-4b3929f67dbf "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/139c04d5-7d38-4595-8e12-79a67fd731e7 "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/dade78d9-9893-4966-bd4b-31f1c1635cfa "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/721c1517-b2cd-482d-bd1c-f99571f0f31f "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/f867530b-5eea-43bf-8257-d3da497cb10b "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/d06bd108-ae7f-44f4-92fb-2ac556784920 "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/list "HTTP/1.1 200 OK" +2025-09-21 10:21:00 | INFO | httpx | HTTP Request: GET http://chat.lab/api/v1/knowledge/cbd4ae82-6fdd-4a4e-a4d5-d0b97ae988fd "HTTP/1.1 200 OK" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/admin/version "HTTP/1.1 200 OK" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=8bff6d38-4578-47c8-a16d-0c62046d405f "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flows/ "HTTP/1.1 200 OK" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/ "HTTP/1.1 201 Created" +2025-09-21 10:21:16 | INFO | prefect.engine | View at http://prefect.lab/runs/flow-run/5c1b0c7c-ab9e-42a2-9a5d-95f23069467e +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/5c1b0c7c-ab9e-42a2-9a5d-95f23069467e/set_state "HTTP/1.1 201 Created" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flow_runs/5c1b0c7c-ab9e-42a2-9a5d-95f23069467e "HTTP/1.1 200 OK" +2025-09-21 10:21:16 | INFO | prefect.flow_runs | Beginning flow run 'fractal-tarantula' for flow 'ingestion_pipeline' +2025-09-21 10:21:16 | INFO | prefect.flow_runs | View at http://prefect.lab/runs/flow-run/5c1b0c7c-ab9e-42a2-9a5d-95f23069467e +2025-09-21 10:21:16 | INFO | prefect.flow_runs | Starting ingestion pipeline: source=https://github.com/SciPhi-AI/R2R, type=IngestionSource.REPOSITORY, backend=StorageBackend.R2R +2025-09-21 10:21:16 | INFO | prefect.flow_runs | Validating source accessibility: https://github.com/SciPhi-AI/R2R +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=42a38ae0-28ec-4d2d-89be-41a116c081e7 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:21:16 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/flows/78f3cfb6-1339-49c6-89f4-c38effea29e4 "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:21:17 | INFO | prefect.flow_runs | Source validation successful +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=992dd849-5b20-406f-b4d7-6731e0e91aa1 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:21:17 | INFO | prefect.flow_runs | Starting document ingestion process +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=c432a63a-908e-4cc3-81c0-dee4c0bcc61c "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | prefect.task_runs | Starting document ingestion from repository source +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_batch_size "HTTP/1.1 404 Not Found" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_extraction_mode "HTTP/1.1 404 Not Found" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/variables/name/default_repo_max_output_size "HTTP/1.1 404 Not Found" +2025-09-21 10:21:17 | INFO | prefect.task_runs | Created Repomix ingestor with extraction mode 'smart', max file size 1000000, max output size 5000000 +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:21:17 | INFO | prefect.task_runs | Storage client initialized for collection: r2r +2025-09-21 10:21:17 | INFO | prefect.task_runs | Using R2RStorage storage backend with batch size 50 +2025-09-21 10:21:17 | INFO | prefect.task_runs | Using smart ingestion with deduplication +2025-09-21 10:21:18 | INFO | httpx | HTTP Request: GET http://prefect.lab/api/csrf-token?client=3ff0cee3-13c1-49c0-8867-a46849b16c00 "HTTP/1.1 422 Unprocessable Entity" +2025-09-21 10:21:18 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:21:19 | INFO | root | Processed 0 files, created 1 documents, total size: 2185 bytes +2025-09-21 10:21:19 | INFO | prefect.task_runs | Enhancing batch with LLM metadata tagging +2025-09-21 10:21:20 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://llm.lab/v1/chat/completions "HTTP/1.1 200 OK" +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: GET http://r2r.lab/v3/collections "HTTP/1.1 200 OK" +2025-09-21 10:21:21 | INFO | ingest_pipeline.storage.r2r.storage | Using collection ID: 866022d4-9a5d-4ff2-9609-1412502d44a1 for collection: r2r +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://r2r.lab/v3/documents "HTTP/1.1 202 Accepted" +2025-09-21 10:21:21 | INFO | ingest_pipeline.storage.r2r.storage | R2R returned document ID: f8f75060-430a-45a1-b8f7-133c607d9705 +2025-09-21 10:21:21 | INFO | ingest_pipeline.storage.r2r.storage | Document f8f75060-430a-45a1-b8f7-133c607d9705 should be assigned to collection 866022d4-9a5d-4ff2-9609-1412502d44a1 via creation API +2025-09-21 10:21:21 | INFO | prefect.task_runs | Successfully stored 1 documents in final batch +2025-09-21 10:21:21 | INFO | prefect.task_runs | Document processing complete: 1 processed, 0 failed, 0 skipped +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:21:21 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:21:21 | INFO | prefect.flow_runs | Ingestion completed: 1 processed, 0 skipped +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/increment "HTTP/1.1 200 OK" +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/concurrency_limits/decrement "HTTP/1.1 200 OK" +2025-09-21 10:21:21 | INFO | prefect.task_runs | Finished in state Completed() +2025-09-21 10:21:21 | INFO | prefect.flow_runs | Ingestion pipeline completed in 4.80 seconds: 1 processed, 0 failed, 0 skipped +2025-09-21 10:21:21 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/flow_runs/5c1b0c7c-ab9e-42a2-9a5d-95f23069467e/set_state "HTTP/1.1 201 Created" +2025-09-21 10:21:21 | INFO | prefect.flow_runs | Finished in state Completed() +2025-09-21 10:21:23 | INFO | httpx | HTTP Request: POST http://prefect.lab/api/logs/ "HTTP/1.1 201 Created" diff --git a/pyproject.toml b/pyproject.toml index 6e1dc94..2e992ba 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,6 +42,7 @@ dev-dependencies = [ "sourcery>=1.37.0", "pylance>=0.36.0", "marimo>=0.16.0", + "basedpyright>=1.31.4", ] [tool.ruff] diff --git a/tests/unit/flows/test_ingestion_flow.py b/tests/unit/flows/test_ingestion_flow.py index 252d6d3..ca1a13b 100644 --- a/tests/unit/flows/test_ingestion_flow.py +++ b/tests/unit/flows/test_ingestion_flow.py @@ -57,7 +57,9 @@ async def test_filter_existing_documents_task_filters_known_urls( class StubStorage(BaseStorage): def __init__(self) -> None: - super().__init__(StorageConfig(backend=StorageBackend.WEAVIATE, endpoint="http://test.local")) + super().__init__( + StorageConfig(backend=StorageBackend.WEAVIATE, endpoint="http://test.local") + ) @property def display_name(self) -> str: diff --git a/tests/unit/ingestors/__pycache__/test_repomix_ingestor.cpython-312-pytest-8.4.2.pyc b/tests/unit/ingestors/__pycache__/test_repomix_ingestor.cpython-312-pytest-8.4.2.pyc index 1a9cfae..5366ac9 100644 Binary files a/tests/unit/ingestors/__pycache__/test_repomix_ingestor.cpython-312-pytest-8.4.2.pyc and b/tests/unit/ingestors/__pycache__/test_repomix_ingestor.cpython-312-pytest-8.4.2.pyc differ diff --git a/tests/unit/ingestors/test_repomix_ingestor.py b/tests/unit/ingestors/test_repomix_ingestor.py index 41f05a3..f7524aa 100644 --- a/tests/unit/ingestors/test_repomix_ingestor.py +++ b/tests/unit/ingestors/test_repomix_ingestor.py @@ -2,7 +2,7 @@ from __future__ import annotations import pytest -from ingest_pipeline.core.models import IngestionJob, IngestionSource, StorageBackend +from ingest_pipeline.core.models import IngestionJob, IngestionSource, RepomixConfig, StorageBackend from ingest_pipeline.ingestors.repomix import RepomixIngestor @@ -86,3 +86,275 @@ def test_create_document_enriches_metadata() -> None: assert title is not None assert title.endswith("(chunk 1)") assert document.collection == job.storage_backend.value + + +# New tests for smart extraction functionality + + +@pytest.mark.parametrize( + ("file_path", "content", "expected_score"), + ( + ("README.md", "# Project", 1.0), + ("package.json", '{"name": "test"}', 0.9), + ("src/api.py", "def get_user():\n pass", 0.85), + ("main.py", "if __name__ == '__main__':", 0.8), + ("src/utils.py", "def helper():\n pass", 0.7), + ("tests/test_app.py", "def test_feature():\n pass", 0.21), # 0.7 * 0.3 + ("dist/bundle.js", "compiled code", 0.07), # 0.7 * 0.1 + ), +) +def test_calculate_file_importance_scores_correctly( + file_path: str, content: str, expected_score: float +) -> None: + score = RepomixIngestor._calculate_file_importance(file_path, content) + assert abs(score - expected_score) < 0.01 + + +@pytest.mark.parametrize( + ("extraction_mode", "expected_patterns"), + ( + ("docs", ["README*", "*.md", "docs/**", "*.rst"]), + ("smart", ["README*", "*.md", "docs/**", "*.py", "*.js", "*.ts"]), + ("structure", ["*.py", "*.js", "*.ts", "*.md", "*.yaml", "*.json"]), + ), +) +def test_get_smart_include_patterns_by_mode( + extraction_mode: str, expected_patterns: list[str] +) -> None: + config = RepomixConfig(extraction_mode=extraction_mode) # type: ignore[arg-type] + ingestor = RepomixIngestor(config) + + patterns = ingestor._get_smart_include_patterns() + + # Check that expected patterns are present + for pattern in expected_patterns: + assert pattern in patterns + + +def test_build_repomix_command_with_smart_mode() -> None: + from pathlib import Path + + config = RepomixConfig( + extraction_mode="smart", + use_compression=True, + output_format="markdown", + top_files_count=15, + include_git_history=True, + ) + ingestor = RepomixIngestor(config) + + repo_path = Path("/tmp/repo") + output_file = Path("/tmp/repo/output.md") + + cmd = ingestor._build_repomix_command(repo_path, output_file) + + assert "npx" in cmd + assert "repomix" in cmd + assert "--style" in cmd + assert "markdown" in cmd + assert "--compress" in cmd + assert "--top-files-len" in cmd + assert "15" in cmd + assert "--include-diffs" in cmd + assert "--include-logs" in cmd + assert "--truncate-base64" in cmd + + +def test_build_repomix_command_with_docs_mode() -> None: + from pathlib import Path + + config = RepomixConfig( + extraction_mode="docs", + output_format="json", + ) + ingestor = RepomixIngestor(config) + + repo_path = Path("/tmp/repo") + output_file = Path("/tmp/repo/output.json") + + cmd = ingestor._build_repomix_command(repo_path, output_file) + + assert "--style" in cmd + assert "json" in cmd + assert "--no-files" in cmd + assert "--no-directory-structure" in cmd + + +def test_extract_meaningful_content_preserves_docs() -> None: + config = RepomixConfig(extraction_mode="smart") + ingestor = RepomixIngestor(config) + + content = "# Title\n\nThis is documentation content." + result = ingestor._extract_meaningful_content("README.md", content, "smart") + + assert result == content + + +def test_extract_code_surface_extracts_key_patterns() -> None: + config = RepomixConfig() + ingestor = RepomixIngestor(config) + + content = ''' +import os +from typing import Dict + +class UserService: + """Service for user operations.""" + + def __init__(self): + self.db = None + + def get_user(self, user_id: int) -> Dict[str, str]: + """Get user by ID.""" + # Implementation details + result = self.db.query("SELECT * FROM users WHERE id = ?", user_id) + return result + + def _private_method(self): + """Private helper method.""" + pass +''' + + result = ingestor._extract_code_surface("src/user_service.py", content) + + # Should include imports and class/function definitions + assert "import os" in result + assert "from typing import Dict" in result + assert "class UserService:" in result + assert "def get_user(" in result + # Should not include implementation details + assert "Implementation details" not in result + + +def test_create_document_includes_importance_score() -> None: + config = RepomixConfig() + ingestor = RepomixIngestor(config) + job = IngestionJob( + source_url="https://example.com/repo.git", + source_type=IngestionSource.REPOSITORY, + storage_backend=StorageBackend.WEAVIATE, + ) + + document = ingestor._create_document( + "README.md", + "# Project Title", + job, + importance_score=1.0, + ) + + assert document.metadata["importance_score"] == 1.0 + assert document.metadata["extraction_mode"] == "smart" + + +def test_create_document_without_importance_score() -> None: + config = RepomixConfig() + ingestor = RepomixIngestor(config) + job = IngestionJob( + source_url="https://example.com/repo.git", + source_type=IngestionSource.REPOSITORY, + storage_backend=StorageBackend.WEAVIATE, + ) + + document = ingestor._create_document( + "src/app.py", + "def main(): pass", + job, + ) + + assert "importance_score" not in document.metadata + assert document.metadata["extraction_mode"] == "smart" + + +def test_split_by_files_handles_mixed_markers() -> None: + """Test that file splitting correctly handles both types of markers.""" + ingestor = RepomixIngestor() + + content = """ +## File: README.md +# Project Title + +### src/app.py +def main(): + pass + +## File: setup.py +from setuptools import setup +""" + + result = ingestor._split_by_files(content) + + assert "README.md" in result + assert "src/app.py" in result + assert "setup.py" in result + assert len(result) == 3 + + +def test_chunk_content_handles_oversized_lines() -> None: + """Test chunking behavior with lines larger than chunk size.""" + ingestor = RepomixIngestor() + + # Create content with a line larger than chunk size + oversized_line = "x" * 1000 # 1000 chars + content = f"small line\n{oversized_line}\nanother small line" + + chunks = ingestor._chunk_content(content, chunk_size=500) + + # Should still include the oversized line in a chunk + assert len(chunks) >= 1 + assert any(oversized_line in chunk for chunk in chunks) + + +def test_build_repomix_command_avoids_empty_patterns() -> None: + """Test that empty patterns are filtered out.""" + config = RepomixConfig( + include_patterns=["*.py", "", "*.md"], + exclude_patterns=["node_modules", "", "*.tmp"], + ) + ingestor = RepomixIngestor(config) + + from pathlib import Path + cmd = ingestor._build_repomix_command(Path("/tmp"), Path("/tmp/out.md")) + + # Should not include empty patterns + cmd_str = " ".join(cmd) + assert "--include *.py" in cmd_str + assert "--include *.md" in cmd_str + assert "--exclude node_modules" in cmd_str + assert "--exclude *.tmp" in cmd_str + # Should not have double spaces indicating empty patterns were filtered + assert "--include " not in cmd_str + assert "--exclude " not in cmd_str + + +def test_extract_code_surface_handles_empty_extraction() -> None: + """Test behavior when code surface extraction yields minimal content.""" + config = RepomixConfig() + ingestor = RepomixIngestor(config) + + # Content with no meaningful patterns + content = "# Just comments\n# More comments\n\n\n" + + result = ingestor._extract_code_surface("test.py", content) + + # Should fall back to first 2KB when extraction is minimal + assert len(result) <= 2000 + assert result == content[:2000] + + +def test_calculate_file_importance_edge_cases() -> None: + """Test file importance calculation edge cases.""" + # Test with empty content + score = RepomixIngestor._calculate_file_importance("", "") + assert score == 0.3 # Default low score + + # Test with unusual file path + score = RepomixIngestor._calculate_file_importance("./weird/path//file.py", "") + assert score == 0.7 # Python file score + + # Test file with multiple matching criteria (API wins over test) + score = RepomixIngestor._calculate_file_importance("tests/api_test.py", "def test_api():") + assert abs(score - 0.85) < 0.01 # API files get highest priority + + # Test regular test file + score = RepomixIngestor._calculate_file_importance("tests/test_utils.py", "def test_helper():") + assert abs(score - 0.21) < 0.01 # 0.7 * 0.3 for test files diff --git a/tests/unit/storage/test_r2r_helpers.py b/tests/unit/storage/test_r2r_helpers.py index c413f73..aa6c39d 100644 --- a/tests/unit/storage/test_r2r_helpers.py +++ b/tests/unit/storage/test_r2r_helpers.py @@ -45,7 +45,9 @@ def r2r_client_stub( status_code=self.status_code, request=mock_request, ) - raise httpx.HTTPStatusError("HTTP error", request=mock_request, response=mock_response) + raise httpx.HTTPStatusError( + "HTTP error", request=mock_request, response=mock_response + ) class MockAsyncClient: def __init__(self, service: Any) -> None: diff --git a/tests/unit/tui/test_storage_manager.py b/tests/unit/tui/test_storage_manager.py index 7f4aba8..ec0a268 100644 --- a/tests/unit/tui/test_storage_manager.py +++ b/tests/unit/tui/test_storage_manager.py @@ -133,14 +133,17 @@ async def test_multi_storage_adapter_reports_replication_failure(document_factor def test_storage_manager_build_multi_storage_adapter_deduplicates(document_factory) -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) weaviate_config = StorageConfig( @@ -167,14 +170,17 @@ def test_storage_manager_build_multi_storage_adapter_deduplicates(document_facto def test_storage_manager_build_multi_storage_adapter_missing_backend() -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) with pytest.raises(ValueError): @@ -183,14 +189,17 @@ def test_storage_manager_build_multi_storage_adapter_missing_backend() -> None: @pytest.mark.asyncio async def test_storage_manager_search_across_backends_groups_results(document_factory) -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) document_weaviate = document_factory( @@ -228,7 +237,9 @@ async def test_storage_manager_search_across_backends_groups_results(document_fa @pytest.mark.asyncio -async def test_multi_storage_adapter_store_batch_replicates_to_all_backends(document_factory) -> None: +async def test_multi_storage_adapter_store_batch_replicates_to_all_backends( + document_factory, +) -> None: primary_config = StorageConfig( backend=StorageBackend.WEAVIATE, endpoint="http://weaviate.local", @@ -280,14 +291,17 @@ async def test_multi_storage_adapter_delete_reports_secondary_failures() -> None @pytest.mark.asyncio async def test_storage_manager_initialize_all_backends_registers_capabilities(monkeypatch) -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key="key", - openwebui_endpoint="http://chat.local", - openwebui_api_key="token", - r2r_endpoint="http://r2r.local", - r2r_api_key="secret", - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key="key", + openwebui_endpoint="http://chat.local", + openwebui_api_key="token", + r2r_endpoint="http://r2r.local", + r2r_api_key="secret", + ), + ) manager = StorageManager(settings) monkeypatch.setattr( @@ -324,14 +338,17 @@ async def test_storage_manager_initialize_all_backends_registers_capabilities(mo @pytest.mark.asyncio async def test_storage_manager_initialize_all_backends_handles_missing_config() -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint=None, - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint=None, + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) results = await manager.initialize_all_backends() @@ -345,14 +362,17 @@ async def test_storage_manager_initialize_all_backends_handles_missing_config() @pytest.mark.asyncio async def test_storage_manager_get_all_collections_merges_counts_and_backends() -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) weaviate_storage = CollectionStubStorage( @@ -390,14 +410,17 @@ async def test_storage_manager_get_all_collections_merges_counts_and_backends() @pytest.mark.asyncio async def test_storage_manager_get_backend_status_reports_failures() -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) healthy_storage = CollectionStubStorage( @@ -436,14 +459,17 @@ async def test_storage_manager_get_backend_status_reports_failures() -> None: @pytest.mark.asyncio async def test_storage_manager_close_all_clears_state() -> None: - settings = cast(Settings, SimpleNamespace( - weaviate_endpoint="http://weaviate.local", - weaviate_api_key=None, - openwebui_endpoint="http://chat.local", - openwebui_api_key=None, - r2r_endpoint=None, - r2r_api_key=None, - )) + settings = cast( + Settings, + SimpleNamespace( + weaviate_endpoint="http://weaviate.local", + weaviate_api_key=None, + openwebui_endpoint="http://chat.local", + openwebui_api_key=None, + r2r_endpoint=None, + r2r_api_key=None, + ), + ) manager = StorageManager(settings) closable_storage = ClosableStubStorage( diff --git a/uv.lock b/uv.lock index 9a11ad0..4a1cb87 100644 --- a/uv.lock +++ b/uv.lock @@ -236,6 +236,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/25/2f/efa9d26dbb612b774990741fd8f13c7cf4cfd085b870e4a5af5c82eaf5f1/authlib-1.6.3-py2.py3-none-any.whl", hash = "sha256:7ea0f082edd95a03b7b72edac65ec7f8f68d703017d7e37573aee4fc603f2a48", size = 240105, upload-time = "2025-08-26T12:13:23.889Z" }, ] +[[package]] +name = "basedpyright" +version = "1.31.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nodejs-wheel-binaries" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0b/53/570b03ec0445a9b2cc69788482c1d12902a9b88a9b159e449c4c537c4e3a/basedpyright-1.31.4.tar.gz", hash = "sha256:2450deb16530f7c88c1a7da04530a079f9b0b18ae1c71cb6f812825b3b82d0b1", size = 22494467, upload-time = "2025-09-03T13:05:55.817Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/40/d1047a5addcade9291685d06ef42a63c1347517018bafd82747af9da0294/basedpyright-1.31.4-py3-none-any.whl", hash = "sha256:055e4a38024bd653be12d6216c1cfdbee49a1096d342b4d5f5b4560f7714b6fc", size = 11731440, upload-time = "2025-09-03T13:05:52.308Z" }, +] + [[package]] name = "cachetools" version = "6.2.0" @@ -986,6 +998,7 @@ dependencies = [ [package.dev-dependencies] dev = [ + { name = "basedpyright" }, { name = "marimo" }, { name = "mypy" }, { name = "pylance" }, @@ -1017,6 +1030,7 @@ requires-dist = [ [package.metadata.requires-dev] dev = [ + { name = "basedpyright", specifier = ">=1.31.4" }, { name = "marimo", specifier = ">=0.16.0" }, { name = "mypy", specifier = ">=1.7.0" }, { name = "pylance", specifier = ">=0.36.0" }, @@ -1591,6 +1605,22 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" }, ] +[[package]] +name = "nodejs-wheel-binaries" +version = "22.19.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/bd/ca/6033f80b7aebc23cb31ed8b09608b6308c5273c3522aedd043e8a0644d83/nodejs_wheel_binaries-22.19.0.tar.gz", hash = "sha256:e69b97ef443d36a72602f7ed356c6a36323873230f894799f4270a853932fdb3", size = 8060, upload-time = "2025-09-12T10:33:46.935Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/93/a2/0d055fd1d8c9a7a971c4db10cf42f3bba57c964beb6cf383ca053f2cdd20/nodejs_wheel_binaries-22.19.0-py2.py3-none-macosx_11_0_arm64.whl", hash = "sha256:43eca1526455a1fb4cb777095198f7ebe5111a4444749c87f5c2b84645aaa72a", size = 50902454, upload-time = "2025-09-12T10:33:18.3Z" }, + { url = "https://files.pythonhosted.org/packages/b5/f5/446f7b3c5be1d2f5145ffa3c9aac3496e06cdf0f436adeb21a1f95dd79a7/nodejs_wheel_binaries-22.19.0-py2.py3-none-macosx_11_0_x86_64.whl", hash = "sha256:feb06709e1320790d34babdf71d841ec7f28e4c73217d733e7f5023060a86bfc", size = 51837860, upload-time = "2025-09-12T10:33:21.599Z" }, + { url = "https://files.pythonhosted.org/packages/1e/4e/d0a036f04fd0f5dc3ae505430657044b8d9853c33be6b2d122bb171aaca3/nodejs_wheel_binaries-22.19.0-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db9f5777292491430457c99228d3a267decf12a09d31246f0692391e3513285e", size = 57841528, upload-time = "2025-09-12T10:33:25.433Z" }, + { url = "https://files.pythonhosted.org/packages/e2/11/4811d27819f229cc129925c170db20c12d4f01ad366a0066f06d6eb833cf/nodejs_wheel_binaries-22.19.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1392896f1a05a88a8a89b26e182d90fdf3020b4598a047807b91b65731e24c00", size = 58368815, upload-time = "2025-09-12T10:33:29.083Z" }, + { url = "https://files.pythonhosted.org/packages/6e/94/df41416856b980e38a7ff280cfb59f142a77955ccdbec7cc4260d8ab2e78/nodejs_wheel_binaries-22.19.0-py2.py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:9164c876644f949cad665e3ada00f75023e18f381e78a1d7b60ccbbfb4086e73", size = 59690937, upload-time = "2025-09-12T10:33:32.771Z" }, + { url = "https://files.pythonhosted.org/packages/d1/39/8d0d5f84b7616bdc4eca725f5d64a1cfcac3d90cf3f30cae17d12f8e987f/nodejs_wheel_binaries-22.19.0-py2.py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:6b4b75166134010bc9cfebd30dc57047796a27049fef3fc22316216d76bc0af7", size = 60751996, upload-time = "2025-09-12T10:33:36.962Z" }, + { url = "https://files.pythonhosted.org/packages/41/93/2d66b5b60055dd1de6e37e35bef563c15e4cafa5cfe3a6990e0ab358e515/nodejs_wheel_binaries-22.19.0-py2.py3-none-win_amd64.whl", hash = "sha256:3f271f5abfc71b052a6b074225eca8c1223a0f7216863439b86feaca814f6e5a", size = 40026140, upload-time = "2025-09-12T10:33:40.33Z" }, + { url = "https://files.pythonhosted.org/packages/a3/46/c9cf7ff7e3c71f07ca8331c939afd09b6e59fc85a2944ea9411e8b29ce50/nodejs_wheel_binaries-22.19.0-py2.py3-none-win_arm64.whl", hash = "sha256:666a355fe0c9bde44a9221cd543599b029045643c8196b8eedb44f28dc192e06", size = 38804500, upload-time = "2025-09-12T10:33:43.302Z" }, +] + [[package]] name = "numpy" version = "2.3.3"