Remote Workflow API

The operator guide describes prerequisites, exact resume, coherent transport and the pending post-merge real-instance qualification. Five Typer adapters delegate to RemoteWorkflow; transport and domain guards remain below that boundary.

CLI Adapters

Operator adapters for the verified single-instance remote training workflow.

finish(ctx, stop_training=False, pull_edits=False, abandon=False)

Quiesce syncing and verify termination readiness, or explicitly abandon.

remote(ctx, remote_config=Path('conf/remote.yaml'))

Select transport configuration without reading it during help.

status(ctx)

Read session, process, GPU, pending-transfer and sync-loop observations.

sync(ctx, once=False)

Pull coherent artifacts once or ensure the owned Mac sync loop.

train(ctx, resume=False, config='conf/config.yaml', overrides=None)

Launch a fresh or exact run; finished runs skip successfully.

up(ctx, host='', force=False, config='conf/config.yaml', overrides=None)

Push code, bootstrap and verify canonical inputs before becoming ready.

Workflow Controller

sync(once=True) delegates to public sync_once, which owns the state lock. sync(once=False) validates the complete session-owned transport config and calls ensure_loop while holding that lock. Both require a ready session. No controller operation silently replaces a missing persisted config with defaults. status observes evidence without repair. FinishResult.safe is the only termination-readiness authority; abandonment remains unsafe.

Prepare code and canonical inputs through an injected synchronous transport.

finish(stop_training=False, pull_edits=False, abandon=False)

Quiesce the owned worker and verify final results before closing a session.

status()

Observe local and remote evidence without locking, recovering or changing records.

sync(once=False)

Delegate one verified pass or start the loop under its caller-owned lock.

train(resume, config_path, overrides)

Resolve current inputs and launch while owning the workflow transaction lock.

Results and Persistent Records

Bases: BaseModel

One instance session; run identities persist in separate RunRecord files.

utc_timestamp(value) classmethod

Require timezone-aware timestamps and normalize them to UTC.

Bases: BaseModel

Persistent identity of one experiment across replacement instance sessions.