{
  "product": "UI + MCP surface (WinApp)",
  "title": "NanoChat.NET — UI + MCP surface",
  "summary": "What the desktop UI and MCP server actually expose of that same engine.",
  "category": "layers",
  "source": "D:\\Dev\\Lab\\NanoChat.NET",
  "entries": [
    {
      "path": [
        "Tokenizer",
        "Train tokenizer"
      ],
      "value": "",
      "status": "no",
      "note": "training runs via CLI only; no UI action found (2026-08-01 snapshot)"
    },
    {
      "path": [
        "Tokenizer",
        "Inspect vocabulary & merges"
      ],
      "value": "",
      "status": "yes",
      "note": "Tokenizer explorer: live retokenize, vocab + merge-history browsers"
    },
    {
      "path": [
        "Data",
        "Register & inspect corpora"
      ],
      "value": "",
      "status": "yes",
      "note": "Datasets activity (14 VMs) + MCP datasets_source_corpora/add"
    },
    {
      "path": [
        "Training",
        "Pretraining runs"
      ],
      "value": "",
      "status": "yes",
      "note": "Training workflow catalog: run cards, stage progress, ETA + MCP training_*"
    },
    {
      "path": [
        "Training",
        "Task/SFT training (5 kinds)"
      ],
      "value": "",
      "status": "yes",
      "note": "TrainingActionCatalog actions incl. dataset chooser"
    },
    {
      "path": [
        "Training",
        "Resume from checkpoint"
      ],
      "value": "",
      "status": "yes",
      "note": "*-resume actions with compatibility checks"
    },
    {
      "path": [
        "Training",
        "RL training loop"
      ],
      "value": "",
      "status": "no",
      "note": "complete at model level; no UI activity, no rl lineage (confirmed by Mind v8)"
    },
    {
      "path": [
        "Evaluation",
        "BPB / CORE / GSM8K / ARC / MMLU"
      ],
      "value": "",
      "status": "yes",
      "note": "Benchmark setup & results UI + bpb_pilot_* MCP tools"
    },
    {
      "path": [
        "Evaluation",
        "Evaluation history & drilldown data"
      ],
      "value": "",
      "status": "yes",
      "note": "Evaluation drilldown activity: per-example prompts, losses, verdict margin"
    },
    {
      "path": [
        "Evaluation",
        "Inference performance benchmark"
      ],
      "value": "",
      "status": "no",
      "note": "engine InferenceBenchmark not surfaced as a UI activity (snapshot)"
    },
    {
      "path": [
        "Inference",
        "Chat sessions (streamed, tool-use)"
      ],
      "value": "",
      "status": "yes",
      "note": "Chat activity with model picker, streamed replies + MCP chat_*"
    },
    {
      "path": [
        "Inference",
        "Task runtime (generate/classify/rank/embed)"
      ],
      "value": "",
      "status": "yes",
      "note": "Task Runtime deployment activity (typed text against active checkpoint)"
    },
    {
      "path": [
        "Checkpoints & models",
        "Checkpoint inventory"
      ],
      "value": "",
      "status": "yes",
      "note": "Checkpoints observatory: lineage > tag > step from real disk"
    },
    {
      "path": [
        "Checkpoints & models",
        "Registry: deploy & rollback"
      ],
      "value": "",
      "status": "yes",
      "note": "Models activity: Load/Inspect/Register/Activate/Rollback"
    },
    {
      "path": [
        "Checkpoints & models",
        "Upstream checkpoint import"
      ],
      "value": "",
      "status": "no",
      "note": "importer exists engine-side; no import UI action found (snapshot)"
    },
    {
      "path": [
        "Internals",
        "GPU/tensor/kernel state"
      ],
      "value": "",
      "status": "partial",
      "note": "GPU dashboard, tensor workspace, 12 renderers — but ~4/99 render entry points read the real model"
    }
  ]
}
