import type { Agent } from '@deepseek-ai/dsh-agent'; import type { DeliveryPreferencePrincipalAttestation } from './types.js'; /** Exact durable locator for owner feedback about one terminal whole-goal assessment. */ export interface OwnerGoalOutcomeFeedbackLocator { readonly protocol: 'assistant-goals/owner-goal-outcome-locator/v1'; readonly ownerRouteId: string; readonly principalId: string; readonly principalRecordId: string; readonly principalVersion: number; readonly workspace: string; readonly preset: string; readonly bindingId: string; readonly bindingVersion: number; readonly bindingGeneration: number; readonly sessionId: string; readonly goalId: string; readonly assessmentId: string; } /** Rebuilt Host proof for owner feedback about one exact whole-goal outcome. */ export interface OwnerGoalOutcomeFeedbackProof { readonly protocol: 'assistant-goals/owner-goal-outcome-feedback/v1'; readonly locator: Readonly; readonly goal: Readonly<{ definitionVersion: number; definitionDigest: string; nativeGoalId: string; phase: 'complete' | 'blocked'; }>; readonly runId: string; readonly profile: Readonly<{ id: string; version: number; digest: string; }>; readonly contract: Readonly<{ id: string; digest: string; }>; readonly receipt: Readonly<{ id: string; digest: string; objectiveStatus: 'achieved' | 'not-achieved'; completedAt: number; validUntil: number; }>; readonly proofDigest: string; } export interface OwnerGoalOutcomeFeedbackTarget { readonly locator: Readonly; readonly capability: unknown; readonly proof: Readonly; } /** Strict parser shared by Delivery persistence and the live Goals capability boundary. */ export declare function validateOwnerGoalOutcomeFeedbackLocator(value: unknown): Readonly; /** Validate every proof field and its canonical digest; no caller prose is accepted. */ export declare function validateOwnerGoalOutcomeFeedbackProof(value: unknown): Readonly; /** * Content-free, exact identity fence for one durable Goal wake. * * Delivery does not accept a message or a human-turn proof here. The host * validates this attestation before entering the runtime; the runtime still * validates its temporal and structural boundaries before it resumes an Agent. */ export interface DeliveryGoalWakeInput { readonly attestation: Readonly; readonly native: Readonly<{ goalId: string; revision: number; }>; readonly deadlineAt: number; readonly signal: AbortSignal; /** Request the final visible output for the caller's separately authorized result delivery. */ readonly includeOutput?: boolean; /** Re-read the host-owned goal/owner fence at each execution boundary. */ assertCurrent(agent: Agent, phase: 'before-resume' | 'running' | 'terminal'): void; /** Persist the caller's exact wake-dispatch CAS immediately before native resume. */ beforeResume(agent: Agent): void; /** Finish this Agent's admitted step/goal verification before disposal. */ settle(agent: Agent, signal: AbortSignal): Promise; /** Resolve a fresh, process-local Goals capability after the exact outcome has settled. */ resolveOutcomeFeedbackTarget(): Readonly; } /** Wake execution reached a bounded terminal state; it says nothing about business completion. */ export interface DeliveryGoalWakeResult { readonly outcome: 'succeeded' | 'busy' | 'unknown' | 'denied'; readonly dispatched: boolean; readonly quiescent: boolean; /** Final visible text from this resumed goal's completed turn, only after settlement and teardown. */ readonly output?: string; } /** Validate the allowed absolute deadline window. */ export declare function isDeliveryGoalWakeDeadline(deadlineAt: number, now: number): boolean; //# sourceMappingURL=goal-wake-types.d.ts.map