# runtime-standalone-service Specification ## Purpose Define the boundary that keeps Runtime as a shared in-process execution library rather than a standalone REST service and operator console. ## Requirements ### Requirement: Runtime is not exposed as a standalone REST service or web console The repository SHALL not ship a standalone Runtime REST application, its unauthenticated web console, or JSON console routes. The shared Runtime and storage packages SHALL remain reusable execution libraries for the Host Agent and other in-process callers. #### Scenario: An operator needs to inspect a Host-executed task - **WHEN** an operator needs task evidence for a Host Agent execution - **THEN** the operator uses the authenticated Host Agent console rather than starting or querying a separate Runtime service #### Scenario: A package uses shared Runtime execution - **WHEN** the Host Agent or another in-process caller creates a `TaskRunner` - **THEN** it continues to use the shared Runtime and storage packages without importing a REST or UI adapter ### Requirement: Host Agent does not supervise a retired Runtime service The Host Agent SHALL not expose Runtime-supervision configuration or spawn a Runtime REST subprocess. It MAY continue to optionally supervise Appium. #### Scenario: Host Agent dependency supervision is enabled - **WHEN** `HOST_AGENT_DEPENDENCY_SUPERVISOR_ENABLED=true` and Appium supervision is enabled - **THEN** the Host Agent probes and supervises Appium only #### Scenario: A removed Runtime-supervision variable is configured - **WHEN** a Host Agent configuration includes a removed `HOST_AGENT_RUNTIME_*` variable - **THEN** startup fails with a message directing the operator to the Host Agent console and Appium-only supervision