AGENTS.md · git:20260917.ba49c3d · 2026-09-17 · sha256 7a1a0d540bed4a5e
AGENTS.md git:20260917.ba49c3dA
Immutable. This exact content is served forever at /api/v1/blob/7a1a0d540bed4a5e.
# Repository guidance ## Workspace and purpose This is the standalone open-source **QMT Python Bridge** repository. Canonical checkout on the maintainer's machine: `D:\bigqmt-data-bridge`. Perform all future bridge development here. Do not require or edit the original private data-collection repository, import its configuration/history, or change production jobs. Other contributors may use another checkout path; do not hardcode the maintainer's username. If a local HANDOFF.md exists, read it before continuing development; it is private, Git-ignored, and not required in a fresh checkout. Then read the relevant approved specification and execution status. Preserve unrelated working-tree changes. Use feature branches; do not merge main, force-push, publish releases, or switch production as an implied side effect of development. Verify the current branch and remote with Git. ## Current scope - Delivered package: experimental read-only historical file bridge, with opt-in K-line downloads. - M1a: embedded runtime capability inventory implemented and tested; this is not a transport. - M1b memory transport passed the actual Python 3.6.8 synthetic and controlled recovery gates. Read-only polling market snapshots and the external archive consumer are implemented; actual market acceptance remains separate. Trading is not implemented. Never claim full xtquant compatibility or trading readiness from module presence or offline test results. - Scope and remaining acceptance gates are governed by `docs/superpowers/specs/2026-09-11-stock-etf-bridge-design.md`. ## Runtime and safety - External Python: 3.10+ with its own dependencies. Embedded QMT target observed: Python 3.6.8. Do not copy missing binary modules into QMT or bypass broker permissions. - QMT UI actions belong to the user. Give precise script/configuration/log instructions; never automate clicks, stop existing strategies, or restart the client without direction. - Real-time market payloads must stay in memory; no file IPC or RAM-disk fallback. Historical caches and durable order/dedup audit records may persist. - Do not modify a running embedded worker assuming reload is safe. Imported modules may remain cached. Isolate new experiments and arrange explicit user-controlled upgrades. - First trading scope: ordinary A-share and ETF secondary-market limit orders, simulation first. Before any actual simulated order, confirm account, instrument, direction, quantity and price. There is no blanket authorization to trade live or switch production collectors. - Persist intent before native order submission; never retry an unknown order blindly. Account/market rules, reliable transport, reconciliation and risk gates precede trading. - Same-process history downloads and trading readiness must be mutually exclusive in the first trading implementation. Separate directories alone do not enforce this. - Bound waits and report failures promptly. An external timeout does not cancel embedded calls. Use UTC/explicit Beijing time, not the machine's local date, for trading-day decisions. ## Verification Use an existing external Python environment; first check `python --version`. From repo root: ```powershell python -m pytest tests/ experiments/qualification_v1/test_qualification.py -q git diff --check ``` Default pytest discovery omits qualification tests. State the exact command/count. Test changes before implementation when adding behavior; use independent protocol expectations in tests, not only constants shared with the producer. Review changes independently. Keep offline, actual terminal, cache-hit and actual-download evidence distinct. Use explicit `incomplete` status for unexecuted gates. Do not invent missing test evidence. ## Open-source delivery Maintain README, tests, supporting docs and the repository Skill. Keep any local HANDOFF.md updated without adding it to Git. The existing Skill covers legacy/cache_only only; auto and memory/trading need separate updates and validation before claiming coverage. Do not install the Skill automatically. Keep MIT attribution. Deliver source only: no installer builds, automatic Release or PyPI publish. Exclude credentials, accounts, raw market data, private configs, logs, evidence and broker binaries. Use sanitized examples; stage explicit files and inspect the staged diff and outgoing commits. Commit messages must not contain assistant product names. Verify the intended GitHub remote.