run_demo_ablation_0002This is a process-centric walkthrough of one bounded SQL learning-ingestion run. It shows how a partial source pack becomes a structured graph, how critique and repair expose uncertainty, and how one clarification question is replayed through three simulated SME personas without weakening deterministic validation.
The run covers a single-table SQL v0 slice: sql_table_model, sql_select_from, sql_where, sql_order_by, sql_limit, sql_aggregates, and sql_group_by.
The pipeline tries to turn ablated lesson material into a canonical learning graph with explicit objectives, misconceptions, evidence, assets, and prerequisite relations.
What matters most in this walkthrough:
edge_sql_order_by_to_sql_limit is not the same thing as proving provenance for sql_limitPersona dialogue below uses an explanatory replay based on the same bounded question and the same deterministic acceptance rules. It is display-oriented, not new run truth.
sql_limitsql_limit ends the run at confidence=high, but it has no direct source_refs. The graph also carries a low-confidence warning mark saying its support is weak. That is why the strict trust interpretation still blocks launch.
edge_sql_order_by_to_sql_limitThis edge can legitimately receive oracle_confirmed as a scoped structural claim. That still does not retroactively prove that the sql_limit node itself is source-grounded.
normalized_chunks.jsonl, ingestion_run.json. Example: six sources become six normalized chunks.graph_draft.json, assets_draft.json. Example: sql_limit exists, but no order_by -> limit edge exists yet.critique.json. Example: crit_010 flags a missing prerequisite between sql_order_by and sql_limit.repair_log.json, repaired artifacts. Example: sql_limit gets a low-confidence warning; group_by gets stub coverage.clarification_questions.json. Example: cq_missing_prereq_sql_order_by_sql_limit.uncertain_sme is rejected even though the answer sounds thoughtful.oracle_confirmed for the edge only.graph_final.json, critique_final.json, strict/safe readings. Example: final graph gains three edges, but trust still depends on how unsupported high confidence is handled.nodes 31edges 4issues 11blocking 3
Key edges:
edge_sql_table_model_to_sql_select_fromedge_sql_select_from_to_sql_whereedge_sql_select_from_to_sql_order_byedge_sql_select_from_to_sql_aggregatesKey unresolved issues include three missing prerequisites and a low-confidence issue on sql_limit.
The graph shape is unchanged, but the uncertainty becomes explicit.
crit_010: missing prerequisite for sql_order_by and sql_limitcrit_004: low-confidence issue on sql_limitcrit_001 / crit_002: group_by asset gapsnodes 33edges 4stub assets 2low-confidence 2
Changed objects:
sql_limit gets an explicit weak-support warninggroup_by objective gets a stub explanation assetgroup_by misconception gets a stub remediation assetNo new prerequisite edges are invented here.
nodes 33edges 7blocking 0warnings 6
Main changes:
edge_sql_aggregates_to_sql_group_byedge_sql_order_by_to_sql_limitedge_sql_table_model_to_sql_group_bysql_group_by.depth_level = workingTrust interpretation still depends on mode because sql_limit remains unsupported at high.
Below are two simplified views of the same bounded SQL slice: the initial state after the first material load and the final state after safe repair and SME/oracle additions. The colors reflect change origin and status, not overall graph quality.
sql_limit shows that even after successful graph completion the node still has no direct provenance support at the node source-support level.
Selected question: cq_missing_prereq_sql_order_by_sql_limit
Why this question: it is the highest-value clarification target closest to the trust example. It resolves one structural claim and cleanly demonstrates the line between edge confirmation and node provenance.
Claim under review: should the graph contain a prerequisite relation from sql_order_by to sql_limit?
Boundary: even a perfect accepted answer only authorizes the edge claim. It does not add direct source_refs to sql_limit.
order by, skill limit have an explicit prerequisite relation in v0? If yes, confirm the direction and strength.sql_limit should require sql_order_by (sql_limit -> sql_order_by).Extracted interpreted patchaction=ensure, from_skill_id=sql_order_by, to_skill_id=sql_limit, relation_type=hard_prereq
Validation verdict
Accepted. In-scope, specific, schema-valid. oracle_confirmed allowed.
Graph effect
A bounded edge claim can be confirmed. No node provenance is added to sql_limit.
order by, skill limit have an explicit prerequisite relation in v0? If yes, confirm the direction and strength.Extracted interpreted patchaction=ensure, from_skill_id=sql_order_by, to_skill_id=sql_limit, relation_type=soft_prereq
Validation verdict
Accepted. Natural language still resolves to one in-scope bounded prerequisite update. oracle_confirmed allowed.
Graph effect
One scoped prerequisite edge can be accepted. Confidence improvement applies to the edge claim only. sql_limit node provenance is still unchanged.
order by, skill limit have an explicit prerequisite relation in v0? If yes, confirm the direction and strength.sql_limit to sql_order_by (sql_limit should require familiarity with order by).Extracted interpreted patch
Proposal stays structurally loose: relation=prerequisite, strength=soft, direction.from=sql_limit, direction.to=sql_order_by.
Validation verdict
Rejected. Required bounded update fields are missing. oracle_confirmed not allowed.
Graph effect
No patch. No confidence change. No provenance added.
| persona | answer style | raw answer quality | interpreted as specific? | accepted? | oracle_confirmed allowed? | graph effect | what this teaches us |
|---|---|---|---|---|---|---|---|
clear_sme |
direct and patch-like | strong | yes | yes | yes | edge can be confirmed | the cleanest path is a scoped explicit answer |
messy_sme |
natural, meandering, still competent | strong | yes | yes | yes | edge can be confirmed | human-like phrasing is fine if one bounded decision is still recoverable |
uncertain_sme |
hedged and structurally loose | mixed | yes | no | no | no graph change | plausibility is not enough without deterministic patchability |
sql_limitgraph_draft.jsonconfidence=highsource_refsConfirmed? No direct provenance is confirmed.
Final reading: this is the clearest example of why a coherent node is not automatically a trusted one.
edge_sql_order_by_to_sql_limitgraph_final.json at confidence=highoracle_confirmed confidence mark in the final runConfirmed? Yes, the relation itself can be boundedly confirmed.
Final reading: this is a scoped claim the system can recover through clarification without overstating what has been proven.
The run supports three useful readings:
sql_limitorder_by -> limit edge, but still cannot prove that sql_limit itself is source-supportedThat is the intended boundary.