v0.3.0 — ?refresh + 429 in OpenAPI + /rates/ta uses bars cache Closes the three deferred items from v0.2.0: 1. `?refresh=true` query param threaded through 24 cacheable operations. Bypasses the cache read, still writes the fresh result back. Default false — caching stays transparent. 2. `429 RATE_LIMIT_NEAR` documented in OpenAPI on every IBKR-bound operation. Body shape unchanged from v0.2.0 runtime behavior; clients can now discover it via /openapi.json instead of having to be told. 3. /rates/ta endpoints split into bars-via-cache + ta_enrich. Cache hits = zero IBKR load + fresh wickworks indicators. Every TA call also grows the goldmine. Stack: Python 3.12 + FastAPI + ib_async + Linux-native IB Gateway. 142 tests pass. ruff + bandit + pip-audit + audit-compose all clean at release. Generated clients import paths: Go: github.com/psyb0t/ibkr-httpapi/pkg/clients/go Python: pip install "git+https://github.com/psyb0t/ibkr-httpapi.git@v0.3.0#subdirectory=pkg/clients/python/ibkr-httpapi-client"