Draft: [VALIDATION — do not merge] Top-3 production fixes on top of probe (#600433)

Purpose

Empirical validation MR — do not merge. Tests whether the top-3 production-code fixes proposed in #600433 (closed) actually reduce the FrozenError failure count when layered on top of the probe (!236505 (closed)).

What this branch contains

This branch targets the probe branch (!236505 (closed)), so the diff here is exactly the three production fixes:

  1. 5046fb9467a4app/models/concerns/base_label.rb: skip the attribute write in strip_whitespace_from_title when the title is already stripped.
  2. 3bf1e34fa0fcapp/models/note.rb: use touch_all instead of touch in touch_noteable when the noteable is frozen, to avoid mutating the cached AR instance.
  3. ea0b05c0eff3ee/app/models/ee/note.rb: same pattern for the EE Epic variant of touch_noteable, with an extra reload before sync_work_item_updated_at.

The probe-baseline commits (opt-outs + freeze flip + rubocop) are inherited from the target branch (!236505 (closed)).

Expected outcome

The probe failed with 665 blocking FrozenError failures (https://gitlab.com/gitlab-org/gitlab/-/pipelines/2533568410). Based on trace analysis (https://gitlab.com/pedropombeiro/let-it-be-frozen-cleanup-harness/-/blob/master/logs/probe_monitor/FAILURE_CATALOG.md), the top-3 sites this branch fixes account for:

  • 3,168 occurrences (note.rb:596)
  • 1,584 occurrences (ee/note.rb:145)
  • 1,520 occurrences (base_label.rb:67)

Combined: ~80 % of all FrozenError occurrences in the probe.

If the fixes are correct, the failure count on this MR's pipeline should drop substantially — ideally from 665 to ~130 (the residual being the other ~25 mutation sites cataloged in #600433 (closed)).

What happens after this MR's pipeline finishes

  • Drop is meaningful → open three small, well-scoped MRs against master (not the probe branch), one per fix, with this MR's failure-count delta as empirical evidence in each description.
  • No drop → the fixes are wrong; reopen the analysis in the failure catalog.

References

Edited by Pedro Pombeiro

Merge request reports

Loading
Loading