From 80205d5c4fcdcb034772be2758e82ab4e3268efa Mon Sep 17 00:00:00 2001 From: Andrew Kesterson Date: Wed, 29 Jul 2026 12:22:25 -0400 Subject: [PATCH] Fix miscounted break-visit expectation in TODO.md 1.8 The bullet said breaking at tree[3] in pre-order should assert 4 visits. Pre-order is 0, 1, 3, 4, 2, 5, 6, so the correct count is 3 -- which is what tests/test_tree_iterate_break.c already asserts. The TODO was written before that test existed and had the number wrong, not the test. Also point the bullet at the existing pre-order test, and give the in-order and post-order traversals with their break points so the remaining work does not need the count re-derived. Co-Authored-By: Claude Opus 5 (1M context) --- TODO.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/TODO.md b/TODO.md index cfe4efb..8e37641 100644 --- a/TODO.md +++ b/TODO.md @@ -216,8 +216,10 @@ against `tests/aksl_capture.h` and added to the `AKSL_TESTS` list. and compare against the expected sequence. The current test only counts steps, which cannot distinguish the three orders (all three visit 7 nodes). - [ ] **`AKERR_ITERATOR_BREAK` aborts the whole traversal** — **[CONFIRMED BROKEN]**, see - §2.1.3. Break at `tree[3]` in pre-order and assert 4 visits; today it visits all 7. - Add the equivalent for in-order and post-order. + §2.1.3. The pre-order case exists as `tests/test_tree_iterate_break.c`: pre-order + visits 0, 1, 3, so breaking at `tree[3]` must stop the walk at **3** visits, and today + it runs on to all 7. Add the equivalent for in-order (3, 1, 4, 0, 5, 2, 6 → breaking at + `tree[4]` gives 3) and post-order (3, 4, 1, 5, 6, 2, 0 → breaking at `tree[5]` gives 4). - [ ] `AKSL_TREE_SEARCH_BFS` and `AKSL_TREE_SEARCH_BFS_RIGHT` → `AKERR_NOT_IMPLEMENTED` today; replace with real order assertions once implemented (§3 / §2.2.9). - [ ] **Unknown `searchmode`** (e.g. `99`) — **[CONFIRMED]** currently returns *success*