Skip to content

Improve Github Handle detection in legacy project-managed maintainer files #60

@RobertKielty

Description

@RobertKielty

Background

We currently parse maintainer refs using a set of regexes (e.g., @handle, github.com/handle, YAML list items). This fails on many legacy maintainer files that present GitHub handles inside markdown tables, especially when the handles are not prefixed with @.

Example (current failing case)

  | Maintainer | GitHub ID | Affiliation |
  |---|---|---|
  | Ann Maintainer | amaintainer | ACME INC. |

Today amaintainer is not detected because it appears only in a table column.

Impact

Missing handles means:

  • NOT PRESENT ON CNCF DATABASE lists are incomplete on the UI
  • Add Maintainer buttons don’t appear for table‑only handles
  • UAT testers see discrepancies between project files and maintainer‑d

Expected

Handles in columns labeled GitHub ID / GitHub Handle / GitHub Username should be detected as GitHub accounts, even without @ prefixes.

Proposed approach

  • Add markdown table parsing to the maintainer‑ref parser
  • Detect headers like GitHub ID, GitHub Handle, GitHub Username
  • Extract values from that column and validate as GitHub handles
  • Use this as a deterministic rule before any LLM fallback

Acceptance criteria

  • Table‑only handles are detected
  • No regression in existing @handle / github.com/handle / YAML parsing
  • Unit test covers the example above and passes

Notes
We can implement this in a shared parsing utility to keep UI + tooling consistent.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions