Skip to content

[CHORE] Add Overture issue template, skillset selector, and field sync workflow - #652

Merged
Eric Godwin (ericgodwin) merged 5 commits into
mainfrom
ericgodwin-add-overture-issue-template
Aug 11, 2026
Merged

[CHORE] Add Overture issue template, skillset selector, and field sync workflow#652
Eric Godwin (ericgodwin) merged 5 commits into
mainfrom
ericgodwin-add-overture-issue-template

Conversation

@ericgodwin

@ericgodwin Eric Godwin (ericgodwin) commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Description

Brief description of the business purpose and effect of the pull request.

Adds the standard Overture issue-template setup to this repo, which previously had no .github/ISSUE_TEMPLATE/ directory — every issue was opened blank and triaged by hand. This ports the setup from tf-data-platform (the reference implementation) so schema issues land in the master Overture project and carry the org-level Type, Scope, and Skillset fields from the moment they're opened.

Three new files:

  • .github/ISSUE_TEMPLATE/overture.yaml — the single template this repo needs. Files into the Overture project (OvertureMaps/84) and prompts for Type, Scope, and an optional Skillset, then a required free-form Description.
  • .github/ISSUE_TEMPLATE/config.ymlblank_issues_enabled: false, so every issue uses the template.
  • .github/workflows/sync-issue-type-and-scope.yml — on issues: opened, populates the org-level fields from the form answers.

Field options, per the request:

Field Options Default Required
Type Task, Bug, Agenda none yes
Scope Addresses, Base, Buildings, Divisions, Places, Transportation, Multi-theme or Platform none yes
Skillset data analysis, data science, dev ops, engineering none no

No field carries a default:, so the submitter picks every value explicitly rather than accepting a pre-selected one. Type and Scope are required. Skillset is optional — it's often not obvious to the reporter at filing time, and forcing a choice invites a wrong one, so it can be left blank and set during triage. Feature is deliberately absent from Type — that work is filed as Task.

Notes on details that matter:

  • Option strings match the org-level field options exactly (including the lowercase skillset values). A mismatch would 422 the sync action.
  • The template does not prepend a bracketed type to the issue title.
  • The workflow tracks sync-issue-fields@main rather than pinning a SHA, matching both tf-data-platform and this repo's existing convention for internal OvertureMaps/workflows actions (see schema-pr-preview.yml), with the same zizmor: ignore[unpinned-uses] comment.
  • The workflow was adapted to this repo's local conventions rather than copied verbatim: top-level permissions: {}, a named job, an inline comment on issues: write, and a ${{ github.workflow }}-based concurrency group like the other workflows here.

Reference

List of relevant links to GitHub issues, PRs, and other documentation.

  1. Closes Add Overture issue template, skillset selector, and field sync workflow #651
  2. OvertureMaps/tf-data-platform#4623 — original issue-template work
  3. OvertureMaps/tf-data-platform#4728 — added the Skillset dropdown and dropped Feature
  4. GitHub usage operating procedures

Testing

Brief description of the testing done for this change showing why you are confident it works as expected and does not introduce regressions. Provide sample output data where appropriate.

  • All three files confirmed to parse as valid YAML.
  • uvx zizmor --persona=pedantic .github/workflows/sync-issue-type-and-scope.ymlNo findings to report (1 ignored: the intentional unpinned-uses). Pedantic is stricter than the default persona, and the rest of .github/workflows/ is clean at that level too, so this file doesn't introduce a new baseline finding regardless of which persona CI uses.
  • Still to verify after merge: that the template renders in the "New issue" chooser without errors, that required fields validate, and that a test issue lands in the Overture project with Type, Scope, and Skillset set by the workflow.

Checklist

Checklist of tasks commonly-associated with schema pull requests.

Not applicable — this PR touches only repo administration files under .github/. No schema, examples, counterexamples, or documentation changes.

Documentation website

Not applicable — no documentation changes in this PR.

