feat(skill-learning): extend eval report payload
This commit is contained in:
@ -0,0 +1,61 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from beaver.memory.skills import SkillDraftEvalReport
|
||||
|
||||
|
||||
def test_eval_report_defaults_preserve_legacy_payload_shape() -> None:
|
||||
report = SkillDraftEvalReport(
|
||||
report_id="eval-1",
|
||||
skill_name="debug",
|
||||
draft_id="draft-1",
|
||||
candidate_id="candidate-1",
|
||||
passed=True,
|
||||
baseline_score_avg=0.5,
|
||||
candidate_score_avg=0.8,
|
||||
score_delta=0.3,
|
||||
regression_count=0,
|
||||
improved_count=2,
|
||||
unchanged_count=0,
|
||||
cases=[{"run_id": "run-1"}],
|
||||
status="completed",
|
||||
created_at="now",
|
||||
)
|
||||
|
||||
payload = report.to_dict()
|
||||
|
||||
assert payload["eval_version"] == "heuristic-v1"
|
||||
assert payload["mode"] == "heuristic"
|
||||
assert payload["execution_coverage"] == 0.0
|
||||
assert payload["surrogate_coverage"] == 0.0
|
||||
assert payload["blocked_coverage"] == 0.0
|
||||
assert payload["confidence"] == "low"
|
||||
assert payload["case_reports"] == []
|
||||
assert payload["tool_mode_summary"] == {}
|
||||
assert payload["preservation_report"] is None
|
||||
assert payload["cases"] == [{"run_id": "run-1"}]
|
||||
|
||||
|
||||
def test_eval_report_reads_legacy_payload_without_replay_fields() -> None:
|
||||
report = SkillDraftEvalReport.from_dict(
|
||||
{
|
||||
"report_id": "eval-legacy",
|
||||
"skill_name": "debug",
|
||||
"draft_id": "draft-1",
|
||||
"candidate_id": "candidate-1",
|
||||
"passed": True,
|
||||
"baseline_score_avg": 0.4,
|
||||
"candidate_score_avg": 0.8,
|
||||
"score_delta": 0.4,
|
||||
"regression_count": 0,
|
||||
"improved_count": 1,
|
||||
"unchanged_count": 0,
|
||||
"cases": [{"run_id": "run-1"}],
|
||||
"status": "completed",
|
||||
"created_at": "now",
|
||||
}
|
||||
)
|
||||
|
||||
assert report.eval_version == "heuristic-v1"
|
||||
assert report.mode == "heuristic"
|
||||
assert report.confidence == "low"
|
||||
assert report.case_reports == []
|
||||
Reference in New Issue
Block a user