keble-segmenting
SegmentingProgress.event_callbacks is runtime-only orchestration state. It is
accepted by Pydantic for worker execution, but excluded from serialization and
JSON Schema so API frameworks can safely expose progress snapshots in OpenAPI.
keble-segmenting owns segmented grids, dimension and mask discovery,
item classification, coverage/read models, queue work contracts, and agent
tools used by positioning and backend workflows.
Verified State
Checked on 2026-07-01 against pyproject.toml, package exports,
keble_segmenting/, CODE_GUIDELINES.md, and tests.
- Package:
keble-segmenting 0.41.1 - Python:
>=3.13,<3.14 - Critical deps:
pydantic,keble-db,keble-helpers,keble-agentic-chat,pydantic-ai-slim,typing-extensions - Source roots:
schemas/,crud/,client/,agent/,utils/ - Public exports:
SegmentingClient, CRUD classes, action/event schemas, queue contracts,ForAgentschemas, and mutation/query chat tool providers.
Runtime Contract
- Segmenting owns the grid and classification domain. Backend and positioning code should use package schemas/actions instead of recreating grid state.
- Progress belongs to actions and queue work, not side-effect taxonomies. Keep action status, progress payloads, and callback events aligned.
- Stable keys are execution identity. Display names are UX only and may collide.
- Local-full tests run DB-heavy integration by default. Provider-backed quality coverage belongs in marked eval layers with explicit provider gates.
- Reusable test settings, datasets, provider helpers, and shared assertion helpers
live in
keble_segmenting.testing; executable tests stay under canonicaltests/unit,tests/integration, andtests/evalsroots.
Testing
uv sync --group test
RUN_INTEGRATION=1 RUN_REAL_DB=1 RUN_LOCAL_STACK=1 RUN_DB_STACK=1 uv run pytest -q -m "not live and not container"
uv run pytest -q -m "not live and not slow and not eval and not local_stack and not db_stack and not container"
uv run pytest -q -m eval
npx --yes pyright .
The test/dev keble-agentic-chat source is pinned to the bundled compatible
deps/keble_agentic_chat-3.44.0-py3-none-any.whl. Do not point it at the
sibling ../keble-agentic-chat checkout unless this repo also moves to that
checkout's keble-helpers dependency line; otherwise uv run can fail before
pytest collection.
Mongo/Redis integration settings load explicit process env first, then the
umbrella keble.backend/.env through keble_db.testing.resolve_test_env.
Segmenting provider-backed eval settings map backend AZURE_PROVIDER_ENDPOINTS,
AZURE_PROVIDER_API_TOKENS, and AZURE_OPENAI_CHAT_MODELS_DEPLOYMENTS into
the package text/vision model lists when package-local list env vars are absent.
Set KEBLE_BACKEND_ENV_FILE=/path/to/.env from unusual worktree or CI layouts.
Mongo/Redis integration tests are integration, db, mongo, redis, and
local_stack; they run in local-full and are excluded from portable-offline.
Selecting them without configured local storage fails with a clear environment
requirement. Eval tests belong under tests/evals/ and selecting -m eval is
the eval opt-in; do not add a generic RUN_EVALS gate. Provider-backed evals
also carry live and llm, so a real run uses RUN_LLM_LIVE=1 uv run pytest -q -m "eval and llm".
Change Logs
Historical release notes and long AI change history live under logs/.
Side Effect If Changes
keble-positioning, backend segmentation workers, task room progress, and frontend positioning tables depend on segmenting action/event contracts.- Queue or coverage schema changes require backend worker and frontend display updates in the same migration.
- Test/dev dependency source changes affect every
uv run pytestand pyright proof command in this repo; keeppyproject.toml,uv.lock, and the bundled dependency wheel aligned.
Metadata
Release files for keble-segmenting 0.44.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| keble_segmenting-0.44.1.tar.gz | 987.2 kB | Without provenance | Details for keble_segmenting-0.44.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| keble_segmenting-0.44.1-py3-none-any.whl | Python 3 | none | any | Details for keble_segmenting-0.44.1-py3-none-any.whl |
Total release size: 1.3 MB
Release files / keble_segmenting-0.44.1.tar.gz
| Download URL | keble_segmenting-0.44.1.tar.gz |
|---|---|
| Size | 987.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
509808c84fd2056c7f5b34a68e7bd8856f5112f3aaa2f163e874da6cb867f742
|
|
BLAKE2b-256 checksum How to use checksums |
36fc55f3c11405c424e178cd7ec65f132dc69b6093bbe5b522ec68b341755ed3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / keble_segmenting-0.44.1-py3-none-any.whl
| Download URL | keble_segmenting-0.44.1-py3-none-any.whl |
|---|---|
| Size | 310.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5882f686ce893b9e362da5d5d2ccd78a3812a6aab478683cc33011f35b0b6624
|
|
BLAKE2b-256 checksum How to use checksums |
4457354350efd2bb15699554b81d19ea462ed82622ded9a4ff8819bc601ae7a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for keble-segmenting 0.44.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.