적용하기 전에 검토하세요
실제 동작을 예상 결과와 비교하세요. 검사가 실패하면 다음 변경을 하기 전에 원인을 조사하세요.
def components(count, edges):
if type(count) is not int or not 0 <= count <= 10000:
raise ValueError("node count")
pairs = list(edges)
for pair in pairs:
if len(pair) != 2 or any(type(v) is not int or not 0 <= v < count for v in pair):
raise ValueError("edge endpoint")
parent = list(range(count))
def find(x):
while parent[x] != x:
parent[x] = parent[parent[x]]
x = parent[x]
return x
for a, b in pairs:
parent[find(b)] = find(a)
groups = {}
for node in range(count): groups.setdefault(find(node), []).append(node)
return sorted(groups.values())실제 동작을 예상 결과와 비교하세요. 검사가 실패하면 다음 변경을 하기 전에 원인을 조사하세요.
기본 URL과 필요한 API 키로 OpenAI 호환 또는 Anthropic 엔드포인트를 설정하고 연결을 테스트하세요. 로컬 모델 서버는 실행 중이어야 합니다. 원격 도구는 데이터를 별도로 전송할 수 있습니다.
고립 노드, 중복 간선, 빈 그래프를 시험하고 병합 전에 잘못된 끝점을 거부합니다.
def components(count, edges):
if type(count) is not int or not 0 <= count <= 10000:
raise ValueError("node count")
pairs = list(edges)
for pair in pairs:
if len(pair) != 2 or any(type(v) is not int or not 0 <= v < count for v in pair):
raise ValueError("edge endpoint")
parent = list(range(count))
def find(x):
while parent[x] != x:
parent[x] = parent[parent[x]]
x = parent[x]
return x
for a, b in pairs:
parent[find(b)] = find(a)
groups = {}
for node in range(count): groups.setdefault(find(node), []).append(node)
return sorted(groups.values())UnionPebble은 그룹화 요구, 소스 코드, 소비 코드를 하나의 개발 대화로 가져오는 Windows AI 코딩 작업 공간입니다. 앱이 무엇을 연결된 것으로 판단하며 무엇을 받길 기대하는지 설명하세요. 그룹 생성 코드의 변경을 제안하기 전에 기존 표현을 살펴보도록 요청하세요.
구체적인 작업으로 components.py를 사용하여 이전에 분리된 두 그룹을 합치는 연결을 논의하세요. 데이터에 고립 노드를 포함하고 기대 출력 순서를 명시하세요. 수학적으로 동등한 컬렉션이면 애플리케이션의 직렬화나 표시 코드를 만족한다고 가정하지 않고 변경 요청을 정리할 수 있습니다.
그 경계에서 제안을 검토하세요. 허용 노드 식별자, 잘못된 간선, 빈 사례를 확인하고 관련 프로젝트 검사를 실행하세요. 유용한 결과는 구성원이 함께 속하는 이유와 반환 구조가 소비 코드에 맞는 이유를 모두 설명해야 합니다. 그룹화 수정 요청에 무관한 저장이나 인터페이스 변경을 포함하지 마세요.
필요한 인증 정보를 제공해 지원되는 OpenAI 호환 또는 Anthropic 엔드포인트로 모델을 연결하세요. 서비스가 거부 성향 제거 AI 모델을 제공하면 세션에서 선택할 수 있으나 제한은 제공업체에 따라 달라집니다. 도구와 컨텍스트도 모델과 서버에 따라 달라지므로 세션이 실제로 사용할 수 있는 소스와 근거로 검토 범위를 정하세요.
기대를 명시하세요. 간선 목록에 고립 노드가 전혀 나타나지 않아도 애플리케이션은 존재를 알고 있을 수 있습니다. 선언된 노드 수와 고립 노드 데이터를 포함하여 제안 코드가 이런 항목을 조용히 버리지 못하게 하세요.
네. 소비 코드가 안정적인 직렬화, 비교, 표시 순서에 의존하면 그렇습니다. 순서가 인터페이스 일부인지 명시하고 출력 규칙을 살펴보세요. 수학적 동등성만으로 프로젝트의 스냅샷이나 후속 처리와 호환됨을 입증할 수 없습니다.
거부 입력 동작을 정하고 어디서 드러나는지 살펴보세요. 예제는 선언된 노드 수에 따라 식별자를 검증합니다. 예외만으로 데이터 제공자에게 유용한 오류가 전달된다고 가정하지 말고 호출부 응답을 검토하세요.
영향받지 않는 그룹도 포함하여 초기 그룹과 기대 병합 구성원을 독립적으로 적으세요. 변경 코드에 데이터를 실행하고 순서를 별도로 살펴보세요. 테스트에서 구현을 반복하지 않고 구체적 변경 전후 결과로 검토할 수 있습니다.
UnionPebble · 업데이트 2026-10-25