ProtoMolt court-to-search contract demonstration This is an executed sample, adapted from ProtoMolt's MessageProjectionTest. The filing record is synthetic test data: 24-cv-00117, State v. Example. The transformations, rejection, two loopback gRPC calls, chunking, and model inference were actually executed. result.json contains the captured output. The DocumentSink RPC validates and acknowledges a document. It does not write an index. ProtoOptionsIndexingHintSource reads the real index annotations; PolicyDerivation executes the declared chunking and embedding policy. The sample yields one title chunk and a 384-component float vector. COSINE is the declared search similarity; this demonstration does not perform a search. Documentation is carried as protobuf comments and retained in the descriptor set with protoc --include_source_info. This is not a claim that arbitrary registered RPCs acquire their own HTTP/OpenAPI endpoints. Files: court-search.proto Complete compiled source and destination service contract ContractDemo.java Executed Java program, including the two local RPC servers run.sh Compile and execute against a supplied ProtoMolt classpath result.json Complete captured output including all 384 coordinates provenance.json Source revision, model fingerprint, runtime artifact hashes Reproduce with Java 25, protoc and the ProtoMolt source/runtime artifacts at: dc49800cd66950356a883d99141e00427df6ad65 Supply the runtime classpath containing projection, protobuf validation, search-index-spi, search-embedding, gRPC Netty/protobuf/stub, protobuf-java-util, Gson, and their dependencies. The recorded artifact filenames and SHA256 hashes are listed in provenance.json. run.sh compiles the chunking module directly from that checkout into a temporary directory; it does not edit the checkout. Use an already-running TEI gRPC server serving: sentence-transformers/all-MiniLM-L6-v2 The recorded run used TEI 1.9.3, float16. Model weights and cache revision are fingerprinted in provenance.json. Hardware/runtime differences can cause small numerical differences. The Java program checks the server model ID, actual returned vector length, finite coordinates, L2 norm, expected mapped values, successful validation, and INVALID_ARGUMENT for title "X". Set PROTOMOLT_SOURCE to the pinned checkout, PROTOMOLT_CLASSPATH to its runtime classpath, and TEI_TARGET to your existing TEI gRPC host:port. Then run: bash run.sh /tmp/court-search-result.json The script retains temporary descriptor sets and classes and prints their location. All service listeners are loopback-only on ephemeral ports and are shut down at completion. No credentials or production endpoint are bundled.