Skip to content

Evaluate Durable Objects for App Writer run orchestration after outbound keepalive change #6

Description

@ottenhoff

Cloudflare changed Durable Object lifecycle behavior on June 19, 2026: active outbound TCP connections created with connect() and outbound WebSockets now keep a Durable Object alive until the connection closes, up to 15 minutes. This may remove one of the main objections to using Durable Objects for long-running App Writer or agent orchestration, especially for streamed model/tool sessions. We should evaluate whether Lantern's App Writer run/session coordinator should move any orchestration state into a Durable Object, while keeping generated learning apps away from DO bindings, raw outbound access, LMS credentials, and direct storage. The evaluation should compare the current runner with a DO-backed run coordinator, confirm whether our model/provider calls use plain fetch streaming versus outbound WebSocket/TCP paths, account for the 15-minute keepalive limit and duration charges, and identify what state must be persisted incrementally so restarts/deploys do not lose generation progress. This is an architecture evaluation issue, not approval to change the governed runtime boundary.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions