@startuml
participant "Test harness" as harness
participant "Native CI" as ci
participant "Local node" as node
participant "/bin/bash" as shell
harness -> ci : invoke
harness -> ci : request via stdin
ci -> node : git clone
node <- ci
ci -> shell : run build
ci <- shell : stdout, stderr, exit
harness <- ci : response via stdout
@enduml