Skip to content

feat: add cloud runtime client and image - #113

Merged
jefft72 merged 3 commits into
mainfrom
codex/cloud-runtime-client-image
Aug 25, 2026
Merged

jefft72 merged 3 commits into
mainfrom
codex/cloud-runtime-client-image

Conversation

@jefft72

@jefft72 jefft72 commented Aug 24, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds the typed cloud control-plane client and immutable runtime image release path for hosted Diffex sessions. Clients can create, list, inspect, attach to, stop, and delete sessions, while each connection obtains a fresh one-time attachment URL and validates the returned native protocol version.

Reasoning

REST lifecycle operations and the native WebSocket protocol have separate trust boundaries. The client therefore validates strict response shapes, requires HTTPS and WSS outside explicit loopback development hosts, and rejects protocol mismatches before streaming so browser bearer credentials and one-time tickets cannot leak through configuration drift.

Changes

  • Adds typed bearer-authenticated cloud session lifecycle methods
  • Requests a fresh one-time attachment URL for every WebSocket connection
  • Enforces native protocol version compatibility
  • Rejects cleartext API and attachment URLs outside localhost
  • Adds the AMD64 hosted runtime Dockerfile and minimal build context
  • Copies the root TypeScript configuration required by workspace image builds
  • Adds immutable SHA-tagged GHCR publishing with provenance and an SBOM
  • Documents the Daytona snapshot handoff

Testing

  • npm run hydrate:model-data
  • npm run build:offline
  • npm run check
  • npm run test --workspace @earendil-works/diffex-client - 41 tests passed
  • npm audit --audit-level=high - zero vulnerabilities
  • GitHub CI build-check-test - passed
  • GitHub Runtime Image build - passed

@jefft72 jefft72 added enhancement New feature or request coding-agent labels Aug 24, 2026
@jefft72 jefft72 self-assigned this Aug 24, 2026
@jefft72
jefft72 force-pushed the codex/cloud-runtime-client-image branch from 7b33139 to 9fa50cb Compare August 24, 2026 23:47
@jefft72
jefft72 changed the base branch from codex/hosted-pi-runtime-server to main August 24, 2026 23:47
Reject cleartext cloud API and attachment URLs outside explicit loopback development hosts so bearer credentials and one-time runtime tickets cannot be exposed by configuration drift or a malformed control-plane response.
@jefft72
jefft72 force-pushed the codex/cloud-runtime-client-image branch from 9fa50cb to e60daa8 Compare August 24, 2026 23:51
Include the root TypeScript base configuration in the runtime image build context so workspace package builds can resolve their shared compiler settings inside the Docker build stage.
@jefft72
jefft72 merged commit a60a767 into main Aug 25, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

coding-agent enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant