Files
harness-tools/extensions/native-hooks/docs/event-contract.md
T

898 B

Runtime event and identity contract

The runtime targets Pi 0.84.4. tool_execution_start carries toolCallId, toolName, and args; all parallel sibling starts are emitted in source order before execution. A finalized execution either enters tool_result (with final input, content, details, usage, and isError) followed by tool_execution_end, or may enter only tool_execution_end when blocked/invalid. Handlers are idempotent by tool-call ID. agent_settled is the completion candidate used by the gate.

Project identity is SHA-256 of the canonical git root, initial commit object (or NO_HEAD), and package name, NUL-delimited. The mutable HEAD and index belong to the workspace fingerprint, not identity. A different canonical root or initial commit is a different project. This avoids remote-URL instability while preventing evidence transfer to an unrelated checkout.