syntax = "proto3"; package nexus.models.proto; import "nexus/models/proto/typed_document.proto"; message CrossReferenceOperation { string source = 1; string target = 2; uint32 last_retry_unixtime = 3; uint32 retry_count = 4; } message DocumentOperation { oneof operation { Vote vote = 1; UpdateDocument update_document = 3; }; } message Vote { int64 document_id = 1; int32 value = 2; int64 voter_id = 3; } message UpdateDocument { repeated string fields = 1; bool should_fill_from_external_source = 2; bool commit = 3; bool reindex = 4; TypedDocument typed_document = 5; }