{"record":{"id":"e99c80dd141dbf57","repo":"sgl-project/sglang","slug":"minimax-h3-quality-high-requires-a-resolved-requ","errorCode":null,"errorMessage":"MiniMax-H3 quality=\"high\" requires a resolved request plan","messagePattern":"MiniMax-H3 quality=\"high\" requires a resolved request plan","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"python/sglang/multimodal_gen/runtime/pipelines_core/stages/model_specific_stages/minimax_h3/release_metadata.py","lineNumber":165,"sourceCode":"        if not isinstance(task, str) or not task.strip():\n            raise ValueError(\"MiniMax H3 request task must be a non-empty string\")\n        self.metadata.canonical_task(task)\n        if batch.num_inference_steps < 2:\n            raise ValueError(\n                \"MiniMax H3 requires num_inference_steps >= 2 because its \"\n                \"video/audio sigma schedules include both interval endpoints\"\n            )\n        quality = getattr(batch.sampling_params, \"quality\", \"lossless\")\n        if quality not in QUALITY_LEVELS:\n            raise ValueError(\n                f\"quality must be one of {list(QUALITY_LEVELS)}, got {quality!r}\"\n            )\n        high_quality = quality == \"high\"\n        if high_quality and not batch.is_warmup:\n            server_args.pipeline_config.validate_quality_deployment(server_args)\n            plan = minimax_h3_plan_from_batch(batch)\n            if plan is None:\n                raise ValueError(\n                    'MiniMax-H3 quality=\"high\" requires a resolved request plan'\n                )\n            shape = plan.shape\n            actual = {\n                \"task\": plan.task,\n                \"width\": int(shape[\"width\"]),\n                \"height\": int(shape[\"height\"]),\n                \"fps\": int(shape[\"fps\"]),\n                \"frame_count\": int(shape[\"frame_count\"]),\n                \"num_inference_steps\": int(batch.num_inference_steps),\n                \"flow_shift\": float(\n                    plan.flow_shift\n                    if plan.flow_shift is not None\n                    else plan.default_flow_shift\n                ),\n                \"audio_flow_shift\": float(\n                    plan.audio_flow_shift\n                    if plan.audio_flow_shift is not None","sourceCodeStart":147,"sourceCodeEnd":183,"githubUrl":"https://github.com/sgl-project/sglang/blob/0132848349585cfe6aae51c4941cbae872505f8a/python/sglang/multimodal_gen/runtime/pipelines_core/stages/model_specific_stages/minimax_h3/release_metadata.py#L147-L183","documentation":"For non-warmup requests with quality=\"high\", the stage must find a resolved MiniMax H3 request plan (via minimax_h3_plan_from_batch) before validating the exact workload. If no plan is attached to the batch, this error is raised.","triggerScenarios":"quality=\"high\" and batch.is_warmup is False but minimax_h3_plan_from_batch(batch) returns None — the request never went through plan resolution.","commonSituations":"Bypassing the planning stage in a custom pipeline, a pipeline ordering bug where admission runs before planning, or a plan attachment silently failing for an unusual request shape.","solutions":["Ensure the MiniMax H3 plan resolution stage runs before this admission stage in the pipeline","Verify the request carries the inputs plan resolution needs (media/shape metadata)","If quality=\"high\" is not intended, drop to the default \"lossless\" quality"],"exampleFix":"# before\n# admission stage runs before plan resolution; plan is None\n# after\n# pipeline order: plan_resolution -> partition_admission","handlingStrategy":"validation","validationCode":"if getattr(sp, \"quality\", \"lossless\") == \"high\" and not req.is_warmup:\n    assert minimax_h3_plan_from_batch(req) is not None, \"plan missing before admission\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Order pipeline: plan resolution before admission stage","Smoke-test a quality='high' request in CI to catch ordering regressions"],"tags":["minimax-h3","quality-high","request-plan","pipeline-order"],"backgroundTag":"missing-required-field","analyzedSha":"0132848349585cfe6aae51c4941cbae872505f8a","analyzedAt":"2026-08-28T05:10:05.995Z","schemaVersion":2},"datasetVersion":"2026-08-28T06:17:29.519Z"}