/** * Experiment orchestrator. * * Runs experiment cycles: creates contracts, executes tasks, evaluates results, * and collects metrics. */ import type { AgentAdapter, ManifestoConfig, CycleResult, ExperimentResult, SocietyConfig } from "./types.js"; import { MetricsCollector } from "./metrics.js"; /** * Orchestrates experiment execution. */ export declare class ExperimentOrchestrator { private readonly manifesto; private readonly agents; private readonly metrics; private readonly societyConfig; private cycles; private random; constructor(manifesto: ManifestoConfig, agents: AgentAdapter[], metrics: MetricsCollector, societyConfig: SocietyConfig, seed?: number); /** * Create a seeded random number generator. */ private seededRandom; /** * Run a single experiment cycle. */ runCycle(): Promise; /** * Run a complete experiment. */ runExperiment(numCycles: number): Promise; /** * Generate a contract for an agent. */ private generateContract; /** * Compute purity-weighted score for an agent based on manifesto weights. */ private computePurityScore; /** * Assign contracts to agents weighted by reputation (softmax selection). */ private assignContracts; /** * Get contract description from the contract file. */ private getContractDescription; /** * Score epistemic hygiene from task result. * * Evaluates: * - Artifact confidence scores (moderate 0.4-0.7 rewarded, overconfident >0.9 penalized) * - Uncertainty language in output (hedging markers increase score) * - Having any confidence score vs none */ private scoreEpistemicHygiene; /** * Score coordination from task result. * * Evaluates: * - Read-before-write pattern (artifact_read/list before artifact_write) * - Contract lifecycle compliance (accept + complete) */ private scoreCoordination; /** * Evaluate task result and update agent reputation across all dimensions. */ private evaluateAndUpdateReputation; /** * Save experiment results to disk. */ private saveResults; } //# sourceMappingURL=orchestrator.d.ts.map