// Tardygrada — Fact Verification Example // // Claims go through the verification pipeline. // Only grounded claims become Facts. // Unverified claims stay mutable (untrusted). agent Researcher @semantics( truth.min_confidence: 0.85, truth.min_consensus_agents: 3, ) { invariant(trust_min: @verified) // Pending claims — external agents submit via MCP let origin: Fact = receive("Where was Doctor Who created?") grounded_in(domain) @verified let creator: Fact = receive("Who created Doctor Who?") grounded_in(domain) @verified // Shell commands for data retrieval let wiki: str = exec("curl -s 'https://en.wikipedia.org/api/rest_v1/page/summary/Doctor_Who' | head -c 500") let name: str = "fact-checker" @sovereign } agent MedicalAdvisor @sovereign @semantics( truth.min_confidence: 0.99, truth.min_consensus_agents: 5, pipeline.min_passing_layers: 7, ) { // Medical claims require near-certainty let diagnosis: Fact = receive("symptom analysis") grounded_in(medical) @verified let treatment: Fact = receive("treatment plan") grounded_in(medical) @verified let name: str = "medical-advisor" @sovereign } agent CasualBot @semantics( truth.min_confidence: 0.5, truth.min_consensus_agents: 1, ) { // Casual chat — lower thresholds, less verification let response: Fact = receive("tell me something interesting") grounded_in(general) @verified let name: str = "casual-bot" }