Work type
Engineering change / feature slice
Change class
Infrastructure, CI, or process change
Why this matters
Remote cronsd has different process, auth and durable-store topology. #1010 cannot infer its conversational behavior from embedded cron proof; it needs co-owned-process, same-conversation evidence.
Protected path
Isolated lifecycle owns harnessd plus a distinct authenticated cronsd/store/listener -> remote dispatch -> harness child run/events -> remote API/history/store plus attached 100x30 PTY same conversation.
Acceptance contract
Provision/tear down only owned cronsd and harnessd resources. Prove remote counterparts of cron CRUD, fire/run linkage, no-overlap, restart, reconnect replay and isolation, with raw remote/harness endpoints, both stores, and same-conversation attached TUI frames. Reject shared/default ports/stores and never substitute shell-only cron proof.
Current architecture and search evidence
cronsd env/config cmd/cronsd/main.go:55-115,150-235; HarnessExecutor configured at :75-79; remote dispatch internal/cron/remote_run_starter.go:99,187; harness remote branch cmd/harnessd/bootstrap_helpers.go:397. #1280 owns only harnessd; #1285 supplies attached PTY but not a co-owned cronsd.
Cross-surface impact map
Acceptance lifecycle gains co-owned remote process/listener/store only. Existing auth/API/remote endpoints and both durable stores are inspected. Explicit lifecycle/restart/cancellation/port isolation. TUI attached frames; native GUI excluded. No production API/schema/deployment modification absent observed defect. Tests/docs/logs/indexes required.
Product and UX contract
None — acceptance-only proof of existing remote path.
In scope
Remote lifecycle provision plus remote C1-C6 scenarios/artifacts, after #1285.
Out of scope
Embedded cron/callback scenario implementation, native GUI, product fixes not justified by live evidence.
Coordination and dependencies
Depends on #1285 and shares scenario conventions with #1279. Keep one focused PR with Closes #N.
Test-first plan
Red owned-resource and auth attachment tests; red remote fire identity test; then overlap/restart/reconnect/isolation. Focused/race/full regression plus retained live API+PTY artifacts.
Verification plan
Exact SHA; unique ports/paths; authenticated remote API/history, harness API/SSE, both stores, identity-linked 100x30 frame hashes, full regression/CI/review.
Rollout and rollback
Acceptance-only; revert PR. No production migration/deployment.
Documentation and handoff
Update plan/impact/logs/indexes and #1279 runbook.
Definition of done
Process acknowledgement
Work type
Engineering change / feature slice
Change class
Infrastructure, CI, or process change
Why this matters
Remote cronsd has different process, auth and durable-store topology. #1010 cannot infer its conversational behavior from embedded cron proof; it needs co-owned-process, same-conversation evidence.
Protected path
Isolated lifecycle owns harnessd plus a distinct authenticated cronsd/store/listener -> remote dispatch -> harness child run/events -> remote API/history/store plus attached 100x30 PTY same conversation.
Acceptance contract
Provision/tear down only owned cronsd and harnessd resources. Prove remote counterparts of cron CRUD, fire/run linkage, no-overlap, restart, reconnect replay and isolation, with raw remote/harness endpoints, both stores, and same-conversation attached TUI frames. Reject shared/default ports/stores and never substitute shell-only cron proof.
Current architecture and search evidence
cronsd env/config
cmd/cronsd/main.go:55-115,150-235;HarnessExecutorconfigured at:75-79; remote dispatchinternal/cron/remote_run_starter.go:99,187; harness remote branchcmd/harnessd/bootstrap_helpers.go:397. #1280 owns only harnessd; #1285 supplies attached PTY but not a co-owned cronsd.Cross-surface impact map
Acceptance lifecycle gains co-owned remote process/listener/store only. Existing auth/API/remote endpoints and both durable stores are inspected. Explicit lifecycle/restart/cancellation/port isolation. TUI attached frames; native GUI excluded. No production API/schema/deployment modification absent observed defect. Tests/docs/logs/indexes required.
Product and UX contract
None — acceptance-only proof of existing remote path.
In scope
Remote lifecycle provision plus remote C1-C6 scenarios/artifacts, after #1285.
Out of scope
Embedded cron/callback scenario implementation, native GUI, product fixes not justified by live evidence.
Coordination and dependencies
Depends on #1285 and shares scenario conventions with #1279. Keep one focused PR with
Closes #N.Test-first plan
Red owned-resource and auth attachment tests; red remote fire identity test; then overlap/restart/reconnect/isolation. Focused/race/full regression plus retained live API+PTY artifacts.
Verification plan
Exact SHA; unique ports/paths; authenticated remote API/history, harness API/SSE, both stores, identity-linked 100x30 frame hashes, full regression/CI/review.
Rollout and rollback
Acceptance-only; revert PR. No production migration/deployment.
Documentation and handoff
Update plan/impact/logs/indexes and #1279 runbook.
Definition of done
Process acknowledgement