refactor(manifest): consolidate the manifest modules into a bot_bottle.manifest package
tracker-policy-pr / check-pr (pull_request) Failing after 11s
test / integration-docker (pull_request) Successful in 20s
lint / lint (push) Successful in 59s
test / unit (pull_request) Successful in 2m10s
test / integration-firecracker (pull_request) Successful in 3m29s
test / coverage (pull_request) Successful in 38s
test / publish-infra (pull_request) Has been skipped
tracker-policy-pr / check-pr (pull_request) Failing after 11s
test / integration-docker (pull_request) Successful in 20s
lint / lint (push) Successful in 59s
test / unit (pull_request) Successful in 2m10s
test / integration-firecracker (pull_request) Successful in 3m29s
test / coverage (pull_request) Successful in 38s
test / publish-infra (pull_request) Has been skipped
Move the nine root-level manifest modules into a bot_bottle/manifest/ package, dropping the redundant manifest_ prefix: the facade (manifest.py) becomes the package __init__ and keeps re-exporting Manifest / ManifestIndex and the piece types, while manifest_<x>.py become manifest/<x>.py (agent, bottle, egress, extends, git, loader, schema, util). Because the facade stays the package __init__, the ~13 callers that import `from bot_bottle.manifest import ...` are unchanged; only direct-piece imports move to `bot_bottle.manifest.<name>`. Inside the package, intra-manifest imports drop the prefix and the non-manifest siblings (log, yaml_subset, agent_provider) move to `..`. No behavior change; full unit suite green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -336,7 +336,7 @@ class TestManifestToYaml(unittest.TestCase):
|
||||
agent_provider_template: str = "claude",
|
||||
):
|
||||
from bot_bottle.manifest import Manifest, ManifestBottle
|
||||
from bot_bottle.manifest_agent import ManifestAgent, ManifestAgentProvider
|
||||
from bot_bottle.manifest.agent import ManifestAgent, ManifestAgentProvider
|
||||
|
||||
agent = ManifestAgent(skills=tuple(skills))
|
||||
bottle = ManifestBottle(
|
||||
|
||||
@@ -21,7 +21,7 @@ from bot_bottle.git_gate import (
|
||||
git_gate_render_gitconfig,
|
||||
revoke_git_gate_provisioned_keys,
|
||||
)
|
||||
from bot_bottle.manifest_git import ManifestGitEntry, ManifestKeyConfig
|
||||
from bot_bottle.manifest.git import ManifestGitEntry, ManifestKeyConfig
|
||||
|
||||
|
||||
def _entry(**kw: Any) -> ManifestGitEntry:
|
||||
|
||||
@@ -14,7 +14,7 @@ import unittest
|
||||
from pathlib import Path
|
||||
|
||||
from bot_bottle.manifest import ManifestBottle, ManifestError, ManifestIndex
|
||||
from bot_bottle.manifest_extends import merge_bottles_runtime
|
||||
from bot_bottle.manifest.extends import merge_bottles_runtime
|
||||
|
||||
|
||||
def _index(bottles: dict[str, object], agents: dict[str, object]) -> ManifestIndex:
|
||||
@@ -44,7 +44,7 @@ class TestMergeBottlesRuntime(unittest.TestCase):
|
||||
self.assertEqual("y", result.env["ONLY_OVERRIDE"])
|
||||
|
||||
def test_egress_routes_concatenated(self):
|
||||
from bot_bottle.manifest_egress import ManifestEgressConfig, ManifestEgressRoute
|
||||
from bot_bottle.manifest.egress import ManifestEgressConfig, ManifestEgressRoute
|
||||
r1 = ManifestEgressRoute(Host="api.a.com")
|
||||
r2 = ManifestEgressRoute(Host="api.b.com")
|
||||
base = ManifestBottle(egress=ManifestEgressConfig(routes=(r1,)))
|
||||
|
||||
@@ -14,12 +14,12 @@ from unittest.mock import patch
|
||||
from bot_bottle.env import resolve_env
|
||||
from bot_bottle.errors import MissingEnvVarError
|
||||
from bot_bottle.manifest import Manifest, ManifestBottle, ManifestIndex
|
||||
from bot_bottle.manifest_agent import (
|
||||
from bot_bottle.manifest.agent import (
|
||||
ManifestAgent,
|
||||
ManifestAgentProvider,
|
||||
_parse_provider_settings,
|
||||
)
|
||||
from bot_bottle.manifest_util import ManifestError
|
||||
from bot_bottle.manifest.util import ManifestError
|
||||
|
||||
|
||||
def _idx(obj: dict[str, object]) -> ManifestIndex:
|
||||
|
||||
Reference in New Issue
Block a user