"""adjust_inventory and stock reads.""" from mcp_server.config import Settings from mcp_server.elabftw import ElabftwClient from mcp_server.journal import SagaJournal from mcp_server.models import ContainerStock, InventoryResult from mcp_server.resolve import ResourceResolver class InventoryWorkflow: def __init__( self, client: ElabftwClient, resolver: ResourceResolver, journal: SagaJournal, settings: Settings, ) -> None: self.client = client self.resolver = resolver self.journal = journal self.settings = settings async def stock_for_resource(self, resource_key: str) -> list[ContainerStock]: """Containers holding the resolved resource with compatible units and current stock.""" raise NotImplementedError async def adjust_inventory( self, *, amount: float, unit: str, resource_key: str | None = None, container_id: int | None = None, note: str | None = None, ) -> InventoryResult: """Restock/correct a container (voice: “add 500 mL to …”); journaled.""" raise NotImplementedError