Skip to content

Mark GetAddress.io objects as obsolete - #12157

Open
dcenic wants to merge 2 commits into
mainfrom
bugs/649616ObsoleteGetAddressIO
Open

dcenic wants to merge 2 commits into
mainfrom
bugs/649616ObsoleteGetAddressIO

Conversation

@dcenic

@dcenic dcenic commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

What & why

Marking GetAddress.io objects as obsolete

Linked work

Fixes AB#649616

How I validated this

  • I read the full diff and it contains only changes I intended.
  • I built the affected app(s) locally with no new analyzer warnings.
  • I ran the change in Business Central and confirmed it behaves as expected.
  • I added or updated tests for the new behavior, or explained below why none are needed.

What I tested and the outcome (required — be specific: scenarios, commands, screenshots for UI changes)

Risk & compatibility

Low, the app is already not installed on any new tenant and uninstalled from existing tenants on 28.3

@dcenic
dcenic requested review from a team as code owners September 30, 2026 15:47
@github-actions github-actions Bot added the Team: Finance GitHub request for Finance area label Sep 30, 2026
@github-actions github-actions Bot added this to the Version 30.0 milestone Sep 30, 2026
@alexei-dobriansky

Copy link
Copy Markdown
Contributor

Good Sense Reviewer - Round 1

Recommendation: Request Changes

What this PR does

This PR starts retiring GetAddress.io UK Postcodes. It marks runtime objects obsolete, adds staged cleanup guards, removes permissions during cleanup, and removes the test app.

The page, codeunit, and table obsoletion sequence is consistent, and both GB application build modes pass. However, the clean build still compiles page extensions 50000-50011. Stripping their logic does not remove the object-ID collision, and the remaining role-center action has no behavior.

Problem-solution fit

Fit: Partial

Staged retirement fits the discontinued extension, but the change retains the exact page-extension object IDs that can collide with PTE objects. The main problem therefore remains in the clean artifact.

Suggestions

S1 (🔴 High): Retired page extensions keep conflicting object IDs
The CLEAN30 build still contains page extensions 50000-50011, so the PTE collision remains. Remove or renumber these page extensions instead of only stripping their logic. The role-center action also becomes visible but does nothing.

Risk assessment and necessity

Risk: The GB default and clean application builds pass, and no report layout or BaseApp event publisher is involved. The remaining clean-mode page extensions still claim PTE-range IDs, and one exposes a no-op action; broader unit-test checks are still pending.

Necessity: Retiring this unused extension and preserving its table schema during the transition is justified. The scope must also remove or renumber the clean-mode page extensions, or otherwise eliminate their collision surface.


[AI-PR-REVIEW] version=1 promptVersion=4 system=github pr=12157 round=1 by=alexei-dobriansky at=2026-09-30T19:37:58Z lastSha=1d98e205a3dd5d5caa80466d7c6396ec105bd3ee reviewKey=a4d4d5ad2ea96228a653b1022d4bbd08814ac4295257cfed8c6f81cf120dd16d suggestions=S1@dd1345f3

@dcenic
dcenic enabled auto-merge October 1, 2026 05:47
@dcenic
dcenic disabled auto-merge October 1, 2026 06:57
These staged page extensions used customer/PTE object IDs (50000-50011) and only existed in the Clean build. The postcode lookup functionality already lives in the GB BaseApp, so they are redundant. Removing them eliminates the PTE ID-range collision in the CLEAN30 build and the dead role-center action.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dcenic

dcenic commented Oct 1, 2026

Copy link
Copy Markdown
Contributor Author

The CLEAN30 build still contains page extensions 50000-50011, so the PTE collision remains. Remove or renumber these page extensions instead of only stripping their logic. The role-center action also becomes visible but does nothing.

Fixed, page extensions removed

@dcenic
dcenic enabled auto-merge October 1, 2026 07:02
@alexei-dobriansky

Copy link
Copy Markdown
Contributor

Good Sense Reviewer - Round 2

Recommendation: Accept

What this PR does

This PR retires GetAddress.io UK Postcodes and now removes the twelve page extensions that occupied object IDs 50000-50011.

The new commit directly resolves the previous collision. All twelve declarations are deleted, no objects remain in the 50000 range, and no new round-2 changes fall outside those deletions.

Status of previous suggestions
ID Title Status Author response
S1 Retired page extensions keep conflicting object IDs Addressed Page extensions 50000-50011 were removed.
New observations (commits since round 1)

None - changes only addressed the previous suggestion.

Risk assessment and necessity

Risk: The round-2 change only deletes stateless page extensions from an app that is being retired. Persistent tables remain staged for later schema cleanup. Verification, analyzer, link, and CodeQL checks passed; the GB default and clean builds were still running at review time.

Necessity: Removing these page extensions is necessary because stripping their logic did not release their PTE-range object IDs. The deletion scope directly removes the collision without deleting persistent schema.


[AI-PR-REVIEW] version=1 promptVersion=4 system=github pr=12157 round=2 by=alexei-dobriansky at=2026-10-01T07:49:01.7968836Z lastSha=2bb15c4cfb81f37491a00f791b1f788c0e219fc2 reviewKey=7ac1ea35f64c01e70573957768f999d6e936dd24fad6914486a9861db3b66730 suggestions=S1@dd1345f3:addressed parentRound=1

This branch was successfully deployed

1 active (outdated) deployment
triage — 1d98e205 Deployed Sep 30, 2026 by dcenic via Classify team ownership #6353
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Team: Finance GitHub request for Finance area

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants