- Add `coinhunter catlog` with limit/offset pagination for audit logs
- Optimize audit log reading with deque to avoid loading all history
- Allow `-a/--agent` flag after subcommands
- Fix upgrade spinner artifact and empty line issues
- Render audit log TUI as timeline with low-saturation event colors
- Convert audit timestamps to local timezone in TUI
- Remove futures-related capabilities
- Add conda environment.yml for development
- Bump version to 2.0.9 and update README
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add `coin` entry-point alias alongside `coinhunter`
- Add short aliases for all commands (e.g., a/acc, m, opp/o, b, s)
- Flatten `buy` and `sell` to top-level commands; remove `trade` parent
- Add `--doc` flag to print output schema and field descriptions per command
- Update README and tests
- Bump version to 2.1.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Binance exchangeInfo endpoint does not accept recvWindow, causing
RuntimeError when calling opportunity scan or any command that hits
exchange_info().
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Delete USDT-M futures support since the user's Binance API key does not
support futures trading. This simplifies the CLI to spot-only:
- Remove futures client wrapper (um_futures_client.py)
- Remove futures trade commands and close position logic
- Simplify account service to spot-only (no market_type field)
- Remove futures references from opportunity service
- Update README and tests to reflect spot-only architecture
- Bump version to 2.0.7
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Preprocess argv to reorder agent flag before subcommand parsing.
- Enables usage like `coinhunter account overview -s -f -a`.
- Bump version to 2.0.6.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add with_spinner context manager with cyan Braille animation for human mode.
- Wrap all query/execution commands in cli.py with loading spinners.
- Integrate shtab: auto-install shell completions during init for zsh/bash.
- Add `completion` subcommand for manual script generation.
- Fix stale output_format default in DEFAULT_CONFIG.
- Add help descriptions to all second-level subcommands.
- Bump version to 2.0.5.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add with_spinner context manager with cyan Braille animation for human mode.
- Wrap all query/execution commands in cli.py with loading spinners.
- Integrate shtab: auto-install shell completions during init for zsh/bash.
- Add `completion` subcommand for manual script generation.
- Fix stale output_format default in DEFAULT_CONFIG (json → tui).
- Add help descriptions to all second-level subcommands.
- Version 2.0.4.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Align CLI verb with pipx/pip terminology (`pipx upgrade`).
- Rename internal `self_update` to `self_upgrade` for consistency.
- Update README and tests accordingly.
- Bump version to 2.0.4.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add dedicated render branch for self_update results.
- Hide progress-only stderr on success to eliminate pipx noise.
- Remove generic "RESULT" heading from fallback key-value output.
- Bump version to 2.0.3.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace default JSON output with styled TUI tables and ANSI colors.
- Add -a/--agent global flag: small payloads → JSON, large → pipe-delimited compact.
- Update README to reflect new output behavior and remove JSON-first references.
- Bump version to 2.0.2.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add `coinhunter update` CLI command for pipx/pip upgrade
- README: document update behavior and recommend pipx install
- Dynamic version badge with cacheSeconds=60
- Version bump: 2.0.0 → 2.0.1
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix TOCTOU race conditions by wrapping read-modify-write cycles
under single-file locks in execution_state, portfolio_service,
precheck_state, state_manager, and precheck_service.
- Add missing test coverage (96 tests total):
- test_review_service.py (15 tests)
- test_check_api.py (6 tests)
- test_external_gate.py main branches (+10 tests)
- test_trade_execution.py new commands (+8 tests)
- Unify all agent-consumed JSON messages to English.
- Config-ize hardcoded values (volume filter, schema_version) via
get_user_config with sensible defaults.
- Add 1-hour TTL to exchange cache with force_new override.
- Add ruff and mypy to dev dependencies; fix all type errors.
- Add __all__ declarations to 11 service modules.
- Sync README with new commands, config tuning docs, and PyPI badge.
- Publish package as coinhunter==1.0.0 on PyPI with MIT license.
- Deprecate coinhunter-cli==1.0.1 with runtime warning.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>