6namespace neograph::program {
8enum class ProgramChildSynthesisState {
20 ReconciliationRequired
23struct ProgramChildSynthesisRecordData {
24 ProgramSynthesisProposal proposal;
25 ProgramChildSynthesisGrant grant;
26 ProgramChildSynthesisParent parent;
27 ProgramSynthesisReservation reservation;
28 std::string binding_name;
29 std::uint64_t revision = 1;
30 std::string previous_id;
31 ProgramChildSynthesisState state = ProgramChildSynthesisState::Reserved;
33 json artifacts = json::object();
34 std::string error_code;
40 static constexpr std::size_t MAX_RECORD_BYTES = 8 * 1024 * 1024;
43 const ProgramChildSynthesisRecordData& data()
const noexcept;
44 const std::string& id()
const noexcept;
45 std::string serialize_canonical()
const;
50 std::shared_ptr<const Impl> impl_;
55 const std::vector<ProgramChildSynthesisRecord>& heads,
58struct ProgramTransitionPublication;
59NEOGRAPH_PROGRAM_API
bool is_valid_program_child_synthesis_publication(
60 const std::vector<ProgramChildSynthesisRecord>& heads,
62 const ProgramTransitionPublication& publication)
noexcept;
NEOGRAPH_PROGRAM_API bool is_valid_program_child_synthesis_append(const std::vector< ProgramChildSynthesisRecord > &heads, const ProgramChildSynthesisRecord &next) noexcept
Checks only immutable stage history; publication additionally verifies the live debit.
Stored grants are evidence only; recovery must reselect them through host policy.
Deep-owned, content-addressed run snapshot used for reconnect and CAS publication.
Host-owned bounded Program synthesis gateway.