#pragma once // Step 1428: Sprint 118 integration summary. #include struct Sprint118IntegrationSummary { static constexpr int sprintNumber = 118; static constexpr int stepsCompleted = 10; static constexpr const char* theme = "Sprint 118 Plan: Distributed Failure Capture and Evidence Normalization"; static bool verify() { return sprintNumber == 118 && stepsCompleted == 10; } static nlohmann::json toJson() { nlohmann::json j = nlohmann::json::object(); j["sprint"] = sprintNumber; j["steps"] = stepsCompleted; j["theme"] = theme; j["status"] = "complete"; nlohmann::json tools = nlohmann::json::array(); tools.push_back("whetstone_capture_distributed_failure"); tools.push_back("whetstone_list_distributed_failures"); tools.push_back("whetstone_get_distributed_failure_bundle"); j["tools_added"] = tools; nlohmann::json comps = nlohmann::json::array(); comps.push_back("DistributedFailureEvidenceSchemaNormalizer"); comps.push_back("JobOutputCanonicalizationAndTruncationUtilities"); comps.push_back("DistributedReproCommandResolverModel"); comps.push_back("EvidenceBundleStoreDeterministicOrdering"); comps.push_back("DistributedEvidenceQualityScorerModel"); comps.push_back("DistributedEvidencePacketExportModel"); j["components"] = comps; return j; } };