Done in b872985 — all 11 manifest data classes renamed with Manifest prefix across definition files and every usage site. 925 tests pass.
Got it. The conflicts are manifest_agent.py:AgentProvider vs agent_provider.py:AgentProvider and manifest_egress.py:EgressRoute vs egress.py:EgressRoute (plus any other manifest classes…
#1864 + #1866 — done in a4e1285. Provider default is set first, overrides applied after; image_default is gone and so is the trailing else.
#1868 — need a clarification: `provider =…
Done in e0ecb7c — dockerfile now returns Path unconditionally; all is not None guards on the result removed from callers.
Done in 41590ed — BOT_BOTTLE_IMAGE removed from both docker/prepare.py and smolmachines/prepare.py.
It is used — both docker/prepare.py and smolmachines/prepare.py read BOT_BOTTLE_IMAGE as an env-var override that pins the agent image at launch time (useful in CI / integration tests to…
Done in 963a178. runtime.dockerfile is dropped. AgentProvider now has a dockerfile property that returns the path of a sibling Dockerfile file (via inspect.getfile(type(self))), or…
Agree that the convention-based default is the better option — providers that follow the layout (Dockerfile next to agent_provider.py) get it for free without any boilerplate, and the attribute…
Done — updating the issue now to incorporate option 2 into the workflow spec.
Agreed — the "brief Draft window" argument is weaker than the "will definitely forget" argument, especially for agent-opened PRs where there's no natural moment to go back and flip the status.
Th…
Note: this is not an issue for the smolmachines backend.
smolmachines uses TSI (Transport Socket Interface) — VMM-level connect() interception — which blocks all socket connections to…