C1. Implement the RemoteExecutor (today a NotImplemented stub) against Δ2/Δ4: submit(script, lab) → RunHandle{runId, events, finished, abort}, keyed on the run-dir contract, events sourced from the poll endpoint. Zero changes to the local path.
Acceptance (TDD): a LocalExecutor run and a RemoteExecutor run over the same script emit identical inspector/catalog event sequences (the S7/S11 snapshot test); the S12 executor-branch grep stays clean (no executor-type branches in RunsManager/Inspector/Catalog).
Depends on Δ2, Δ4.
⛔ Gate: blocked by the wk-3 freeze — run-dir contract + SchemaPackage v0 (amicode #15 + the #28–31 stack). RemoteExecutor/the S3 layout is the run-dir contract, so do not start until that lands.
📄 Refs: Spec armonissima/specs/spec-20260628-amicode-cloud-solve-service.md (Δ8) · phased plan §5a (plan-20260603-124231-amicode-phased-build) · aws-infra/INFRASTRUCTURE.md → The Analysis Pipeline (reuse step_function/ec2_launch_template/dynamodb/runner_image).
Evolve, not build — a working v0 (the aws-infra Analysis Pipeline) already does size→S/M/L EC2→julia→S3→email→terminate. Validate on staging (mirrors prod), then two-step promote.
C1. Implement the
RemoteExecutor(today aNotImplementedstub) against Δ2/Δ4:submit(script, lab) → RunHandle{runId, events, finished, abort}, keyed on the run-dir contract, events sourced from the poll endpoint. Zero changes to the local path.Acceptance (TDD): a
LocalExecutorrun and aRemoteExecutorrun over the same script emit identical inspector/catalog event sequences (the S7/S11 snapshot test); the S12 executor-branch grep stays clean (no executor-type branches in RunsManager/Inspector/Catalog).Depends on Δ2, Δ4.
⛔ Gate: blocked by the wk-3 freeze — run-dir contract + SchemaPackage v0 (amicode #15 + the #28–31 stack).
RemoteExecutor/the S3 layout is the run-dir contract, so do not start until that lands.📄 Refs: Spec
armonissima/specs/spec-20260628-amicode-cloud-solve-service.md(Δ8) · phased plan §5a (plan-20260603-124231-amicode-phased-build) ·aws-infra/INFRASTRUCTURE.md→ The Analysis Pipeline (reusestep_function/ec2_launch_template/dynamodb/runner_image).