Rulvar API reference / @rulvar/core / ToolAuthority
Interface: ToolAuthority
Defined in: packages/core/src/tools/toolset-hash.ts:47
The authority projection of one tool (RV1802): what the tool may DO and under what gate, beside WHAT the model sees. The contract hash pins the model-facing tuple; risk, needsApproval, executor, and the executorSpec digest are the declarations that never enter toolsetHash by design, yet every one of them changes what the ask rules and the approval flow will do. Execute bodies stay deliberately unhashable: version remains the lever for behavior drift under an unchanged contract.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
contract | string | toolContractHash of the model-facing contract tuple. | packages/core/src/tools/toolset-hash.ts:49 |
executor | ToolExecutor | Where execute runs: 'inprocess' or a registered executor tag. | packages/core/src/tools/toolset-hash.ts:53 |
executorSpec? | string | sha256 over the JCS-canonical executorSpec, when declared. | packages/core/src/tools/toolset-hash.ts:57 |
needsApproval | boolean | The tool's approval gate (default false at build time). | packages/core/src/tools/toolset-hash.ts:51 |
risk? | string | Present when the tool declares a risk class. | packages/core/src/tools/toolset-hash.ts:55 |