Verification and troubleshooting

Match checks to the change

For application changes, restore/build the root solution and run relevant tests. For documentation-only changes, validate text, source claims, links, TOC, and diff; an application build is unnecessary. There is an xUnit project, CODE.com.Tests; no npm application build pipeline is established for the embedded Vue modules.

dotnet restore CODE.com.sln
dotnet build CODE.com.sln --no-restore
dotnet test CODE.com.sln --no-build
dotnet test CODE.com.Tests/CODE.com.Tests.csproj --filter FullyQualifiedName~MagazineMenuTests
Change Focused verification
Routes/menus Restart each affected mode; test destinations, aliases, generated URLs, selected area, desktop/mobile expansion, compact footer, and directory
Shared layout/styles Desktop and narrow layouts, relevant sites, both style generations, long text, keyboard access, missing assets, and overflow
Reader Magazine + 2027 selection; other combinations retain their view; anchors, TOC, settings persistence, sharing, code, images, and no-author/date cases
Account/Vue/API Signed-out and signed-in behavior, ownership, server validation, loading/saving/errors, network payloads, console, token refresh, and reload
Images/downloads Redirect and byte responses, MIME agreement, TIFF recovery, alpha/JPEG behavior, portraits, cache hits, and service side effects
Sharing/SEO Server-rendered head, canonical and absolute image URLs, anonymous image access, sample sitemap destinations
Configuration/deployment Effective modes, restart behavior, secrets/feed availability, startup remote calls, and target-runtime image behavior

Existing regression coverage

MagazineMenuTests covers menu visibility/order, dynamic service links, selected areas, other-site expansion, featured footer grouping, and rendered footer behavior. ArticlePresentationTests covers accent validation, reading time, category selection, and biography formatting. BlogPresentationTests covers visibility flags and preserving body anchors. ImageHelperTests covers encoding/resizing/TIFF behavior; ArticleImageTests covers delivery, recovery, logging/notification behavior, portraits, and image callers.

These tests do not establish end-to-end account, payment, live backend, or browser correctness. Follow existing service-test setup when adding regression coverage and isolate static configuration/caches. Add tests for meaningful logic or regressions; do not mirror trivial markup changes with brittle assertions.

Diagnosing common failures

Symptom First checks
Restore fails .NET 10 SDK, NuGet feed access/authentication, package availability; do not paste credentials into logs
Startup stops before listening Mode parsing and consulting slug fetch during Standard/Group route registration
Override appears ignored Actual ApplicationSettings base key, root-level override spelling, selected process, and restart
A URL redirects to /Error Active route set, route order/parameters, attribute routes, and fallback; inspect the response chain
Menu or service link is stale Process menu cache versus dynamic service data versus startup-registered slug routes; these have different refresh points
Wrong visual generation Effective StyleMode, selected view condition, shared CSS overrides, asset versions, and browser cache
Profile component stays loading Module path, Vue runtime load, console, fetch response shape, auth state, and POST rejection handling
Form fails after AJAX login Refresh identity-bound antiforgery token before submission
Image is blank or broken Redirect target, response MIME and bytes, missing attachment, fallback path, native runtime, and cache owner
Social image missing Outer ISharable model and populated sharing image; ViewBag image fallback is inactive
Sitemap is incomplete Per-group logged exceptions, backend responses, and the intentionally limited enumeration scope
Expected exception logging is missing Feature catches and UTM middleware's downstream exception swallowing

Logging and operational boundaries

Startup optionally registers CODE Framework database logging from LogserverConnectionstring and email logging when distribution/server credentials are configured. EnvironmentName labels those logs; it is separate from ASP.NET's environment selection. Review LoggingMediator calls in the affected feature and distinguish business failure responses from thrown exceptions.

Do not diagnose expected failures by changing every developer's debugger exception settings. Handle expected outcomes in application code and preserve visibility into unexpected errors. Keep passwords, payment values, tokens, and person data out of screenshots and diagnostics; masking helpers are not a guarantee that every logging path is safe.

There is no deployment runbook established by this guide. Confirm target settings, feed/runtime availability, backend environment, and rollback practice with the deployment owner. The code uses in-process caches/session and external services, so restarting or scaling can affect state and dependency traffic. Do not infer a shared session store or a universal multi-instance cache purge.

Source references