Skip to content

feature: implement check_diagnosis_readiness() helper function (extract from #47 inline bash) #51

Description

@kiki830621

Problem

Source: surfaced during /idd-verify #47 (codex P3 #7).

/idd-all-chain Step 0.4 (NEW in #47) 文宣中 references/chain-flow.md 寫:

Future #46 multi-root extension: helper function design preserves N-arg shape (check_diagnosis_readiness(issue_numbers...) → [ready_list, not_ready_list])

但實際 implementation 是 inline bash,沒有 named function。這是「prose claim」而非「實際 code」,#46 multi-root 落地時無法直接 reuse。

Type

feature (refactor + future-proofing)

Expected

把 #47 Step 0.4 的 inline bash logic 抽成 named function:

check_diagnosis_readiness() {
  local issue_numbers=("$@")
  local ready=()
  local not_ready=()
  for n in "${issue_numbers[@]}"; do
    local has=$(gh issue view "$n" -R "$GITHUB_REPO" --json comments \
      | jq -r '[.comments[] | select(.body | contains("## Diagnosis"))] | length')
    if [ "$has" = "0" ]; then
      not_ready+=("$n")
    else
      ready+=("$n")
    fi
  done
  # Return as JSON for parsing
  jq -n --argjson ready "$(printf '%s
' "${ready[@]}" | jq -R . | jq -s .)" \
        --argjson not_ready "$(printf '%s
' "${not_ready[@]}" | jq -R . | jq -s .)" \
        '{ready: $ready, not_ready: $not_ready}'
}

或寫成 helper script scripts/check-diagnosis-readiness.sh。

Priority

P3 (#46 落地時會撞到;先有 #47 落地驗證單 root,再 refactor 為 N-arg 也可)


Current Status

Phase: closed
Last updated: 2026-05-11 by idd-close (#69 merged a7ff5f2)

Key Decisions

Blocking

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions