{
 "format": "ac-bench/1",
 "entry": "hoppscotch-H1",
 "kind": "scramble",
 "variant": "H1",
 "repo": "~/ac-targets/hoppscotch",
 "sha": "63273f8e599e73f0fb38c0739314e8d46b6bc83d",
 "packageRoot": "packages/hoppscotch-backend",
 "moduleRoot": "src",
 "files": 186,
 "featureFiles": 156,
 "groundTruthModules": 25,
 "hardFiles": 46,
 "leakyFiles": 0,
 "leakage": {
  "renamed": 0,
  "inFeatureFolder": 0,
  "underSubFolder": 0,
  "subFolders": [
   {
    "folder": "constants",
    "files": 1,
    "features": 1
   }
  ],
  "unseen": 3
 },
 "scramble": {
  "commit": "bf37a0f6391313d9e2e01b1889312a07c72475e7",
  "tree": "762f2e75b4fd48e078a30f375b126d08d5dce498",
  "moved": 156,
  "declined": 1,
  "excluded": 22,
  "certificate": {
   "verdict": "pass",
   "scope": "static",
   "digest": "sha256:aaae99a7b3ccbc8ad53c087502234e1b2783d5177462e93702a418d1d3e0e4d6",
   "failing": []
  }
 },
 "methods": [
  {
   "method": "B0 type folders",
   "kind": "baseline",
   "clusters": 17,
   "mojoFm": 9.66,
   "ari": -0.022,
   "c2cCvg": 0,
   "clusterCountRatio": 0.6,
   "mojoFmHard": 30,
   "turboMq": {
    "sum": 1.1112,
    "mean": 0.0654
   },
   "backEdges": 15
  },
  {
   "method": "name-token (full stem)",
   "kind": "baseline",
   "clusters": 183,
   "mojoFm": 9.66,
   "ari": 0,
   "c2cCvg": 0,
   "clusterCountRatio": 6.24,
   "mojoFmHard": 22.5,
   "turboMq": {
    "sum": 0.0625,
    "mean": 0.0003
   },
   "backEdges": 1
  },
  {
   "method": "name-token (anchored)",
   "kind": "baseline",
   "clusters": 175,
   "mojoFm": 9.66,
   "ari": 0,
   "c2cCvg": 0,
   "clusterCountRatio": 6.24,
   "mojoFmHard": 22.5,
   "turboMq": {
    "sum": 0.0625,
    "mean": 0.0004
   },
   "backEdges": 2
  },
  {
   "method": "export-token (anchored)",
   "kind": "baseline",
   "clusters": 62,
   "mojoFm": 74.48,
   "ari": 0.528,
   "c2cCvg": 0.76,
   "clusterCountRatio": 2.04,
   "mojoFmHard": 45,
   "turboMq": {
    "sum": 6.9181,
    "mean": 0.1116
   },
   "backEdges": 47
  },
  {
   "method": "seeds draft (file names)",
   "kind": "baseline",
   "clusters": 92,
   "mojoFm": 23.45,
   "ari": 0.015,
   "c2cCvg": 0.08,
   "clusterCountRatio": 3.4,
   "mojoFmHard": 15,
   "turboMq": {
    "sum": 2.8811,
    "mean": 0.0313
   },
   "backEdges": 48
  },
  {
   "method": "seeds draft (export names)",
   "kind": "draft",
   "clusters": 45,
   "mojoFm": 81.38,
   "ari": 0.634,
   "c2cCvg": 0.8,
   "clusterCountRatio": 1.6,
   "mojoFmHard": 62.5,
   "turboMq": {
    "sum": 7.3714,
    "mean": 0.1638
   },
   "backEdges": 36
  },
  {
   "method": "Louvain r=1 (mean of seeds 1-5)",
   "kind": "baseline",
   "clusters": 9.4,
   "mojoFm": 33.38,
   "ari": 0.299,
   "c2cCvg": 0.048,
   "clusterCountRatio": 0.34,
   "mojoFmHard": 56.5,
   "turboMq": {
    "sum": 4.4355,
    "mean": 0.472
   },
   "backEdges": 22.4,
   "note": "mean of seeds 1-5"
  },
  {
   "method": "Louvain r=2 (mean of seeds 1-5)",
   "kind": "baseline",
   "clusters": 16.6,
   "mojoFm": 53.1,
   "ari": 0.499,
   "c2cCvg": 0.216,
   "clusterCountRatio": 0.62,
   "mojoFmHard": 74,
   "turboMq": {
    "sum": 6.7177,
    "mean": 0.4048
   },
   "backEdges": 57.4,
   "note": "mean of seeds 1-5"
  },
  {
   "method": "Louvain r=4 (mean of seeds 1-5)",
   "kind": "baseline",
   "clusters": 33.2,
   "mojoFm": 76.27,
   "ari": 0.601,
   "c2cCvg": 0.616,
   "clusterCountRatio": 1.22,
   "mojoFmHard": 80.5,
   "turboMq": {
    "sum": 9.5659,
    "mean": 0.2882
   },
   "backEdges": 70.4,
   "note": "mean of seeds 1-5"
  },
  {
   "method": "planner (Ultra)",
   "kind": "planner",
   "clusters": 37,
   "mojoFm": 83.45,
   "ari": 0.641,
   "c2cCvg": 0.8,
   "clusterCountRatio": 1.4,
   "mojoFmHard": 60,
   "turboMq": {
    "sum": 7.1396,
    "mean": 0.193
   },
   "backEdges": 42
  }
 ],
 "bestBaseline": {
  "method": "seeds draft (export names)",
  "mojoFm": 81.38,
  "turboMq": 7.3714
 },
 "planner": {
  "cassette": "cassettes/s7-bench.jsonl",
  "recordedCostUsd": 0.127546,
  "spentUsd": 0.019133,
  "replayed": false,
  "calls": {
   "replayed": 1,
   "recorded": 1
  },
  "rules": 2,
  "groups": 37,
  "modules": 35,
  "change": {
   "draftGroups": 45,
   "samePartition": false,
   "filesMoved": 5,
   "groupsMerged": 8,
   "winner": {
    "label": "ultra#1",
    "groupEntries": 45,
    "moves": 17,
    "movesById": 17,
    "issues": {
     "banned-name": 2,
     "duplicate-move": 1,
     "foreign-name": 1
    }
   },
   "critic": {
    "suggestions": 9,
    "kept": 2
   }
  },
  "planSha256": "e38cd9aeaa6411097778faf3fd823d2b14a76e1e4799c36153ef7d9b996b51dd"
 },
 "louvainMojoFmByResolution": {
  "1": [
   26.21,
   34.48,
   42.76,
   33.1,
   30.34
  ],
  "2": [
   55.86,
   51.03,
   54.48,
   51.03,
   53.1
  ],
  "4": [
   74.48,
   76.55,
   76.55,
   80,
   73.79
  ]
 },
 "draft": {
  "method": "seeds draft (export names)",
  "source": "export names",
  "contested": {
   "fileNames": 85,
   "exportNames": 12
  }
 },
 "notes": [
  "1 feature file is pinned in the facts (no method can place it) and not scored.",
  "The planner starts from the seeds draft (export names): plannerDraft takes the export names only when they leave fewer files contested than the file names, and here they leave 12 against 85 (no ground truth is read).",
  "The planner's plan moves 5 of 186 files out of their draft group and merges 8 draft groups into others (45 draft groups, 37 plan groups). The winning edit, ultra#1, had 45 group entries and 17 moves (17 name their file by its id, not its path); the validator found 4 problems with it (banned-name 2, duplicate-move 1, foreign-name 1) and dropped or repaired each before applying it. Planner rules 2 read a file by the id the prompt showed for it. The critic made 9 suggestions and its gate kept 2.",
  "Leakage, over the 186 movable files every method sees: 0 give their feature away in their path (0 still in a feature folder; 0 leaky renames; 0 in a sub-folder that only files of their feature share). Sub-folders kept under the type folders: constants (1 file, 1 feature); the planner's prompt shows them, and no deterministic method groups by them. 3 more leaky files are pinned or not read by the facts, so no method sees them: not counted."
 ]
}
