Table of Contents

src/MultiSiteManufacturing.Contracts/Protos/compliance.proto

This page is part of the documentation for Orleans.Lattice 9.9.0 (release line 9.9), built 2026-10-04. It is also published as markdown, with every table and list, at src-multisitemanufacturing-contracts-protos-compliance-proto.md, and llms.txt lists every page.

Part of MultiSiteManufacturing source.

syntax = "proto3";

package multisitemfg.v1;

option csharp_namespace = "MultiSiteManufacturing.Contracts.V1";

import "common.proto";
import "google/protobuf/empty.proto";

service ComplianceService {
  rpc GetPartCompliance (GetPartComplianceRequest) returns (PartComplianceView);
  rpc WatchDivergence   (google.protobuf.Empty)    returns (stream DivergenceReport);
}

message GetPartComplianceRequest {
  string serial = 1;
}

message PartComplianceView {
  string serial = 1;
  ComplianceState baseline_state = 2;
  ComplianceState lattice_state = 3;
  bool diverges = 4;
}

message DivergenceReport {
  string serial = 1;
  ComplianceState baseline_state = 2;
  ComplianceState lattice_state = 3;
  // True when the two backends previously disagreed but have now
  // converged - lets subscribers drop a row from their divergence
  // feed instead of re-rendering a "resolved" state.
  bool resolved = 4;
}