pub trait RdaBridge {
// Required methods
fn name(&self) -> &str;
fn ingest(
&self,
neutral: &NeutralArtifact,
) -> Result<VendorConfig, BridgeRefusal>;
fn certify_back(
&self,
placement: &VendorPlacement,
source: &SpatialProgram,
) -> Option<ChoreographyCertificate>;
}Expand description
One RDU front door. Object-safe: the CLI holds a Box<dyn RdaBridge> chosen by name.
Required Methods§
fn name(&self) -> &str
Sourcefn ingest(
&self,
neutral: &NeutralArtifact,
) -> Result<VendorConfig, BridgeRefusal>
fn ingest( &self, neutral: &NeutralArtifact, ) -> Result<VendorConfig, BridgeRefusal>
The neutral artifact → the SDK’s config bytes, or a typed refusal. A bridge never emits without forwarding the certificate: the artifact’s own proof must recheck against its own program first.
Sourcefn certify_back(
&self,
placement: &VendorPlacement,
source: &SpatialProgram,
) -> Option<ChoreographyCertificate>
fn certify_back( &self, placement: &VendorPlacement, source: &SpatialProgram, ) -> Option<ChoreographyCertificate>
The SDK’s placement of source’s computation → a certificate on THEIR mapping, or None.