Kiểm tra trước khi áp dụng
So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.
Kiểm tra nút tìm kiếm số nguyên với hai tham chiếu con.
def is_strict_bst(root):
pending, seen, checks = [(root, None, None)], set(), []
while pending:
node, low, high = pending.pop()
if node is None:
continue
if type(node) is not list or len(node) != 3 or type(node[0]) is not int:
raise ValueError("tree.node")
if id(node) in seen or len(seen) == 1000:
raise ValueError("tree.structure")
seen.add(id(node))
value, left, right = node
checks.append((value, low, high))
pending.extend([(right, value, high), (left, low, value)])
return all((low is None or low < value) and
(high is None or value < high) for value, low, high in checks)So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.
Cấu hình endpoint tương thích OpenAI hoặc Anthropic bằng URL cơ sở và khóa API nếu cần. Kiểm tra kết nối. Máy chủ mô hình cục bộ phải đang chạy; công cụ từ xa có thể truyền dữ liệu riêng.
Thử cây rỗng và giới hạn tổ tiên, trả về sai cho khóa trùng và từ chối chu trình, con dùng chung, nút sai hoặc trên 1000 nút.
def is_strict_bst(root):
pending, seen, checks = [(root, None, None)], set(), []
while pending:
node, low, high = pending.pop()
if node is None:
continue
if type(node) is not list or len(node) != 3 or type(node[0]) is not int:
raise ValueError("tree.node")
if id(node) in seen or len(seen) == 1000:
raise ValueError("tree.structure")
seen.add(id(node))
value, left, right = node
checks.append((value, low, high))
pending.extend([(right, value, high), (left, low, value)])
return all((low is None or low < value) and
(high is None or value < high) for value, low, high in checks)TreeSentinel cung cấp không gian dự án Windows và cuộc trao đổi AI gắn với tệp nguồn cho việc bảo trì dữ liệu cấu trúc. Bắt đầu bằng việc chỉ ra nơi ứng dụng nhận cấu trúc và cách dùng kết quả kiểm tra. Yêu cầu mô hình xem toàn bộ ranh giới đó trước khi đề xuất phép kiểm tra đơn giản hơn hoặc cách duyệt khác.
Ví dụ, tác vụ với bst_order.py có thể tìm hiểu cây mà các nút con trực tiếp có vẻ đúng thứ tự nhưng giá trị sâu hơn vi phạm giới hạn của tổ tiên. Kèm cấu trúc lỗi và kết quả mong đợi. Sau đó hỏi cách xử lý nút sai dạng và tham chiếu lặp để bản sửa thứ tự không bỏ qua giả định về hình dạng đang duyệt.
Rà soát đề xuất theo các kết quả riêng: cây hợp lệ, lỗi thứ tự và cấu trúc sai dạng. Chạy kiểm tra dự án liên quan và xem từng kết quả đến bên sử dụng thế nào. Giữ mọi thay đổi chính sách khóa trùng lặp rõ ràng. Điều trông như sửa phép so sánh nhỏ có thể đổi dữ liệu mà ứng dụng xung quanh chấp nhận.
TreeSentinel kết nối điểm cuối tương thích OpenAI hoặc Anthropic được hỗ trợ, với thông tin xác thực khi cần. Bạn có thể chọn mô hình AI đã gỡ ràng buộc nếu điểm cuối cung cấp. Hạn chế nhà cung cấp, giới hạn ngữ cảnh và công cụ có sẵn vẫn thuộc cấu hình đó; việc rà soát nên dựa vào cấu trúc cụ thể và kết quả quan sát được thay vì sự tự tin của mô hình.
So sánh cục bộ có thể qua dù hậu duệ vi phạm giới hạn của tổ tiên trước đó. Cung cấp cấu trúc lồng nhỏ làm lộ khác biệt và nêu kết quả mong đợi. Rà soát cách duyệt đề xuất theo đó trước khi chấp nhận đơn giản hóa logic kiểm tra.
Xác định trong giao ước ứng dụng. Ví dụ áp dụng thứ tự nghiêm ngặt, loại trừ khóa bằng nhau. Xem bên sử dụng có phân biệt đầu vào sai dạng với cấu trúc đúng dạng nhưng sai thứ tự không, và giữ quy ước phản hồi đó trong thay đổi đề xuất.
Nó có thể có nghĩa đầu vào không có hình dạng cây mà hàm mong đợi, dù từng giá trị có vẻ chấp nhận được. Thêm cấu trúc tham chiếu chung hoặc chu trình khi phù hợp. Kiểm tra việc kết thúc và từ chối thay vì chỉ dựa vào ví dụ lồng thông thường.
Chỉ sau khi tính đến cấu trúc và hành vi lỗi mà bên gọi cần. Kiểm tra giá trị làm phẳng có thể che giấu nút sai dạng hoặc giả định duyệt. Yêu cầu mô hình giải thích đánh đổi bằng mã thực tế trước khi đổi giao ước kiểm tra.
TreeSentinel · Cập nhật 2026-10-25