fix: resolve all 8 Phase 3 config/path issues
V3.01-V3.03: Replace hardcoded Path.home() / 'Vault' with os.environ.get() - wiki_continuous_ingest.py: WIKI_ROOT via env with fallback - bulk_wiki_ingest.py: WIKI_ROOT + EMBEDDING_MODEL via env with fallback - backfill_decay_metadata.py: VAULT_ROOT via VAULT_PATH env with fallback V3.04-V3.05: Replace hardcoded EMBEDDING_MODEL string with os.environ.get() - context_enhancer.py + bulk_wiki_ingest.py V3.06: Replace ~/.hermes til fallback with ./hermes (Docker doesn't expand ~) V3.07: Add /fabric volume mount (~/Vault/fabric:/fabric:rw) V3.08: Add Qdrant healthcheck + change worker qdrant dependency from service_started to service_healthy
This commit is contained in:
parent
384395b78d
commit
e5edb58a19
|
|
@ -39,6 +39,12 @@ services:
|
|||
environment:
|
||||
QDRANT__SERVICE__HTTP_PORT: "6333"
|
||||
QDRANT__SERVICE__API_KEY: ${QDRANT_API_KEY:-}
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:6333/healthz"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_period: 10s
|
||||
|
||||
worker:
|
||||
build:
|
||||
|
|
@ -47,7 +53,7 @@ services:
|
|||
restart: unless-stopped
|
||||
depends_on:
|
||||
qdrant:
|
||||
condition: service_started
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
|
|
@ -66,7 +72,8 @@ services:
|
|||
LOG_LEVEL: ${LOG_LEVEL:-INFO}
|
||||
volumes:
|
||||
- ${WIKI_PATH:-./wiki}:/wiki:ro
|
||||
- ${HERMES_HOME:-~/.hermes}:/hermes:rw
|
||||
- ${HERMES_HOME:-./hermes}:/hermes:rw
|
||||
- ${FABRIC_DIR:-./fabric}:/fabric:rw
|
||||
|
||||
volumes:
|
||||
redis_data:
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ COLLECTION = "knowledge_base"
|
|||
BATCH_SIZE = 200
|
||||
SCROLL_LIMIT = 200
|
||||
LOG_FILE = Path.home() / ".hermes/logs/decay_scanner.log"
|
||||
VAULT_ROOT = Path.home() / "Vault"
|
||||
VAULT_ROOT = Path(os.environ.get("VAULT_PATH", str(Path.home() / "Vault")))
|
||||
|
||||
# ─── Heuristics ──────────────────────────────────────────────────────────────
|
||||
CONFIDENCE_BY_SOURCE = {
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@ except ImportError:
|
|||
OPENROUTER_KEY = os.environ.get("OPENROUTER_API_KEY")
|
||||
QDRANT_URL = "http://localhost:6333"
|
||||
COLLECTION = "knowledge_base"
|
||||
WIKI_ROOT = Path.home() / "Vault" / "wiki"
|
||||
EMBEDDING_MODEL = "qwen/qwen3-embedding-8b"
|
||||
WIKI_ROOT = Path(os.environ.get("WIKI_ROOT", str(Path.home() / "Vault" / "wiki")))
|
||||
EMBEDDING_MODEL = os.environ.get("EMBEDDING_MODEL", "qwen/qwen3-embedding-8b")
|
||||
EMBEDDING_DIMS = 4096
|
||||
MAX_TEXT_LEN = 8000 # truncate text for embedding (model context limit)
|
||||
BATCH_SIZE = 8 # parallel embedding requests
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ if not OPENROUTER_KEY:
|
|||
QDRANT_URL = os.environ.get("QDRANT_URL", "http://localhost:6333")
|
||||
COLLECTION = os.environ.get("QDRANT_COLLECTION", "knowledge_base")
|
||||
|
||||
EMBEDDING_MODEL = "qwen/qwen3-embedding-8b"
|
||||
EMBEDDING_MODEL = os.environ.get("EMBEDDING_MODEL", "qwen/qwen3-embedding-8b")
|
||||
TOP_K_DEFAULT = 3
|
||||
SCORE_THRESHOLD_DEFAULT = 0.55
|
||||
MAX_TEXT_LEN = 8000
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ ENV_PATH = Path.home() / "ai-stack" / "cognitive-agent" / ".env"
|
|||
if ENV_PATH.exists():
|
||||
load_dotenv(ENV_PATH)
|
||||
|
||||
WIKI_ROOT = Path.home() / "Vault" / "wiki"
|
||||
WIKI_ROOT = Path(os.environ.get("WIKI_ROOT", str(Path.home() / "Vault" / "wiki")))
|
||||
STATE_FILE = Path.home() / ".hermes" / "wiki_ingest_state.json"
|
||||
FAILURES_FILE = Path.home() / ".hermes" / "wiki_ingest_failures.json"
|
||||
REDIS_PASSWORD = os.environ.get("REDIS_PASSWORD", "")
|
||||
|
|
|
|||
Loading…
Reference in New Issue