/**
 * Orchestration E2E Test Definitions
 *
 * This module defines the orchestration tests that validate each behavior
 * in the orchestration system. Tests run against an isolated test workspace.
 *
 * Each test supports dual-mode execution:
 * - `mock` (default): Uses mock session manager, simulates agent behavior
 * - `real`: Spawns actual Claude processes via SpawnerService
 *
 * @module
 */
import type { TestContext } from './test-context.js';
import type { TestResult } from './test-utils.js';
/**
 * A single orchestration test definition
 */
export interface OrchestrationTest {
    /** Unique test identifier (used for filtering) */
    readonly id: string;
    /** Human-readable test name */
    readonly name: string;
    /** Detailed description of what the test validates */
    readonly description: string;
    /** Test execution function */
    readonly run: (ctx: TestContext) => Promise<TestResult>;
    /** Test timeout in milliseconds */
    readonly timeout: number;
    /** Whether this test depends on previous tests (for state) */
    readonly dependsOn?: string[];
    /** Tags for categorizing tests */
    readonly tags?: string[];
}
export declare const directorCreatesTasksTest: OrchestrationTest;
export declare const directorCreatesPlansTest: OrchestrationTest;
export declare const daemonDispatchesWorkerTest: OrchestrationTest;
export declare const daemonRespectsDependenciesTest: OrchestrationTest;
export declare const workerUsesWorktreeTest: OrchestrationTest;
export declare const workerCommitsWorkTest: OrchestrationTest;
export declare const workerCreatesMergeRequestTest: OrchestrationTest;
export declare const workerMarksTaskCompleteTest: OrchestrationTest;
export declare const workerHandoffOnContextFillTest: OrchestrationTest;
export declare const daemonSpawnsStewardForMRTest: OrchestrationTest;
export declare const stewardMergesPassingMRTest: OrchestrationTest;
export declare const stewardHandoffFailingMRTest: OrchestrationTest;
/**
 * All orchestration tests in order of execution
 */
export declare const allTests: OrchestrationTest[];
/**
 * Get tests by tag
 */
export declare function getTestsByTag(tag: string): OrchestrationTest[];
/**
 * Get test by ID
 */
export declare function getTestById(id: string): OrchestrationTest | undefined;
/**
 * Get tests matching a filter string (matches id or name)
 */
export declare function filterTests(filter: string): OrchestrationTest[];
//# sourceMappingURL=orchestration-tests.d.ts.map