Skip to content

feat(publish): delete a site delivery server (#4860) - #4875

Merged
natechadwick-intsof merged 2 commits into
mainfrom
fix/issue-4860-delete-delivery-server
Sep 25, 2026
Merged

natechadwick-intsof merged 2 commits into
mainfrom
fix/issue-4860-delete-delivery-server

Conversation

@natechadwick-intsof

@natechadwick-intsof natechadwick-intsof commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Parent: #4531. Slice #4860.

PublishingShell Edit Server → Delete Server confirms before DELETE /publishmanagement/servers/{siteId}/{serverId}. Confirm removes the server from the site list. Cancel does not call delete. In-use / default-server failures are HTTP 409 with the service message and stay on the editor; the list is not treated as deleted. HTTP 403 (not Admin or Designer) is the same chrome as save.

Operator: Grok: night-issue-prs (model grok-4.6)

Test plan

  • Vitest: confirm removes the server, cancel does not delete, 409 in-use text and list unchanged (siteWorkspaceDeleteServer.test.tsx, deliveryServerSaveErrors.test.ts)
  • PSPubServerRestServiceTest maps in-use to 409 and forbids non-admin delete
  • Playwright surface tests/publishing/sitesDeliveryServerDelete.spec.js — 3 passed on H2 QA http://127.0.0.1:38452 (container perc-matrix-cms-h2-k4563)
  • Human UAT on a real non-default server (not mocked routes)

Product documentation

  • Updated product-docs/8.2/admin/publishing.md (Delete a site delivery server)

C3 evidence

  • modules_built: WebUI, projects/sitemanage
  • cd WebUI && rtk mvn clean install — BUILD SUCCESS
  • cd projects/sitemanage && rtk mvn clean install — BUILD SUCCESS, Tests run: 3095, Failures: 0, Errors: 0, Skipped: 125
  • Vitest (WebUI): 7 passed (siteWorkspaceDeleteServer 3, deliveryServerSaveErrors 4)
  • downstream_checked: none (no type made final/sealed; no public signature change). PSPubServerServiceException(String) now keeps the constructor text via m_overridingMessage because PSException.getMessage() otherwise drops it.

C5 UI proof

  • Existing QA cell perc-matrix-cms-h2-k4563 published on TEST_CMS_URL=http://127.0.0.1:38452 (not the default name perc-matrix-cms-h2).
  • Hot-copied sitemanage, rest, and perc-system SNAPSHOT jars into WEB-INF/lib and cm/modern/assets, then StopJetty.sh / StartJetty.sh inside the cell (no docker restart).
  • First restart failed context (NoClassDefFoundError: WorkflowGraph) because sitemanage was newer than the cell rest jar. After copying matching rest + perc-system, log shows Started WebAppContext and GET /Rhythmyx/rest/mimetypes HTTP 200.
  • perc-devctl.py qa-health --url http://127.0.0.1:38452/Rhythmyx/rest/mimetypes returned RESULT:FAIL (HTTP 503 during first restart, then later health=unknown because it inspects perc-matrix-cms-h2, which is not this cell). Docker health on k4563 stays unhealthy because the healthcheck still matches the earlier Failed startup of context line. Current context is up.
  • Playwright: npm run test:surface -- --path tests/publishing/sitesDeliveryServerDelete.spec.js — 3 passed. console-clean=yes (spec asserts no pageerror/console error on the success path). server.log-clean=yes for the window after the successful second start (no new ERROR/FATAL after 11:00:24 related to delete). Stale fail line from the first restart remains in server.log.

Pre-push local code review

Erlang review — PR #4875

Scope

  • Persona: erlang 0.1.1
  • Persona source: /home/nate/.local/share/mkd/agents/erlang
  • Status: mkd-code-review 0.1.18, pack percussion, --gate advisory, --git-base origin/main
  • PR: feat(publish): delete a site delivery server (#4860) #4875
  • Base: origin/main (a8e5777)
  • Head: 20167a5
  • Files analyzed: 10
  • Erlang gate: the in-diff cognitive-complexity suggestion is not a bug. Blocking bugs: 0. May commit/push: yes.

CLI stdout (mkd-code-review analyze --format markdown)

Summary

Machine analysis found 1 finding(s), 0 bug(s).

Scope

  • Base: origin/main
  • Head: HEAD
  • Files: 10 analyzed
  • In-diff: 1 finding(s); preexisting: 0
  • Persona: erlang 0.1.1
  • Persona source: /home/nate/.local/share/mkd/agents/erlang

Recommendation

approve

Gate

  • Blocking bugs: 0
  • May commit/push: yes

Issues

Issue 1 -- Severity: suggestion

  • File: modules/perc-qa-automation/frontend/tests/publishing/sitesDeliveryServerDelete.spec.js:28 (in-diff)
  • Rule: complexity.cognitive
  • Tool: arborist-metrics
  • Description: Function installServerRoutes cognitive=21 (max 15), cyclomatic=18 (max 15)
  • Suggestion: Extract helpers, reduce nesting, use guard clauses (see CODE_STANDARDS).
  • Status: open

Fixes #4860

Co-Authored by Grok Build 1.0.41 using grok-4.6 with agent night-issue-prs.

PublishingShell delete now confirms, drops the server on success, and
keeps the list when delete is rejected. Delete conflicts (in use, default)
return HTTP 409 with the service message.

Fixes #4860

> Co-Authored by Grok Build 1.0.41 using grok-4.6 with agent night-issue-prs.
> Co-Authored by Grok Build 1.0.41 using grok-4.6 with agent night-issue-prs-erlang.
@natechadwick-intsof

Copy link
Copy Markdown
Collaborator Author

LGTM. Erlang 0.1.1 / mkd-code-review 0.1.18 against origin/main: 0 blocking bugs (in-diff suggestion only: installServerRoutes cognitive complexity in the Playwright spec). Full report is in the PR body under Pre-push local code review and in docs/ai-generated/code-reviews/pr-4875-erlang.md (0f6db39).

Required checks on the product head 20167a5 were green before the docs-only review commit. Squash-merging.

Co-Authored by Grok Build 1.0.41 using grok-4.6 with agent night-issue-prs-erlang.

@natechadwick-intsof
natechadwick-intsof merged commit 9762cf4 into main Sep 25, 2026
6 checks passed
@natechadwick-intsof
natechadwick-intsof deleted the fix/issue-4860-delete-delivery-server branch September 25, 2026 11:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

model:grok-4.6 Session model grok-4.6 operator:grok Changes authored by Grok operator:night-issue-prs night-issue-prs workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

issue 4531 slice 36: PublishingShell delete a delivery server

1 participant