/** * Development Node * * Local FeltDB authority for development workspaces. * Handles workspace creation, persistence, and client coordination. */ import type { DevelopmentWorkspace, DevelopmentTask, CodeChange, VerificationResult, RemediationContract, RuntimeInvestigation, RuntimeRequestObservation, VerificationAttempt, WorkspaceActivity } from './workspace-types.js'; export interface DevelopmentNodeConfig { dataDir?: string; autoSave?: boolean; } export declare class DevelopmentNode { private workspaces; private tasks; private codeChanges; private verificationResults; private runtimeObservations; private investigations; private remediationContracts; private workspaceActivities; private verificationAttempts; private isRunning; private dataDir; constructor(config?: DevelopmentNodeConfig); start(): Promise; stop(): Promise; createWorkspace(projectId: string, name: string): Promise; getWorkspace(workspaceId: string): Promise; listWorkspaces(projectId?: string): Promise; publishTask(task: Omit): Promise; getTask(taskId: string): Promise; listTasks(workspaceId: string): Promise; publishCodeChange(change: Omit): Promise; getCodeChange(changeId: string): Promise; listCodeChanges(taskId: string): Promise; publishVerificationResult(result: Omit): Promise; getVerificationResult(resultId: string): Promise; listVerificationResults(taskId: string): Promise; /** Persist an immutable canonical runtime observation. */ recordRuntimeObservation(observation: RuntimeRequestObservation): Promise; getRuntimeObservation(observationId: string): Promise; createRuntimeInvestigation(workspaceId: string, contract: RemediationContract): Promise; getRuntimeInvestigation(id: string): Promise; /** * Link another immutable observation to an investigation. One investigation * may aggregate many observations; one observation belongs to at most one. */ linkRuntimeObservationToInvestigation(observationId: string, investigationId: string): Promise; getRuntimeInvestigationForObservation(observationId: string): Promise; /** Associate existing development change/verification records without mutating observations. */ linkRuntimeInvestigation(investigationId: string, links: { changeId?: string; verificationId?: string; }): Promise; getRemediationContract(id: string): Promise; advanceInvestigation(id: string, next: RuntimeInvestigation['investigationState']): Promise; advanceRemediation(id: string, next: RuntimeInvestigation['remediationState']): Promise; recordWorkspaceActivity(id: string, paths: string[]): Promise; markImplementationComplete(id: string): Promise; beginVerification(id: string): Promise; verifyRuntimeInvestigation(id: string, observation?: RuntimeRequestObservation): Promise; listWorkspaceActivities(investigationId: string): Promise; listVerificationAttempts(investigationId: string): Promise; private requireInvestigation; private investigationObservationIds; private validateWorkspaceExists; private ensureRunning; private generateId; private loadState; private saveState; } export declare function getDevelopmentNode(config?: DevelopmentNodeConfig): Promise; export declare function shutdownDevelopmentNode(): Promise; //# sourceMappingURL=development-node.d.ts.map