Skip to content

Feat: Issue Creation in Correct Repositories #27

@knabben

Description

@knabben

Description

Currently, signalhound only creates draft issues in GitHub Project boards. The handbook requires actual issue creation in the appropriate repository (kubernetes/kubernetes, kubernetes/test-infra, or kubernetes/k8s.io) based on failure type.

Requirements

  • Implement repository selection logic:
    • Infra failures → kubernetes/test-infra
    • k8s.io related → kubernetes/k8s.io
    • Default → kubernetes/kubernetes
  • Create actual GitHub issues (not just project board drafts)
  • Support issue creation via GitHub API
  • Include all required labels, SIG tags, and milestone commands
  • Handle authentication and permissions

Acceptance Criteria

  • Issues are created in correct repository based on failure type
  • Repository selection logic handles infra, k8s.io, and default cases
  • Issues include all required metadata (labels, SIG, milestone, priority)
  • GitHub API integration works with proper authentication
  • Error handling for permission issues
  • Unit tests for repository selection logic
  • Integration tests with GitHub API (or mocked)

Implementation Notes

  • Detect failure type from test name or error message
  • Use GitHub API v4 (GraphQL) or v3 (REST) for issue creation
  • Support both draft and actual issue creation modes
  • Add --dry-run flag for testing

Metadata

Metadata

Assignees

No one assigned

    Labels

    lifecycle/rottenDenotes an issue or PR that has aged beyond stale and will be auto-closed.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions