Platform Evolution
Assessment run-2026-07-27-1 · 213 of 213 repos assessed
Repos / phenix-service-management

phenix-service-management

Tiny shared NuGet library (TC.Phenix.ServiceManagement) wrapping WCF client invocation over ConnectionBroker behind an IServiceInvoker abstraction for Phenix consumers.

41 · redmediumloosely attachedNo signalZDD: not applicablelibrarydormant

Health score

41

0 to 100 across seven weighted factors; nothing is hidden. Green is 75 and above, amber 50 to 74, red below 50. How scoring works.


Runtime currency / 25
0
.NET Framework, out of mainstream support
Legacy transport / 15
6
Calls at least one legacy WCF endpoint
Test posture / 15
0
No tests
Security hygiene / 15
15
No credentials found in source
Dangerous coupling / 15
15
No dangerous coupling detected
Activity / 10
0
Dormant: no meaningful change for two years or more while still deployed
Deployment hygiene / 5
5
CI in place
Health over time
2026-07-24 (run-2026-07-24-1): 412026-07-27 (run-2026-07-27-1): 41
No change since 2026-07-24 (41 to 41).

Facts

Languagescsharp
Frameworks-
Runtimes.NET Standard 2.0, .NET Framework 4.6.2, .NET Framework 4.7.2
Tests / CInone / CI in place
Last commit2023-09-18
OwnerOwner unknown (mapping to be curated)
DomainPlatform services (system generated; curate in repo-owners.json to override)
Product areaPhenix
HostedNo signal No hosting signal in its pipelines (typical for libraries and contract packages)
Releases2 release pipeline(s): phenix-service-management develop; phenix-service-management release
Integrationwcf
SourceOpen in Azure DevOps

Risk flags

Each flag links to its glossary definition.

Dependencies in context

Laying out the graph…
greenamberreddata store (square, dashed link)Node size follows fan-in. Click any node to open it.

Entanglement

loosely attached Bound into the core by 1 mechanism(s).

  • Speaks WCF (client)

Detaches when its WCF surface gains a modern interface or its WCF calls move to one.

Migration playbooks

Generated from this repo's assessment data: what is feasible, what blocks it, and the steps in order. Ratings: green means actionable now, amber means sequence other work first, red means blocked, grey means not applicable.

ZDD adoption

Not applicable

Not a deployed service (libraries, database definitions, desktop apps) or a retirement candidate not worth the investment. Ships as a package; ZDD applies to the services that consume it.

SQL Server exit

Not applicable

No SQL Server dependency is recorded for this repo. Nothing to migrate.

Containerisation

Not applicable

Libraries ship as packages, not as running services. There is nothing to containerise.

Recommended actions

Replatform phenix-service-management to modern .NET

Runs on .NET Standard 2.0, .NET Framework 4.6.2, .NET Framework 4.7.2, out of mainstream support. No pinning dependency blocks it; sequence by fan-in (providers before consumers).

Impact: Unblocks 3 dependent system(s)

proposed

Assessment notes

phenix-service-management

Purpose

Publishes the TC.Phenix.ServiceManagement NuGet package: a single IServiceInvoker interface plus a WcfServiceInvoker that resolves a WCF channel from IWcfConnectionBroker, invokes a delegate and disposes the client. It exists so Phenix apps can call legacy WCF services through one seam; the source itself marks the pattern as "kept for legacy code".

Tech stack

One SDK-style class library, two source files, multi-targeting netstandard2.0/net462/net472 with GeneratePackageOnBuild. Sole dependency is TC.ConnectionBroker.Abstractions 1.5.79 (an old line — current consumers are on 1.19.x). StyleCop and TravelCounsellors rulesets enforced.

Deployment

Release pipelines phenix-service-management develop and release (release_count 2, plus a deprecated build pipeline), built from build.yml in the repo using the shared InternalOSS azure-pipelines-templates. Output is a NuGet package, not a deployed service.

Dependencies

Internal: tc-connectionbroker only. No external services.

Data stores

None — pure abstraction library.

Integration points

WCF client invocation only; the package is the estate's standard wrapper for calling legacy WCF services.

Code health

No test project despite a TestProject.Build.props scaffold. README is untouched boilerplate. Dormant since 2023-09-18 while still consumed widely (e.g. phenix-reviews, phenix-root reference the package), and it pins a very old ConnectionBroker abstractions version.

Modernisation risks

The library institutionalises WCF client access, so it will persist exactly as long as the estate's WCF services do; it needs no work itself but is a good tracer for WCF fan-in. Medium priority: retiring it is a byproduct of the wider WCF decommissioning, and the stale ConnectionBroker pin could bite consumers on newer lines.