Skip to content

Backend + HTTP client traits #487

Closed
Closed

Description

@aram356

Description

Implement PlatformBackend and PlatformHttpClient backed by Fastly SDK. Introduce PlatformResponse with backend_name: Option<String> for upstream correlation. Abstract send/send_async behind traits. Integration send calls deferred to PR 13.

EdgeZero ProxyClient relationship

Before this PR merges, file an EdgeZero issue to generalize ProxyClient into an HttpClient trait supporting both synchronous proxy-style sends and the async fan-out pattern (send_async + select). The trusted-server PlatformHttpClient Fastly impl works independently until the generalized EdgeZero trait lands, at which point the Fastly impl swaps to implementing the EdgeZero trait.

Done when

  • PlatformResponse with backend_name
  • send/send_async abstracted
  • EdgeZero issue filed for ProxyClient → HttpClient generalization
  • Per-PR gates pass

Blocked by

PR 2

References

Activity

  1. self-assigned this
    on Mar 12, 2026
  2. added theissue type on Mar 12, 2026
  3. changed the title [-]EZ PR 6: Backend + HTTP client traits[/-] [+]Backend + HTTP client traits[/+] on Mar 12, 2026
  4. removed their assignment
    on Mar 13, 2026
  5. added a commit that references this issue on Mar 20, 2026
  6. prk-Jr commented on Mar 22, 2026

    @prk-Jr
    Collaborator

    Flagged in PR #545 review: PlatformBackendSpec and BackendConfig have overlapping fields (scheme, host, port, certificate_check, first_byte_timeout). Every ensure call allocates owned Strings that are immediately borrowed. Unifying or sharing the type is in scope for this issue.

  7. self-assigned this
    on Mar 25, 2026
  8. added a commit that references this issue on Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions