Skip to content

Retire Angular and serve the Svelte application at root - #2609

Closed
niemyjski wants to merge 10 commits into
mainfrom
feature/svelte-root
Closed

niemyjski wants to merge 10 commits into
mainfrom
feature/svelte-root

Conversation

@niemyjski

@niemyjski niemyjski commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

Retires Angular and its build, Aspire, Docker, editor and devcontainer wiring. Publishes the existing Svelte app at /, with local /next compatibility redirects and separate API/docs/MCP/health/asset routing. Both Docker entrypoints only remove the second frontend block; the existing Svelte config script replaces the Angular writer with root asset paths and credential logging removed.

Updates notification, assistant and auth links to the Svelte routes, preserving report organization/project scope and confirmation for stack actions. Removes the old-site notification selector while preserving stored audience values and dismissals. Existing config names/defaults and settings routes remain; OAuth authorization redirects to the configured app origin for separate API hosts. Its OpenAPI snapshot is updated.

Verification:

  • Rebased onto current main; preserved CI sharding, isolation, required checks and flaky-test rejection. Discovery covers all 125 browser tests exactly once across six shards. No duplicate/renamed Angular CI or VS Code task.
  • Local frontend validation/type/lint/build and all 1,022 unit tests passed. CI tooling and shell syntax passed; 13 email previews rendered with 48 canonical action links.
  • Standalone and all-in-one Docker builds passed. Packaged config, root/deep-link/auth/API/docs routing and all 27 cutover/incoming browser checks passed with retries disabled.
  • Exact-head CI passed on c99b5e335: 3,150 backend tests passed (3 existing skips), 125 browser tests passed with zero retries, all 1,022 frontend unit tests passed, and lint/type/build, four Docker targets, aggregate completeness/coverage and CLA checks passed. Live third-party sign-ins were not exercised.

Breaking change: Angular UI retirement. Draft only; no merge/deployment. CSP PR #2363 remains separate.

@niemyjski niemyjski self-assigned this Oct 2, 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.
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.
@niemyjski
niemyjski force-pushed the feature/svelte-root branch from 8a71206 to c99b5e3 Compare October 2, 2026 03:13
@github-actions

github-actions Bot commented Oct 2, 2026

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Complexity Health
Exceptionless.AppHost 23% 23% 128 ❌
Exceptionless.Core 77% 68% 10821 ✔
Exceptionless.Insulation 51% 43% 370 ➖
Exceptionless.Web 86% 70% 9192 ✔
Summary 80% (27822 / 34886) 68% (13737 / 20074) 20511 ✔

ejsmith added a commit that referenced this pull request Oct 2, 2026
Adapt selected startup, notification URL, history, and API-origin validation improvements from #2609. Preserve the existing CSP script allowances and verify backward compatibility at the HTTP and browser boundaries.

Co-authored-by: Blake Niemyjski <bniemyjski@gmail.com>
@niemyjski niemyjski closed this Oct 3, 2026
@niemyjski
niemyjski deleted the feature/svelte-root branch October 3, 2026 14:38
niemyjski added a commit that referenced this pull request Oct 3, 2026
* Replace legacy Angular UI with root Svelte application

* Preserve whitespace-tolerant OAuth client configuration

* Honor configured API origins and simplify Slack actions

* Mock public environment in navigation command tests

* Preserve legacy link history and test preview commits

* Allow configured API origins in application CSP

* Correct the documented Aspire app endpoint

* Align email previews with current stack actions

* Isolate synthetic notification timing in browser tests

* Remove remaining UI transition controls and update contributor guidance

* Use configured hosts for service recovery and OAuth navigation

* Align development and preview links with the Svelte application

* Isolate navigation cache checks from saved-view broadcasts

* Wait for saved-view navigation before cache checks

* Preserve configured HTTPS enforcement in Svelte

* Control stack notification timing in browser stress test

* Await real refresh responses and isolate telemetry in browser checks

* Separate the public OAuth API origin from the UI redirect

* Harden frontend startup and preserve legacy navigation

Adapt selected startup, notification URL, history, and API-origin validation improvements from #2609. Preserve the existing CSP script allowances and verify backward compatibility at the HTTP and browser boundaries.

Co-authored-by: Blake Niemyjski <bniemyjski@gmail.com>

* Provide runtime configuration in Intercom component tests

* Clean up frontend guidance and move API origin helper

* Restore email stack actions with Svelte confirmations

* Simplify UI cutover and preserve notification actions

---------

Co-authored-by: Blake Niemyjski <bniemyjski@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant