Generated 2026-04-13 00:48:05 UTC | Back to ladder index | Back to docs
Status: passed
Validation: 6/6 passed
Parser failures: 0 | Apply failures: 0
Artifacts: raw run json | rendered run transcript
| # | Expected Route | Utterance |
|---|---|---|
| 1 | assert_fact | Nora is Liam's parent. |
| 2 | assert_fact | {'utterance': "he's maybe parnt of mila too i think", 'clarification_answers': ['He means Liam. Liam is a parent of Mila.'], 'max_clarification_rounds': 2} |
| 3 | assert_rule | If X is a parent of Y then X is an ancestor of Y. |
| 4 | assert_rule | If X is an ancestor of Y and Y is an ancestor of Z then X is an ancestor of Z. |
| 5 | assert_fact | so is nora ancestor of mila before i fix anything |
| 6 | retract | {'utterance': 'wait no, kill that liam->mila edge only, wrong kid', 'clarification_answers': ['Retract parent(liam, mila).', 'Yes, remove only parent(liam, mila).'], 'max_clarification_rounds': 2} |
| 7 | assert_fact | June is parented by Liam. |
| 8 | assert_fact | Mila has June as a parent. |
| 9 | assert_fact | after the fix is nora ancestor of mila now |
| ID | Query | Expect | Min Rows | Max Rows |
|---|---|---|---|---|
| nora_liam_parent | parent(nora, liam). | success | 1 | |
| liam_mila_removed | parent(liam, mila). | no_results | 0 | |
| liam_june_parent | parent(liam, june). | success | 1 | |
| june_mila_parent | parent(june, mila). | success | 1 | |
| nora_mila_ancestor | ancestor(nora, mila). | success | 1 | |
| he_mila_absent | parent(he, mila). | no_results | 0 |