Skip to content

Replace legacy Angular UI with root Svelte application - #2608

Merged
niemyjski merged 26 commits into
mainfrom
feature/remove-legacy-ui
Oct 3, 2026
Merged

niemyjski merged 26 commits into
mainfrom
feature/remove-legacy-ui

Conversation

@ejsmith

@ejsmith ejsmith commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

Replaces Angular with Svelte at / and removes its source, assets, build/publishing pipeline, and Aspire resource. Updates READMEs, agent guidance, repository skills, and email previews for the single frontend.

  • Preserves existing sessions and primary hash links for authentication, events, stacks, dashboards, billing, and notifications, including browser Back/Forward. The retired /next preview prefix is intentionally unsupported. Complete historical feature/report/link parity is outside this cutover's scope.
  • Preserves email and Slack shortcuts for fixing, ignoring, and discarding stacks. Links open authenticated Svelte confirmations with stack context; opening or cancelling never changes state. Fixing supports an optional version, and rejected updates remain visible for retry.
  • Uses root URLs in outgoing messages, retains /organization/{id}/upgrade as an alias to billing, and centralizes origin extraction. Existing webhook payloads and email image URLs remain compatible.
  • Supports separate UI/API hosts through EX_ApiUrl, including streaming, WebSockets, API Reference, and OAuth discovery/resource validation. Configure it on both deployments; browser authorization redirects use the UI origin.
  • Preserves existing CSP script allowances and EX_EnableSsl behavior. Validates API connection origins, stops container startup on invalid runtime configuration, preserves quoted entrypoint arguments, and excludes generated frontend/QA files from Docker builds.

Validation for 9187287: full CI and preview deployment passed in 10m18s: 3,128 backend tests passed (3 skipped), 1,006 frontend unit tests passed, and 116 browser tests passed with zero retries. Local focused checks included 161 backend tests, 33 frontend unit tests, clean Svelte/lint checks, and 13 browser scenarios. The controlled-clock recovery scenario passed three repeated runs at about 1.3s each locally. Hosted checks confirmed this exact commit, session retention, all three stack confirmations and unchanged state after cancellation, the upgrade-to-billing alias, and a 404 for the retired preview prefix.

Latest main is included, including #2618, #2635, and #2636. Selected startup, root-link, history, and configuration-validation improvements were adapted from #2609. The shared dev preview is updated by the PR pipeline. The PR remains open for human review.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-03T05:31:03.552284Z 9187287 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 46b7786088

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread build/update-config.sh
Comment thread src/Exceptionless.Core/Plugins/Formatting/FormattingPluginBase.cs Outdated
Comment thread src/Exceptionless.Core/Utility/AppUrlBuilder.cs
@ejsmith

ejsmith commented Oct 1, 2026

Copy link
Copy Markdown
Member Author

/preview

@github-actions github-actions Bot added the dev-preview Deploy this pull request to the shared dev environment. label Oct 1, 2026
@github-actions

github-actions Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Preview deployed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e840375f26

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6e8b4cf185

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/Exceptionless.Core/Mail/Mailer.cs Outdated
niemyjski added a commit that referenced this pull request Oct 1, 2026
Navigation type handling is informed by PR #2608. Normalize existing history entries before the router reads them and cover Back and Forward without inserting extra entries.
niemyjski added a commit that referenced this pull request Oct 1, 2026
Project report compatibility is informed by PR #2608. Reuse the authorized project query to select its owner before initializing list filters, preserve newest-stack mode and outer hash-link parameters, and keep development redirects on the local origin. Add history, access-denial, and raw-request regressions.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b585b3fd38

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/Exceptionless.Web/ClientApp/src/routes/+layout.svelte

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b5f6c52171

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/Exceptionless.Web/Api/Handlers/OAuthHandler.cs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f7eba6a033

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread build/update-config.sh
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

Reviewed commit: 269c5c1a8b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .agents/skills/aspire-diagnostics/SKILL.md Outdated
Comment thread .claude/agents/engineer.md Outdated
Comment thread .claude/agents/qa.md Outdated
Comment thread build/app-docker-entrypoint.sh
Comment thread build/EmailTemplatePreviews.cs Outdated
Comment thread build/update-config.sh
Comment thread build/update-config.test.mjs
Comment thread src/Exceptionless.Core/Mail/Mailer.cs
Comment thread src/Exceptionless.Core/Mail/Mailer.cs Outdated
Comment thread src/Exceptionless.Core/Utility/AppUrlBuilder.cs
Comment thread src/Exceptionless.Web/Api/Handlers/OAuthHandler.cs Outdated
Comment thread src/Exceptionless.Web/ClientApp/e2e/fixtures/api-client.ts
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

Comment thread src/Exceptionless.Core/Extensions/AppOptionsExtensions.cs Outdated
Comment thread src/Exceptionless.Core/Plugins/Formatting/FormattingPluginBase.cs
Comment thread src/Exceptionless.Core/Plugins/WebHook/Default/020_VersionTwoPlugin.cs Outdated
Comment thread src/Exceptionless.Core/Utility/AppUrlBuilder.cs Outdated
Comment thread src/Exceptionless.Web/Api/Handlers/OAuthHandler.cs Outdated
Comment thread src/Exceptionless.Web/Security/ApiContentSecurityPolicy.cs
Comment thread src/Exceptionless.Web/Program.cs Outdated
Comment thread tests/Exceptionless.Tests/Api/ApiContentSecurityPolicyTests.cs
Comment thread AGENTS.md Outdated
Comment thread README.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9187287a21

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/Exceptionless.Web/ClientApp/src/hooks.ts
@github-actions

github-actions Bot commented Oct 3, 2026

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Complexity Health
Exceptionless.AppHost 23% 23% 128 ❌
Exceptionless.Core 77% 68% 10825 ✔
Exceptionless.Insulation 51% 43% 370 ➖
Exceptionless.Web 86% 70% 9173 ✔
Summary 80% (27813 / 34874) 69% (13747 / 20064) 20496 ✔

@ejsmith
ejsmith requested a review from niemyjski October 3, 2026 05:32
@niemyjski
niemyjski merged commit 893d79b into main Oct 3, 2026
23 checks passed
@niemyjski
niemyjski deleted the feature/remove-legacy-ui branch October 3, 2026 21:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev-preview Deploy this pull request to the shared dev environment.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants