refactor(orchestrator): move registry into store/registry_store
tracker-policy-pr / check-pr (pull_request) Successful in 11s
test / integration-docker (pull_request) Successful in 18s
lint / lint (push) Failing after 58s
test / unit (pull_request) Successful in 2m14s
test / integration-firecracker (pull_request) Successful in 3m25s
test / coverage (pull_request) Successful in 35s
test / publish-infra (pull_request) Has been skipped

registry.py is a SQLite-backed store (its class is already RegistryStore),
so it belongs with the other orchestrator-owned stores rather than at the
package root. Moved orchestrator/registry.py -> orchestrator/store/
registry_store.py, joining queue_store / secret_store / config_store.

Repointed the in-package importers (.registry -> .store.registry_store)
and the tests, bumped the moved file's relative-import depths, renamed
the test file to match, and listed it in the store package docstring.
Full unit suite green (2243).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-24 18:24:20 -04:00
parent cb3a74edb0
commit 3efb014ace
8 changed files with 12 additions and 12 deletions
+1 -1
View File
@@ -28,7 +28,7 @@ orchestrator -> firecracker).
from __future__ import annotations
from .registry import BottleRecord, RegistryStore, new_identity_token
from .store.registry_store import BottleRecord, RegistryStore, new_identity_token
from .broker import (
BrokerAuthError,
LaunchBroker,
+1 -1
View File
@@ -20,7 +20,7 @@ from .store.store_manager import StoreManager
from .broker import LaunchBroker, StubBroker
from .server import make_server
from .docker_broker import DockerBroker
from .registry import RegistryStore, default_db_path
from .store.registry_store import RegistryStore, default_db_path
from .service import Orchestrator
+1 -1
View File
@@ -26,7 +26,7 @@ from collections.abc import Iterable
from datetime import datetime, timezone
from .broker import LaunchBroker, LaunchRequest, sign_request
from .registry import DEFAULT_REAP_GRACE_SECONDS, BottleRecord, RegistryStore
from .store.registry_store import DEFAULT_REAP_GRACE_SECONDS, BottleRecord, RegistryStore
from .supervisor import (
AuditEntry,
COMPONENT_FOR_TOOL,
+3 -3
View File
@@ -1,9 +1,9 @@
"""Orchestrator-owned SQLite stores.
The stores whose tables only the orchestrator (control plane) opens: the
supervise proposal/response `queue_store`, the agent-secret `secret_store`, and
the orchestrator `config_store`. They build on the shared `DbStore` /
`migrations` base in `bot_bottle.store`.
per-host bottle `registry_store`, the supervise proposal/response `queue_store`,
the agent-secret `secret_store`, and the orchestrator `config_store`. They build
on the shared `DbStore` / `migrations` base in `bot_bottle.store`.
Callers import the concrete module directly, e.g.
`from bot_bottle.orchestrator.store.queue_store import QueueStore`.
@@ -36,9 +36,9 @@ from collections.abc import Iterable
from dataclasses import dataclass
from pathlib import Path
from ..store.db_store import DbStore
from ..store.migrations import TableMigrations
from ..paths import host_db_path
from ...store.db_store import DbStore
from ...store.migrations import TableMigrations
from ...paths import host_db_path
# 256 bits of urandom, URL-safe — unguessable per-bottle identity token.
IDENTITY_TOKEN_BYTES = 32