)]}'
{
  "commit": "b56b48301ea221ae3dd6dc01f887f0b72e10e729",
  "tree": "ba5cd9a65ce1d41398bc854e7a34f5315dc89238",
  "parents": [
    "e9019fcafe0040228b8631c30f97ae1adb61bcdc"
  ],
  "author": {
    "name": "David Lin",
    "email": "davidzylin@gmail.com",
    "time": "Tue Jul 28 09:52:48 2026 -0400"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Tue Jul 28 15:14:42 2026 -0700"
  },
  "message": "pack-bitmap: handle objects at bitmap position zero\n\n`bitmap_position()` only returns a negative value when an object is not\npresent in the bitmap index.\n\nIn `find_objects()`, we have added a check (11d45a6e6a) to avoid\nprocessing a root whose reachability is already represented by the base\nbitmap, but accidentally uses `pos \u003e 0`. Consequently, it never performs\nthe membership test for an object at position zero.\n\nIf that object has an individual reachability bitmap, we unnecessarily\nOR that bitmap into the base again. Otherwise, we add the object to the\nnot-mapped list, only for the subsequent pass to recognize that it is\nalready present. The latter pass correctly treats all non-negative\npositions as valid, so this does not change the resulting object set,\nbut an off-by-one edge case.\n\nTreat position zero as valid by changing the condition to `pos \u003e\u003d 0`.\n\nThe existing pseudo-merge traversal test exercises this case. Its\nposition-zero commit is presented through multiple roots. Before this\nchange, each occurrence is counted as a bitmap hit; afterwards, only\nthe first occurrence is counted. Assert the resulting hit count to\ncover the boundary condition.\n\nAlso cover the non-pseudo-merge case by passing `HEAD` twice. The first\noccurrence initializes the base from its stored bitmap, and the second\nmust recognize that position zero is already present.\n\nHelped-by: Taylor Blau \u003cttaylorr@openai.com\u003e\nSigned-off-by: David Lin \u003cdavidlin@stripe.com\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e8a82945cc319e1c71fd3079b64fc1b6ce9c7455",
      "old_mode": 33188,
      "old_path": "pack-bitmap.c",
      "new_id": "9c9b27b72391316f4409732736a49990d5c712ac",
      "new_mode": 33188,
      "new_path": "pack-bitmap.c"
    },
    {
      "type": "modify",
      "old_id": "305d6771082d557ce6584f636804f41f2886d8c1",
      "old_mode": 33261,
      "old_path": "t/t5333-pseudo-merge-bitmaps.sh",
      "new_id": "5b2a17f90a10918c2a17e034ab42e574c34dd363",
      "new_mode": 33261,
      "new_path": "t/t5333-pseudo-merge-bitmaps.sh"
    }
  ]
}
