Skip to content

[azuredevops_go] Repository: đóng gap so với Python plugin #3

@magiskboy

Description

@magiskboy

Bối cảnh

azuredevops_go đã cover ~95% tính năng Repository so với plugin Python azuredevops. Issue này gom các gap còn lại trước khi deprecate Python plugin.

Phạm vi: Repository — git repos, PRs, commits, accounts (không bao gồm Board/TICKET).


Hiện trạng (đã có ✅)

  • Git repos native + external (GitHub, Bitbucket, Git Enterprise)
  • PRs + PR commits + PR labels (Python không có)
  • gitextractor + refdiff trong blueprint
  • Accounts collector → accounts (Python không có)
  • Commits qua REST API (collectApiCommits, default off — dùng gitextractor)
  • E2E: repo, pr, pr_commit tests

Cần làm

1. Onboarding & migration

  • Đổi default onboard plugin từ azuredevops (Python) → azuredevops_go (config-ui/src/routes/onboard/step-1.tsx)
  • Viết migration guide: re-blueprint, re-collect, cập nhật project_mapping (domain ID đổi từ azuredevops:azuredevops_go:)
  • Đánh dấu Python plugin deprecated trong docs

2. Blueprint — gitextractor

  • Review điều kiện gitextractor trong api/blueprint_v200.go line ~176:
    if CODE && !IsPrivate || len(entities)==0
    Đảm bảo ADO native repos (kể cả private) vẫn chạy gitextractor với PAT embed — parity Python (extra_tasks luôn clone native repo khi CODE bật)

3. PR collection (optional improvements)

  • Đánh giá incremental PR sync (hiện có timeFilter, chưa diff sync — mô tả trong subtask meta)
  • PR comments (.../pullRequests/{id}/threads) — API có sẵn ở Python, chưa dùng cả hai; implement nếu cần pull_request_comments domain

4. Domain ID & Grafana

  • Xác nhận dashboard azure-dev-ops.json filter id LIKE 'azure%' match azuredevops_go:AzuredevopsRepo:...
  • Cập nhật docs nếu user migrate từ Python

Acceptance Criteria

  • ADO private native repo: gitextractor chạy, commits populate commits + repo_commits
  • Onboard flow mặc định dùng azuredevops_go
  • Migration guide có trong README hoặc docs
  • Không regression E2E repo/pr tests

Không nằm trong scope

  • Board / work items (issue riêng)
  • Pipeline gaps (issue riêng)

Ước lượng

~1 tuần

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions