diff --git a/docs/evidence/feature-date-market-integrity-20260913.json b/docs/evidence/feature-date-market-integrity-20260913.json new file mode 100644 index 0000000..a9650b7 --- /dev/null +++ b/docs/evidence/feature-date-market-integrity-20260913.json @@ -0,0 +1,1555 @@ +{ + "schema": "fidc.feature-date-market-integrity/v1", + "status": "backtest_deployed_and_replayed_trading_consumers_not_deployed", + "red_test": { + "sha256": "56971542de5dcd5cb696ba8b0ddd1fd71bfdc6249035754ddba2840a28d0eddd", + "case": "synthetic missing 2025-04-03 market with 2025-04-07 market present", + "incorrect_close": 20.0, + "incorrect_volume": 45600 + }, + "change": "Remove two feature-market fallbacks and the final unwrap_or; fail with the exact missing feature date, preserve same-day and execution quote semantics", + "tests": { + "engine-tests-v2": { + "passed": 783, + "failed": 0, + "ignored": 9, + "sha256": "5baf563bb68d8ef9a95036d5de4c6b46288fa6ac6cf934c4f005bacd82bf51f4" + }, + "runner-tests": { + "passed": 410, + "failed": 0, + "ignored": 8, + "sha256": "b045e7305ee8645f3ed695f2efa14c15a7e6fcfc83c4cf96f1754871d73c08db" + }, + "api-tests": { + "passed": 113, + "failed": 0, + "ignored": 3, + "sha256": "b773ba6f4e616cf68b00dfc54294c96f5091abd23a4624fe0a16388650e12f7e" + } + }, + "cohorts": { + "http-baseline": { + "schemaVersion": "fidc-backtest-benchmark/v5", + "label": "feature-date-baseline", + "generatedAtUnixSeconds": 1789251944, + "requestSha256": "93133139394cc66a97bdfee7393624e27a9867fdc13b079ac47e3f792c52e72e", + "requestOrigin": { + "kind": "request_file" + }, + "baseline": null, + "baselineComparable": true, + "baselineComparison": null, + "bundleRefresh": null, + "baseUrl": "http://127.0.0.1:8081", + "runs": [ + { + "slot": 0, + "cacheClass": "dataset_memory_cleared_disk_and_source_unchanged", + "runId": "btr_1789251904666_3596554_4", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 17.689, + "totalSeconds": 17.689, + "runnerSeconds": 17.375, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.07, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 8.141, + "engineTaskWallSeconds": 8.141, + "engineThreadCpuSeconds": 8.138, + "engineTaskCount": 1, + "dataSeconds": 8.664, + "resultSeconds": 0.478, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.329, + "resultFinalization": { + "canonicalSeconds": 0.329, + "processEventStoreSeconds": 0.139, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.055, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.025, + "datasetConstructSeconds": 1.998, + "externalFetchSeconds": 0.057, + "historyDateSeconds": 0.012, + "instrumentIndexBuildSeconds": 0.365, + "instrumentMetadataSeconds": 0.013, + "loopSeconds": 1.688, + "marketIndexBuildSeconds": 0.93, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 3.145, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 8.656 + }, + "finalizationSeconds": 0.31, + "finalizationTimings": { + "artifactVerificationSeconds": 0.004, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.305, + "preTerminalUpdateSeconds": 0.31, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "52f176b70bd0eeb04d7fa7ea53ba6b6cf7110e756e73a2f15ba073dcdf499c46", + "builtAt": "2026-09-13T04:00:12+08:00", + "engineCommit": "5c65e65c6f6a33d945812d58b2cfe7da56ae94f9", + "identitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "runnerBinarySha256": "3968b91d46c9f298db00c16d05a880216303a8df0dd4b3d9cd6623c165bae45c", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "4e08e81013bf00546cbd92e87b92b26c043cb6379c410afd6f293a7050dbbfe6", + "serviceCommit": "d5aa7ca5a682eb5d6b4e14b68d750f1d3805992f", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + }, + "datasetMemoryClear": { + "cleared": { + "datasetMemoryCache": { + "removedEntries": 1 + } + }, + "status": "ok" + } + }, + { + "slot": 1, + "cacheClass": "dataset_memory_cleared_disk_and_source_unchanged", + "runId": "btr_1789251925997_3596554_5", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 17.082, + "totalSeconds": 17.082, + "runnerSeconds": 16.792, + "bundleValidationSeconds": 0.007, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.003, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.947, + "engineTaskWallSeconds": 7.947, + "engineThreadCpuSeconds": 7.946, + "engineTaskCount": 1, + "dataSeconds": 8.333, + "resultSeconds": 0.488, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.339, + "resultFinalization": { + "canonicalSeconds": 0.339, + "processEventStoreSeconds": 0.138, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.059, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.026, + "datasetConstructSeconds": 1.972, + "externalFetchSeconds": 0.061, + "historyDateSeconds": 0.013, + "instrumentIndexBuildSeconds": 0.363, + "instrumentMetadataSeconds": 0.015, + "loopSeconds": 1.566, + "marketIndexBuildSeconds": 0.897, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 2.995, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 8.325 + }, + "finalizationSeconds": 0.286, + "finalizationTimings": { + "artifactVerificationSeconds": 0.005, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.281, + "preTerminalUpdateSeconds": 0.286, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "52f176b70bd0eeb04d7fa7ea53ba6b6cf7110e756e73a2f15ba073dcdf499c46", + "builtAt": "2026-09-13T04:00:12+08:00", + "engineCommit": "5c65e65c6f6a33d945812d58b2cfe7da56ae94f9", + "identitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "runnerBinarySha256": "3968b91d46c9f298db00c16d05a880216303a8df0dd4b3d9cd6623c165bae45c", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "4e08e81013bf00546cbd92e87b92b26c043cb6379c410afd6f293a7050dbbfe6", + "serviceCommit": "d5aa7ca5a682eb5d6b4e14b68d750f1d3805992f", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + }, + "datasetMemoryClear": { + "cleared": { + "datasetMemoryCache": { + "removedEntries": 1 + } + }, + "status": "ok" + } + } + ], + "summary": { + "resultConsistent": true, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "52f176b70bd0eeb04d7fa7ea53ba6b6cf7110e756e73a2f15ba073dcdf499c46", + "builtAt": "2026-09-13T04:00:12+08:00", + "engineCommit": "5c65e65c6f6a33d945812d58b2cfe7da56ae94f9", + "identitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "runnerBinarySha256": "3968b91d46c9f298db00c16d05a880216303a8df0dd4b3d9cd6623c165bae45c", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "4e08e81013bf00546cbd92e87b92b26c043cb6379c410afd6f293a7050dbbfe6", + "serviceCommit": "d5aa7ca5a682eb5d6b4e14b68d750f1d3805992f", + "status": "verified" + }, + "implementationIdentitySha256": "8150cc5318562622d7190f11955ca9e366b4c6652c4c0e99bfc5e71382441ddb", + "firstRun": { + "queueWaitSeconds": 0.0, + "executionSeconds": 17.689, + "totalSeconds": 17.689, + "runnerSeconds": 17.375, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.07, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 8.141, + "engineTaskWallSeconds": 8.141, + "engineThreadCpuSeconds": 8.138, + "engineTaskCount": 1, + "dataSeconds": 8.664, + "resultSeconds": 0.478, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.329, + "finalizationSeconds": 0.31 + }, + "subsequentRunsMedian": { + "queueWaitSeconds": 0.0, + "executionSeconds": 17.082, + "totalSeconds": 17.082, + "runnerSeconds": 16.792, + "bundleValidationSeconds": 0.007, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.003, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.947, + "engineTaskWallSeconds": 7.947, + "engineThreadCpuSeconds": 7.946, + "engineTaskCount": 1.0, + "dataSeconds": 8.333, + "resultSeconds": 0.488, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.339, + "finalizationSeconds": 0.286 + } + } + }, + "http-candidate": { + "schemaVersion": "fidc-backtest-benchmark/v5", + "label": "feature-date-candidate", + "generatedAtUnixSeconds": 1789252079, + "requestSha256": "93133139394cc66a97bdfee7393624e27a9867fdc13b079ac47e3f792c52e72e", + "requestOrigin": { + "kind": "request_file" + }, + "baseline": null, + "baselineComparable": true, + "baselineComparison": null, + "bundleRefresh": null, + "baseUrl": "http://127.0.0.1:8081", + "runs": [ + { + "slot": 0, + "cacheClass": "dataset_memory_cleared_disk_and_source_unchanged", + "runId": "btr_1789252042334_3735010_0", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 15.668, + "totalSeconds": 15.668, + "runnerSeconds": 15.366, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.008, + "riskFreeRateCacheHit": false, + "engineSeconds": 7.608, + "engineTaskWallSeconds": 7.608, + "engineThreadCpuSeconds": 7.606, + "engineTaskCount": 1, + "dataSeconds": 7.247, + "resultSeconds": 0.483, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.33, + "resultFinalization": { + "canonicalSeconds": 0.33, + "processEventStoreSeconds": 0.142, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.055, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.022, + "datasetConstructSeconds": 1.862, + "externalFetchSeconds": 0.057, + "historyDateSeconds": 0.012, + "instrumentIndexBuildSeconds": 0.332, + "instrumentMetadataSeconds": 0.014, + "loopSeconds": 1.453, + "marketIndexBuildSeconds": 0.769, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 2.315, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 7.239 + }, + "finalizationSeconds": 0.298, + "finalizationTimings": { + "artifactVerificationSeconds": 0.005, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.293, + "preTerminalUpdateSeconds": 0.298, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + }, + "datasetMemoryClear": { + "cleared": { + "datasetMemoryCache": { + "removedEntries": 0 + } + }, + "status": "ok" + } + }, + { + "slot": 1, + "cacheClass": "dataset_memory_cleared_disk_and_source_unchanged", + "runId": "btr_1789252061568_3735010_1", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 15.717, + "totalSeconds": 15.717, + "runnerSeconds": 15.435, + "bundleValidationSeconds": 0.005, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.003, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.985, + "engineTaskWallSeconds": 7.985, + "engineThreadCpuSeconds": 7.984, + "engineTaskCount": 1, + "dataSeconds": 6.949, + "resultSeconds": 0.481, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.331, + "resultFinalization": { + "canonicalSeconds": 0.331, + "processEventStoreSeconds": 0.14, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.057, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.024, + "datasetConstructSeconds": 1.975, + "externalFetchSeconds": 0.058, + "historyDateSeconds": 0.012, + "instrumentIndexBuildSeconds": 0.333, + "instrumentMetadataSeconds": 0.014, + "loopSeconds": 1.413, + "marketIndexBuildSeconds": 0.712, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 2.015, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 6.941 + }, + "finalizationSeconds": 0.278, + "finalizationTimings": { + "artifactVerificationSeconds": 0.004, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.273, + "preTerminalUpdateSeconds": 0.278, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + }, + "datasetMemoryClear": { + "cleared": { + "datasetMemoryCache": { + "removedEntries": 1 + } + }, + "status": "ok" + } + } + ], + "summary": { + "resultConsistent": true, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "firstRun": { + "queueWaitSeconds": 0.0, + "executionSeconds": 15.668, + "totalSeconds": 15.668, + "runnerSeconds": 15.366, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.008, + "riskFreeRateCacheHit": false, + "engineSeconds": 7.608, + "engineTaskWallSeconds": 7.608, + "engineThreadCpuSeconds": 7.606, + "engineTaskCount": 1, + "dataSeconds": 7.247, + "resultSeconds": 0.483, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.33, + "finalizationSeconds": 0.298 + }, + "subsequentRunsMedian": { + "queueWaitSeconds": 0.0, + "executionSeconds": 15.717, + "totalSeconds": 15.717, + "runnerSeconds": 15.435, + "bundleValidationSeconds": 0.005, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.003, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.985, + "engineTaskWallSeconds": 7.985, + "engineThreadCpuSeconds": 7.984, + "engineTaskCount": 1.0, + "dataSeconds": 6.949, + "resultSeconds": 0.481, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.331, + "finalizationSeconds": 0.278 + } + } + }, + "http-memory": { + "schemaVersion": "fidc-backtest-benchmark/v5", + "label": "feature-date-memory", + "generatedAtUnixSeconds": 1789252229, + "requestSha256": "93133139394cc66a97bdfee7393624e27a9867fdc13b079ac47e3f792c52e72e", + "requestOrigin": { + "kind": "request_file" + }, + "baseline": null, + "baselineComparable": true, + "baselineComparison": null, + "bundleRefresh": null, + "baseUrl": "http://127.0.0.1:8081", + "runs": [ + { + "slot": 0, + "cacheClass": "unverified", + "runId": "btr_1789252206579_3735010_2", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 8.79, + "totalSeconds": 8.79, + "runnerSeconds": 8.491, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.988, + "engineTaskWallSeconds": 7.988, + "engineThreadCpuSeconds": 7.987, + "engineTaskCount": 1, + "dataSeconds": 0.006, + "resultSeconds": 0.481, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.33, + "resultFinalization": { + "canonicalSeconds": 0.33, + "processEventStoreSeconds": 0.14, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.0, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.0, + "datasetConstructSeconds": 0.0, + "externalFetchSeconds": 0.0, + "historyDateSeconds": 0.0, + "instrumentIndexBuildSeconds": 0.0, + "instrumentMetadataSeconds": 0.0, + "loopSeconds": 0.0, + "marketIndexBuildSeconds": 0.0, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 0.0, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 0.006 + }, + "finalizationSeconds": 0.295, + "finalizationTimings": { + "artifactVerificationSeconds": 0.004, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.291, + "preTerminalUpdateSeconds": 0.295, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + } + }, + { + "slot": 1, + "cacheClass": "unverified", + "runId": "btr_1789252217644_3735010_3", + "status": "succeeded", + "queueWaitSeconds": 0.0, + "executionSeconds": 9.892, + "totalSeconds": 9.892, + "runnerSeconds": 9.61, + "bundleValidationSeconds": 1.233, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.88, + "engineTaskWallSeconds": 7.879, + "engineThreadCpuSeconds": 7.879, + "engineTaskCount": 1, + "dataSeconds": 0.006, + "resultSeconds": 0.479, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.331, + "resultFinalization": { + "canonicalSeconds": 0.331, + "processEventStoreSeconds": 0.138, + "storePublishSeconds": 0.004, + "summarySeconds": 0.001 + }, + "dataPreparationTimings": { + "adjustmentValidationSeconds": 0.0, + "availableStockStDates": 0, + "benchmarkFetchSeconds": 0.0, + "candidatePlanBasePanelSeconds": 0.0, + "candidatePlanSelectionSeconds": 0.0, + "corporateActionSeconds": 0.0, + "datasetConstructSeconds": 0.0, + "externalFetchSeconds": 0.0, + "historyDateSeconds": 0.0, + "instrumentIndexBuildSeconds": 0.0, + "instrumentMetadataSeconds": 0.0, + "loopSeconds": 0.0, + "marketIndexBuildSeconds": 0.0, + "quotePlanSeconds": 0.0, + "riskSnapshotSeconds": 0.0, + "sourceQuerySeconds": 0.0, + "stockStLookupSeconds": 0.0, + "supplementalExecutionFetchSeconds": 0.0, + "totalSeconds": 0.006 + }, + "finalizationSeconds": 0.278, + "finalizationTimings": { + "artifactVerificationSeconds": 0.004, + "cacheRegistrationSeconds": 0.0, + "postgresClientAcquireSeconds": 0.0, + "postgresPersistSeconds": 0.274, + "preTerminalUpdateSeconds": 0.278, + "schemaCheckSeconds": 0.0, + "timingSource": "fidc-backtest-service-monotonic" + }, + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "riskDecisionCount": 78, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditVerified": true, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationVerified": true, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "artifactManifest": { + "canonicalResult": { + "algorithm": "sha256", + "ordering": "engine_fact_order_v2", + "schemaVersion": "fidc-canonical-backtest-result/v2", + "sections": { + "accountEvents": { + "rowCount": 21555, + "sha256": "8c839c89191d2b5220fa1dd86f8d74bdd57fa566a096a0bbf6932d0247b48e8a" + }, + "equityFacts": { + "rowCount": 1025, + "sha256": "f928695650bdd90eb25d2acd478e0064046883649efa25cd2d4cdbbd27035c27" + }, + "fillEvents": { + "rowCount": 21393, + "sha256": "2a90bef0994dda1b7f6e914e4c58037ec0b91cd828eb09745f71aecde071f791" + }, + "holdingSnapshots": { + "rowCount": 28353, + "sha256": "799371917e516fb251b4afb60aeb4a1b8fc4b269ecfc27f827a3b388c4985a04" + }, + "orderEvents": { + "rowCount": 21491, + "sha256": "0685ac0c31933b6cf5d1319912de3f398c40ce7ee01c28b4abec1b98f92fb318" + }, + "riskAudits": { + "rowCount": 78, + "sha256": "e394cc9e8f3bac17a2f80f9db8738b91d4e960ff230647e17e5145b86d14b986" + } + }, + "sha256": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalRows": 93895 + }, + "processEventStore": { + "bytes": 13029289, + "identitySha256": "2dbf9b7dc8bd319c7a19c8c64b692b9180f840cb105042f1c1c18eaeab7873b6", + "manifestBytes": 8369, + "manifestSha256": "ca5ff7c14aaf52f08c299348df63b2a40de73b661475f356f23905e9377fc6b4", + "schemaVersion": "fidc-backtest-process-event-manifest/v1", + "sections": { + "processEvents": { + "blockCount": 52, + "bytes": 13020920, + "rowCount": 91977, + "sha256": "f3046d2585f2951e7dde36da9fe3b602f0d8d825827155827e53cab9d5f49c71" + } + }, + "sha256": "a5899f3f83eaf03620109672607565f0638920576113e57ceebe69eecaff2f4a", + "totalEvents": 91977 + }, + "resultStore": { + "bytes": 30455413, + "identitySha256": "9220d7316be46c0fa9b6ab01971544905c72759d319aa7f335542acf5370ad6b", + "manifestBytes": 46438, + "manifestSha256": "a778d9d7a6be29e55b668bf09fc5e543576bb85922ceda2f1f4993d91c625735", + "schemaVersion": "fidc-backtest-fact-manifest/v1", + "sections": { + "accountEvents": { + "blockCount": 52, + "bytes": 2786045, + "rowCount": 21555, + "sha256": "515e5355f1451e0776e2e9bc2c226c95a7e912539c4544f3fe5c1271aac47e37" + }, + "equityFacts": { + "blockCount": 52, + "bytes": 3262272, + "rowCount": 1025, + "sha256": "f8ba08e4bc821d4ac4e83eed0072719b0f4b5427a142d1107b29ecb9026c84e3" + }, + "fillEvents": { + "blockCount": 52, + "bytes": 6509709, + "rowCount": 21393, + "sha256": "33724d2d3114135c4c8cc4d3e0e49ef5ecce23ea2a9e662085c8dec0f6eb0fcc" + }, + "holdingSnapshots": { + "blockCount": 52, + "bytes": 12972396, + "rowCount": 28353, + "sha256": "842bcd0c3db9a357604ea4d5d7bb21e198864214fc36b72490dc91d074542d47" + }, + "orderEvents": { + "blockCount": 52, + "bytes": 4859094, + "rowCount": 21491, + "sha256": "a58486ea5a33c171a48c25cf9696cd3a7ce94b2df5b7dfcf515576faf0af902c" + }, + "riskAudits": { + "blockCount": 30, + "bytes": 19459, + "rowCount": 78, + "sha256": "9c32850968efbd8895515070b78613b1c77224c16d7a156c19a36fd480928af5" + } + }, + "sha256": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "totalEvents": 93895 + }, + "schemaVersion": "fidc-backtest-artifacts/v4" + } + } + ], + "summary": { + "resultConsistent": true, + "resultStoreDigest": "1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9", + "canonicalResultDigest": "3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7", + "totalReturn": 1.1145063528908001, + "tradeCount": 21393, + "terminalAudit": { + "cashReceivableCount": 0, + "cashReceivableTotalAmount": 0.0, + "earliestDeferredCashDate": null, + "futuresOpenOrderCount": 0, + "lastExecutionDate": "2025-11-17", + "omittedOpenOrderCount": 0, + "openOrderSamples": [], + "pendingCashFlowCount": 0, + "pendingCashFlowNetAmount": 0.0, + "status": "clean", + "stockOpenOrderCount": 0 + }, + "terminalAuditSha256": "b864aac0c3ffde1824aa520c5aa0cf6c71ddb9cb4d6bd5a7b8cfda2a94b35ff3", + "implementation": { + "buildManifestSha256": "3bfe194b563b1c54fa5697fa9dfb39348e2cfcb17fc1442784f1890c0a66d189", + "builtAt": "2026-09-13T06:26:41+08:00", + "engineCommit": "e3b39295787c4fd896753d633e457deddf9f1232", + "identitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "runnerBinarySha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "schemaVersion": "fidc-backtest-implementation/v1", + "serviceBinarySha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "serviceCommit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "status": "verified" + }, + "implementationIdentitySha256": "d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7", + "firstRun": { + "queueWaitSeconds": 0.0, + "executionSeconds": 8.79, + "totalSeconds": 8.79, + "runnerSeconds": 8.491, + "bundleValidationSeconds": 0.004, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.988, + "engineTaskWallSeconds": 7.988, + "engineThreadCpuSeconds": 7.987, + "engineTaskCount": 1, + "dataSeconds": 0.006, + "resultSeconds": 0.481, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.33, + "finalizationSeconds": 0.295 + }, + "subsequentRunsMedian": { + "queueWaitSeconds": 0.0, + "executionSeconds": 9.892, + "totalSeconds": 9.892, + "runnerSeconds": 9.61, + "bundleValidationSeconds": 1.233, + "sourceEpochSeconds": 0.0, + "strategyContractSeconds": 0.002, + "terminalCalendarSeconds": 0.0, + "riskFreeRateSeconds": 0.0, + "riskFreeRateCacheHit": true, + "engineSeconds": 7.88, + "engineTaskWallSeconds": 7.879, + "engineThreadCpuSeconds": 7.879, + "engineTaskCount": 1.0, + "dataSeconds": 0.006, + "resultSeconds": 0.479, + "unattributedSeconds": 0.0, + "canonicalSeconds": 0.331, + "finalizationSeconds": 0.278 + } + } + } + }, + "deployment": { + "manifest": { + "schema_version": "fidc-build-manifest/v1", + "generated_at": "2026-09-13T06:26:41+08:00", + "built_at": "2026-09-13T06:26:41+08:00", + "source": { + "engine_commit": "e3b39295787c4fd896753d633e457deddf9f1232", + "engine_path": "/srv/fidc/programs/src/fidc-backtest-engine", + "service_commit": "106a89d8bb74af494cdf84d9d3af5ec4bcb249cd", + "service_path": "/srv/fidc/programs/src/fidc-backtest-service" + }, + "binaries": { + "service": { + "path": "/srv/fidc/canonical/build/feature-date-candidate-20260913/release/fidc-backtest-service", + "sha256": "86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0", + "size_bytes": 29813880 + }, + "runner": { + "path": "/srv/fidc/canonical/build/feature-date-candidate-20260913/release/fidc-backtest-runner", + "sha256": "aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee", + "size_bytes": 25134848 + } + }, + "deployment": { + "manager": "/srv/fidc/programs/src/alpha-factory/scripts/manage-highmem177-backtest-stack.sh", + "source_lake_restarted": false, + "unit": "fidc-backtest-service-highmem177.service" + } + }, + "service": { + "MainPID": "3735010", + "NRestarts": "0", + "MemoryCurrent": "8488296448", + "MemoryPeak": "9979346944", + "User": "boris", + "ActiveState": "active" + } + }, + "source": { + "pid": 1700096, + "commit": "d5b682c6d097", + "source_stale": false + }, + "native_catalog_sha256": "cec37331a476bc39bdea32c308581b8ac2f86d005d8dd4cc7ba228c5d9dc9a2e", + "boundaries": [ + "Synthetic gap is code-path evidence, not fabricated market data", + "One real 2021-08-23..2025-11-17 contract, 21393 fills; not all strategies or financial PIT", + "Source and disk data caches retained; no result reuse", + "Last hot replay includes 1.233 seconds Source contract validation", + "Correctness change; timing differences are not claimed as a universal speedup", + "Paper/Live/Strategy Runtime consumers not rebuilt or restarted in this release", + "Production Source remains frozen; metadata cache candidate is separate and not published" + ] +} diff --git a/docs/feature-date-market-integrity-20260913.md b/docs/feature-date-market-integrity-20260913.md new file mode 100644 index 0000000..e91746e --- /dev/null +++ b/docs/feature-date-market-integrity-20260913.md @@ -0,0 +1,75 @@ +# 特征日行情缺口与跨日回退 + +## 问题 + +审查发现股票表达式上下文的三个位置把缺少的特征日行情回退到执行/当前市场日: +两个 `StockStateSnapshotSource::feature_market` 实现,以及最终构建器的 `unwrap_or(market)`。 +当 `factor_date` 早于 `date` 时,这会把后来日期的OHLCV用于原本指定的历史特征日。 +这是错误日期代用,并具有前视风险;不据此推断所有历史回测都已触发此路径。 + +真实代码的合成缺口回归已复现:2025-04-03因子快照存在但行情缺失, +2025-04-07行情存在,旧版返回close=20.0、volume=45600、open=19.0, +而非报告4月3日行情缺失。此回归使用合成数据验证代码路径,不是行情数据造假或真实市场收益样本。 + +## 修改 + +- 两个行情读取入口只返回指定特征日期的快照,删除向执行日的回退。 +- 构建器缺少快照时返回 `MissingSnapshot { kind: "feature_market", date: factor_date, symbol }`。 +- 保持原市场、候选和因子缺失错误优先级;失败状态不写入股票上下文缓存。 +- 同日上下文继续使用同日快照;正常跨日上下文仍将历史OHLCV与执行报价分开。 +- 不调整价格、因子、窗口、风险、手续费、滑点、成交量或原始数据,不引入替代缓存。 + +新增回归覆盖索引读取、每日视图读取、错误缓存边界和同日合法输入。 +原next-open涨跌停测试只有前一日因子、没有对应行情,原先隐式依赖了该回退。 +已补充两只证券各自明确的历史行情,并断言历史价1.80与决策日价2.20分开; +不放宽时点规则,也不改真实数据。 + +## 当前状态 + +177的红色回归已确认为行为失败;最初缺少错误枚举限定名的编译失败另存,不作为复现证据。 +修复后完整引擎783项、runner410项、API113项通过,分别9/8/3项既有外部或手动测试忽略。 +已通过官方入口发布到回测服务;Paper/Live/Strategy Runtime没有在本轮重建或重启, +不能将共享源码修复等同于全部消费者已经部署。 + +## 真实回放 + +固定原策略、2021-08-23至2025-11-17、初始1000万及原冻结bundle。 +保留历史`session_capacity_audit`,不能当作开盘容量验收。 +全部运行重新执行引擎,Source/磁盘数据缓存保持,不缓存回测结果。 + +| 状态 | 版本 | 运行ID | 总耗时 | 数据准备 | 引擎 | +|---|---|---|---:|---:|---:| +| 清DataSet内存 | 原版 | btr_1789251904666_3596554_4 | 17.689s | 8.664s | 8.141s | +| 清DataSet内存 | 原版 | btr_1789251925997_3596554_5 | 17.082s | 8.333s | 7.947s | +| 清DataSet内存 | 修复版 | btr_1789252042334_3735010_0 | 15.668s | 7.247s | 7.608s | +| 清DataSet内存 | 修复版 | btr_1789252061568_3735010_1 | 15.717s | 6.949s | 7.985s | +| DataSet复用 | 修复版 | btr_1789252206579_3735010_2 | 8.790s | 0.006s | 7.988s | +| DataSet复用 | 修复版 | btr_1789252217644_3735010_3 | 9.892s | 0.006s | 7.880s | + +六次均21,393笔成交,账户、权益、委托、成交、持仓、风控canonical及完整制品SHA一致, +终态clean,每次引擎执行次数为1。真实完整数据没有触发新增缺失错误。 +最后一次包含1.233秒Source合同验证,不能把DataSet复用等同于Source无等待。 +本轮未观察到该样本的性能回退,但这是正确性修复;主机负载及数据读取也有波动, +不将17秒至15秒归因于普遍算法提速,更不外推所有策略。 + +canonical:`3f089cbcc5412e07bbe2308d0dd60ac561a119f0a2228010fc3323714fde8ca7`。 +结果制品:`1905f0c8a887215279342b26d5769a6cbe40058971eef15adf86ef2eaa02aeb9`。 + +## 发布证据 + +177 engine `e3b39295787c4fd896753d633e457deddf9f1232`,service `106a89d8bb74af494cdf84d9d3af5ec4bcb249cd`。 + +- API:`86f0a0385410db8ab308edf892f4ad6376c0a706c0ebbac0f397a23539d782c0`。 +- Runner:`aebdd37ad30ee73f11a9ffd206ad8c978ced19a257cb51849881b0e5bdce36ee`。 +- 运行身份:`d196bd4740b1b506c42515a689ae155a21e37b8092956b99a298b8d7934e53c7`。 +- 在用构建根:`/srv/fidc/canonical/build/feature-date-candidate-20260913`,禁止清理。 +- PID3735010、Boris、active、NRestarts=0;收据时cgroup约7.91GiB,峰值约9.29GiB。 +- 原生目录字节SHA仍为`cec37331a476bc39bdea32c308581b8ac2f86d005d8dd4cc7ba228c5d9dc9a2e`。 +- Source保持d5/PID1700096,研究和信号未恢复,没有向券商提交订单。 + +证据根 `/srv/fidc/canonical/run/research/feature-date-integrity-20260913`。 +[结构化证据](evidence/feature-date-market-integrity-20260913.json), +SHA256 `56e70172916c45060106aca3eb006984735a3f85e6b13d2c325c409e83b8962b`。 +更多策略、真实缺口数据审计、Paper/Live消费者发布及完整财务PIT仍未完成。 +Source目录缓存的隔离后继验证单独见Alpha Factory的`docs/native-condition-transport-20260913.md`, +不能把本轮回测发布当作Source冻结解除。