豆豆友情提示:这是一个非官方 GitHub 代理镜像,主要用于网络测试或访问加速。请勿在此进行登录、注册或处理任何敏感信息。进行这些操作请务必访问官方网站 github.com。 Raw 内容也通过此代理提供。
Skip to content

[ux-design-patrol] Inconsistent BuildSystemTestBinary deprecation guidance across magefiles #50158

@github-actions

Description

@github-actions

Recent commits have introduced UI/UX patterns that diverge from established patterns elsewhere in the codebase. The following inconsistency reduces design consistency for users.

Design Drift Findings

1. BuildSystemTestBinary deprecation guidance is shown in some beats but not others

Commit(s): 323f731f84e5d8e55a1bc3248b568097dbb402bb

New pattern (introduced by commit):

fmt.Println("WARNING: BuildSystemTestBinary is deprecated for Go integration tests. " +
	"The test binary is now built automatically via TestMain. " +
	"This target is only needed for Python system tests.")

(added in multiple magefiles)

Existing pattern (established elsewhere in same command surface):

// BuildSystemTestBinary build a system test binary depending on the runner.
func BuildSystemTestBinary() error {
	var opts []testbin.Option
	if isWindows32bitRunner() {
		opts = append(opts, testbin.WithExtraFlags("-ldflags=-w"))
	}
	_, err := testbin.Build(devtools.BeatName, ".", opts...)
	return err
}

(no deprecation warning or TestMain guidance)

Location of new pattern:

  • filebeat/magefile.go:58-64
  • metricbeat/magefile.go:66-72
  • x-pack/filebeat/magefile.go:46-52
  • libbeat/magefile.go:50-56
  • x-pack/libbeat/magefile.go:38-44

Location of existing pattern:

  • x-pack/metricbeat/magefile.go:112-120

User impact: Developers running mage BuildSystemTestBinary get migration guidance in most beats but not in x-pack/metricbeat, so the same command has inconsistent UX and can leave users unaware that Go integration tests now auto-build via TestMain.

Suggested Actions

  • Add the same deprecation message and Deprecated: doc comment to x-pack/metricbeat/magefile.go BuildSystemTestBinary() for consistent guidance across beats.
  • Optionally centralize the warning text in shared mage/dev-tools code to prevent future divergence.

Note

🔒 Integrity filter blocked 4 items

The following items were blocked because they don't meet the GitHub integrity level.

  • #49848 search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #49796 search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #46587 search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #41061 search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".

To allow these resources, lower min-integrity in your GitHub frontmatter:

tools:
  github:
    min-integrity: approved  # merged | approved | unapproved | none

What is this? | From workflow: UX Design Patrol

Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.

  • expires on Apr 23, 2026, 1:47 PM UTC

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions