release.sh:
- Add --yes/-y flag (and CI=true) for non-interactive execution
- Auto-resolve server.json conflict during rebase-before-push so CI's
SHA256 commit no longer blocks the push
- Fix major version bump (was double-assigned, now single expression)
build-release.sh:
- Remove cp of /CLAUDE.md (gitignored personal file — caused build failure)
- Bundle all IDE setup docs (QUICKSTART, CLAUDE, CURSOR, VSCODE, WINDSURF)
- Use set -euo pipefail; chmod +x binary; clean up dist/ subdir after tar
build-rust.sh:
- Replace Windsurf-specific install hint with generic cargo install --path . --force
- Use set -euo pipefail
setup.sh:
- Replace "Antigravity" with "Claude Desktop" in comments and output
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update WINDSURF.md: Use registry name io.github.masdevid/mt5-quant
- Update CURSOR.md: Use ~/.local/bin/mt5-quant path
- Update QUICKSTART.md: Use standard path for all clients
- Update VSCODE.md: Use standard path
- Update setup.sh: Prefer ~/.local/bin/mt5-quant over project path
- Add fallback warning in setup.sh if project path used
Single source of truth: ~/.local/bin/mt5-quant
list_symbols:
- Reads terminal.ini to detect active broker server (LastScanServer)
- Lists all servers in Bases/ with their available symbols
- Warns if OptMode=-1 needs reset
- Accepts optional server filter
list_experts:
- Recursively scans MQL5/Experts/ including sub-folders
- Returns name, subfolder, and ready-to-use run_backtest_expert value
- Accepts optional name filter (case-insensitive)
backtest_pipeline.sh:
- Fail fast with clear actionable message when MT5 is running and
--kill-existing not set (instead of silently timing out after 900s)
- Updated help text for --kill-existing flag
_check_symbol fix:
- Was reading terminal_dir/history/ (does not exist)
- Now reads Bases/<active_server>/history/ from terminal.ini
- When symbol missing: shows which other servers have it
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Default behavior change:
- ShutdownTerminal=0: MT5 stays open after backtest completes
- Report detected via file watching (poll every 5s) instead of
waiting for process exit — decouples completion from shutdown
- Running MT5 instance: launch a second terminal64.exe with /config:
(Windows single-instance passthrough delivers config to running
window without killing it, then second instance exits)
New flags (script + MCP tool):
- --shutdown / shutdown:true — ShutdownTerminal=1, synchronous wait,
kills running instance first (CI/headless use case)
- --kill-existing / kill_existing:true — explicit opt-in to SIGTERM
existing MT5 before launch (fallback if passthrough fails)
Progress reporting during file-watch poll (elapsed counter printed
every 5s); timeout error now includes actionable hints.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>