Skip to content

Fix Dag version diff max-changes border, limit wording and duplicate count - #74818

Merged
jedcunningham merged 2 commits into
apache:mainfrom
astronomer:dag-version-diff-limit-ui
Oct 16, 2026
Merged

jedcunningham merged 2 commits into
apache:mainfrom
astronomer:dag-version-diff-limit-ui

Conversation

@jedcunningham

Copy link
Copy Markdown
Member

Fixes to the Dag version comparison (Versions tab):

Empty "Max changes" field no longer shows an error border. The number input treats an empty value as NaN, so zag's isOutOfRange marked the field's normal, unset state invalid. Versions.tsx now passes invalid explicitly: only a non-empty value that is not an integer in 1..5000 is invalid.

Clearer messaging when the limit cuts the comparison short.

  • The summary says "At least N changes" instead of "N changes", since the count is a lower bound once truncated.
  • The warning now reads "Showing only the first N changes" / "There are more changes than the Max changes limit allows. Raise the limit to see the rest." (or names the default limit when the field is empty), replacing "Changes at paths not shown were dropped to stay within the limit, so the count is a lower bound."
  • The table's own "N Records" heading is hidden. It repeated the change count in the summary just above it, and could disagree with it, because a redacted record stands for every change sharing its path.
  • The old versions.truncated.* strings are removed from the seven translated locales so they fall back to English rather than show the old meaning; translators can add the new keys.

Comparison of two versions with more changes than the default limit (500), Max changes left empty.

Before (main):

Screenshot 2026-10-15 at 4 22 13 PM

After:

Screenshot 2026-10-15 at 4 22 33 PM

jedcunningham and others added 2 commits October 16, 2026 09:54
An empty Max changes field parsed to NaN, which the number input treats
as out of range, so its normal unset state drew an error border. Pass
`invalid` explicitly so only a real out-of-range value is flagged.

When the comparison hits the limit, say "At least N changes" and
"Showing only the first N changes" with a pointer to raise the limit,
instead of the lower-bound wording. Render the warning title as an
Alert.Title child: the raw Alert.Root only set it as an HTML title
attribute. Drop the old truncation strings from translated locales.

Hide the table's "N Records" heading: the summary already counts the
changes, and the record count could disagree with it, since a redacted
record stands for every change sharing its path.
@jedcunningham
jedcunningham force-pushed the dag-version-diff-limit-ui branch from e8839af to d7973f5 Compare October 16, 2026 15:55
@jedcunningham
jedcunningham merged commit 23f4aee into apache:main Oct 16, 2026
91 checks passed
@jedcunningham
jedcunningham deleted the dag-version-diff-limit-ui branch October 16, 2026 17:52
@github-actions

Copy link
Copy Markdown
Contributor

Backport successfully created: v3-4-test

Note: As of Merging PRs targeted for Airflow 3.X
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.

In matter of doubt please ask in #release-management Slack channel.

Status Branch Result
✅ v3-4-test PR Link

aws-airflow-bot pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request Oct 16, 2026
…d duplicate count (apache#74818)

An empty Max changes field parsed to NaN, which the number input treats
as out of range, so its normal unset state drew an error border. Pass
`invalid` explicitly so only a real out-of-range value is flagged.

When the comparison hits the limit, say "At least N changes" and
"Showing only the first N changes" with a pointer to raise the limit,
instead of the lower-bound wording. Render the warning title as an
Alert.Title child: the raw Alert.Root only set it as an HTML title
attribute. Drop the old truncation strings from translated locales.

Hide the table's "N Records" heading: the summary already counts the
changes, and the record count could disagree with it, since a redacted
record stands for every change sharing its path.
(cherry picked from commit 23f4aee)

Co-authored-by: Jed Cunningham <66968678+jedcunningham@users.noreply.github.com>
choo121600 pushed a commit that referenced this pull request Oct 17, 2026
vatsrahul1001 pushed a commit that referenced this pull request Oct 20, 2026
SameerMesiah97 pushed a commit to SameerMesiah97/airflow-oss-sm97 that referenced this pull request Oct 27, 2026
…count (apache#74818)

An empty Max changes field parsed to NaN, which the number input treats
as out of range, so its normal unset state drew an error border. Pass
`invalid` explicitly so only a real out-of-range value is flagged.

When the comparison hits the limit, say "At least N changes" and
"Showing only the first N changes" with a pointer to raise the limit,
instead of the lower-bound wording. Render the warning title as an
Alert.Title child: the raw Alert.Root only set it as an HTML title
attribute. Drop the old truncation strings from translated locales.

Hide the table's "N Records" heading: the summary already counts the
changes, and the record count could disagree with it, since a redacted
record stands for every change sharing its path.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-to-v3-4-test Backport to v3-4-test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants