Support hierarchical Diff lenses for multi-part changes
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Active
- Tech stack
- typescript
- Domain
- developer-experience
Research direction
The issue names the Diff sidebar but no source files, tests, or entry points. First, explore the repository to find how Diff lenses are represented and rendered, then consider how hierarchical selection, overlapping ranges, shared changes, counts, and review progress would work. Done is not defined: the issue explicitly opens a design discussion rather than proposing a finished design.
Written by the indexing model from the issue text.
Description
Problem
Diff lenses make a large change easier to review by grouping related parts of the diff. Today, the lenses appear in a flat list. For a PR with several capabilities, each built from smaller implementation and test changes, that list does not show how the parts fit together. A reviewer has to infer the hierarchy from lens names and switch between several lenses to see the scope of one capability.
For example, Sarama PR #3419 adds two related Kafka admin operations: ListOffsets and AlterConsumerGroupOffsets. Each has its own API, implementation, and tests, while some changes are shared. A useful review outline would look like this:
KIP-396 offset management
├── ListOffsets
│ ├── API and result model
│ ├── Broker fan-out and errors
│ └── Unit and functional tests
├── AlterConsumerGroupOffsets
│ ├── API and protocol version
│ ├── Coordinator commit and retry
│ └── Unit and functional tests
└── Shared test setup and imports
ListTopics retry helper change
Possible direction
A collapsible tree in the Diff sidebar could show capability/subfeature relationships while keeping simple changes flat. A reviewer could start with a capability-level overview, then narrow down to an implementation step or its tests without losing the structure of the PR.
The details need more thought: what selecting a parent should show, how counts and review progress should handle overlapping ranges, how shared changes should appear, and when an agent should create a hierarchy. I am opening this issue to discuss the idea rather than to propose a finished design.
- Dominant language
- TypeScript
- Stars
- 2.9k
- Forks
- 145
- Avg merge
- 17h 29m
- Merged PRs (30d)
- 580
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from devdotfast/whiteboard
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
devdotfast/whiteboard#1415 · 1 comment ·
Maintainers usually reply within 1 day
-
Privacy page missingPossibly taken @sidkmenon claimed this 14 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 72/100
devdotfast/whiteboard#1091 · 1 comment · 1 assignee ·
Maintainers usually reply within 1 day
-
Native BYOK support for visual reviews and Ask without an external coding agentPossibly taken @thesiti92 claimed this 8 days ago. Open
Difficulty 5/5 Over a week Newbie friendliness 25/100
devdotfast/whiteboard#1218 · 1 comment · 1 assignee ·
Maintainers usually reply within 1 day
-
Add Kotlin as an optional language group in Whiteboard DesktopPossibly taken @sidkmenon claimed this 13 days ago. Open
Difficulty 5/5 Over a week Newbie friendliness 35/100
devdotfast/whiteboard#1092 · 1 comment · 1 assignee ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
devdotfast/whiteboard#1090 · 1 comment ·
Maintainers usually reply within 1 day
All issues in devdotfast/whiteboard
Similar issues
-
category::task code priority::normal
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
e0ipso/strikethroo#145 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 85/100
cocos/cocos-docs#3333 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
RevenueCat/react-native-purchases#2079 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
RevenueCat/purchases-hybrid-common#2039 ·
Maintainers usually reply within 1 day
-
agent-reported area/react bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day