Skip to content

epic: redisctl 1.0 Redis Cloud client readiness audit #152

Description

@joshrotenberg

Goal

Establish enough evidence and API stability in redis-cloud-rs for redisctl 1.0 to depend on it as the supported Redis Cloud client.

This is not a requirement to implement every API operation. It is a requirement to make the supported surface explicit, current against the published specification, and validated against a dedicated non-production Redis Cloud account.

Existing audit backlog

Readiness review

  • Compare the complete typed route inventory with the current published Redis Cloud OpenAPI document.
  • Classify every published operation as supported, deliberately unsupported, or raw-only, with rationale.
  • Run the safe compliance matrix against a dedicated test account and review every known difference and skipped category.
  • Exercise representative reversible and destructive lifecycles with explicit cost, cleanup, and safety controls.
  • Review public model behavior for unknown fields, optionality, numeric/string drift, pagination, async tasks, and error classification.
  • Review the consumer-facing API for changes that should happen before the next stable client release.
  • Publish an audited crate release with migration notes suitable for redisctl consumption.

Exit criteria

  • The bundled specification and route inventory match the current upstream source of truth.
  • Live validation covers the critical read and lifecycle journeys used by redisctl.
  • Unsupported or unverified areas are explicit and are not described as full coverage.
  • CI detects future specification drift and material coverage regression.
  • A released crate version is available for redisctl integration; redisctl does not consume an unreleased branch for 1.0.

Downstream

redis/redisctl#1090 will remain blocked until this audit is complete. Downstream integration is tracked by redis/redisctl#1086 and requires the audited crate release plus passing Cloud CLI/MCP contract tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions