Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[bug]: Align Graph.add_edge and validate_self collector type validation

Đang mở
#9,610 0 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 5 ngày

@JPPhoto đang làm issue này rồi.

Từ ngày 26/9/2026.

Đánh giá

Issue này chưa được đánh giá.

Mô tả

bug
Is there an existing issue for this problem?
  • I have searched the existing issues and found no duplicate.
Install method

Manual (in-process graph test; no server installation used)

Describe your environment
  • Operating system: Linux
  • GPU vendor: None (CPU; not involved)
  • Version number: main @ 13aff5c (in-process review reproduction)
What happened

Graph.add_edge() and Graph.validate_self() do not enforce the same collector type invariants. Some collector changes can be accepted while editing, then rejected only when the full graph is validated. Review reproductions include a collector feeding an If branch and a related Collect -> Iterate mismatch.

What you expected to happen

Define which collector and downstream type invariants must hold after each add_edge() call, and make mutation-time validation and validate_self() follow that contract without rejecting unrelated incomplete nodes.

How to reproduce the problem
  1. Build a graph with a collector connected to an If branch and an otherwise incomplete opposite branch.
  2. Add item/collection edges that produce a type mismatch through that branch.
  3. Compare whether add_edge() accepts the edit with whether validate_self() accepts the resulting graph.
  4. Repeat for the related Collect -> Iterate topology.
Additional context

This is a broader graph-editing contract question, separate from PR 343's targeted revalidation when an If branch becomes complete. Existing incomplete-node workflows must remain editable.

Ngôn ngữ chính
Python
Star
28.3k
Fork
3k
Merge trung bình
6 ngày 3 giờ
Pull request đã merge (30 ngày)
9

Chuẩn bị môi trường

  • Không có Dockerfile hay tệp Docker Compose
  • Có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của invoke-ai/InvokeAI

Tất cả issue của invoke-ai/InvokeAI

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.