# CorpusFetch Method Slice (Zero-Prose Python Stdlib Reference) # Canonical Residual: https://corpusfetch.com/c/how-must-an-instance-translate-references-across-incompatible-protocol-boundaries.md # Remnant Warrant: https://corpusfetch.com/c/how-must-an-instance-translate-references-across-incompatible-protocol-boundaries.warrant.json # Markdown SHA-256: 3f2c348b80007ee448161f62b63668203d3a780f203b4e1379aae53f9e2c7626 # Code AST SHA-256: d56d4bc48087d82b5212af11e5a4a8225678be3bcbc66e10961a5ecd2720efd6 # Verified Classes: TranslationVerdict, CrossProtocolReference, TranslationPolicy, TranslationManifest, CrossProtocolTranslationGuard # Defensive Guards: 0 fail-closed invariants (zero external deps) from dataclasses import dataclass from enum import Enum, auto import hashlib import json class TranslationVerdict(Enum): SAME_PROTOCOL = auto() SEMANTICS_PRESERVED = auto() SEMANTICS_LOST = auto() OPAQUE_REFERENCE = auto() @dataclass(frozen=True) class CrossProtocolReference: reference_id: str source_protocol: str target_protocol: str original_semantics_hash: str translation_preservation: str | None translation_differences: tuple[str, ...] is_opaque: bool @dataclass(frozen=True) class TranslationPolicy: require_preservation: bool allow_documented_losses: bool @dataclass(frozen=True) class TranslationManifest: verdict: TranslationVerdict directive: str manifest_digest: str class CrossProtocolTranslationGuard: @staticmethod def _hash(data: str) -> str: return hashlib.sha256(data.encode("utf-8")).hexdigest() @classmethod def evaluate_translation( cls, ref: CrossProtocolReference, policy: TranslationPolicy ) -> TranslationManifest: # Gate 1: Same protocol if ref.source_protocol == ref.target_protocol: digest = cls._hash(json.dumps({ "reference": ref.reference_id, "protocol": ref.source_protocol }, sort_keys=True)) return TranslationManifest( verdict=TranslationVerdict.SAME_PROTOCOL, directive=f"PROCEED: Same protocol, no translation needed.", manifest_digest=digest ) # Gate 2: Opaque reference if ref.is_opaque: digest = cls._hash(json.dumps({ "reference": ref.reference_id, "type": "OPAQUE" }, sort_keys=True)) return TranslationManifest( verdict=TranslationVerdict.OPAQUE_REFERENCE, directive=f"PROCEED: Opaque reference, semantics irrelevant.", manifest_digest=digest ) # Gate 3: Preservation proof if policy.require_preservation: if ref.translation_preservation: digest = cls._hash(json.dumps({ "reference": ref.reference_id, "from": ref.source_protocol, "to": ref.target_protocol, "preservation": ref.translation_preservation }, sort_keys=True)) return TranslationManifest( verdict=TranslationVerdict.SEMANTICS_PRESERVED, directive=f"PROCEED: Translation {ref.source_protocol}→{ref.target_protocol} preserves semantics.", manifest_digest=digest ) # No preservation proof, check for documented losses if not policy.allow_documented_losses or not ref.translation_differences: return TranslationManifest( verdict=TranslationVerdict.SEMANTICS_LOST, directive=f"HALT: Translation lacks preservation proof and has no documented differences.", manifest_digest=cls._hash(f"NO_PROOF:{ref.reference_id}") ) # Gate 4: Documented loss digest = cls._hash(json.dumps({ "reference": ref.reference_id, "losses": tuple(sorted(ref.translation_differences)), "policy": "DOCUMENTED_LOSS_ALLOWED" }, sort_keys=True)) return TranslationManifest( verdict=TranslationVerdict.SEMANTICS_LOST, directive=f"PROCEED_WITH_RISK: Translation has documented losses: {sorted(ref.translation_differences)}.", manifest_digest=digest )