Platform Evolution
Assessment run-2026-07-27-1 · 213 of 213 repos assessed
Repos / mytc-datacleanup

mytc-datacleanup

Scheduled console job that calls the TCApp public WebAPI service to remove expired datasets, cleaning up MyTC app data.

41 · redmediumloosely attachedOn-premZDD: not applicablejobdormant

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
FrameworksTC.MaintainanceTools.SimpleJobs 4.2.1, SimpleInjector 4.10, WCF client
Runtimes.NET Framework 4.7.2
Tests / CInone / CI in place
Last commit2021-01-05
OwnerOwner unknown (mapping to be curated)
DomainAgent tools and community (system generated; curate in repo-owners.json to override)
Product areamyTC
HostedOn-prem Deployed to our own machines
  • Release "\mytc\mytc-datacleanup": QA: deployment-group phase (agents on our own machines)
  • Release "\mytc\mytc-datacleanup": Staging: deployment-group phase (agents on our own machines)
  • Release "\mytc\mytc-datacleanup": Production: deployment-group phase (agents on our own machines)
Releases1 release pipeline(s): \mytc\mytc-datacleanup
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.

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. Retirement or consolidation candidate; do not invest in ZDD adoption.

SQL Server exit

Not applicable

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

Containerisation

Retire instead

This repo is a retirement or consolidation candidate; containerising it would be investment in something we intend to switch off.

Recommended actions

Review mytc-datacleanup for retirement

Dormant (last commit 2021-01-05) yet still release-linked, and nothing depends on it. Confirm remaining use, then retire and disarm its pipeline.

Impact: Shrinks the estate before the expensive work begins

proposed

Assessment notes

mytc-datacleanup

Purpose

Single-purpose maintenance job (TCAppDataCleanupJob, job name TCAppDataCleanup) built on the internal SimpleJobs framework. Its Execute method makes one call, RemovedExpiredDatasets(), against the TCApp public WebAPI service (WebAPIService.svc), purging expired MyTC app datasets. Errors are reported to the webapi-exceptions service.

Tech stack

One old-style C# console project (TCAppDataCleanup.Task) targeting .NET Framework 4.7.2 with packages.config. Uses SimpleInjector for DI and the TC.MaintainanceTools.SimpleJobs 4.2.1 framework with app.config-based configuration. The downstream service is called via a WCF basicHttpBinding client generated from TC.Public.WebAPI.ServiceContracts.

Deployment

Included with 1 release: build pipeline mytc-datacleanup and release pipeline \mytc\mytc-datacleanup. A legacy-style build.yml runs MSBuild/VSTest on a self-hosted agent and pulls the shared deployment-scripts repo; environment-specific App.*.config transforms exist for localhost, training and production.

Dependencies

Internal: the TCApp public WebAPI (public-api, via TC.Public.WebAPI.ServiceContracts) and the exception-reporting service (webapi-exceptions, endpoint configured in App.config). No third-party services.

Data stores

None directly; data deletion happens inside the downstream WebAPI service. (System.Data.SqlClient is referenced transitively but no connection strings exist in this repo.)

Integration points

Outbound WCF/SOAP over basicHttpBinding to TCApp.WebAPIService/WebAPIService.svc, plus HTTP posts to the webapi-exceptions endpoint.

Code health

No tests, boilerplate template README, and no commits since 2021-01-05. CI exists but uses an older single-file pipeline style with self-hosted agent demands.

Modernisation risks

.NET Framework 4.7.2 with packages.config and a WCF client, all dormant for five years. The job is trivially small, so the pragmatic path is rewriting it as a modern .NET job (or an API-side scheduled task) rather than upgrading in place; risk of leaving it is that it silently depends on legacy WCF endpoints and Windows agents.