mrapids 0.1.31

Your OpenAPI, but executable
Documentation
# Simplification Summary for v0.1.29

## What We Removed (1,000+ lines of over-engineering)

❌ **GraphQL filter translation** - Removed complex GraphQL to SQL conversion
❌ **OData filter translation** - Removed OData to SQL translation 
❌ **Query optimization** - Removed client-side SQL optimization
❌ **Index suggestions** - Removed database index recommendations
❌ **DSL Parser** - Removed complex parsing for multiple query languages
❌ **Parameter Intelligence** - Removed complex parameter deduplication
❌ **Query replay from history** - Removed (use shell history instead)
❌ **23 complex tests** - Replaced with 2 simple tests

## What We Kept (The actually useful parts)

✅ **Interactive Query Builder (`--build-query`)** - Core feature for building complex filters
✅ **SQL-like filter syntax help (`--help-query`)** - Shows common query patterns
✅ **Query history saving** - Simple history for successful queries
✅ **Smart parameter examples** - Generates context-aware examples

## Code Reduction

- **Before**: ~1,300 lines in query_intelligence.rs
- **After**: ~400 lines in query_intelligence.rs  
- **Reduction**: 70% less code
- **Test reduction**: From 23 tests to 2 tests

## Benefits of Simplification

1. **Faster compilation** - Less code to compile
2. **Easier maintenance** - Clear, focused functionality
3. **Lower cognitive load** - No unnecessary abstractions
4. **Same core value** - Still solves the original problem

## The Original Problem (Still Solved)

User needed help with: `filter=symbol in ("AABRM09") and targetCurrency in ("BRL")`

**Solution retained:**
- `--build-query` helps build these filters interactively
- `--help-query` shows the syntax
- Smart examples for filter parameters

## What Users Actually Need

```bash
# Interactive query building
mrapids run getFXSymbol --build-query

# Quick syntax reference  
mrapids run getFXSymbol --help-query

# Direct usage (unchanged)
mrapids run getFXSymbol --data 'filter=symbol in ("AABRM09")'
```

## Lessons Learned

1. **Start simple** - Could have shipped just the query builder
2. **YAGNI applies** - You Aren't Gonna Need It (GraphQL/OData translation)
3. **Real usage matters** - Most APIs use simple key=value or SQL-like filters
4. **Complexity creeps** - 5-phase architecture for string building was overkill

## Version 0.1.29 Status

**Ready to ship** ✅
- Core bugs fixed
- Essential features work
- Tests pass (85/85)
- Simplified implementation
- No breaking changes