)]}'
{
  "commit": "d92682e4d6035d968a0a1307cda57b57b0168659",
  "tree": "ea337db7831b0e4bfd79d861543b1364482b103a",
  "parents": [
    "44da0d9f323557fe466a0db6e99061d2d0e00275"
  ],
  "author": {
    "name": "Jonathan Amsterdam",
    "email": "jba@google.com",
    "time": "Wed May 27 12:26:32 2026 -0400"
  },
  "committer": {
    "name": "Jonathan Amsterdam",
    "email": "jba@google.com",
    "time": "Thu May 28 08:12:38 2026 -0700"
  },
  "message": "internal/api: ungroup search results\n\nThe DB search call would group all packages in a module under the one,\nhighest-scoring package. It would also omit modules in the same series\nbut with different major versions. That was the right choice for the UI,\nbut the API should show all matches ungrouped.\n\n- Change the grouping decision from a global one to a search option.\n\n- Group for the UI, but not for the API.\n\n- Improve API search tests to demonstrate ungrouping.\n\nFixes #79697.\n\nChange-Id: Ic26b83e35655bab93428ef14c1f3ca1014454279\nReviewed-on: https://go-review.googlesource.com/c/pkgsite/+/783840\nkokoro-CI: kokoro \u003cnoreply+kokoro@google.com\u003e\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nReviewed-by: Hyang-Ah Hana Kim \u003chyangah@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "780dab289b609d06e8e00799689c132bac6b337c",
      "old_mode": 33188,
      "old_path": "internal/api/api.go",
      "new_id": "dcb26e720f52b25b9469c069c031f22f21eaab8b",
      "new_mode": 33188,
      "new_path": "internal/api/api.go"
    },
    {
      "type": "modify",
      "old_id": "9d3945da720665b92502c20bd9eb9131d644b29f",
      "old_mode": 33188,
      "old_path": "internal/api/openapi.yaml",
      "new_id": "c9dd9bc5491108ac97284b0620b83e6b0d9b0f2f",
      "new_mode": 33188,
      "new_path": "internal/api/openapi.yaml"
    },
    {
      "type": "modify",
      "old_id": "202ab38deaf61f6b1fb23d8c083bcfe55c1c008b",
      "old_mode": 33188,
      "old_path": "internal/datasource.go",
      "new_id": "73a561ecc3f0f4e463336e2d4521b5336ad9d43e",
      "new_mode": 33188,
      "new_path": "internal/datasource.go"
    },
    {
      "type": "modify",
      "old_id": "842d505a4eee4eb596ab1c38b55330ee2a6dd911",
      "old_mode": 33188,
      "old_path": "internal/frontend/search.go",
      "new_id": "a6f365e45dee4b8b8fa8b3c98f6e28fa9a6e8e55",
      "new_mode": 33188,
      "new_path": "internal/frontend/search.go"
    },
    {
      "type": "modify",
      "old_id": "5b21f1c72ef2a45b2e6fa7bc33d3de21d317014b",
      "old_mode": 33188,
      "old_path": "internal/frontend/server.go",
      "new_id": "e9d0f06e632c94f99fd6c736bc48cf35d3b0855c",
      "new_mode": 33188,
      "new_path": "internal/frontend/server.go"
    },
    {
      "type": "modify",
      "old_id": "766e9b029bc2414b968885c4a68b1d57e6ede99a",
      "old_mode": 33188,
      "old_path": "internal/postgres/benchmarks_test.go",
      "new_id": "745dbec0da77948a40b7029a55529a5de79b5fba",
      "new_mode": 33188,
      "new_path": "internal/postgres/benchmarks_test.go"
    },
    {
      "type": "modify",
      "old_id": "f9ab60de7edd0f413d1ed1a35ecd13e94b96148a",
      "old_mode": 33188,
      "old_path": "internal/postgres/search.go",
      "new_id": "9ecab34a86c7273cc701750d8383cedfb55cf6b7",
      "new_mode": 33188,
      "new_path": "internal/postgres/search.go"
    },
    {
      "type": "modify",
      "old_id": "1c402908d21eee3281f97f9d5cede5581d3dedaf",
      "old_mode": 33188,
      "old_path": "internal/tests/api/api_test.go",
      "new_id": "fb6a9de017432fae405f0259e208a685e8800ae1",
      "new_mode": 33188,
      "new_path": "internal/tests/api/api_test.go"
    }
  ]
}
