{
  "run_id": "20260327T172224884310Z",
  "generated_at": "2026-03-27T17:22:29.464308Z",
  "stages": [
    {
      "ts_start": "2026-03-27T17:22:29.309829Z",
      "ts_end": "2026-03-27T17:22:29.365665Z",
      "duration_sec": 0.056,
      "stage": "closure_fix",
      "status": "ok",
      "run_id": "20260327T172224884310Z",
      "agent": "Contextual Closure & Cleanup Agent",
      "inputs": [
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02_kg_store.json",
          "kind": "kg_store"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02_kg_observations.jsonl",
          "kind": "kg_observations"
        }
      ],
      "outputs": [
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02a_kg_closure.json",
          "kind": "kg_summary_closure"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02a_kg_store_closure.json",
          "kind": "kg_store_closure"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02a_kg_closure_decisions.json",
          "kind": "kg_closure_decisions"
        }
      ],
      "metrics": {
        "entities": 23,
        "relations": 18,
        "closure_decision_count": 0,
        "closure_drop_count": 0,
        "closure_merge_count": 0,
        "stub_cleanup_dropped_entities": 0,
        "stub_cleanup_dropped_relations": 0,
        "stub_cleanup_merged_duplicate_entities": 0,
        "stub_cleanup_merged_same_name_entities": 0,
        "stub_cleanup_merged_duplicate_relations": 0,
        "resumed": false
      }
    },
    {
      "ts_start": "2026-03-27T17:22:29.385146Z",
      "ts_end": "2026-03-27T17:22:29.428440Z",
      "duration_sec": 0.043,
      "stage": "type_consolidation",
      "status": "ok",
      "run_id": "20260327T172224884310Z",
      "agent": "Ontology & Taxonomy Agent",
      "inputs": [
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02a_kg_store_closure.json",
          "kind": "kg_store_closure"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/01d_ontology.json",
          "kind": "ontology_doc"
        }
      ],
      "outputs": [
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02b_type_candidates.json",
          "kind": "type_candidates"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02c_type_consolidation.json",
          "kind": "type_consolidation"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02d_kg_store_consolidated.json",
          "kind": "kg_store_consolidated"
        },
        {
          "path": "/wwwb/aitools/writer/outputs/daozu_closure_fix_only_smoke_20260328/02d_kg_consolidated.json",
          "kind": "kg_summary_consolidated"
        }
      ],
      "metrics": {
        "candidates": 20,
        "apply_type_count": 1,
        "apply_subtype_count": 8,
        "review_type_count": 3,
        "review_subtype_count": 5,
        "other_before": 2,
        "other_after": 1,
        "ontology_loaded": true,
        "resumed": false
      }
    }
  ],
  "llm_calls": {
    "total": 0,
    "ok": 0,
    "error": 0
  },
  "run_errors": 0,
  "archived_previous_logs": "logs/_archive/20260327T172114503160Z__before__20260327T172224884310Z"
}