Why Farpy Exists
Modern compute is outsourced, distributed, and opaque. Logs are mutable. Outputs are easy to dispute.
Farpy exists to provide a single, minimal guarantee: non-repudiation of observed input and output bytes.
Why logs are not enough
Logs can be altered, truncated, or selectively shared. They are rarely cryptographically bound to outputs.
Why hashing outputs yourself is insufficient
Hashing proves that you saw an output. It does not prove that a third party produced it, or that specific inputs were used.
What Farpy adds
Farpy observes inputs and outputs at execution time and signs a receipt binding them together. That receipt can be verified independently, offline.
What Farpy deliberately does not do
Farpy does not claim correctness, determinism, safety, or model behavior. It only attests to what it observed.