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

phenix-dashboard-task

Tiny scheduled console job on .NET Framework 4.6.2 that calls the Phenix dashboard API's refresh endpoint to rebuild dashboard data.

50 · amberlowlooseOn-premZDD: not applicablejobdormant

Health score

50

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
15
No legacy WCF or SOAP surface
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): 502026-07-27 (run-2026-07-27-1): 50
No change since 2026-07-24 (50 to 50).

Facts

Languagescsharp
FrameworksTC.MaintainanceTools.SimpleJobs
Runtimes.NET Framework 4.6.2
Tests / CInone / CI in place
Last commit2023-10-05
OwnerOwner unknown (mapping to be curated)
DomainAgent tools and community (system generated; curate in repo-owners.json to override)
Product areaPhenix
HostedOn-prem Deployed to our own machines
  • Release "\ops\dashboard\phenix-dashboard-task CI": QA: deployment-group phase (agents on our own machines)
  • Release "\ops\dashboard\phenix-dashboard-task CI": Staging: deployment-group phase (agents on our own machines)
  • Release "\ops\dashboard\phenix-dashboard-task CI": Production: deployment-group phase (agents on our own machines)
Releases1 release pipeline(s): \ops\dashboard\phenix-dashboard-task CI
Integrationrest
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

loose No binding mechanisms apply: this system needs no untangling work.

    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 phenix-dashboard-task for retirement

    Dormant (last commit 2023-10-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

    phenix-dashboard-task

    Purpose

    A single-job console application built on the TC.MaintainanceTools.SimpleJobs framework. Its one job, PhenixDashboardTask, issues an HTTP GET to {environment}/api/Dashboard/refresh (with a configurable api-version header and a 10-minute timeout) and fails loudly on any non-200 response — a scheduled trigger for the dashboard API's data refresh.

    Tech stack

    One C# console project on .NET Framework 4.6.2, legacy csproj with packages.config. SimpleInjector for wiring, Newtonsoft.Json for response logging, TC.MaintainanceTools.SimpleJobs (+ WebOrAppConfig configuration) for the job runner. Roughly 100 lines of application code in total.

    Deployment

    prod_application with 1 release. Build pipelines phenix-dashboard-task CI and phenix-dashboard-task release (classic — no YAML in the repo); release pipeline \ops\dashboard\phenix-dashboard-task CI. deployment/ PowerShell scripts handle config replacement, path creation and a Slack webhook notification; App.preproduction/production.config transforms point environment at the right base URL.

    Dependencies

    Internal: TC.MaintainanceTools.SimpleJobs.* (maintainancetools-base-fault-handling-jobs) and, at runtime, the dashboard refresh endpoint served by phenix-dashboard-api. External: Slack incoming webhook used by the deployment script only.

    Data stores

    None. All state lives behind the dashboard API it calls.

    Integration points

    Outbound REST only — one GET to the dashboard API per scheduled run.

    Code health

    No tests, no README. Dormant since 2023-10-05, which is unsurprising for a job this small; it presumably keeps running unchanged in production. The System.DirectoryServices.AccountManagement package reference appears unused by the job code.

    Modernisation risks

    Low as a standalone item: the whole thing is a cron-style HTTP ping on an EOL runtime (.NET Framework 4.6.2). It could be replaced by a scheduler-native HTTP call or absorbed into phenix-dashboard-api as a hosted background timer, eliminating the repo; worth folding into whatever pattern the estate adopts for the other SimpleJobs-based tasks rather than modernising individually.