{
  "schema": "beans-context-audit.v1",
  "reviewed_at": "2026-09-25",
  "review_type": "read-only review of existing assets, reports and correction registries; no new inference or diagnostic run",
  "source_roots": {
    "greenhouse": "greenhouse/reports",
    "aads": "aads/experiments/2026-06-10_ham10000-diet-greenhouse"
  },
  "current_web": {
    "sample_count": 300,
    "class_counts": {"angular_leaf_spot": 100, "bean_rust": 100, "healthy": 100},
    "image_manifest": "images.json",
    "embeddings_sha256": "b77345e50f9aeba02e77ce848819581a667be711955c38c03e0352eb314a2f93",
    "patch_samples": 6,
    "layer_samples": [94, 183, 256],
    "new_training": false,
    "new_inference": false
  },
  "public_sources": [
    {"url": "https://github.com/AI-Lab-Makerere/ibean", "role": "Original collection purpose, field annotation and classes; README total 1296 and repository MIT license; do not import a different release's license"},
    {"url": "https://www.tensorflow.org/datasets/catalog/beans", "role": "Distribution catalog: train 1034, validation 133, test 128, image shape 500x500x3; total 1295"},
    {"url": "https://www.frontiersin.org/journals/plant-science/articles/10.3389/fpls.2025.1624373/full", "role": "Original 2025 research using iBean 1295 images for DRE-DCT and Transformer classification; not a matched benchmark of our H experiment"},
    {"url": "https://apps.lucidcentral.org/pppw_v10/text/web_full/entities/bean_angular_leaf_spot_216.htm", "role": "Pacific Pests, Pathogens & Weeds fact sheet 216: common bean, fungal angular leaf spot, symptoms and impact; indexed text consulted, direct fetch returned 403"},
    {"url": "https://extensionpubs.unl.edu/publication/g1766/2013/pdf/view/g1766-2013.pdf", "role": "Nebraska Extension G1766, revised 2013: fungal bean rust, symptoms and crop impact"}
  ],
  "historical_sources": [
    {
      "root": "greenhouse", "file": "data_quality_beans.html", "sha256": "01b4c414142c0a72eef7ff67e258ac82b9819a02258b7f0259f34f8cd16d87c2",
      "reported": {"judgment": "GOOD", "separability_percent": 92.19, "normalized_density_mean": 0.393, "normalized_density_sd": 0.122, "claimed_reduction_percent": 85.7, "claimed_retained_volume": 0.143},
      "locator": "sections 02 and 03: separability, density, redundancy, judgment",
      "interpretation": "Historical narrative report, not a DINOv3 quality score. Exact run and density normalization contract not established. Claims of no label noise, no duplicates and little need for improvement are not adopted."
    },
    {
      "root": "greenhouse", "file": "gate_report_beans.html", "sha256": "9f6d2636d699fcd48e5f5658efc9e50edbf2a83e90a6b1f3b532986756168eac",
      "reported": {"lens": "dinov2-base", "separability_percent": 93.75, "label_shuffle_repeats": 30, "shuffle_mean_percent": 35.89, "p": 0.0323, "cv_folds": 5, "cv_mean_percent": 89.72, "cv_sd_percent": 2.25, "gate": "PASS"},
      "locator": "Govern table / dinov2-base row",
      "interpretation": "Reported signal under this gate procedure; neither proof against all leakage nor a replayed experiment. Not merged with the quality HTML's 92.19 percent."
    },
    {
      "root": "greenhouse", "file": "mcp_assets/harvest/beans/beans_crosseval.json", "sha256": "0be73ebc8cff8493b82d9cebfa00eba8ac0c50f242e08da8bd6a082eca5db921",
      "json_pointers": ["/matrix/dinov2-base/dinov2-base/0", "/matrix/dinov2-base/dinov2-base/3"],
      "reported": {"full": {"n": 300, "diet": 93.75, "random": 93.75}, "level4": {"n": 253, "vol": 0.843, "diet": 92.19, "random": 95.31, "gain": -3.12}},
      "interpretation": "Outer matrix key is evaluation lens; inner key is selection lens. Prior local source audit describes logistic-regression accuracy, single random seed, not class-matched. Do not equate with the current repeated-seed MLP balanced-accuracy H experiment."
    },
    {
      "root": "greenhouse", "file": "mcp_assets/harvest/beans/diet_advisory_v3.json", "sha256": "8c9ba30cee6af85787a32cd7bf4282b9f9f4c029678045fdaabcb4bb4847ab44",
      "json_pointers": ["/ts", "/A_rule", "/selected"],
      "reported": {"timestamp": "2026-08-15T22:21:48", "run_id": "adv_beans_0815_2221", "selection_lens": "dinov2-base", "volume": 0.843, "tier": "BAD", "mode": "caution"},
      "interpretation": "Stored advisory, not a new measurement. Its stated crosseval_mtime is not evidence that today's cross-eval file is the exact original input. Not reconciled with the old GOOD/85.7-percent-reduction narrative."
    },
    {
      "root": "greenhouse", "file": "mcp_assets/harvest/beans/engine_fe_manifest.json", "sha256": "ef321685b30e10a6069bfca4e9f04d785f0255d0ef69b2c19564c5705fea6a48",
      "reported": {"feature_set_id": "d3612afb8329f899", "resolution": 224, "dinov2_base_train_count": 300, "dinov2_base_test_count": 128},
      "interpretation": "Historical feature manifest; matching counts do not establish identical image IDs or membership with the current web."
    },
    {
      "root": "greenhouse", "file": "mcp_assets/harvest/beans/numByClass.json", "sha256": "bdd2073044a7acc0c264f532bcafbe30bd0b4dce27549188bcbd1cf1caf56944",
      "reported": {"angular_leaf_spot": 100, "bean_rust": 100, "healthy": 100}
    },
    {
      "root": "aads", "file": "bulkup_case_registry.jsonl", "sha256": "1e2d065ae3803bf2f2142e8f211695e82d0bd1668d08c910bb721a5d848c6e08",
      "locator": "case_id=lens_diet_mode_CORRECTION_2026-07-10",
      "reported": {"date": "2026-07-10", "type": "correction", "affected_beans_derivatives": ["beans_pd79", "beans_dt45"], "actual_mode": "R2 stratified random cut, not precise keep-list", "fix_commit": "f11867c"},
      "interpretation": "Correction applies to named old orchestration cases and derivatives, not automatically to every beans experiment. Those cases are not presented as precise H evidence."
    },
    {
      "root": "aads", "file": "diagnosis_registry.jsonl", "sha256": "d34243dd800da92a00910a8670516d9f663c35370c8fb8ec2ac07e2fe7c80f37",
      "reported": {"records_scanned": 90, "beans_correction_or_supersedes_matches": 0},
      "interpretation": "Registry inspected read-only; absence of a matching correction is not proof the diagnosis is error-free."
    }
  ],
  "prior_local_method_audit": "data-lens-algorithm-lab/outputs/aads-diet-reuse-2026-09-18/REPORT.ko.md",
  "unverified": [
    "Cause of the one-image difference between original README and distributed catalog",
    "Image-level identity between the historical Greenhouse 300 and current web 300",
    "Raw repeated runs behind historical HTML summaries; precise density normalization and original execution date",
    "Plant/farm-independent splits, near-duplicate leakage, inter-annotator agreement, background confounding and field generalization",
    "Whether each visible region is causal to model decisions; healthy is a dataset label, not a pathogen-negative laboratory test"
  ]
}
