diff --git a/docs/evidence/symbol-id-ranked-candidates-20260905.json b/docs/evidence/symbol-id-ranked-candidates-20260905.json new file mode 100644 index 0000000..d88dca9 --- /dev/null +++ b/docs/evidence/symbol-id-ranked-candidates-20260905.json @@ -0,0 +1,111 @@ +{ + "schemaVersion": "fidc-symbol-id-ranked-candidates/v1", + "measuredAt": "2026-09-05T06:23:00+08:00", + "host": "192.168.31.177", + "engineCommit": "52f9ee9d92781c1367ba4f01cbc3b1676fdd241e", + "serviceCommit": "9fd5a9e6d5668af57f6942fc3c4127953545d9c6", + "runnerBinarySha256": "c567c6da3d3625839a1d0127f755ccd278f31473924bf81ab837158370c08667", + "implementation": { + "description": "rank custom and quote-plan candidates as (symbol_id, rank, state_index), borrow symbols only at diagnostics and output boundaries, and use the lexical symbol-id order as the exact equal-rank tie breaker", + "symbolIdContract": "DataSet assigns u32 ids after sorting the complete normalized symbol set lexicographically", + "candidateSymbolClonesRemoved": true, + "selectionResultCached": false, + "persistentCacheAdded": false, + "rankTieSemanticsChanged": false, + "pitSemanticsChanged": false + }, + "rejectedIntermediate": { + "commit": "d7e11be", + "problem": "looked up both factor-row strings inside every equal-rank comparator call even though symbol ids already encode lexical order", + "engineSeconds": [6.056, 6.274, 5.298, 6.071, 6.066, 5.957], + "retainedInFinalCode": false + }, + "genericRankFiveYearContract": { + "rankBy": "free_float_cap", + "totalReturn": 0.7140315244542004, + "tradeCount": 21876, + "canonicalSha256": "84367993911b42437939aad88f29379d007af6f5f171667ff7ad6677dd488fd2", + "resultStoreSha256": "e2c7401bb9950da6fdfc0b516428061651e3e5b874a5f80c4b03ab8a81e90191", + "arenaBaselineMedianEngineSeconds": 4.222, + "engineSeconds": [3.809, 3.685, 3.739, 3.743, 3.76, 3.752], + "processHotMedianEngineSeconds": 3.743, + "incrementalImprovementPercent": 11.345334, + "originalCachedBaselineMedianEngineSeconds": 5.934, + "cumulativeImprovementPercent": 36.922818, + "resultConsistent": true, + "terminalAuditStatus": "clean" + }, + "primaryOrderedFiveYearContract": { + "totalReturn": 0.9219861819172002, + "tradeCount": 26088, + "canonicalSha256": "b42fea66237d06eadb24f6b8c9e2760e7319fe3699f315b99e01f433ef2aa234", + "resultStoreSha256": "92343fb369fea68b2544b654151c5c43a935940580b14afbe8eefb3844f72a54", + "previousProcessHotMedianEngineSeconds": 2.73, + "processHotMedianEngineSeconds": 2.611, + "observedImprovementPercent": 4.358974, + "resultConsistent": true, + "terminalAuditStatus": "clean" + }, + "secondaryOrderedFiveYearContract": { + "totalReturn": 1.1342962298106998, + "tradeCount": 19404, + "canonicalSha256": "0dbd3fad624097c673c4a5ec2f545f95e9c21d1d5337bb2b48ffeb22b16cb2b9", + "resultStoreSha256": "416d2f87241fb4c6b917f6aeecb588f82f6e7d51a103f4c53a74d11971f16839", + "previousProcessHotMedianEngineSeconds": 2.372, + "processHotMedianEngineSeconds": 2.346, + "observedImprovementPercent": 1.096121, + "resultConsistent": true, + "terminalAuditStatus": "clean" + }, + "fullMinuteContract": { + "scheduleTime": "10:18", + "matchingType": "minute_last", + "slippageModel": "price_ratio", + "slippageValue": 0.001, + "totalReturn": 0.03473222656500008, + "tradeCount": 156, + "canonicalSha256": "457c086b1bca784fe83f447bb22451925e8f022456bb0fc7b54237a7a7886849", + "resultStoreSha256": "04d804ee02ad7bc9b3649b4a2b4ddd902a4242ef38e00edeed8058860e9a6997", + "totalSeconds": [0.608, 0.608], + "engineSeconds": [0.161, 0.167], + "resultConsistent": true, + "terminalAuditStatus": "clean" + }, + "profile": { + "runId": "btr_1788560495042_846890_19", + "engineSeconds": 4.007, + "allThreadEventCycles": 86456699303, + "transientStockStateBuilderPercent": 18.97, + "numericVmEvaluatePercent": 8.0, + "rankedSelectionPercent": 7.6, + "adjustedCloseMovingAveragePercent": 5.38, + "stableSortPercent": 3.09, + "mallocPercent": 1.19, + "arenaBaselineMallocPercent": 3.34, + "lostSamples": 0 + }, + "memory": { + "serviceCgroupCurrentBytes": 11537428480, + "serviceCgroupPeakBytes": 11538923520, + "persistentCacheAddedBytes": 0 + }, + "testGate": { + "workspaceTotal": 544, + "passed": 536, + "ignoredManualBenchmarks": 8, + "failed": 0, + "lexicalSymbolIdRegression": true + }, + "remoteArtifacts": [ + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-tie-fixed-generic-20260905.json", + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-tie-fixed-primary-20260905.json", + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-tie-fixed-secondary-20260905.json", + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-tie-fixed-full-minute-20260905.json", + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-profile-20260905/perf.data", + "/srv/fidc/canonical/run/fidc-private/evidence/symbol-id-rank-profile-20260905/perf-report.txt" + ], + "acceptance": { + "status": "accepted_symbol_id_ranked_candidates", + "reason": "the final implementation preserves exact rank ties and all business outputs, improves the generic five-year median by 11.35 percent over the arena baseline and 36.92 percent over the old cached path, improves both ordered controls, and lowers malloc share without persistent memory" + } +}