cardano-foundation / cardano-foundation/cardano-rosetta-java
Operation type filtering broken in cardano-rosetta-java
- Dominant language
- Java
- Stars
- 26
- Forks
- 15
- Avg merge
- 5d 3h
- Merged PRs (30d)
- 2
Description
### Context & versions
- **Implementation**: cardano-rosetta-java v1.2.9 (regression from cardano-rosetta)
- **Network**: preprod
- **Endpoint**: `/search/transactions`
- **Comparison**: cardano-rosetta v2.5.0 working correctly
### Steps to reproduce
1. Search for transactions by operation type:
```json
{
"network_identifier": {
"blockchain": "cardano",
"network": "preprod"
},
"type": "withdrawal",
"max_block": 3500000,
"limit": 1
}
```
2. Count operations of the requested type in returned transactions
3. Compare with cardano-rosetta using identical filter
### Actual behavior
Operation type filtering is completely ignored in cardano-rosetta-java:
- **cardano-rosetta-java**: When filtering by `"type": "withdrawal"`, returns transactions with 0 withdrawal operations
- **cardano-rosetta**: Correctly returns transactions containing 1+ withdrawal operations
The implementation accepts the type parameter but ignores it entirely, returning unrelated transactions.
### Expected behavior
Should only return transactions containing operations of the specified type. The older cardano-rosetta implementation correctly returns transactions with withdrawal operations when filtered by type "withdrawal".
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the /search/transactions implementation and trace how the type parameter is accepted and applied. Reproduce the preprod request with type "withdrawal" and compare results with cardano-rosetta v2.5.0; done means returned transactions contain one or more operations of the requested type.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- blockchain, java
- Domain
- api, blockchain
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100