Merge pull request #318 from ziyu4huang/fix/grok-video-quality-score

fix(grok_video): set quality_score=0.9 to stop under-ranking (§8 #6)
This commit is contained in:
Calesthio
2026-07-06 21:35:13 -07:00
committed by GitHub
2 changed files with 28 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
"""Regression for grok_video quality_score (REVIEW §8 #6).
Every premium video provider sets a quality_score (seedance 0.95, runway /
higgsfield 0.9) so the scorer ranks them above stock/local options. grok_video
— which ships native synchronized audio (lip-sync + dialogue + SFX in a single
pass) — had none, so it was ranked only on supports/stability flags and
under-ranked. This pins the field and confirms it surfaces in get_info().
"""
from __future__ import annotations
from tools.video.grok_video import GrokVideo
def test_grok_video_has_quality_score():
assert GrokVideo.quality_score is not None
# On par with the other native-audio/premium providers (0.90.95).
assert GrokVideo.quality_score >= 0.9
def test_quality_score_surfaces_in_tool_info():
info = GrokVideo().get_info()
assert info["quality_score"] == GrokVideo.quality_score

View File

@@ -83,6 +83,11 @@ class GrokVideo(BaseTool):
]
not_good_for = ["offline generation"]
fallback_tools = ["veo_video", "runway_video", "kling_video", "minimax_video"]
# Native synchronized audio (lip-sync + dialogue + SFX in one pass) puts
# Grok on par with the other premium providers; without a quality_score the
# scorer only counted supports/stability flags, under-ranking it relative to
# seedance (0.95) / runway / higgsfield (0.9). See lib/scoring.py.
quality_score = 0.9
input_schema = {
"type": "object",