1 #ifndef ERF_PROVENANCE_H_
2 #define ERF_PROVENANCE_H_
98 [[nodiscard]]
bool valid () const noexcept
116 std::string
format_utc (std::time_t time_value);
132 const std::string& execution_start_utc);
137 const std::string& checkpoint_path);
142 const std::string& checkpoint_path);
Definition: ERF_Provenance.cpp:247
std::string uuid_v4_from_bytes(const std::array< std::uint8_t, 16 > &bytes)
Definition: ERF_Provenance.cpp:249
ProvenanceReadResult read_job_info_file(const std::string &path)
Definition: ERF_Provenance.cpp:482
std::string current_utc()
Definition: ERF_Provenance.cpp:315
constexpr int schema_version
Definition: ERF_Provenance.H:14
std::string serialize_provenance_block(const ProvenanceRecord &record)
Definition: ERF_Provenance.cpp:344
ExecutionProvenance initialize_execution_provenance()
Definition: ERF_Provenance.cpp:559
ProvenanceParseResult parse_provenance_block(std::string_view text)
Definition: ERF_Provenance.cpp:374
ExecutionProvenance make_restart_provenance(const ExecutionProvenance ¤t_invocation, const ProvenanceRecord &parent_checkpoint, const std::string &checkpoint_path)
Definition: ERF_Provenance.cpp:519
const char * lineage_status_token(LineageStatus status) noexcept
Definition: ERF_Provenance.cpp:320
LineageStatus
Definition: ERF_Provenance.H:23
std::string format_utc(std::time_t time_value)
Definition: ERF_Provenance.cpp:302
constexpr const char * provenance_end
Definition: ERF_Provenance.H:16
ExecutionProvenance make_incomplete_restart_provenance(const ExecutionProvenance ¤t_invocation, ProvenanceReadStatus failure_status, const std::string &checkpoint_path)
Definition: ERF_Provenance.cpp:543
const char * artifact_type_token(ArtifactType type) noexcept
Definition: ERF_Provenance.cpp:334
bool is_valid_uuid_v4(std::string_view uuid)
Definition: ERF_Provenance.cpp:262
ProvenanceReadStatus
Definition: ERF_Provenance.H:41
std::string generate_uuid_v4()
Definition: ERF_Provenance.cpp:270
ExecutionProvenance make_cold_start_provenance(const std::string &execution_uuid, const std::string &execution_start_utc)
Definition: ERF_Provenance.cpp:508
constexpr const char * provenance_begin
Definition: ERF_Provenance.H:15
ArtifactType
Definition: ERF_Provenance.H:34
Definition: ERF_Provenance.H:78
int artifact_step
Definition: ERF_Provenance.H:81
std::string artifact_uuid
Definition: ERF_Provenance.H:79
double artifact_time_seconds
Definition: ERF_Provenance.H:82
std::string artifact_created_utc
Definition: ERF_Provenance.H:83
ArtifactType artifact_type
Definition: ERF_Provenance.H:80
Definition: ERF_Provenance.H:63
int schema_version
Definition: ERF_Provenance.H:64
std::string source_checkpoint_uuid
Definition: ERF_Provenance.H:72
std::string execution_uuid
Definition: ERF_Provenance.H:66
std::vector< std::string > execution_lineage
Definition: ERF_Provenance.H:68
LineageStatus lineage_status
Definition: ERF_Provenance.H:71
bool lineage_complete
Definition: ERF_Provenance.H:70
std::string parent_execution_uuid
Definition: ERF_Provenance.H:67
std::string execution_start_utc
Definition: ERF_Provenance.H:74
std::string source_checkpoint_path
Definition: ERF_Provenance.H:73
int restart_generation
Definition: ERF_Provenance.H:69
std::string simulation_uuid
Definition: ERF_Provenance.H:65
Definition: ERF_Provenance.H:93
ProvenanceRecord record
Definition: ERF_Provenance.H:95
bool valid() const noexcept
Definition: ERF_Provenance.H:98
std::string diagnostic
Definition: ERF_Provenance.H:96
ProvenanceReadStatus status
Definition: ERF_Provenance.H:94
Definition: ERF_Provenance.H:87
ArtifactProvenance artifact
Definition: ERF_Provenance.H:89
ExecutionProvenance execution
Definition: ERF_Provenance.H:88