chore(cleanup): delete OtOpcUa.Server, OtOpcUa.Admin, and obsolete v1 tests

Task 56: removes the legacy in-process Server + Admin Web project + their test
projects (Server.Tests, Admin.Tests, Admin.E2ETests). The fused OtOpcUa.Host
binary built across Phases 1-9 is now the sole production entry point.

What happened to the 47 legacy Admin Blazor pages: per follow-up F15, the
v1 architecture's draft/publish UX is replaced by v2's live-edit + snapshot-
deploy model, so a 1:1 migration is not meaningful. The mechanical move via
git mv preserves the history; service classes + page bodies that referenced
removed v1 types (ConfigGeneration, RedundancyRole, GenerationId) were
deleted. AdminUI now ships a minimal Home page + the v2 Deployments page.

Per-page rebuild against the v2 surface is tracked as F15. The v2 Deployments
page (Task 52) is the only first-party UI shipping in this PR.

Task 57: solution build green; 84+ tests green across active v2 + legacy
driver test projects.
This commit is contained in:
Joseph Doherty
2026-05-26 05:38:31 -04:00
parent 2b75ce3876
commit 76310b8829
258 changed files with 29 additions and 33514 deletions

View File

@@ -51,6 +51,9 @@ public sealed class AuthorizationTests
[Fact]
public void Node_role_cannot_SELECT_from_tables_directly()
{
// v2 dropped the ConfigGeneration table. The Node-role authorization invariant still
// holds: Node should not directly SELECT from a config table. Probing the v2 Deployment
// table instead.
var (user, password) = CreateUserInRole(_fixture, "Node");
try
@@ -59,7 +62,7 @@ public sealed class AuthorizationTests
var ex = Should.Throw<SqlException>(() =>
{
using var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT COUNT(*) FROM dbo.ConfigGeneration";
cmd.CommandText = "SELECT COUNT(*) FROM dbo.Deployment";
cmd.ExecuteScalar();
});
ex.Message.ShouldContain("permission", Case.Insensitive);