Skip to content

Add CreateTransaction operation and models to Ledger API client#95

Merged
jfrench9 merged 1 commit intomainfrom
feature/create-transaction-op
Apr 16, 2026
Merged

Add CreateTransaction operation and models to Ledger API client#95
jfrench9 merged 1 commit intomainfrom
feature/create-transaction-op

Conversation

@jfrench9
Copy link
Copy Markdown
Member

Summary

Introduces the CreateTransaction operation for the Robo Ledger API, including new request/status models and client integration. This feature enables consumers of the robosystems_client to create transactions through the ledger service.

Key Accomplishments

  • New API Operation: Added op_create_transaction.py implementing the full create transaction operation within the extensions_robo_ledger API module, including request construction, serialization, and response handling (~289 lines).
  • New Data Models:
    • CreateTransactionRequest — comprehensive model representing the transaction creation payload with full serialization/deserialization support (~248 lines).
    • CreateTransactionRequestStatus — enum/status model representing the possible states of a create transaction request.
  • Ledger Client Integration: Extended LedgerClient with methods to invoke the new create transaction operation, providing a clean high-level interface for callers.
  • Model Registry: Updated models/__init__.py to export the new CreateTransactionRequest and CreateTransactionRequestStatus models, ensuring they are discoverable and importable from the top-level models package.

Breaking Changes

None. This is a purely additive change — new files and new methods on the existing LedgerClient. No existing interfaces or models were modified in a backward-incompatible way.

Testing Notes

  • Verify that CreateTransactionRequest correctly serializes to the expected API payload format and deserializes responses properly.
  • Test CreateTransactionRequestStatus enum values cover all states returned by the backend.
  • Validate the LedgerClient create transaction method end-to-end against a running or mocked Ledger API instance.
  • Ensure edge cases are handled (e.g., missing/optional fields in the request model, error responses from the API).

Infrastructure Considerations

  • This feature depends on corresponding backend support for the create transaction endpoint in the Robo Ledger service. Ensure the target API version is deployed before consuming this client functionality.
  • No new dependencies are introduced; the implementation follows existing patterns in the client library.

🤖 Generated with Claude Code

Branch Info:

  • Source: feature/create-transaction-op
  • Target: main
  • Type: feature

Co-Authored-By: Claude noreply@anthropic.com

…s to the API

This commit introduces two new models, `CreateTransactionRequest` and `CreateTransactionRequestStatus`, to the `robosystems_client` API. These models are now included in the public API surface, enhancing the functionality related to transaction handling. The changes ensure that the client can support additional transaction-related operations effectively.
@jfrench9 jfrench9 merged commit 7fab4ad into main Apr 16, 2026
1 check passed
@jfrench9 jfrench9 deleted the feature/create-transaction-op branch April 16, 2026 19:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant