Cloud: edit environment setup from the chat
The Session Info environment cog and startup checklist share an Edit cloud environment sheet. Its summary drills into network access, write-only secrets, a Bash setup script and environment variables; Back returns to the same draft, Cancel discards it, and Save changes PATCHes only edited fields.
Leo: "and if i click the < it takes me to environemnt setup / which is the same as where the cog takes me".
The script editor includes line numbers, Choose file, Copy, the 64 KB UTF-8 limit, and repository-derived prefill when no custom script is saved. Default cannot be renamed. Secret values stay in the pending password inputs, never return in reads, and are dropped after closing or saving. Failed saves retain edits for retry.
The app forwards through the existing daemon Cloud transport to the platform origin with the existing install identity token. Swift only forwards; Rust owns HTTP and route validation. The protocol accepts this credential-bearing operation only from the verified native app, refuses redirects, and redacts diagnostics. Cloud starts carry an optional selected environment id; the workspace ensure integration resolves an omitted id to personal Default.
Design: leo-workspace design/cloud.md, design/session-info.md, and design/session-panel.md. Session Info itself gains no Save button. openCloudEnvironment({environmentId?,repo?,ref?,section?}) is the shared entry point. The separate cog and checklist changes call it. Seven gallery states cover the sheet at narrow, normal and wide sizes.
Limitations: the platform currently stores Limited network access without enforcing it on machines; both overview and network editor say so. Backend environment and derive routes are supplied by the platform API changes. The workspace-machine ensure cutover and the final integrated DEV flow are separate coordinated changes.
Validation:
- 29 focused Bun behavior tests pass (drafts, file-read races, UTF-8 limits, DOM drill/back/Cancel, environment start serialization).
- Cloud string tests pass; all 44 new strings are translated and validated in 21 locales (924 values).
- Web lint/type checks pass. Existing static localization debt and workspace-package grouping drift remain outside this change.
- Fleet app compile passed at
5ca97ef3091c9e4f1ac3eba25d24775a7d66894d(62 seconds). Fleet Rust and focused Swift checks, independent review, and the required web verdict are recorded below when complete.
Risk: high because the new forwarding operation carries write-only secrets and an install token. It is restricted to the verified native app and the existing platform origin rules. The largest portion is translated catalogs and regenerated protocol bindings; the editor, its one host path and tests ship together to avoid dead entry points.
Agent session: agent session