Task · GTO-0006

Remove the deleted goroutineleakprofile experiment for Go 1.27

Status
In Progress
Priority
high
Labels
ci
Updated
2026-08-23

Description

Go 1.27 makes the goroutine-leak pprof profile generally available and deletes the goroutineleakprofile GOEXPERIMENT setting. Remove the obsolete flag from every build surface while preserving the runtime availability guard.

Acceptance Criteria

Definition of Done

Implementation Plan

  1. Remove the obsolete experiment from build surfaces and update comments that claim it can be enabled. 2. Preserve and test the existing runtime availability behavior. 3. Run the complete repository gate with Go 1.26.6.

Correction: do not execute the preceding removal plan unless the resume-boundary reproduction confirms the premise on a consistent toolchain.

  1. Verified the migration boundary against the official Go 1.27 release notes and the local official Go 1.27.0 toolchain. 4. Remove the deleted experiment from Makefile, Docker, and GoReleaser while retaining the runtime lookup guard. 5. Run the complete gate and hosted CI.

Current ordered flow only: treat the earlier Go 1.26.6 reproduction plan as historical; verify the official Go 1.27.0 boundary, remove the deleted experiment from Makefile, Docker, and GoReleaser while preserving the runtime lookup guard, then run the complete gate and hosted CI.

Implementation Notes

Resume boundary: reproduce GOEXPERIMENT=goroutineleakprofile rejection in an internally consistent official Go 1.26.6 CI toolchain. The local downloaded archive is invalid evidence because compile reports bundled standard-library version go1.24.3. Evidence class: locally measured (2026-08-16, GTO-0005).

The task was renumbered from the ambiguous duplicate GTO-0005 to GTO-0006 by backlog doctor. The earlier note referencing GTO-0005 refers to this task. Go 1.27 provides the authoritative migration boundary: the profile is generally available and the experiment setting is deleted.

Official Go 1.27 release notes confirm goroutineleak is generally available and GOEXPERIMENT=goroutineleakprofile is deleted. The obsolete experiment was removed from Makefile, Docker, and GoReleaser while retaining the runtime lookup guard. Full make check passed under Go 1.27.0; no generated surface changed. Paid-plan CodeRabbit review completed.

The campaign-wide Linux compatibility sweep raised the local/cloud golangci-lint pin from v2.12.2 to current v2.13.1, matching the existing hosted workflow. The cloud setup contract test and shell syntax check passed. A local Linux-target lint attempt remained active for over 10 minutes and was stopped without a result; exact-head hosted CI is the Linux proof.

View the source file on GitHub