Ports the issue-template setup from tf-data-platform (#4623, #4728) to this
repo, which previously had no .github/ISSUE_TEMPLATE/ directory at all.

- overture.yaml: files into the Overture project (OvertureMaps/84) and
  prompts for Type, Scope, and Skillset. No option is selected by default,
  and Feature is not offered under Type.
- config.yml: disables blank issues so every issue uses the template.
- sync-issue-type-and-scope.yml: populates the org-level Type, Scope, and
  Skillset fields from the form answers when an issue is opened.

Closes #651

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: ericgodwin <eric@overturemaps.org>
@ericgodwin Eric Godwin (ericgodwin) added the automation 🦾 Change/enhance automation of a process label Aug 11, 2026
@ericgodwin Eric Godwin (ericgodwin) changed the title Add Overture issue template, skillset selector, and field sync workflow [CHORE] Add Overture issue template, skillset selector, and field sync workflow Aug 11, 2026
@github-actions

github-actions Bot commented Aug 11, 2026

Copy link
Copy Markdown

🗺️ Schema reference docs preview is live!

🌍 Preview https://staging.overturemaps.org/schema/pr/652/schema/index.html
🕐 Updated Aug 11, 2026 21:27 UTC
📝 Commit e0473a5
🔧 env SCHEMA_PREVIEW true

Note

♻️ This preview updates automatically with each push to this PR.

Skillset is often not obvious to the reporter at filing time, and forcing a
choice invites a wrong one. Type and Scope stay required.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: ericgodwin <eric@overturemaps.org>
@ericgodwin
Eric Godwin (ericgodwin) marked this pull request as ready for review August 11, 2026 17:06
Copilot AI lite review requested due to automatic review settings August 11, 2026 17:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a standardized GitHub issue form + configuration and a workflow to sync issue-form answers into GitHub’s issue metadata/fields so new issues land in the Overture project with consistent categorization.

Changes:

  • Introduces an Overture issue form with dropdowns for Type, Scope, and Skillset plus a required Description field.
  • Disables blank issues so all new issues must use the template.
  • Adds an issues: opened workflow that syncs the form answers into the repo issue type and org-level fields.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/sync-issue-type-and-scope.yml New workflow to sync issue form answers into the issue’s type and org-level fields on open.
.github/ISSUE_TEMPLATE/overture.yaml New issue form template that files issues into OvertureMaps/84 and collects Type/Scope/Skillset + Description.
.github/ISSUE_TEMPLATE/config.yml Disables blank issues so the template is always used.
Suppressed comments (2)

.github/workflows/sync-issue-type-and-scope.yml:21

  • The job permissions comment and step name mention only org-level Type/Scope, but this workflow sets the repo-level issue type plus org-level Scope and Skillset (if present). Updating the wording avoids confusion about what is being written.
      issues: write # Read the issue body and set the org-level Type, Scope, and Skillset fields.
    steps:
      - name: Sync Type and Scope from form answers

.github/ISSUE_TEMPLATE/overture.yaml:35

  • Linked issue #651 acceptance criteria says Skillset should be required, but this template currently allows it to be left blank (no validations.required). Please confirm the intended behavior and align either the template or the documented acceptance criteria.
  - type: dropdown
    id: skillset
    attributes:
      label: Skillset
      description: Primary skill needed to complete this task. Used to populate the organization-level `Skillset` field during triage.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/ISSUE_TEMPLATE/overture.yaml
Comment thread .github/workflows/sync-issue-type-and-scope.yml
'All Python checks pass', 'Build', and 'check / Check Python package
versions' are required status checks per omf-github-terraform's schema.yml
ruleset, but their pull_request triggers were path-filtered. Any PR that
doesn't touch those paths (e.g. this one, .github/ only) never runs them,
so GitHub reports the required check as permanently pending and blocks
the merge. Drop the pull_request path filters so these always run and can
actually satisfy the required-check gate; push triggers are untouched.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Signed-off-by: lowlydba <lowlydba@users.noreply.github.com>
@lowlydba
John McCall (lowlydba) dismissed stale reviews from Amy Rose (an-rose) and themself via e0473a5 August 11, 2026 21:25
@ericgodwin
Eric Godwin (ericgodwin) merged commit 86a6961 into main Aug 11, 2026
25 checks passed
@ericgodwin
Eric Godwin (ericgodwin) deleted the ericgodwin-add-overture-issue-template branch August 11, 2026 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automation 🦾 Change/enhance automation of a process

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Overture issue template, skillset selector, and field sync workflow

4 participants