An XAUUSD-focused Python + MT5/MQL5 research architecture built around immutable opportunities, append-only JSONL persistence, restart reconstruction, explicit terminal outcomes and fail-closed ambiguity. Published evidence is dry-run/research evidence, not a live-performance claim.
A recorded dry-run collection processed four decision journals across four demo-account contexts. The run scanned 3,697 records, processed 240 schema-v2 completed-candle observations and persisted 20 approved opportunities.
APPROVED OPPORTUNITIES
20
SECOND COLLECTION
0 NEW / 20 EXISTING
ORDER SEND
DISABLED
MT5 MUTATION
DISABLED
These numbers describe research-pipeline behavior and idempotent persistence, not trading profitability.
FAIL-CLOSED RESEARCH
INVALID DATASET WAS NOT KEPT
The same research sequence later exposed an outcome-model flaw: market and pending-entry states were not being distinguished correctly. The pilot was classified INVALIDATED_RESEARCH_PILOT, excluded from statistics and archived instead of being presented as valid evidence.
Reason: outcome model did not distinguish market and pending entry
Dataset watermark re-initialized after archival
Runtime wiring, order send and MT5 mutation remained disabled
02 / SAFETY INVARIANTSFAIL-CLOSED
PERSISTENCEIMMUTABLE / JSONL
Deterministic identifiers, append-only writes, conflict detection and record-integrity checks.
RESTARTRECONSTRUCT FROM JOURNALS
Outcome state is rebuilt from persisted opportunity and event history rather than hidden in memory.
AMBIGUITYNO NUMERIC RESULT WHEN UNKNOWN
Unknown or overlapping timelines remain ambiguous instead of being forced into a result.
EXECUTIONBOUNDED / EVIDENCE-GATED
Published dry-run evidence explicitly reports runtime wiring and order-send state.
03 / IMPLEMENTATION + FAIL-CLOSED RUNTIME
EXECUTION EXISTS. THE AUDITED WINDOW BLOCKED IT.
The source tree contains the MT5 executor, broker gate and account-bound gateway. The captured four-account demo runtime remained order-send disabled or blocked, so Build 212 publishes that limitation instead of converting implementation capability into a fake fill claim.
CLAIM
ARTIFACT
VERIFICATION
STATE
MT5 execution adapter implementedgate → order_send → fill check
Shows the account-binding re-check before mt5.order_send(), TRADE_RETCODE_DONE fill requirement, broker request construction and read-side history gateway.
Summarizes opportunity/outcome JSONL, four isolated Tickmill-Demo runtime journals, recovery observations and the explicitly invalidated research model with account identifiers removed.
TRUTH BOUNDARY: AUREUS has a real MT5 execution implementation. The audited package does not independently prove a completed fill; the captured runtime shows deliberate execution blocks and zero recovered open broker positions.
AUREUS is presented as a deterministic trading-research and execution architecture. The dry-run artifacts above validate data handling, persistence and safety behavior; they are not audited returns, a recommendation, or a guarantee of future performance.