Skip to content

Format support matrix statuses natively in buildkite shell scripts#1877

Open
RobMulla wants to merge 4 commits intomainfrom
fix-upstream-csv-formatting
Open

Format support matrix statuses natively in buildkite shell scripts#1877
RobMulla wants to merge 4 commits intomainfrom
fix-upstream-csv-formatting

Conversation

@RobMulla
Copy link
Collaborator

@RobMulla RobMulla commented Mar 6, 2026

This PR refactors the support matrix generation scripts to natively output UI-formatted statuses (✅ Passing, ⚪ N/A, ❓ Untested, ❌ Failing) instead of relying on downstream Python scripts to parse emojis.

Changes

  1. record_step_result.sh: Modifies the case in block to output the actual user-facing strings instead of just emojis/raw words. Because this step outputs the data directly into the Buildkite metadata pipeline, every downstream script will natively pull the correct, formatted status without any post-processing required.
  2. generate_support_matrices.sh:
    • Modifies process_kernel_matrix_to_pivot header variables to output (Corr) and (Perf) instead of (Correctness) and (Performance) to save space.
    • Updates the buildkite-agent meta-data get fallbacks from N/A to ⚪ N/A to match the UI scheme consistently.
  3. Tests: Added tests/test_generate_support_matrices.sh with a mock buildkite-agent to guarantee the awk pivoting algorithm and fallback UI strings are correctly formatted before merging.

This sets up the foundation for stripping out the redundant update_all_matrices.py and legacy combine_matrices.py scripts from the downstream logic.

@RobMulla RobMulla force-pushed the fix-upstream-csv-formatting branch from 1ffda63 to 93b6279 Compare March 6, 2026 17:51
@RobMulla RobMulla added ready ONLY add when PR is ready to merge/full CI is needed and removed ready ONLY add when PR is ready to merge/full CI is needed labels Mar 6, 2026
@RobMulla RobMulla force-pushed the fix-upstream-csv-formatting branch from 93b6279 to 636ed7c Compare March 6, 2026 17:54
@@ -0,0 +1,131 @@
#!/bin/bash
Copy link
Collaborator

Choose a reason for hiding this comment

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

Hi @RobMulla, is this test actually passing for you btw?

Image

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think this is because you are running on mac - newer bash syntax crashes on Mac's native bash. I updated generate_support_matrices so it should work now.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I initially suspected it was a mac issue but tested on linux & got the same error XD
image

But the test is passing with your new changes now, thanks.

- record_step_result.sh now directly applies UI-facing statuses like '✅ Passing'
- generate_support_matrices.sh now surfaces these formatted statuses
- microbenchmark pivoting logic cleaned up to use simple shortened headers

Signed-off-by: Rob Mulla <rob.mulla@gmail.com>
Signed-off-by: Rob Mulla <rob.mulla@gmail.com>
…shell scripts

- added fallback format mapping to generate_support_matrices.sh for beta, experimental, planned, and unplanned to match README.md legend

Signed-off-by: Rob Mulla <rob.mulla@gmail.com>
…tible

Signed-off-by: Rob Mulla <rob.mulla@gmail.com>
@RobMulla RobMulla force-pushed the fix-upstream-csv-formatting branch from eb2fecd to c8bcc78 Compare March 11, 2026 17:06
@jcyang43 jcyang43 added the ready ONLY add when PR is ready to merge/full CI is needed label Mar 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready ONLY add when PR is ready to merge/full CI is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants