rung_300_story_nested_corrections

Ontology: rung_300_story_nested_corrections

Scenario file: D:\_PROJECTS\prethinker\kb_scenarios\rung_300_story_nested_corrections.json

Generated 2026-04-13 00:48:05 UTC | Back to ladder index | Back to docs

Latest Run Summary

Status: passed

Validation: 17/17 passed

Parser failures: 0 | Apply failures: 0

Artifacts: raw run json | rendered run transcript

Utterance Plan

#Expected RouteUtterance
1assert_factRead this like a repaired novel chapter, but keep the extracted state exact.
2assert_factassert rule ancestor(X, Y) :- parent(X, Y).
3assert_factassert rule ancestor(X, Z) :- parent(X, Y), ancestor(Y, Z).
4assert_factassert rule in_region(X, Z) :- at(X, Y), inside(Y, Z).
5assert_factLedger draft, first pass: Liora is Eamon's parent. Liora is Brin's parent. Eamon is Cira's parent. Cira is Dain's parent.
6assert_factThe staging notes are cleaner than the family notes: Dain is at old_quay. old_quay is inside frostmere. Set carries(cira, red_ledger).
7assert_factTime strip from the same bundle: Set before(bell_toll, archive_visit). Set before(archive_visit, moonlit_departure). Set before(bell_toll, moonlit_departure).
8queryQuick check, slightly premature maybe: is Liora already an ancestor of Dain and is he still at the old quay?
9retractArchivist correction, first layer: retract parent(cira, dain).
10assert_factSet parent(brin, dain).
11retractNo, nested fix now: retract parent(eamon, cira).
12assert_factSet parent(sela, cira). Set parent(liora, sela).
13retractScene cleanup after the page reorder: retract at(dain, old_quay).
14assert_factSet at(dain, north_lantern). Set inside(north_lantern, frostmere).
15retractProp cleanup: retract carries(cira, red_ledger).
16assert_factSet carries(dain, red_ledger).
17retractTiming note: retract before(archive_visit, moonlit_departure).
18assert_factSet before(archive_visit, flood_delay). Set before(flood_delay, moonlit_departure).
19assert_factFinal continuity query: query ancestor(liora, dain). Query carries(dain, red_ledger). Query at(dain, north_lantern).

Validation Contract

IDQueryExpectMin RowsMax Rows
liora_eamon_parent_keptparent(liora, eamon).success1
liora_brin_parent_keptparent(liora, brin).success1
liora_sela_parent_addedparent(liora, sela).success1
sela_cira_parent_addedparent(sela, cira).success1
cira_dain_parent_removedparent(cira, dain).no_results0
brin_dain_parent_addedparent(brin, dain).success1
eamon_cira_parent_removedparent(eamon, cira).no_results0
liora_dain_ancestor_keptancestor(liora, dain).success1
eamon_not_ancestor_of_ciraancestor(eamon, cira).no_results0
dain_at_north_lanternat(dain, north_lantern).success1
dain_not_at_old_quayat(dain, old_quay).no_results0
dain_in_frostmerein_region(dain, frostmere).success1
dain_has_red_ledgercarries(dain, red_ledger).success1
cira_no_red_ledgercarries(cira, red_ledger).no_results0
archive_visit_before_flood_delaybefore(archive_visit, flood_delay).success1
bell_toll_before_moonlit_departurebefore(bell_toll, moonlit_departure).success1
moonlit_departure_not_before_archive_visitbefore(moonlit_departure, archive_visit).no_results0