Skip to content

Add structured issue form with auto-labeling on intake - #17901

Draft
ankitsharma101 wants to merge 11 commits into
eclipse-theia:masterfrom
ankitsharma101:feature/structured-issue-forms-auto-label
Draft

Add structured issue form with auto-labeling on intake#17901
ankitsharma101 wants to merge 11 commits into
eclipse-theia:masterfrom
ankitsharma101:feature/structured-issue-forms-auto-label

Conversation

@ankitsharma101

Copy link
Copy Markdown
Contributor

What it does

Implements the structured issue form + auto-label suggestion from the onboarding/issue-tracking proposal (Discussion #17639), addressing the label-inconsistency problem described in Section 2.3 of that proposal — issues currently get labeled "bug" / "type: bug" / just a title prefix, or not labeled at all.

Adds:

  • .github/ISSUE_TEMPLATE/report.yml — a structured issue form with a required Type dropdown (Bug / Feature / Enhancement). Consolidates the previous bug_report.md and feature_request.md templates into this single form.
  • .github/workflows/auto-label-on-intake.yml — a GitHub Action that reads the Type dropdown's answer when an issue is opened and applies the matching label (bug / enhancement) automatically.

Note: "Question" isn't in the Type dropdown, since config.yml already routes questions to GitHub Discussions via contact_links — this avoids duplicating that path. The security-vulnerability disclosure warning from bug_report.md is preserved in the new form.

A call worth flagging: I merged the two existing templates into one rather than keeping them side-by-side with the new form. Reasoning — a single entry point removes the "which template do I pick" ambiguity that a structured Type field is meant to solve in the first place (I actually picked the wrong template myself while testing, out of habit). Happy to keep the old templates around instead if the team prefers a more gradual rollout.

How to test

  1. Go to Issues → New Issue — only one template, "Issue Report," should appear (blank issues are already disabled via existing config.yml).
  2. Fill out the form, selecting a value from the Type dropdown (Bug / Feature / Enhancement).
  3. Submit the issue.
  4. Check the Actions tab for a run of "Auto-label on intake" — it should complete successfully.
  5. Confirm the issue now has the matching label (bug or enhancement) applied automatically, with no manual step.

Tested end-to-end on my fork (ankitsharma101/theia) — form renders correctly, submission triggers the Action, and the correct label is applied.

Follow-ups

  • No dedicated feature label currently exists in the repo, so both "Feature" and "Enhancement" map to the existing enhancement label. If the team wants a dedicated feature label, the mapping in auto-label-on-intake.yml is a one-line change.
  • This is one piece of the broader proposal in Discussion Improving Contributor Onboarding and Issue Tracking #17639 (stale help-wanted cleanup, good-first-issue candidate bot, AI-assisted labeling for the existing backlog, epic tracking) — those are intentionally out of scope here and flagged as separate follow-ups in the proposal.

Breaking changes

  • This PR introduces breaking changes and requires careful review. If yes, the breaking changes section in the changelog has been updated.

(Not a breaking change — it only affects the issue-filing UI and automated labeling; no code paths in the application itself are touched.)

Attribution

Review checklist

Reminder for reviewers

Fixes eclipse-theia#16865

Multiple consecutive spaces in file and folder names were being
collapsed to single spaces in tree views due to white-space: nowrap.

Changed white-space from 'nowrap' to 'pre' in .theia-TreeNodeSegment
and .theia-TreeNodeSegmentGrow in packages/core/src/browser/style/tree.css
to preserve exact spacing in all tree views.
Fixes eclipse-theia#12619

When you resize the window while a dropdown is open in the preferences
page, the dropdown stays open but the positioning gets messed up.

I added a resize listener that closes the dropdown when the window size
changes. Also made sure to clean up the listener properly to avoid any
memory leaks.

Note: I couldn't test this locally (Windows build issues), but the
approach is pretty standard for this kind of thing. Would appreciate
if someone could verify it works!
… backendPluginsMetadataDeferred never resolving
@github-project-automation github-project-automation Bot moved this to Waiting on reviewers in PR Backlog Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Waiting on reviewers

Development

Successfully merging this pull request may close these issues.

1 participant