feat(data): show status description consistently and allow refresh in data:pg:migrate - #3942
Merged
Merged
Conversation
Render the status column as `Status: description`, with the status label colored and the status_description trailing in gray after a colon. Skip the description when it's null/empty or the same text as the status label (case-insensitive). Fall back to the label alone.
Add a Refresh choice to the main menu; the loop already re-fetches databases and migration targets and re-renders on each iteration, so selecting it simply refreshes the view.
Add unit tests for the migrate main-menu status column: renders `Status: description` when a description is present, omits it when it matches the label, and re-fetches/re-renders when Refresh is selected.
5 tasks done
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
To better show progress and context to customers, we have made the migration entity's
status_descriptionnon-nullable. This will always have a value giving a short description of current state of the migration, e.g.,Migrating: 50% complete.This pr updates the cli to always render this
status_descriptionin favor of interpreting thestatusand conditionally renderingstatus_description. We also add a default wrap to the table to handlestatus_descriptionsthat might not fit in narrow terminal windows.Additionally, this pr adds a
refreshcommand to reload and rerender the migration list so customers can better follow along.Note - during development, we identified two areas for improvement in cli tooling:
hux.tablewrapper only forwardskeyandname. In this scenario we may want to only wrap the status column.Type of Change
Breaking Changes (major semver update)
!after your change type to denote a change that breaks current behaviorFeature Additions (minor semver update)
Patch Updates (patch semver update)
Testing
Notes:
Steps:
bin/dev.js data:pg:migrate --app ekozil-dev)Screenshots (if applicable)
Screen.Recording.2026-09-25.at.11.31.12.AM.mov
Related Issues
GitHub issue: #[GitHub issue number]
GUS work item: W-24292098