Prhub

#49235 [Cleanup] Remove unused StructuredOutputRequest.status field

原始 PR 作者 njhill 合并时间 2026-07-21 08:06 文件变更 1 提交数 1 评论 0 代码增减 +0 / -4

执行摘要

删除未使用的 status 字段

PR body 指出 status 字段可能是早期实现的遗留物,从未被使用,且使代码更难理解。

值得合并,清理死代码降低认知负担。

讨论亮点

无 review 讨论。

实现拆解

仅修改 vllm/v1/structured_output/request.py 一个文件,删除以下内容:

  1. 删除 _check_grammar_completion 方法中的惰性导入 from vllm.v1.request import RequestStatus
  2. 删除同一个方法中的 self.status = RequestStatus.WAITING 赋值语句。
    共删除 4 行代码,无新增。
文件 模块 状态 重要度
vllm/v1/structured_output/request.py 结构化输出 modified 4.44

关键符号

_check_grammar_completion

关键源码片段

vllm/v1/structured_output/request.py dependency-wiring

唯一修改的文件,删除了未使用的 status 字段及相关导入和赋值。

@dataclasses.dataclass
class StructuredOutputRequest:
    params: StructuredOutputsParams
    _grammar: Future[StructuredOutputGrammar] | StructuredOutputGrammar | None = None
    reasoning_ended: bool | None = None
    reasoning_end_token_index: int | None = None
    reasoning_parser_kwargs: dict[str, Any] | None = None
    reasoner: "ReasoningParser | None" = None
​
    # ... 其他方法 ...
​
    def _check_grammar_completion(self) -> bool:
        # 注意:不再需要惰性导入 RequestStatus,因为已删除 self.status 赋值
        if isinstance(self._grammar, Future):
            try:
                self._grammar = self._grammar.result(timeout=0.0001)
                # self.status = RequestStatus.WAITING # 已删除
            except TimeoutError:
                return False
        return True

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

风险极低。删除的字段和引用在仓库中无任何使用痕迹(包括测试、运行时路径等),仅清理死代码。

对用户无影响,对系统无功能影响,团队后续维护时少一个需要关注的字段。

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论