Repository navigation
feat(cli): kates conformity check fits the terminal: details go on lines under each row - #433
Merged
Merged
Conversation
…nes under each row The table had a Detail column and pod lists inside Observed, so one waived rule with a long reason, or a few pod names, padded every row: on panda's payments-krafter report the table ran to about 200 columns. The table is now Status, Rule, Expected and Observed. Under each row, dimmed and starting at the Rule column, come its facts one per line: the subjects that fall short, then the waiver, the detail and the note, each cut to the terminal's width. Expected and Observed share the width Status and Rule leave, and a value cut to fit gets a line of its own underneath, whole, so a required listener still shows everything it expects and has. The rule id is never cut. The banner's not-Ready line is shorter. JUnit keeps the subjects in its failure message and joins a waived rule's facts with " · " instead of "; ", so a reason ending in a period no longer prints ".;". output.TableNotes is the house Table with an optional note per row; Table itself is unchanged. Widths are measured with ansi.StringWidth, since the status label carries colour codes on a terminal. The Conformity Checks chapter's captured outputs and the CLI Reference's description of the table follow the new layout.
bmscomp
added a commit
that referenced
this pull request
Oct 20, 2026
…hipped (#434) Two planning documents that stayed untracked in the main checkout: - plans/conformity-spec.md: the design of KafkaReference and POST /api/conformity/check. A "Shipped" row now names the PRs that delivered it (#407 to #416, then #419 to #433), and its file references point at cli/examples/conformity, where the schema and examples live. Its inline examples stay as the 2026-10-19 drafts and say so. - plans/conformity-enhancements.md: the four-lens review of 2026-10-20, 29 verified findings. An Outcome table maps each finding to the PR that fixed it: 17 fixed, 2 partly covered by the book chapter, 10 open. The draft schema and examples in plans/conformity/ are left out: the shipped copies in cli/examples/conformity supersede them, and the draft schema lacks kafka.source and topics.
bmscomp
added a commit
that referenced
this pull request
Oct 21, 2026
…hipped Two planning documents that stayed untracked in the main checkout: - plans/conformity-spec.md: the design of KafkaReference and POST /api/conformity/check. A "Shipped" row now names the PRs that delivered it (#407 to #416, then #419 to #433), and its file references point at cli/examples/conformity, where the schema and examples live. Its inline examples stay as the 2026-10-19 drafts and say so. - plans/conformity-enhancements.md: the four-lens review of 2026-10-20, 29 verified findings. An Outcome table maps each finding to the PR that fixed it: 17 fixed, 2 partly covered by the book chapter, 10 open. The draft schema and examples in plans/conformity/ are left out: the shipped copies in cli/examples/conformity supersede them, and the draft schema lacks kafka.source and topics.
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.
kates conformity check's table had a Detail column, and it put pod lists inside Observed. One waived rule with a long reason, or a few pod names, padded every row. On panda'spayments-krafterreport the table ran to about 200 columns.Before, panda's
payments-krafterreport (banner omitted, cut at 120 columns):After, the same report:
What changes
-o jsonkeeps everything whole.not Ready, results may change.+N. A waived rule's facts are joined with·instead of;, so a reason ending in a period stops rendering as.;.output.TableNotes: the houseTablewith an optional note per row.Tableitself is unchanged.Tests
TestTableNotes: a note starts under the second column, fits the terminal and ends with an ellipsis when cut.TestConformityCheckShowsTheGapsnow has a four-pod rule with a long detail. It asserts that no line runs past the terminal and that the pods aren't on the rule's row.Checked locally:
go vet,go test ./...undercli/,golangci-lint --new-from-rev=origin/main(0 issues),scripts/check-cli-style.sh,scripts/check-cli-compat.shandscripts/check-book-style.sh. The before/after outputs above are panda's real reports, rendered through the old and new builds.Not checked: a real colour terminal (the captures are non-TTY), and ASCII mode.