Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Bug] CI accepts obsolete PR targets after retargeting or force-push

未关闭
#3,296 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

  • #3297 来自 @contrueCT —— 已关闭,未合并

评估

难度
3/5
预计耗时
1-2 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
git, github
领域
ci-cd

调研方向

Start with require_current_pr(), which checks the target repository but not the target branch name or whether the tested base is still in the target's history, and with create_plan() and the all, memory and advisory gates that accept the stale snapshot. Build the Git fixture from the reproduction (base commit, PR head, two-parent synthetic merge) and check that a retargeted base or force-pushed unrelated history is rejected while a normal advance and a changed-head control behave as described. Done when those cases pass and the Memory metadata-outage policy is unchanged. PR #3297 is already open against this issue, so coordinate with it first.

由索引模型根据 Issue 内容生成。

描述

Problem

On Apache master 68855199031d5801edb4fe41b2bacbacffe8fe68, CI accepts an old synthetic merge after a PR is retargeted within the same repository or the target branch is force-pushed to unrelated history. require_current_pr() checks the target repository, but omits the target branch name and whether the tested base remains in the target's history.

Reproduction

Create a local Git fixture with a base commit, a PR head and a two-parent synthetic merge. Build a plan against master, then supply live PR metadata with either a different base ref or an unrelated commit at the same base ref. With unchanged head identity and successful selected results, create_plan() and the all, memory and advisory gates accept the obsolete snapshot. A changed-head control is correctly rejected.

Expected behavior

Bind the plan to its target ref and reject rewritten target history. Continue to allow normal target-branch advancement, consistent with non-strict protection, and preserve the documented metadata-outage policy for completed Memory tests.

Scope and existing work

This concerns CI planning and reporting; the fixture does not establish that GitHub branch protection can be bypassed. Existing issues and PRs were searched for retargeting, force-push and plan freshness. Merged CI changes #3271 and #3277 retain the gap; no active fix was found. The earlier report is in the Topling review.

主要语言
Java
星标
3.2k
派生
640
平均合并
1 天 9 小时
30 天内合并 PR
84

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

apache/hugegraph 的其他 Issue

查看 apache/hugegraph 的全部 Issue

相似的 Issue

更多 Java Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。