Platform Evolution
Assessment run-2026-07-27-1 · 213 of 213 repos assessed
Repos / provider-transaction-reader

provider-transaction-reader

Internal support tool for viewing request/response logs between TC systems and external providers, currently a WinForms desktop app mid-migration to a Blazor Server web app.

76 · greenlowloosely attachedOn-premZDD: not applicableother

Health score

76

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
25
Runs on supported modern .NET
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
10
Actively maintained
Deployment hygiene / 5
5
CI in place
Health over time
2026-07-24 (run-2026-07-24-1): 762026-07-27 (run-2026-07-27-1): 76
No change since 2026-07-24 (76 to 76).

Facts

Languagescsharp
FrameworksWindows Forms, Blazor Server (ASP.NET Core 8)
Runtimes.NET 8
Tests / CInone / CI in place
Last commit2026-05-07
OwnerOwner unknown (mapping to be curated)
DomainSelling and quoting (system generated; curate in repo-owners.json to override)
Product areaPhenix
HostedOn-prem Deployed to our own machines
  • Release "\commercial\provider\provider-transaction-reader": Publish Beta Clickonce: file copy to \\ukmaniis3\Development\ProviderTransactionReaderBeta
  • Release "\commercial\provider\provider-transaction-reader": Publish Live Clickonce: file copy to \\ukmaniis3\Development\ProviderTransactionReader
  • Release "\tools\provider-transaction-reader WEB": QA: deployment-group phase (agents on our own machines)
  • Release "\tools\provider-transaction-reader WEB": Staging: deployment-group phase (agents on our own machines)
  • Release "\tools\provider-transaction-reader WEB": Production: deployment-group phase (agents on our own machines)
Releases3 release pipeline(s): \commercial\provider\provider-transaction-reader; \tools\provider-transaction-reader WEB; provider-transaction-reader-beta
Integrationrest, wcf-client, smtp
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.

Depends on / used by

Used by (0)
No internal dependents.

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. Desktop application distributed to user machines; server-side ZDD does not apply.

SQL Server exit

Not applicable

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

Containerisation

Not appropriate

This is a desktop application distributed to user machines; containers do not apply. Its modernisation path is replacement by a web application, not containerisation.

Recommended actions

No specific actions for this repo. It either needs only normal maintenance, or its work is covered by an estate-level action. See the full programme.

Assessment notes

provider-transaction-reader

Purpose

Support-team tool for inspecting communication logs (XML/JSON request-response pairs) between TC systems and external accommodation, flight and P2P providers. Users search transactions, view formatted payloads, and can email logs out via SMTP. A documented migration (PDR-001) is moving it from a WinForms MDI desktop app to a Blazor Server web app; both live in the solution today.

Tech stack

Three C# SDK-style projects: a net8.0-windows WinForms app (WebView2 payload viewer, Azure AD authentication), a net8.0 Blazor Server web app (PhenixAuth authentication scheme, New Relic app name configured), and a shared Common library holding the API clients and content-processing services. Modern dependency versions throughout (ConnectionBroker 1.22, Newtonsoft 13).

Deployment

Included as prod_application with 3 releases across \commercial\provider\provider-transaction-reader, \tools\provider-transaction-reader WEB and provider-transaction-reader-beta. YAML pipelines in the repo (azure-pipelines.yml using the shared azure-pipelines-templates CI template plus older build-init.yml/build-ptr.yml), publishing the Web app and the desktop build separately. A deployment-scripts submodule supports the classic deployment.

Dependencies

Internal packages: TC.ConnectionBroker.Api/Wcf (tc-connectionbroker), Phenix.Providers.Api.Client and TC.Phenix.ProviderTransactionLogging.Api.Client (phenix-provider), TC.UserAccount.ServiceClient over WCF (backoffice-useraccount-service), plus PhenixAuth/TC.Authentication.ActiveDirectory auth libraries. No third-party services beyond Azure AD sign-in.

Data stores

None owned — transaction logs are read through the provider transaction logging API rather than direct database access.

Integration points

Outbound REST to the providers and transaction-logging APIs via ConnectionBroker; a WCF client for user-account lookups; SMTP (smtp.travelcounsellors.com) for emailing logs.

Code health

No test projects at all despite an otherwise well-organised codebase with ADRs, a migration PDR and a CLAUDE.md. Actively developed (last commit 2026-05-07). Documentation is unusually good for the estate.

Modernisation risks

Low: already on .NET 8 with a funded migration path from thick client to web. Residual risks are the half-finished WinForms/Blazor split (two UIs to maintain until the desktop app is retired), the WCF client dependency for user accounts, and zero automated tests to protect the migration.