25 std::shared_ptr<HarnessJournal> journal = {},
26 std::shared_ptr<HarnessRetentionStore> retention = {});
32 void save_artifact(
const std::string& artifact_id,
const json& record)
override;
33 std::optional<json> load_artifact(
const std::string& artifact_id)
override;
34 void save_run(
const std::string& run_id,
const json& record)
override;
35 std::optional<json> load_run(
const std::string& run_id)
override;
36 void append_event(
const json& event)
override;
37 std::vector<json> list_events(
const std::string& run_id,
38 std::size_t after_sequence = 0,
39 std::size_t limit = 1000)
override;
44 std::shared_ptr<HarnessRecordStore> records_;
45 std::shared_ptr<HarnessJournal> journal_;
46 std::shared_ptr<HarnessRetentionStore> retention_;