export interface RuntimeCommandOutcome { readonly id: string; readonly name: string; readonly capability: string; readonly kind: 'lifecycle' | 'agent-dispatch'; readonly targetAgentId?: string; readonly invocation?: string; readonly ownerAgentId?: string; readonly path?: string; } export interface RuntimeAgentOutcome { readonly id: string; readonly invocation: string; readonly ownerAgentId?: string; readonly modelClass: string; readonly capabilities: readonly string[]; readonly projectAction: string; readonly effects: readonly string[]; readonly grants: readonly Readonly>[]; readonly spawnTargets: readonly string[]; readonly queryProfileId: string; readonly queryProfileSha256: string; readonly permissionDigest: string; readonly path?: string; } export interface RuntimeContract { readonly runtime: string; readonly responsePolicy: { readonly chatLocale: string; readonly artifactLocale: string; readonly internalHandles: 'diagnostic-only'; }; readonly commands: readonly RuntimeCommandOutcome[]; readonly agents: readonly RuntimeAgentOutcome[]; } /** Compare portable behavior while deliberately ignoring runtime-specific paths and model names. */ export declare function compareRuntimeOutcomes(contracts: ReadonlyMap): string[];