miyabi-agent-sdk
Version:
Miyabi Autonomous Agent SDK - 7 Agents based on Shikigaku Theory with 100% cost reduction mode
83 lines • 2.24 kB
TypeScript
/**
* TestAgent - テスト実行Agent
*
* 識学理論適用:
* - 責任: テスト実行とカバレッジレポート
* - 権限: テストコマンド実行、カバレッジ計測、失敗時のエラーレポート
* - 階層: Specialist Layer
*/
import type { AgentInput, AgentOutput } from "../types.js";
export interface TestInput extends AgentInput {
repository: string;
owner: string;
branch: string;
testCommand?: string;
language?: "typescript" | "rust" | "python" | "go";
}
export interface TestFailure {
testName: string;
error: string;
file?: string;
line?: number;
}
export interface TestOutput extends AgentOutput {
data?: {
success: boolean;
coverage: number;
duration: number;
failures: TestFailure[];
totalTests: number;
passedTests: number;
failedTests: number;
};
}
/**
* TestAgent実装
*
* テストコマンド実行 → カバレッジ計測 → 失敗レポート生成
*/
export declare class TestAgent {
private readonly coverageThreshold;
private readonly timeoutThreshold;
/**
* メイン実行ロジック
*/
run(input: TestInput): Promise<TestOutput>;
/**
* テストコマンド決定
*/
private resolveTestCommand;
/**
* テスト実行
*
* TODO: 実際のテストランナー統合(vitest/cargo test/pytest/go test)
*/
private executeTests;
/**
* カバレッジ計測
*
* TODO: 実際のカバレッジツール統合(vitest coverage/cargo tarpaulin/coverage.py/go test -cover)
*/
private measureCoverage;
/**
* カバレッジレポート生成
*/
generateCoverageReport(coverage: number): string;
/**
* テスト失敗レポート生成
*/
generateFailureReport(failures: TestFailure[]): string;
/**
* 総合レポート生成
*/
generateSummaryReport(result: TestOutput["data"]): string;
/**
* 言語別テストツール取得
*/
getTestToolForLanguage(language: string): {
runner: string;
coverageTool: string;
coverageFormat: string;
};
}
//# sourceMappingURL=TestAgent.d.ts.map