hivecast-sdk/src/frameir/contract.ts
hypnotranz 1a0419dc0c feat: initial Matrix SDK
Full SDK workspace: core, contracts, sdk, cli, browser-host, browser-kit,
federation, omega-core, oracle, self-healing, strategies, tools, emacs.
Clean extraction from the development monorepo.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 15:54:15 -06:00

30 lines
707 B
TypeScript

import type { NodeBase } from "./meta";
import type { VRef } from "./value";
export interface ToolContractIR extends NodeBase {
tag: "ToolContract";
id: string;
name: string;
version: string;
inputSchema: VRef;
outputSchema: VRef;
errorSchema?: VRef;
idempotency: "idempotent" | "non-idempotent" | "unknown";
capabilityTag: string;
quotaGroup?: string;
resourceModel?: {
typicalTimeMs?: number;
worstTimeMs?: number;
typicalTokens?: number;
};
provenancePolicy?: {
mustAttachEvidence?: boolean;
evidenceMode?: Array<"observed" | "measured" | "derived">;
stalenessInputs?: Array<"toolContract" | "schema" | "sourceFingerprint" | "oracleConfig">;
};
}