{"results":[{"id":"alien-dict-assumes-valid-order","text":"The alien dictionary solution assumes `order` covers all characters in `words`; a missing character produces an unhandled `KeyError` — no input validation.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"anagram-mappings-duplicate-safe","text":"`anagramMappings` handles duplicate values correctly by queuing all indices per value in a `defaultdict(deque)`, with each occurrence in `nums1` consuming exactly one queued index via `pop()`.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"anagram-mappings-lifo-index-order","text":"When duplicates exist, `anagramMappings` assigns indices in LIFO order (last-appended index consumed first) because `deque.pop()` removes from the right.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"array-partition-no-validation","text":"`array_pair_sum` assumes even-length input and performs no length or type checking; odd-length input silently produces a wrong answer.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"array-partition-sort-greedy","text":"`array_pair_sum` uses sort + even-index sum as its greedy strategy; no dynamic programming or enumeration.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"ascending-subarray-function-name-is-wrong","text":"The function is named `concatenated_binary` but implements maximum ascending subarray sum; this is a copy-paste naming bug that doesn't affect correctness since tests import by name.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"ascending-subarray-resets-to-current","text":"On a non-ascending step, `current_sum` resets to the current element (not zero), because the current element is always the start of the next potential ascending subarray.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"ascending-subarray-uses-strict-inequality","text":"The ascending condition is strictly greater-than (`>`), not `>=`, so equal adjacent elements reset the running sum — matching the LeetCode specification.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"assign-cookies-mutates-inputs","text":"`find_content_children` mutates both input lists via in-place `.sort()`; callers cannot assume list order is preserved.","truth_value":"IN","justification_count":0,"dependent_count":1,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"assumes-square-grid","text":"`projectionArea` uses a single `n = len(grid)` for both dimensions, relying on the LeetCode constraint that the grid is always n × n; non-square grids would produce incorrect results","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"average-salary-divisor-assumes-length-gte-3","text":"The expression `len(salary) - 2` in the average-salary solution would produce a ZeroDivisionError if called with fewer than 3 elements; correctness relies on the problem's length guarantee.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"average-salary-single-pass-arithmetic","text":"The average-salary solution computes the trimmed mean algebraically via `(sum - min - max) / (n - 2)` using three linear scans, avoiding O(n log n) sorting entirely.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"bit-position-independence-principle","text":"In XOR-subset problems, each bit position contributes independently to the total sum — if any element has bit b set, exactly half of all 2^n subsets have that bit survive XOR.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"boyer-moore-no-verification-pass","text":"`majority_element` in `majority-element/solution.py` does not include a second pass to verify the candidate; it assumes the precondition (a majority element exists) holds, and returns an arbitrary element if violated.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"bst-property-assumed-not-validated","text":"`minDiffInBST` assumes its input is a valid BST without checking; a non-BST tree produces incorrect (possibly negative) differences silently.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"bst-pruning-correctness","text":"`range_sum_bst` prunes the left subtree when `root.val < low` and the right subtree when `root.val > high`; this is correct only if the input is a valid BST — feeding a non-BST tree silently produces wrong results","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"build-tree-is-shared-infra","text":"`TreeNode` and `build_tree` defined in `sum-of-root-to-leaf-binary-numbers/solution.py` are imported by hundreds of test files across the repository, making that file load-bearing shared infrastructure despite being a solution file.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"bus-stops-clockwise-complement","text":"The counterclockwise distance is computed as `sum(distance) - clockwise` rather than by iterating the reverse path — a complement trick that avoids modular wrap-around logic.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"calpoints-no-input-validation","text":"`calPoints` assumes all inputs are valid per the LeetCode contract and raises unhandled `IndexError` or `ValueError` on malformed input.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null,"source_type":""},{"id":"canonical-pipeline-has-exactly-two-instantiations","text":"The preprocess-then-stream pipeline has exactly two concrete forms — hash-then-stream (Counter/set for membership and frequency queries) and sort-then-stream (sorted order for positional queries) — matching the two preprocessing paradigms one-to-one with a single shared consumption phase.","truth_value":"IN","justification_count":1,"dependent_count":2,"challenges":[],"last_reviewed":"2026-06-07T22:02:22","review_result":"pass","source_type":""}],"count":249,"limit":20,"offset":0}