fix(result-contract-completion): enforce complete result provenance
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
#include <filesystem>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include <fesa/core/diagnostic.hpp>
|
||||
@@ -12,6 +13,7 @@ namespace fesa {
|
||||
struct ParseDeckResult final {
|
||||
std::optional<ParsedDeck> deck;
|
||||
std::vector<Diagnostic> diagnostics;
|
||||
std::string input_fingerprint;
|
||||
};
|
||||
|
||||
[[nodiscard]] ParseDeckResult parse_deck(
|
||||
|
||||
@@ -60,6 +60,13 @@ struct Hdf5MetadataSnapshot final {
|
||||
std::string schema_version;
|
||||
std::string fesa_version;
|
||||
std::string unit_policy;
|
||||
std::string input_source;
|
||||
std::string input_fingerprint;
|
||||
};
|
||||
|
||||
struct Hdf5InputIdentity final {
|
||||
std::string source;
|
||||
std::string fingerprint;
|
||||
};
|
||||
|
||||
struct Hdf5SolverSettingsSnapshot final {
|
||||
@@ -86,7 +93,8 @@ struct Hdf5ReadResult final {
|
||||
[[nodiscard]] std::vector<Diagnostic> write_hdf5(
|
||||
const std::filesystem::path& path,
|
||||
const Domain& domain,
|
||||
const ResultDatabase& database);
|
||||
const ResultDatabase& database,
|
||||
const Hdf5InputIdentity& input_identity);
|
||||
|
||||
[[nodiscard]] Hdf5ReadResult read_hdf5_results(
|
||||
const std::filesystem::path& path);
|
||||
|
||||
Reference in New Issue
Block a user