Skip to content

Rust SDK: implement admin.dlq.list() / admin.dlq.requeue(id) #760

Description

@Mac-5

Description
Wrap GET /dlq and POST /dlq/:id/requeue (dlq_routes in src/handlers/dlq.rs) as admin.dlq.list() and admin.dlq.requeue(id). List dead-letter queue entries and requeue a specific failed transaction by ID.

Scope guardrail: this PR must only touch files under sdks/rust/. Do not touch anything under src/ — read the handler referenced below only to learn the request/response contract.

Requirements and context

  • Uses the admin client (see the admin client variant issue).
  • Must handle this edge case explicitly: requeuing an ID that no longer exists in the DLQ must surface as a clear "not found" error, not a silent success or a generic 500.
  • Depends on Issue Create Reusable Transaction Query Module #3.

Suggested execution

  1. Fork the repo and create a branch
    git checkout -b feature/rust-sdk-implement-admindlqlist-admindlqrequeueid
  2. Implement changes
    • Read src/handlers/dlq.rs to confirm the exact request/response shape (dlq_entries, count, and the requeue response message/dlq_id fields).
    • Implement admin.dlq.list() returning the entries list and count, and admin.dlq.requeue(id) returning the confirmation.
    • Add the response model types needed, matching the handler's actual fields.
  3. Test and commit
    • Run the crate's test command and confirm it's green
    • Example commit message: feat(sdk): add admin dlq resource methods

Guidelines

  • Assignment required before starting
  • PR description must include: Closes #118
  • PR must only touch files under sdks/rust/
  • Complexity: High (200 points) — Every issue in this Wave is tagged High — full points regardless of individual scope.

Metadata

Metadata

Labels

Stellar WaveIssues in the Stellar wave program

Type

No type

Fields

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