| # Copyright 2026 The Fuchsia Authors. All rights reserved. | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| """Driver-lab host tooling (phase 1). | |
| Transport-neutral core: frozen data models, operator read-grant | |
| resolution and persistence, and plan validation, canonicalization, and | |
| digests. The target transport (fuchsia-controller over the | |
| `fuchsia.driver.lab` wire contract) layers on top of these modules and is | |
| deliberately kept out of them so this logic is testable on any host. | |
| """ | |
| from driver_lab.api import ( | |
| DriverLab, | |
| DriverLabError, | |
| PollRecord, | |
| ReadRecord, | |
| RunResult, | |
| SequenceItemRecord, | |
| SequenceRecord, | |
| WriteRecord, | |
| connect, | |
| ) | |
| from driver_lab.models import AccessClass, AccessRequest, WritePrecondition | |
| from driver_lab.recovery import ( | |
| FakeRecoveryController, | |
| FakeSerialCapture, | |
| FfxRecoveryController, | |
| FfxSerialCapture, | |
| PanioloRecoveryController, | |
| PanioloSerialCapture, | |
| RecoveryController, | |
| SerialCapture, | |
| SerialCaptureResult, | |
| SerialCaptureSession, | |
| detect_panic, | |
| extract_panic_summary, | |
| interpret_evidence, | |
| ) | |
| from driver_lab.session import ( | |
| AccessRequirements, | |
| Clock, | |
| Gpio, | |
| HardwareSession, | |
| I2c, | |
| Interrupt, | |
| MmioRegion, | |
| PollResult, | |
| ProtocolProxy, | |
| Reset, | |
| SequenceOutcome, | |
| Serial, | |
| SessionCapabilities, | |
| Spi, | |
| StateHandle, | |
| TranslationMetadata, | |
| UnsupportedCapabilityError, | |
| WriteResult, | |
| ) | |
| from driver_lab.transport import ( | |
| AllowRule, | |
| Denial, | |
| DirectDescription, | |
| DirectSession, | |
| DirectTransport, | |
| FidlCallOutcome, | |
| OperationDenied, | |
| PollOutcome, | |
| ProxyDescription, | |
| ProxySession, | |
| ProxyTransport, | |
| ResourceInfo, | |
| SequenceItem, | |
| SessionContext, | |
| SessionMode, | |
| SnapshotItem, | |
| TransportError, | |
| WriteOutcome, | |
| ) | |
| __all__ = [ | |
| "AccessClass", | |
| "AccessRequest", | |
| "AccessRequirements", | |
| "AllowRule", | |
| "Clock", | |
| "Denial", | |
| "DirectDescription", | |
| "DirectSession", | |
| "DirectTransport", | |
| "DriverLab", | |
| "DriverLabError", | |
| "FakeRecoveryController", | |
| "FakeSerialCapture", | |
| "FfxRecoveryController", | |
| "FfxSerialCapture", | |
| "FidlCallOutcome", | |
| "Gpio", | |
| "HardwareSession", | |
| "I2c", | |
| "Interrupt", | |
| "MmioRegion", | |
| "OperationDenied", | |
| "PanioloRecoveryController", | |
| "PanioloSerialCapture", | |
| "PollOutcome", | |
| "PollRecord", | |
| "PollResult", | |
| "ProtocolProxy", | |
| "ProxyDescription", | |
| "ProxySession", | |
| "ProxyTransport", | |
| "ReadRecord", | |
| "RecoveryController", | |
| "Reset", | |
| "ResourceInfo", | |
| "RunResult", | |
| "SequenceItem", | |
| "SequenceItemRecord", | |
| "SequenceOutcome", | |
| "SequenceRecord", | |
| "Serial", | |
| "SerialCapture", | |
| "SerialCaptureResult", | |
| "SerialCaptureSession", | |
| "SessionCapabilities", | |
| "SessionContext", | |
| "SessionMode", | |
| "SnapshotItem", | |
| "Spi", | |
| "StateHandle", | |
| "TranslationMetadata", | |
| "TransportError", | |
| "UnsupportedCapabilityError", | |
| "WriteOutcome", | |
| "WritePrecondition", | |
| "WriteRecord", | |
| "WriteResult", | |
| "connect", | |
| "detect_panic", | |
| "extract_panic_summary", | |
| "interpret_evidence", | |
| ] |