Use pathspec for monitor filtering
This commit is contained in:
parent
77c6a7c7a4
commit
a15f1d8cf5
4 changed files with 13 additions and 0 deletions
|
|
@ -26,6 +26,7 @@ dependencies = [
|
||||||
"fastmcp>=2.12.4",
|
"fastmcp>=2.12.4",
|
||||||
"httpx>=0.28.1",
|
"httpx>=0.28.1",
|
||||||
"lancedb>=0.25.2",
|
"lancedb>=0.25.2",
|
||||||
|
"pathspec>=0.12.1",
|
||||||
"pydantic>=2.12.2",
|
"pydantic>=2.12.2",
|
||||||
"pydantic-ai>=1.0.18",
|
"pydantic-ai>=1.0.18",
|
||||||
"pydantic-graph>=1.0.18",
|
"pydantic-graph>=1.0.18",
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@ from haiku.rag.utils import get_default_data_dir
|
||||||
class StorageConfig(BaseModel):
|
class StorageConfig(BaseModel):
|
||||||
data_dir: Path = Field(default_factory=get_default_data_dir)
|
data_dir: Path = Field(default_factory=get_default_data_dir)
|
||||||
monitor_directories: list[Path] = []
|
monitor_directories: list[Path] = []
|
||||||
|
monitor_ignore_patterns: list[str] = []
|
||||||
|
monitor_include_patterns: list[str] = []
|
||||||
disable_autocreate: bool = False
|
disable_autocreate: bool = False
|
||||||
vacuum_retention_seconds: int = 60
|
vacuum_retention_seconds: int = 60
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,3 +82,11 @@ async def test_config_validation_on_db_load(temp_db_path):
|
||||||
|
|
||||||
finally:
|
finally:
|
||||||
Config.processing.chunk_size = original_chunk_size
|
Config.processing.chunk_size = original_chunk_size
|
||||||
|
|
||||||
|
|
||||||
|
def test_monitor_filter_patterns_config():
|
||||||
|
"""Test that monitor filter patterns are available in config."""
|
||||||
|
assert hasattr(Config.storage, "monitor_ignore_patterns")
|
||||||
|
assert hasattr(Config.storage, "monitor_include_patterns")
|
||||||
|
assert isinstance(Config.storage.monitor_ignore_patterns, list)
|
||||||
|
assert isinstance(Config.storage.monitor_include_patterns, list)
|
||||||
|
|
|
||||||
2
uv.lock
2
uv.lock
|
|
@ -1130,6 +1130,7 @@ dependencies = [
|
||||||
{ name = "fastmcp" },
|
{ name = "fastmcp" },
|
||||||
{ name = "httpx" },
|
{ name = "httpx" },
|
||||||
{ name = "lancedb" },
|
{ name = "lancedb" },
|
||||||
|
{ name = "pathspec" },
|
||||||
{ name = "pydantic" },
|
{ name = "pydantic" },
|
||||||
{ name = "pydantic-ai" },
|
{ name = "pydantic-ai" },
|
||||||
{ name = "pydantic-graph" },
|
{ name = "pydantic-graph" },
|
||||||
|
|
@ -1175,6 +1176,7 @@ requires-dist = [
|
||||||
{ name = "httpx", specifier = ">=0.28.1" },
|
{ name = "httpx", specifier = ">=0.28.1" },
|
||||||
{ name = "lancedb", specifier = ">=0.25.2" },
|
{ name = "lancedb", specifier = ">=0.25.2" },
|
||||||
{ name = "mxbai-rerank", marker = "extra == 'mxbai'", specifier = ">=0.1.6" },
|
{ name = "mxbai-rerank", marker = "extra == 'mxbai'", specifier = ">=0.1.6" },
|
||||||
|
{ name = "pathspec", specifier = ">=0.12.1" },
|
||||||
{ name = "pydantic", specifier = ">=2.12.2" },
|
{ name = "pydantic", specifier = ">=2.12.2" },
|
||||||
{ name = "pydantic-ai", specifier = ">=1.0.18" },
|
{ name = "pydantic-ai", specifier = ">=1.0.18" },
|
||||||
{ name = "pydantic-graph", specifier = ">=1.0.18" },
|
{ name = "pydantic-graph", specifier = ">=1.0.18" },
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue