Skip to content

Implement new codeflows page#6099

Open
adamzip wants to merge 2 commits intodotnet:mainfrom
adamzip:implement-full-codeflows-page
Open

Implement new codeflows page#6099
adamzip wants to merge 2 commits intodotnet:mainfrom
adamzip:implement-full-codeflows-page

Conversation

@adamzip
Copy link
Contributor

@adamzip adamzip commented Mar 15, 2026

Copilot AI review requested due to automatic review settings March 15, 2026 16:26
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Implements the new codeflows page UI, replacing mock data with real API calls and restructuring the table to show forward flow and backflow as separate rows per repository with color-coded status indicators.

Changes:

  • Replaced mock data with real PcsApi.Codeflow.GetCodeflowStatusesAsync calls, with VMR default channel discovery
  • Restructured the data grid from one row per repo (with separate backflow/forward columns) to two rows per repo (one per direction) using a CodeflowRow record
  • Added traffic-light status indicators (green/yellow/red dots) for build staleness and PR age

Comment on lines +240 to 245
var statuses = await PcsApi.Codeflow.GetCodeflowStatusesAsync(
branch: _branch,
repositoryUrl: _defaultChannel.Repository);

CodeFlowRows = ToRows(statuses)
.AsQueryable();
"https://github.com/dotnet/dotnet",
"https://github.com/maestro-auth-test/dotnet",
"https://github.com/maestro-auth-test/dnceng-vmr",
];
Comment on lines +291 to +302
];

foreach (var vmrUri in possibleVmrs)
{
var defaultChannels = await PcsApi.DefaultChannels.ListAsync(repository: vmrUri);

if (defaultChannels.Count > 0)
{
return defaultChannels
.OrderByDescending(c => c.Branch == "main")
.ThenByDescending(c => c.Branch)
.ToList();

<GridViewTemplate Title="Codeflows1234" ShowSkeleton="CodeFlows == null">
<!--<Header>
<GridViewTemplate Title="Codeflows" ShowSkeleton="CodeFlowRows == null">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure if we want to have a dedicated row for backflow/forward flow. For instance, if you sort the table by last flow:

  • It's unclear which it is sorting based on
  • It can also make the two co-joined rows go apart and then the table stops making sense:
    Image

Instead, if we keep those on a single row, we can get rid of the direction column which can give us enough space to show both backflow/forward flow in a single row.

If the table is still too big, we can work around the long grey text with build age and make it shorter maybe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants