Repository navigation
feat(doris-pr-description): show the problem with a concrete example - #17
Merged
morningman merged 1 commit intoNov 14, 2026
Merged
Conversation
Reviewers who don't know the module get the point of a PR from one real case faster than from a paragraph about it. Problem Summary now ends with one simple, concrete example whenever the problem fits in a few lines: the smallest statement that triggers it and what it gives before and after the change, with SQL in a fenced block and the comparison in a table. Every output is copied from a run; an example that needs more than a few lines goes in the issue, and Problem Summary points to it. The rule is in write.md, with the matching parts of issue.md (Current and Expected behavior), development.md (development records the example while the code without the change is at hand; develop-with-evidence reads only this file and the type file), the Bugfix type (Problem Summary and Frequency), the Enhancement type (Before and after does not repeat the example), and the Bugfix example. check_pr.py no longer counts a table in Problem Summary toward its 150-word warning, as it already left out code blocks; otherwise an example table sets the warning off. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
hello-stephen
pushed a commit
to apache/doris
that referenced
this pull request
Nov 14, 2026
…0582) ### Background `doris-skills` is a submodule that points at apache/doris-skills, the Apache Doris repository of agent skills: instructions and scripts that coding agents such as Claude Code and Codex load for Doris tasks. Nothing builds from it; it is checked out on request (`git submodule update --init doris-skills`) and by the CI jobs that clone every submodule. This repository pins `c0aca2f` (apache/doris-skills#2, June), which has three skills. ### What problem does this PR solve? Issue Number: None Related PR: #64240 (the previous update of this pointer), #70422 (moves the same pointer to `0b36dcb` and adds the `AGENTS.md` guidance; conflicts with this PR on that line), apache/doris-skills#17 (the commit this PR pins) PR Type: Build/CI/Chore Problem Summary: Since `c0aca2f`, doris-skills has merged 13 PRs that add four skills, for debugging, local PR review, development, and PR descriptions, and a checkout of this repository still gets none of them. This PR moves the pointer to `c353d71`, the tip of doris-skills `main`, and changes nothing else. Builds, tests, and Doris users see no change. | | Skills in `doris-skills/skills/` | |---|---| | master (`c0aca2f`) | `doris-architecture-advisor`, `doris-best-practices`, `doris-profile-reader` | | this PR (`c353d71`) | `develop-with-evidence`, `doris-architecture-advisor`, `doris-best-practices`, `doris-debug`, `doris-pr-description`, `doris-profile-reader`, `doris-repo-review` | ### Details - **Affected:** Only the `doris-skills` pointer. The CI jobs that clone every submodule (`submodules: recursive` in `be-ut-mac.yml`, `build-extension.yml`, `build-thirdparty.yml`, `build-ui.yml`, and `checkstyle.yaml`, and `git submodule update --init --recursive --depth 1` in the performance pipeline's `compile.sh`) clone doris-skills at `c353d71` without reading it; `build.sh` and `run-be-ut.sh` update only the `contrib/` submodules they name. - **Developer and release impact:** Developers who check out the submodule get the seven skills at `c353d71`, about 2.3 MB; existing checkouts keep their commit until the next `git submodule update`. Release builds don't change, since no script in this repository reads `doris-skills`. - **License and third-party:** None. doris-skills is an Apache-2.0 repository of the ASF, and no file from it is added to this tree. - **Rollback:** Revert this PR; local submodule checkouts made meanwhile do no harm. ### Testing - `git ls-remote https://github.com/apache/doris-skills refs/heads/main` returns `c353d71bc50d6c0baf1831dec33cbfa0abc64ef2`, the commit this PR pins: the squash merge of apache/doris-skills#17, not a PR-only commit. `c0aca2f` is its ancestor. - A fresh clone of the URL in `.gitmodules`, checked out at `c353d71` as `git submodule update --init doris-skills` does, holds the seven skills in the table above. - `python3 skills/doris-pr-description/scripts/check_pr.py --self-test` at `c353d71` reports `Self-test: 11 examples in 10 files, 0 problems`. ### Notes for Reviewers - The pointer moves over 13 commits of apache/doris-skills (#3 to #17), +10,047 −45 in 114 files, each reviewed and merged there; the three skills pinned today don't change. In this repository's diff, only the pin itself needs checking. - #70422 changes the same line, to `0b36dcb` (apache/doris-skills#16). Whichever of the two merges second keeps `c353d71`.
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.
Why
A Problem Summary that describes the problem only in words leaves reviewers who don't know the module to rebuild the case in their heads before they get the point. One small, real example does that for them: the statement, and what it gives before and after the change. In apache/doris#70366, for instance, "a credential after or inside supplementary characters stays partly or fully in clear text" lands much faster next to a
CREATE CATALOGstatement whose audit-log text keeps"secret"right after*XXX.What changes
references/write.md: Problem Summary ends with one simple, concrete example whenever the problem fits in a few lines: the smallest case, with what it gives before and after the change. For a bug, that is the triggering statement and its wrong result, error, or log line; for a new or changed behavior, the statement or setting as users write it; for a slowdown, the query and its time. SQL goes in a fenced block and a before-and-after comparison in a table. Every output is copied from a run, cutting only what both sides share. An example that needs more than a few lines goes in the issue, with a pointer from Problem Summary; when nothing can be shown, as in most refactors, there is none.references/issue.md: an issue's Current behavior shows the same kind of example, and Expected behavior is stated on it.references/development.md: development records the example and its outputs in the handoff draft, while the code without the change is still at hand.develop-with-evidencereads only this file and the type file, so the rule is stated here as well.references/types/bugfix.md: Problem Summary ends with the shortest reproduction, and Frequency may refer to it instead of repeating it.references/types/enhancement.md: Before and after doesn't repeat an example that Problem Summary already shows.references/examples/bugfix.md: the worked example now has one.scripts/check_pr.py: a table in Problem Summary no longer counts toward its 150-word warning, as code blocks already didn't. Without this, the example in [fix](nereids) Fix SQL masking and view rewrites after supplementary characters doris#70366 set offProblem Summary: 166 words.Notes for reviewers
Testing
python3 skills/doris-pr-description/scripts/check_pr.py --self-test→Self-test: 11 examples in 10 files, 0 problems.--diffover that PR's commit): before,Problem Summary: 166 wordsplus a 765-word prose warning for the whole description; after, only the prose warning, which the description already had (737 words) without the example.🤖 Generated with Claude Code