Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions backfill-batching/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@
name = "knowledge-backfill-batching"
version = "0.1.0"
description = "Resumable, deduplicating batch backfill driver for the transcript corpus into Hindsight (fleet-infra#249). Pure stdlib: runs without a cluster, against any .jsonl corpus. Proof-of-protocol, not the enablement hook."
requires-python = ">=3.12"
requires-python = "==3.14.7"
dependencies = []

[dependency-groups]
dev = [
"pytest>=8.3.0,<9",
"pytest-cov>=5.0.0,<7",
"pytest-timeout>=2.3.0,<3",
"ruff>=0.6.0,<1",
"mypy>=1.11.0,<2",
"pytest==8.4.2",
"pytest-cov==6.3.0",
"pytest-timeout==2.4.0",
"ruff==0.16.6",
"mypy==1.20.2",
]

[build-system]
requires = ["hatchling>=1.25.0"]
requires = ["hatchling==1.32.0"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
Expand Down
152 changes: 6 additions & 146 deletions backfill-batching/uv.lock

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions basic-memory-git-sync/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@
name = "basic-memory-git-sync"
version = "0.1.0"
description = "Git commit backstop for the Basic Memory vault: watches the shared working tree and commits + pushes the notes Basic Memory writes, surfacing (never silently resolving) concurrent-edit conflicts."
requires-python = ">=3.12"
requires-python = "==3.14.7"
dependencies = [
# Git plumbing for the vault clone. Same library the ingest-worker's
# VaultGitWriter uses, so the two vault writers behave identically.
"gitpython>=3.1.50",
"gitpython==3.1.62",
# Structured logging, matching the ingest-worker and Spring services.
"structlog>=24.4.0,<26",
"structlog==25.5.0",
]

[dependency-groups]
dev = [
"pytest>=8.3.0,<9",
"pytest-cov>=5.0.0,<7",
"pytest-timeout>=2.3.0,<3",
"ruff>=0.6.0,<1",
"mypy>=1.11.0,<2",
"pytest==8.4.2",
"pytest-cov==6.3.0",
"pytest-timeout==2.4.0",
"ruff==0.16.6",
"mypy==1.20.2",
]

[build-system]
requires = ["hatchling>=1.25.0"]
requires = ["hatchling==1.32.0"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
Expand Down
156 changes: 8 additions & 148 deletions basic-memory-git-sync/uv.lock

Large diffs are not rendered by default.

32 changes: 16 additions & 16 deletions ingest-worker/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,46 +2,46 @@
name = "knowledge-ingest-worker"
version = "0.1.0"
description = "RabbitMQ-driven worker that materialises knowledge-api captures into the knowledge-vault git repo and the LightRAG-managed pgvector tables."
requires-python = ">=3.12"
requires-python = "==3.14.7"
dependencies = [
# Headless AMQP consumer. pika is the canonical Python client and has
# the simplest mental model for a single-consumer service (no asyncio
# tax, no aiormq quirks).
"pika>=1.3.2,<2",
"pika==1.4.0",
# Typed message envelopes. Pydantic v2 doubles as the JSON parser so
# we don't end up dispatching on raw dicts.
"pydantic>=2.9.0,<3",
"pydantic==2.13.4",
# Structured logging — same JSON shape as the Spring services so
# Loki queries can fan across the stack.
"structlog>=24.4.0,<26",
"structlog==25.5.0",
# OpenTelemetry SDK + auto-instrumentation. Run the worker via
# `opentelemetry-instrument python -m knowledge_worker` and pika +
# logging spans appear in Tempo with the same trace shape the JVM
# services emit.
"opentelemetry-distro>=0.48b0,<0.60",
"opentelemetry-exporter-otlp>=1.27.0,<2",
"opentelemetry-instrumentation-pika>=0.48b0,<0.60",
"opentelemetry-distro==0.59b0",
"opentelemetry-exporter-otlp==1.38.0",
"opentelemetry-instrumentation-pika==0.59b0",
# Postgres driver for the eventual jOOQ-co-located writes. Brought
# in now so the connection-pool wiring lands together with the
# consumer skeleton; the SQL queries come in once the LightRAG ingest pipeline lands.
"psycopg[binary,pool]>=3.2.0,<4",
"gitpython>=3.1.50",
"psycopg[binary,pool]==3.3.4",
"gitpython==3.1.50",
]

[dependency-groups]
dev = [
"pytest>=8.3.0,<9",
"pytest-cov>=5.0.0,<7",
"pytest-timeout>=2.3.0,<3",
"ruff>=0.6.0,<1",
"mypy>=1.11.0,<2",
"pytest==8.4.2",
"pytest-cov==6.3.0",
"pytest-timeout==2.4.0",
"ruff==0.15.13",
"mypy==1.20.2",
# Testcontainers + a real RabbitMQ broker per integration test, same
# shape as the Kotlin services use.
"testcontainers[rabbitmq,postgres]>=4.8.0,<5",
"testcontainers[rabbitmq,postgres]==4.14.2",
]

[build-system]
requires = ["hatchling>=1.25.0"]
requires = ["hatchling==1.32.0"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
Expand Down
256 changes: 15 additions & 241 deletions ingest-worker/uv.lock

Large diffs are not rendered by default.

20 changes: 10 additions & 10 deletions note-import/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,33 @@
name = "knowledge-note-import"
version = "0.1.0"
description = "Standalone CLI that imports curated notes from a source git vault (the knowledge-vault) into the Basic Memory note format: walks the tree without flattening, preserves git lineage, classifies evidence-backed vs legacy-derived, dedupes on re-run, and archives original bytes to a content-addressed store layout."
requires-python = ">=3.12"
requires-python = "==3.14.7"
dependencies = [
# Git plumbing for per-file lineage (the same library the ingest-worker
# and basic-memory-git-sync use, so all three vault git actors behave
# identically).
"gitpython>=3.1.50",
"gitpython==3.1.62",
# Structured logging, matching the ingest-worker's JSON shape.
"structlog>=24.4.0,<26",
"structlog==25.5.0",
# YAML frontmatter parsing / re-serialisation. Parsed with round-trip
# fidelity so upstream-native syntax survives the note-format mapping.
"pyyaml>=6.0.1,<7",
"pyyaml==6.0.3",
]

[project.scripts]
note-import = "note_import.cli:main"

[dependency-groups]
dev = [
"pytest>=8.3.0,<9",
"pytest-cov>=5.0.0,<7",
"pytest-timeout>=2.3.0,<3",
"ruff>=0.6.0,<1",
"mypy>=1.11.0,<2",
"pytest==8.4.2",
"pytest-cov==6.3.0",
"pytest-timeout==2.4.0",
"ruff==0.16.6",
"mypy==1.20.2",
]

[build-system]
requires = ["hatchling>=1.25.0"]
requires = ["hatchling==1.32.0"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
Expand Down
Loading
Loading