From 33627a9e43c39250048dc2dde8f109799b4adc65 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Mon, 3 Aug 2026 15:19:21 +0200 Subject: [PATCH] WW-5674 docs(ognl): note the naming cleanup deferred to WW-5678 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Records why the three-argument overload is package-private while sharing a name with a public method, and that renaming it — plus narrowing the two public statics with no external callers — is tracked against 8.0.0. Co-Authored-By: Claude Opus 5 --- ...3-WW-5674-isclassbelongstopackages-allocation-design.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/superpowers/specs/2026-08-03-WW-5674-isclassbelongstopackages-allocation-design.md b/docs/superpowers/specs/2026-08-03-WW-5674-isclassbelongstopackages-allocation-design.md index a9b609f9d..7f26fae6c 100644 --- a/docs/superpowers/specs/2026-08-03-WW-5674-isclassbelongstopackages-allocation-design.md +++ b/docs/superpowers/specs/2026-08-03-WW-5674-isclassbelongstopackages-allocation-design.md @@ -221,6 +221,13 @@ of `isPackageBelongsToPackages` beside it. Publishing it would freeze it as `struts2-core` API until the next major release for no benefit — particularly unwelcome while WW-4759 is drawing the `struts2-api` boundary. +That leaves a package-private overload sharing a name with a public method, which +invites a later contributor to widen it to `public` as a consistency tidy-up +without realising that adds permanent API surface. Renaming it — along with the +awkward `is...BelongsTo...` grammar, and narrowing the two public statics that +have no callers outside this class — is tracked as WW-5678 against 8.0.0, since +the narrowing is source-breaking. + ### 4. Single walk on the allowlist path ```java