)]}'
{
  "log": [
    {
      "commit": "dc843dc6a00046269f02abbfd9f875e1bb7f3ef7",
      "tree": "374f39c3726811f6589fbf564e9764c8c2dedb4f",
      "parents": [
        "604869eb3d31f544fd0ddb2d2cd09dcef3b55734"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Sep 01 06:34:13 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 06:34:13 2026"
      },
      "message": "siso: log when digest from fs failed\n\nBug: b/506882659\nChange-Id: Ib845346688f5ee5f6f30d69109c2f55e9b99d12e\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8334887\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "604869eb3d31f544fd0ddb2d2cd09dcef3b55734",
      "tree": "5b72397d4c96fb42e5839595141a3fa930174f7e",
      "parents": [
        "9af8f1b411748014d50b3141389d3161d74698ed"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Tue Sep 01 05:07:01 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 05:07:01 2026"
      },
      "message": "siso/webui: fix output count display and add expandable outputs list\n\nThis is to fix\nhttps://screenshot-v2.corp.google.com/6k17eep5unn4g\nto\nhttps://screenshot-v2.corp.google.com/5cl8cidhd95q8\n\nStepMetric.Outputs is a slice of strings ([]string), unlike Inputs which\nis an integer. Previously, invocation_step.html used {{.step.Outputs}}\ninstead of {{len .step.Outputs}}, which rendered the entire slice as a\nstring [path1 path2 ...] into a fixed-height (40px) \u003cli\u003e in\n.step-details, causing severe visual breakage when an action had many\noutputs.\n\nFix this by:\n- Using {{len .step.Outputs}} to display the count of outputs.\n- Adding an expandable \u003cdetails\u003e section listing all outputs when\n  there are multiple outputs.\n- Changing .step-details li height from 40px to min-height: 40px.\n- Adding word-break: break-all to dl.step-raw dd.\n- Adding a test in serve_test.go covering single and multiple outputs.\n\nChange-Id: I6d8e422ee04b9206c5c0bcf3d4c909ca2cdb6ef2\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8325267\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "9af8f1b411748014d50b3141389d3161d74698ed",
      "tree": "ca98596cf1f2baf2b9c590216a032fb5e9fef965",
      "parents": [
        "be7df43b08cd55b28e8ea18c087be0c836a5184b"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Tue Sep 01 03:03:25 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 03:03:25 2026"
      },
      "message": "siso: add trailing newline to Usage strings in subcommands\n\nSubcommands without a trailing newline in Usage() cause missing newlines\nwhen displaying help messages. Add a trailing newline to Usage() in\nwebui, version, fscmd (import/export), and auth (login/logout).\n\nAlso add a test in main_test.go to verify that Usage() ends with a\nnewline for all top-level subcommands and nested subcommands (fs,\nmetrics, query).\n\nChange-Id: I3614e7831cb85b5c97b4176cdaa8440f82e60059\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8324567\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "be7df43b08cd55b28e8ea18c087be0c836a5184b",
      "tree": "6b16dd9a7acdee83a2585ee52fc09744dbc4819c",
      "parents": [
        "68ea4e02208d7e7d9430cbb1bfe07bbb02288508"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Sep 01 02:36:21 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 02:36:21 2026"
      },
      "message": "siso: preallocate mmapfile to write\n\nWhen disk is full, mmapfile.Write succeeded mmap, but\nit would cause panic with SIGBUS because backing file storage\nare not available.\n\nPre allocate file blocks to avoid SIGBUS\n\nBug: b/555067796\nChange-Id: I901fec50e1b0064777af9df8aefed0ec2ff0f992\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8319927\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "68ea4e02208d7e7d9430cbb1bfe07bbb02288508",
      "tree": "232bd62053a9be9bb2bdfe37366702b7d0ef20ac",
      "parents": [
        "5b2db731396ecdeefa5c14a6e751631939209d3e"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Sep 01 01:08:53 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 01:08:53 2026"
      },
      "message": "upgrade protoc from 36.0 to 36.1\n\nhttps://github.com/protocolbuffers/protobuf/releases/tag/v36.1\n\nChange-Id: I4d6a0a65e0c80057361b8324a71a4cdd0c08e133\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8333167\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "5b2db731396ecdeefa5c14a6e751631939209d3e",
      "tree": "5cd3d6fbcba5c3ad14e251c5ad0367ade92c5e08",
      "parents": [
        "ad39382d0321629246740db36d9db54ace27a1ec"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Sep 01 00:23:13 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Sep 01 00:23:13 2026"
      },
      "message": "siso: support chunked blob write\n\nBug: b/542773532\nChange-Id: Ib5a63ee23fcdbcfa22cfb8e289738b3ecc7e740f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8319088\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "ad39382d0321629246740db36d9db54ace27a1ec",
      "tree": "9cf03dda83132c75d3969036785d60a7322b3b5e",
      "parents": [
        "49a614406ddaf612e091df8beb4b3640b25ebbc4"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 31 07:32:20 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 31 07:32:20 2026"
      },
      "message": "siso: enable local cache only if --local_cache_enable\u003dtrue\n\nhttps://crrev.com/c/8264728 unexpectedly enable local cache,\nso caused out of disk on clank cache warmers\n\nBug: b/542773532\nChange-Id: I0cc43a8f66198439cf504f5ea7d4c69dd916cac1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8319588\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "49a614406ddaf612e091df8beb4b3640b25ebbc4",
      "tree": "008cc8cd616b8ab75d6cd162bdc79171402ae396",
      "parents": [
        "cc4c13b0d4a648a10148ad24882392be4fae5bbd"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 31 04:30:16 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 31 04:30:16 2026"
      },
      "message": "hashigo: add digest.Reader\n\nwhen chunking, we\u0027d like to use cdc.Chunker and\ncalculate digest of full content from one reader.\nTo support such use case, introduce *digest.Reader,\nwhich calcualte digest from original reader,\nfor io.Reader used in cdc.Chunker.Chunk.\n\nBug: b/542773532\nChange-Id: I7ff5e48480b0d59057f5719f17f88927a26e6bb2\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8315609\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "cc4c13b0d4a648a10148ad24882392be4fae5bbd",
      "tree": "797a34d4f65a4f8c3caa87de51fd879679c3fe26",
      "parents": [
        "6d95a7698e73d3c43e7e8da5eee262046afc7abe"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 31 02:48:13 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 31 02:48:13 2026"
      },
      "message": "siso: support chunked blob read\n\nadd -reapi_chunked_blobs_threshold\nif blob size exceeds the threshold and reapi backend\nsupport SplitBlob, it tries to call SplitBlob, fetch chunks\nand combines it onto one stream.\n\nBug: b/542773532\nChange-Id: I766d4cf5732cefa6178aa9ff145c3ef7434b554e\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8264728\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "6d95a7698e73d3c43e7e8da5eee262046afc7abe",
      "tree": "efbc2e425ddefa04bd45400830afe3ada5149439",
      "parents": [
        "efbbe7f1892211b5e9512576843a3c247b6a6d7c"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 31 01:19:54 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 31 01:19:54 2026"
      },
      "message": "siso: update version string to v1.5.31\n\nv1.5.30 is rolled out as pinned version at\ngit_revision:efbbe7f1892211b5e9512576843a3c247b6a6d7c\nhttps://crrev.com/c/8311090\nhttp://ag/41789158\n\nBug: b/551648570\nChange-Id: Icd1d194bcec1aa17be284e03ab634488d4a70554\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8315591\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "efbbe7f1892211b5e9512576843a3c247b6a6d7c",
      "tree": "00a46184b8272aa0b3f05e8b461df9d6332c2408",
      "parents": [
        "a70a06976a5edb44c35445edaa7b017fc8155690"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 28 08:35:57 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 08:35:57 2026"
      },
      "message": "siso: check LUCI_CONTEXT when auth error\n\nIn `luci-auth context` to use google-application-default\n(e.g. run_in_virtual_path), if it gets auth error,\nit would be misleading to suggest `google auth application-default login`,\nsince it would be error from luci-auth.\n\nChange-Id: If5433d270f8439f57a572aa35e69f37a294566b3\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311891\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "a70a06976a5edb44c35445edaa7b017fc8155690",
      "tree": "c363686fe7d0b6735eda663d53836bd6c62f439d",
      "parents": [
        "0b7633b2ecf029853a8e32cbfe0cef65f5198811"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 28 07:58:35 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 07:58:35 2026"
      },
      "message": "siso: show build progress in siso ps\n\nWhen running builds in quiet mode, inspecting the build state from\nanother terminal via siso ps is helpful to know the overall build\nprogress (how far along the build is, how many steps remain, etc.).\n\nShow completed, total, and remaining step counts in the header line of\nsiso ps for both local builds and --stdout_url.\n\nExample output:\n  Siso is running in out/Default [120/500 (remaining: 380)]\n    DURATION     PHASE DESC\n        3.5s    remote compile foo.cc\n        1.2s     local generate_bindings\n  steps\u003d2 out of 2\n\nChange-Id: I2a703dd66aba2b74124761ccc7213089db75bf29\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8304812\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "0b7633b2ecf029853a8e32cbfe0cef65f5198811",
      "tree": "f60cdc331130d4411dfc5b120ed79852b55e1321",
      "parents": [
        "83b9ab76debc8a19bea827f4013cd0c07a505d89"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 28 07:57:33 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 07:57:33 2026"
      },
      "message": "siso: fix Context-Type typo to Content-Type in statusz\n\nFix Context-Type typo to Content-Type and use Header().Set instead of\nAdd. Also use application/json as text/json seems incorrect content\ntype.\n\nref: https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/MIME_types/Common_types#:~:text\u003d.json,application/json\nChange-Id: I3e08fc04801f8afcb3e86f136a9b24091e62686b\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8313527\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "83b9ab76debc8a19bea827f4013cd0c07a505d89",
      "tree": "1cf9885a729087a15fc88646ddd99389affee74e",
      "parents": [
        "143a4bfb2d7358d45b4dedc42d6512f00a024d4d"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 28 07:14:35 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 07:14:35 2026"
      },
      "message": "siso: tap check TapData\n\ntap command of virtual filesystem may see different absolute path.\ne.g. actual absolute path may be /home/ukai/abfsmount,\nbut soong runs siso in nsjail, which mount it to /src,\nso siso sees /src as workspace root.\n\nIf tap command reported wrong absolute path, it failed to\nget correct tap result and failed to produce two phase\ncache result.\nTo detect such error, check tap result includes\npath under workspace root, and how many other files\nare detected outside of workspace root.\n\nBug: b/506882659\nChange-Id: I31f41e5a9998fe6152436b98c816d9dd6953eb28\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311309\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "143a4bfb2d7358d45b4dedc42d6512f00a024d4d",
      "tree": "5cd8a9e37d55f1e910644546db947b54e09493ce",
      "parents": [
        "f2b920b8fffbf4845fb0c50622397ca950f13aa9"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 28 07:12:49 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 07:12:49 2026"
      },
      "message": "siso: fix auth error message\n\n\"gcloud application-default login\" should be\n\"gcloud auth application-default login\"\n\nChange-Id: Ifbc2a20a352e46b7c0480cd8467d6e8eeb32a37f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8313447\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "f2b920b8fffbf4845fb0c50622397ca950f13aa9",
      "tree": "05c170c4488e55934e7ee62ac4b60e786a3a708b",
      "parents": [
        "edf4fb826fe101e80484b816cce42cab65f32395"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 28 07:07:43 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 07:07:43 2026"
      },
      "message": "build: resolve presubmit warnings\n\nThis resolves warnings detected by `git cl presubmit --all`:\n- Use `errors.AsType` instead of `errors.As` suggested by `modernize`\n  across gong and kajiya packages.\n- Fix formatting in siso/hashfs/filesystem.go flagged by `gci`/`gofmt`.\n- Add inline `//nolint:staticcheck` for SA4023 false positives:\n  - siso/build/ninjabuild/step_def.go: `cmdutil.Split` returns non-nil\n    error on unix, but can return nil on windows.\n  - gong/subcmd/clean/clean.go: `cleanOneDir` is not implemented yet\n    and always returns an error.\n\nBug: 549514843\nChange-Id: I105e48acf11c8f0b6a3db9f1977b71ad0bcccb32\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311890\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "edf4fb826fe101e80484b816cce42cab65f32395",
      "tree": "08ab802ad4d206ed0700896f2338d6efabc69aaf",
      "parents": [
        "c2e02dbd60e76ebe5d932ae3baebdcbb35a42360"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 28 06:47:19 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 06:47:19 2026"
      },
      "message": "PRESUBMIT.py: unify gofmt check into golangci-lint to pin version\n\nCurrently, PRESUBMIT.py uses `gofmt` from $PATH on local developer\nmachines, which can cause inconsistent formatting checks depending on\nthe developer\u0027s installed Go toolchain version.\n\nBy enabling the `gofmt` formatter in golangci-lint (which is pinned and\nfetched from CIPD), we can ensure that formatting checks are consistent\nacross all developer environments and presubmit bots.\n\nThis change enables `gofmt` under `formatters` in .golangci.yml and\nremoves the manual gofmt execution loop from PRESUBMIT.py.\n\nBug: 549514843\nChange-Id: Ieeb8114ce3120cfe769e5f224d149773649249d5\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311889\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "c2e02dbd60e76ebe5d932ae3baebdcbb35a42360",
      "tree": "c40bd4ac2715740c2972a5146eb3981c4e4acd58",
      "parents": [
        "af71cca53c32559e92b659668fd7a787a54e24ab"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 28 06:37:25 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 06:37:25 2026"
      },
      "message": "modernize for errors.As\n\nRun\n ../.cipd_bin/golangci-lint run --fix --enable-only modernize ./...\n go fmt ./hashfs # as golangci-lint produced wrong format?\n\nChange-Id: I4de03a52cb39e695f88262a44cfe6476bc67c6aa\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311388\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "af71cca53c32559e92b659668fd7a787a54e24ab",
      "tree": "8f59f0f84ddcccc0f2b2751026f057c99d21399e",
      "parents": [
        "bfa53e8bf60660e4dab982138e31082115ca6a19"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 28 04:33:37 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 04:33:37 2026"
      },
      "message": "siso-tap for SISO_TAP_COMMAND\n\nextract siso-tap from https://crrev.com/c/7881799\nsiso-tap is needed for two phase caching\n\nBug: b/506882659\nChange-Id: I53a7258bdf128ddcce0fddff1c87eeb3aaf5b7b6\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8311147\nCommit-Queue: LaMont Jones \u003clamontjones@chromium.org\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: LaMont Jones \u003clamontjones@chromium.org\u003e\n"
    },
    {
      "commit": "bfa53e8bf60660e4dab982138e31082115ca6a19",
      "tree": "5087d2bdb1221f94db3595059b3f3569d890449d",
      "parents": [
        "43319d0b5629af46703117024d755a47b4375ab0"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 28 01:52:29 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 28 01:52:29 2026"
      },
      "message": "Update golangci-lint to v2.13.1\n\nhttps://golangci-lint.run/docs/product/changelog/#v2131\n\nBug: 549514843\nChange-Id: I3dceecaed23972b195bc59aa74b5100e8e9782fa\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8305032\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "43319d0b5629af46703117024d755a47b4375ab0",
      "tree": "34d373afee644ea194e763ede0ef668aa6c6e862",
      "parents": [
        "9b3e137da80546d810fb2b7752e7f2388951a69f"
      ],
      "author": {
        "name": "Cole Faust",
        "email": "colefaust@google.com",
        "time": "Thu Aug 27 04:38:26 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 27 04:38:26 2026"
      },
      "message": "Load authOpts lazily\n\nAuthOpts has upwards of 0.2 seconds of overhead,\nand was run at the beginning of every siso invocation.\n\nI\u0027m planning on re-invoking siso as a helper process\nonce per action, and this overhead would be multiplied\ndramatically.\n\nInstead, only create authOpts if its needed.\n\nFixes: 544818600\nTest: Presubmits\nChange-Id: I85638fcafc5b2639d2ad81f08292478c01b52f50\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8282718\nCommit-Queue: Cole Faust \u003ccolefaust@google.com\u003e\nAuto-Submit: Cole Faust \u003ccolefaust@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "9b3e137da80546d810fb2b7752e7f2388951a69f",
      "tree": "d0f37f62862693cd5b2cc229c49010be676d2a7b",
      "parents": [
        "4d0738ae75ddc94fa23e14e8edace377f136c4ec"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 27 04:30:43 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 27 04:30:43 2026"
      },
      "message": "siso: enable two phase caching for action with scandeps\n\nscandeps requires file reading for include files,\nso use two phase caching to reduce unnecessary file fetching.\n\nBug: b/550280243\nChange-Id: If8e67cdd54732bb9f24660fc1d8a4a17ad486680\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8294943\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "4d0738ae75ddc94fa23e14e8edace377f136c4ec",
      "tree": "ba84ed3732607c41c47deace006508ef713fcfd1",
      "parents": [
        "798ce8f2a7dfaab93821829b98981a1a13fe23bb"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 27 02:27:27 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 27 02:27:27 2026"
      },
      "message": "upgraded google.golang.org/grpc v1.83.1 \u003d\u003e v1.83.2\n\nhttps://github.com/grpc/grpc-go/releases/tag/v1.83.2\n\nChange-Id: If594faae71c8498a2890c731d22e311d0d465389\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8301912\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "798ce8f2a7dfaab93821829b98981a1a13fe23bb",
      "tree": "bec83d0f52d585100a836a0445a59a68ad2a81d5",
      "parents": [
        "17244db1152d10a2292fbaab02957e2bb7f39733"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 26 06:09:54 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 26 06:09:54 2026"
      },
      "message": "siso: use get-rbe-digests batch digest lookup\n\ngo/abfs-siso-intf recommends batch API get-rbe-digests\nover single item API get-rbe-digest\n\nFor getting digests in hashfs Entries, use batch API.\n\nBug: b/544495904\nChange-Id: Idd7d8c112017152a6792779933d9b87b68ac0104\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8278500\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "17244db1152d10a2292fbaab02957e2bb7f39733",
      "tree": "456a64a3d04382fba45f8f9bc7295a7a3d5c3f05",
      "parents": [
        "d451f4bdd4dae88abc48d152a351dee11ce234ec"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Wed Aug 26 01:53:06 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 26 01:53:06 2026"
      },
      "message": "siso: display running and waiting counts separately in progress summary\n\nPreviously, when there were waiting steps (waits \u003e 0), runProgress\ndisplayed the sum (waits + servs) in a red background (e.g. local:32),\nmaking it impossible to tell how many tasks were actively running versus\nqueued in wait.\n\nUpdate runProgress to format active running tasks and queued waiting\ntasks separately as servs(+waits) (e.g. local:8(+24)), where the queued\ncount is highlighted with a red background.\n\nChange-Id: I31fff89f541f6c6fa68d4660a71afc3521f04314\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8278115\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Matt Stark \u003cmsta@google.com\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Matt Stark \u003cmsta@google.com\u003e\n"
    },
    {
      "commit": "d451f4bdd4dae88abc48d152a351dee11ce234ec",
      "tree": "eed7cc575b22a8dc7befe3d2968fe93ae82d6fd0",
      "parents": [
        "a6cfb4bbf02e904a988e2d01c32deacf4e7e39f4"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Wed Aug 26 01:51:11 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 26 01:51:11 2026"
      },
      "message": "siso: improve progress display for waiting steps and prioritize running steps\n\n1. Fix frozen duration display during wait phases:\n   formatStepRow displayed servDuration(), which excludes wait time\n   (time.Since(startTime) - WaitDuration()). During wait phases such as\n   wait-local, elapsed time increased while wait duration also increased\n   in real-time, cancelling each other out and causing the displayed duration\n   to remain frozen/stagnant.\n   Fix this by introducing Step.displayDuration(), which reports the time\n   spent in the current wait phase (time.Since(waitStart)) while waiting,\n   and switches back to servDuration() during running phases.\n\n2. Unify wait phase handling and fix missing stepCacheWriteWait in\nSetPhase:\n   Define phaseWaitPairs to share wait phase definitions across wait() and\n   isWait(), avoiding definition drift. Also update stepState.SetPhase to\n   use phase.isWait(), fixing a bug where stepCacheWriteWait was missed.\n\n3. Prioritize running steps in progress UI:\n   topActives previously selected the 5 oldest active steps by startTime.\n   Since running steps that acquire semaphores finish quickly and leave\n   actives upon Done(), lower-priority waiting steps deferred by the\n   prioritized semaphore remain and accumulate as the oldest active steps,\n   filling all 5 slots and hiding active running steps from the UI.\n   Fix this by prioritizing running (non-wait) steps over waiting steps via\n   stepActiveLess when selecting and sorting topActives.\n\nBug: 519018985\nChange-Id: I76d5787c91351f0f0d97888209a6d3e1179beb0f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8281427\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "a6cfb4bbf02e904a988e2d01c32deacf4e7e39f4",
      "tree": "539ae496201873ee17b52be370f6aa92f90822bd",
      "parents": [
        "2a628344f1ce5cc4cf5e92f2b3d49f18fd67eddd"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Aug 25 05:39:24 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 25 05:39:24 2026"
      },
      "message": "siso: return context error from Handle\n\nwhen context is canceled during handler,\nhandler would return error that wraps\n\"rpc error: code \u003d Canceled desc \u003d context canceled\",\nwhich is not context.Canceled,\nso it would be printed as step error.\ne.g.\nhttps://ci.chromium.org/ui/p/chromium/builders/build/linux-chromeos-build-perf-siso/21770/overview\n```\nfailed to run handler for 8687bf1d-2fd5-48cc-b020-8d120617598d: failed to run webui_eslint_ts[@config//typescript_all.star:245:1:_webui_eslint_ts]: readfile out/6ae0-linux-chromeos-/gen/ash/webui/color_internals/resources/tsconfig_build_ts.json: rpc error: code \u003d Canceled desc \u003d context canceled\n```\n\nwhen ctx is done when handler function returned error,\nreturn error that wraps context.Canceled.\n\nChange-Id: I6a0e87f80f603f9dd41913d78efb030ad5865740\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8285321\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "2a628344f1ce5cc4cf5e92f2b3d49f18fd67eddd",
      "tree": "da511f98fd04e3b28170c29ea40443eed7cdebce",
      "parents": [
        "da6dab06f07af293f3695730868206f97c257661"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 24 05:00:40 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 24 05:00:40 2026"
      },
      "message": "siso: update version string to v1.5.30\n\nv1.5.29 is rolled out as pinned version at\ngit_revision:da6dab06f07af293f3695730868206f97c257661\nhttps://crrev.com/c/8282696\nhttp://ag/41701460\n\nBug: b/548182580\nChange-Id: I007c5b82aca1c98b41386b93526191d03819bfe1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8284420\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "da6dab06f07af293f3695730868206f97c257661",
      "tree": "066d2eeed4bb4fde610b7c855b98f425315a5c70",
      "parents": [
        "29aa3f7c0496d47b10421da1568202a4c15c4bd4"
      ],
      "author": {
        "name": "Junji Watanabe",
        "email": "jwata@google.com",
        "time": "Fri Aug 21 06:55:11 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 06:55:11 2026"
      },
      "message": "siso: disable compression in walkdir\n\nDirectory messages usually reside in Spanner inline storage (\u003c 1MiB) and\nare stored as uncompressed plaintext. Requesting compression forces\non-the-fly server CPU compression on RBE API servers and client-side\nZstd decompression before unmarshaling.\n\nRemove AcceptableCompressors from walkdir readDirIter so directory\nfetches always use uncompressed IDENTITY, achieving zero-compute\ndirectory traversals on both client and server.\n\nBug: b/544609360\nTAG\u003dagy\nCONV\u003d58c57afb-f439-4bd0-9630-d032e173c723\nChange-Id: I47c9a0e6bfe644b4e03db1f91211bfdad5678a2a\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8269538\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "29aa3f7c0496d47b10421da1568202a4c15c4bd4",
      "tree": "d131ca9388ce3860e025ed4a62e7aadab6c99fd6",
      "parents": [
        "472737ed3b64dd2c6798a287d6691e0822893907"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Fri Aug 21 05:17:20 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 05:17:20 2026"
      },
      "message": "all: migrate omitempty scalars, pointers, interfaces to omitzero\n\n`omitzero` was introduced in go1.24, and adopting it paves the way for\nadopting go1.27 encoding/json/v2\n\nPer `encoding/json` godoc: \"The v1 and v2 definitions of `omitempty` are\npractically the same for Go strings, slices, arrays, and maps. Usages of\n`omitempty` on Go bools, ints, uints, floats, pointers, and interfaces\nshould migrate to use the `omitzero` tag option, which omits a field if\nit is the zero Go value.\"\n\nBug: 549514843\nChange-Id: If76896f73e334455593af43a19b5022042e384bf\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8272809\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "472737ed3b64dd2c6798a287d6691e0822893907",
      "tree": "9ec093d516f3766e301f5f6bab2d59455a4091d8",
      "parents": [
        "22181b1977d419d0eccb5b07db61bb7dda43d799"
      ],
      "author": {
        "name": "Saatvik Sharma",
        "email": "sharmasaatvik@google.com",
        "time": "Fri Aug 21 03:49:39 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 03:49:39 2026"
      },
      "message": "siso: reclaim build label dictionary entries in updateLedger\n\nPreviously, updateLedger failed to strip evicted label bitmasks from\nsurviving shared files in hfs.fileBuildLabels. Because surviving\nshared files retained the evicted label\u0027s bit in their mask,\nsurvivingMask always included the evicted bit, preventing\nactuallyEvictedMask from reclaiming dictionary slots. This caused\ntwo major defects:\n- Evicted build labels remained in hfs.buildLabelDictionary,\n  causing them to permanently appear in ActiveBuildLabels() and\n  --list_active_labels.\n- The 64-slot build label dictionary capacity was rapidly exhausted\n  on multi-target builders, triggering continuous emergency LRU\n  evictions.\n\nThis change fixes updateLedger to:\n- Remove successfully deleted files from hfs.fileBuildLabels.\n- Clear evicted label bits from surviving shared files in\n  hfs.fileBuildLabels, while retaining bitmasks on files that failed\n  or aborted deletion so Siso continues tracking them for subsequent\n  GC runs.\n- Reclaim dictionary slots for evicted build labels that have no\n  surviving files.\n- Mark the filesystem state as dirty so updates are persisted to disk.\n\nUnit tests are added to verify updateLedger bit stripping, dictionary\nreclamation, and aborted file tracking.\n\nBug: 446692498\nChange-Id: Iaabed54dbff9e545bff06ba9a826f645504b2003\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8268173\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Saatvik Sharma \u003csharmasaatvik@google.com\u003e\n"
    },
    {
      "commit": "22181b1977d419d0eccb5b07db61bb7dda43d799",
      "tree": "6a5139d01a9f8583cae0bc9028144c26a833ed02",
      "parents": [
        "8b78b99f0502f6943e59a547796baf6ef23c38ed"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 21 01:51:56 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 01:51:56 2026"
      },
      "message": "siso: disable xattr on CartFS\n\nxattr caused build slowdown due to security.capability getxattr storm\nfrom the kernel.\ncartfs is considering disabling getxattr support completely.\nwill use GetDigests grpc call instead.\n\nBug: b/549654852\nChange-Id: Ibabaa549fc91eea25c2f43951bae2899026dc58b\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8260000\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "8b78b99f0502f6943e59a547796baf6ef23c38ed",
      "tree": "77c8c0fb0f630355b9efa330019d1b7eeb73b52e",
      "parents": [
        "1c9c88ab301748fc2b015797808a8fd1f0f7b937"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 21 01:49:43 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 01:49:43 2026"
      },
      "message": "siso: report stdout/stderr when exit by signal\n\nwhen exit by signal, ExitCode would be -1,\nhttps://pkg.go.dev/os#ProcessState.ExitCode\nbut we should report stdout/stderr to caller\nif process actually ran (and not canceled).\n\nBug: b/548892394\nChange-Id: I7f9cf1638d58f9f4deb3ab978e0412e2ef0d42e1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8274632\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "1c9c88ab301748fc2b015797808a8fd1f0f7b937",
      "tree": "c04a061076b1b816e5bb6ea300e1cd90a2565f44",
      "parents": [
        "d4055dc001f0883e0743f70503b8beccb7cd5fd7"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 21 01:41:59 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 01:41:59 2026"
      },
      "message": "siso: abfs return empty body on set-rbe-digests success\n\nabfs register 1 under /src: abfs: set digests: parse resp \"\": unexpected end of JSON input\n\nBug: b/544495904\nChange-Id: I4edee26d5408a80be13e62667df1fc1a830eb2ca\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8255961\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "d4055dc001f0883e0743f70503b8beccb7cd5fd7",
      "tree": "a55bb33008c919adae97a2883f0c9e2652205bdb",
      "parents": [
        "d4641e8b107f4fdc322e7b1ce597343540eb55c6"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 21 01:40:18 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 01:40:18 2026"
      },
      "message": "upgrade protoc from 35.0 to 36.0\n\nhttps://github.com/protocolbuffers/protobuf/releases/tag/v36.0\n\nChange-Id: Idd12a880aeba04f858336ccdecaa6ae95d52aa77\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8274451\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "d4641e8b107f4fdc322e7b1ce597343540eb55c6",
      "tree": "5ee78659814cc20fab241fecf94fd6f36d42d358",
      "parents": [
        "8e6483863640091f317db0564a242abb9aaee85d"
      ],
      "author": {
        "name": "LaMont Jones",
        "email": "lamontjones@google.com",
        "time": "Fri Aug 21 00:53:38 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 21 00:53:38 2026"
      },
      "message": "execute/spawnhelper: add --block_network namespace isolation\n\nIntroduces native Linux network namespace isolation to the siso spawn helper\nwhen requested via the `--block_action_network_access` ninja subcmd flag.\n\nWhen `blockNetwork` is true, the spawnhelper natively attaches\n`syscall.CLONE_NEWUSER | syscall.CLONE_NEWNET` to the child\u0027s\n`SysProcAttr.Cloneflags`. To retain permissions necessary for configuring\nthe isolated networking interface inside the unprivileged namespace, ambient\ncapability `CAP_NET_ADMIN` (12) is mapped into the `exec.Cmd` boundary.\nOnce active, the child `spawn-helper` tracks `-block_network` and executes\nan `SIOCSIFFLAGS` ioctl call to correctly route and bring up its own\nisolated `lo` loopback device.\n\nSpecific changes:\n- Adds `--block_action_network_access` to `siso ninja` configuration.\n- Plumbs `blockNetwork` boolean down through `StartHelper` and `Launch`.\n- Introduces `setNetworkPolicy()` implementation in `network_linux.go` to\n  bootstrap UID/GID mapping and capabilities along with `ifaceUp(\"lo\")`\n  initialization on fork.\n- Adds `network_unix_notlinux.go` stub for non-Linux compatibility.\n- Adds `spawn_network_test.go` integration tests structurally verifying\n  that the spawned containerized instance successfully rejects parent\n  dial attempts over `127.0.0.1`.\n\nBug: b/546639576\nChange-Id: I92b7d4f682821e16e6b3d8a25f2145257115b51b\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8272682\nReviewed-by: Cole Faust \u003ccolefaust@google.com\u003e\nCommit-Queue: LaMont Jones \u003clamontjones@chromium.org\u003e\n"
    },
    {
      "commit": "8e6483863640091f317db0564a242abb9aaee85d",
      "tree": "072bf180f9bc96ba4d9b6ef439a1dbe1b001405e",
      "parents": [
        "be6f4717c5f49bd633aa86c66d973e8bcadd3b8c"
      ],
      "author": {
        "name": "Junji Watanabe",
        "email": "jwata@google.com",
        "time": "Thu Aug 20 11:19:28 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 20 11:19:28 2026"
      },
      "message": "siso: lower ByteStreamReadThreshold default from 2MiB to 1MiB\n\nRBE CAS stores blobs \u003c\u003d 1MiB in Spanner inline storage as uncompressed\ndata, and offloads blobs \u003e 1MiB to GCS in BLOCK_COMPRESSED (2MiB Zstd\nblocks) format.\n\nWhen blobs between 1MiB and 2MiB are fetched with BatchReadBlobs, RBE\nfrontend servers must decompress the GCS blocks them. Lowering\nByteStreamReadThreshold to 1MiB ensures any blob \u003e 1MiB is streamed via\nByteStream.Read directly without the decompression on the API server.\n\nBug: 545803039\nTAG\u003dagy\nCONV\u003d58c57afb-f439-4bd0-9630-d032e173c723\nChange-Id: I3f6b4d97ce82fbeaac7194270bcd1093c1235f2d\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8260582\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "be6f4717c5f49bd633aa86c66d973e8bcadd3b8c",
      "tree": "ec3a38fd039b8c7ab19045fafd95a5a4ba0eeade",
      "parents": [
        "67e6ad5ae31d9b7d7eff958f1286b05111ca8e77"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 20 05:14:48 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 20 05:14:48 2026"
      },
      "message": "siso: cache *rpb.Directory for walkdir\n\nBy preserving directory protobufs across WalkDir operations,\nSiso can eliminate over 80% of directory network round-trips\nwith a memory footprint of only ~32 MB – 90 MB (less than 3%\nof Siso process RAM)\ngo/siso-walkdir-cache\n\nBug: b/506882659\nChange-Id: I1b141407ca9922f5a06a93cc0d3143333fb31be9\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8256794\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "67e6ad5ae31d9b7d7eff958f1286b05111ca8e77",
      "tree": "adf56e9196c55ea0e08dc5082d9f2b2ef7583af2",
      "parents": [
        "50245273ca9bc76792cd7b9a18b5d57478fd1bd3"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 20 01:00:37 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 20 01:00:37 2026"
      },
      "message": "siso: report tap error\n\nadd error field in tap result, so tap command could report\nerror to disable two phase cache updates, but build proceeds.\n\nBug: b/548413898\nChange-Id: Icad9580f2384beddb9b648a7e00326de7cc47818\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8257196\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "50245273ca9bc76792cd7b9a18b5d57478fd1bd3",
      "tree": "c509258e2b0b645d5aed683f665872fdc5c10d85",
      "parents": [
        "d4696ddc546dd032834b507e14deb9828180d504"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 19 21:09:24 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 19 21:09:24 2026"
      },
      "message": "siso: treat deps check errors as build errors\n\nDependency check errors (e.g. fail-on-bad-deps detecting undeclared\ndependencies, missing deps inputs, depfile parse errors, or unsandboxed\ndepfile inputs) should be classified as build errors rather than\ninfrastructure failures.\n\nDisallow local fallback for DepsError in remoteClaimFallbackIfAllowed\nsince local recompilation cannot resolve graph dependency errors.\nIn subcmd/ninja, treat TooManyFallbackError wrapping DepsError as\na build failure (infra_failure: false).\nUnify DepfileAddsUnsandboxedFileError into DepsError.\n\nChange-Id: Iddd37472d5dbe6d382369ef3d2a412a1e6ef6ce6\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8264234\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Ryosuke Miyake \u003crysk@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "d4696ddc546dd032834b507e14deb9828180d504",
      "tree": "08fd059d78dc34b5bf5649b2a1b9e6cd111aae45",
      "parents": [
        "f591ecc18669455187ee570fa5c0cabc9f2c726d"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 19 09:36:30 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 19 09:36:30 2026"
      },
      "message": "upgraded google.golang.org/grpc v1.83.0 \u003d\u003e v1.83.1\n\nhttps://github.com/grpc/grpc-go/releases/tag/v1.83.1\n\nChange-Id: I004802725e47e5c46aca6af98899d6a5c86b785f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8259969\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "f591ecc18669455187ee570fa5c0cabc9f2c726d",
      "tree": "cfd5eb035cda08782c465bc92c540d31072ffd3e",
      "parents": [
        "7d368c5c4995a017a8922e2756281fcb50abc4f3"
      ],
      "author": {
        "name": "Saatvik Sharma",
        "email": "sharmasaatvik@google.com",
        "time": "Tue Aug 18 20:24:15 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 20:24:15 2026"
      },
      "message": "siso: add --list_active_labels to fs gc\n\nThis flag allows listing all active build labels currently\ntracked in the HashFS state ledger without triggering a GC sweep.\nIt is extremely useful for developers checking which build\nlabels are keeping resources alive on disk.\n\nBug: 446692498\nChange-Id: I47452bc407f2518a59b95d9b8aaaedf968a1618e\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8263388\nReviewed-by: LaMont Jones \u003clamontjones@chromium.org\u003e\nCommit-Queue: LaMont Jones \u003clamontjones@chromium.org\u003e\n"
    },
    {
      "commit": "7d368c5c4995a017a8922e2756281fcb50abc4f3",
      "tree": "7230e95a12794a6724e9d75ece35fc2742b027ed",
      "parents": [
        "17a2d5a3675d93e77c67aa83550c18908cc96625"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Tue Aug 18 09:35:24 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 09:35:24 2026"
      },
      "message": "siso: also rotate siso_metadata.json\n\nChange-Id: I26fa4b3167c99dacc5ac915a2f76ae596138c3a8\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8266526\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "17a2d5a3675d93e77c67aa83550c18908cc96625",
      "tree": "9fdd2600248bd36bf298663e22bd91c4d1bd687a",
      "parents": [
        "25947cff6c429f40a4bcc60f000dc9fdc46c1230"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Tue Aug 18 07:03:55 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 07:03:55 2026"
      },
      "message": "siso: webui decouple from ninjabuild\n\nOther subcmds own ninjabuild.InitDir invoke, so webui should be\nconsistent. Also check for ErrManifestNotExist\n\nBug: 533258244\nChange-Id: I0e4f0a1f250a215449c87d4f6eff8e6cf1e477b3\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8265868\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "25947cff6c429f40a4bcc60f000dc9fdc46c1230",
      "tree": "12524c690f14abd3ad52c181e22b8391eeb5dbab",
      "parents": [
        "c8d2da2e6a550bf42f1babba69ca78b80b8f3405"
      ],
      "author": {
        "name": "Cole Faust",
        "email": "colefaust@google.com",
        "time": "Tue Aug 18 03:58:38 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 03:58:38 2026"
      },
      "message": "Error out on an unknown sandbox\n\nThis is a critical issue, we can\u0027t just continue\nwith a warning.\n\nBug: 475013705\nTest: Manually\nChange-Id: Ie6e2484cd085c154ec794bc3ba1a0fb69988d316\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8260958\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Cole Faust \u003ccolefaust@google.com\u003e\nCommit-Queue: Cole Faust \u003ccolefaust@google.com\u003e\n"
    },
    {
      "commit": "c8d2da2e6a550bf42f1babba69ca78b80b8f3405",
      "tree": "3a10eb97fda9e51768d45b09086e1151569a570c",
      "parents": [
        "72db2bebb8475c36db43fcc628c7d1ab0b74aca7"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Tue Aug 18 03:57:18 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 03:57:18 2026"
      },
      "message": "siso: delete a directory output before its step re-runs\n\nA rerun that emits fewer files inherited the prior run\u0027s stale members.\nWipe each directory output before local execution (after the restat\nbaseline is captured) so no stale members survive.\n\nChange-Id: Ib90080142e0e4a8a81d50a2affc54046edda5484\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/7968120\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "72db2bebb8475c36db43fcc628c7d1ab0b74aca7",
      "tree": "3a4ce3fcdee6205a8d8f6a299a9e7742e7509f90",
      "parents": [
        "a92d8bd1211ac9ad3990fbc40dcb314e1ba05a8b"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Tue Aug 18 01:39:33 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 18 01:39:33 2026"
      },
      "message": "siso: format progress duration in seconds\n\nFormat durations in the progress frame (summary and active step rows)\nin whole seconds rather than with hundredths-of-a-second precision,\nas the update ticker runs at 100ms intervals and hundredths never change.\n\nBug: 546082700\nChange-Id: I8532822a8762dd064975da41bc3958a496a00218\nTAG\u003dagy\nCONV\u003dd5aa284c-3cf1-4f18-84f1-b75660a24d19\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8255003\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "a92d8bd1211ac9ad3990fbc40dcb314e1ba05a8b",
      "tree": "61da3204a4e456182c7a2dbc065bc9730668bee4",
      "parents": [
        "c8d42cba7455dacff00ccd681ea3f386a7753469"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Aug 17 08:21:49 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 17 08:21:49 2026"
      },
      "message": "siso: update version string to v1.5.29\n\nChange-Id: I6b206a8986556c3ff26fbb98fa3cfd14f5387c28\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8260189\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "c8d42cba7455dacff00ccd681ea3f386a7753469",
      "tree": "ce1fff9f03c2bf73c905b279b2d66eab36da7fae",
      "parents": [
        "bc45e8f67ae0f37d337190ad64aa8bb440c791eb"
      ],
      "author": {
        "name": "Junji Watanabe",
        "email": "jwata@google.com",
        "time": "Mon Aug 17 03:45:15 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 17 03:45:15 2026"
      },
      "message": "hashigo: add Content-Defined Chunking (CDC) package\n\nAdd a high-throughput, pure Go Content-Defined Chunking (CDC) package\nunder `hashigo/cdc` to support sub-file CAS deduplication for large\nbuild artifacts.\n\nKey components:\n- Chunker interface \u0026 Chunk struct.\n- FastCDC 2020: Canonical FastCDC algorithm with normalized chunk size\n  distribution, dual-mask rolling Gear hash, and 2-byte unrolled loop.\n- RepMaxCDC: Local-maximum Gear hash chunker with configurable MinSize\n  and HorizonSize, using 4-way unrolled Gear hashing and dynamic boundary\n  recomputation.\n- Gear lookup tables: 256-entry 64-bit MD5-derived Gear table and shifted\n  table statically embedded for zero initialization overhead.\n- Test vector: Embedded testdata/SekienAkashita.jpg via //go:embed for\n  deterministic REv2 test vector verification against Bazel reference\n  vectors (FastCDC Seed 0/666 and RepMaxCDC default/zero horizon).\n\nBenchmarks:\n```\ngoos: linux\ngoarch: amd64\npkg: go.chromium.org/build/hashigo/cdc\ncpu: AMD EPYC 7B13\nBenchmarkFastCDC_Iterator_8MB-128       \t     148\t   8295969 ns/op\t1011.17 MB/s\t12673092 B/op\t      17 allocs/op\nBenchmarkRepMaxCDC_Iterator_8MB-128     \t      85\t  12388543 ns/op\t 677.13 MB/s\t13722687 B/op\t      26 allocs/op\nPASS\nok  \tgo.chromium.org/build/hashigo/cdc\t3.250s\n```\n\nTAG\u003dagy\nCONV\u003d79aaeb03-b41d-473b-ba45-c5b92ce86d5f\nBug: 544609360\nChange-Id: Ibbc38fa66782b78f47c0574ed17e58055bd73e41\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8254799\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "bc45e8f67ae0f37d337190ad64aa8bb440c791eb",
      "tree": "04d4bf95d377f151caa5bf0ea287fbdc7e18b922",
      "parents": [
        "fa8b2b213802366fa4af8aec5acc26647cd5360a"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 14 07:49:46 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 07:49:46 2026"
      },
      "message": "siso: add time.star\n\ntime.star provides time.Module\nhttps://pkg.go.dev/go.starlark.net@v0.0.0-20260708150628-5395d018f003/lib/time#pkg-variables\n\nChange-Id: Iec89eb25e8571eb05e2d80d10c7867adf2dbdd2f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8259370\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "fa8b2b213802366fa4af8aec5acc26647cd5360a",
      "tree": "fefc22f55907e50624ecfbc7bba0585ed54913de",
      "parents": [
        "c26a26c3de00d19790313f62d4d2bf9b4c8658a0"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 14 06:22:11 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 06:22:11 2026"
      },
      "message": "siso: update glob pattern and filegroup documentation\n\n- Link filegroup glob configuration to the glob pattern section.\n- Document that glob patterns are based on Go\u0027s path.Match and\n  explain full/relative path vs basename matching rules.\n- Clarify path_filter specific glob pattern extensions (\u0027!\u0027 and \u0027/**\u0027)\n  and fix typos in the glob pattern section.\n\nChange-Id: Ifd6792d2245d2abf04bee499c79d58518e04f7c1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8256690\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Alex Ovsienko \u003covsienko@google.com\u003e\n"
    },
    {
      "commit": "c26a26c3de00d19790313f62d4d2bf9b4c8658a0",
      "tree": "cdb561bbb1f508f5bf5390cf96f301dd3d09a8b3",
      "parents": [
        "549e291cf5168ea1b2bd7f7b793b3a7fbf09517d"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 14 06:17:27 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 06:17:27 2026"
      },
      "message": "siso: use action digest returned by ListActions\n\nIn two phase caching, if action in ListActions matches\nwith local state (match command and input root),\nuse the action digest for GetActionResult,\nrather than recalculating action digest from *execute.Cmd.\n\nBug: b/545924510\nChange-Id: If35579359a3e02ced0b97970b480e69947c0566e\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8255002\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "549e291cf5168ea1b2bd7f7b793b3a7fbf09517d",
      "tree": "729759f198ab23c4881ba6942fa72bc25b8417cb",
      "parents": [
        "99831a9867bb79a711c407151e63162816b91b85"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Aug 14 06:13:52 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 06:13:52 2026"
      },
      "message": "siso: add tests for filegroup glob matching and starlark parsing\n\nPreviously, filegroup tests only covered basic filename-only patterns,\nleaving key functionality untested:\n- The code path for patterns containing \u0027/\u0027 (which matches against the\n  full relative path using path.Match instead of just path.Base) was\n  never tested for both includes and excludes.\n- Handling of absolute root directories (for CrOS chroot), invalid\n  paths outside the workspace, and non-existent directories lacked\n  test coverage.\n- Starlark configuration parsing and Config.UpdateFilegroups in\n  star_filegroups.go had 0% test coverage.\n\nThis CL adds comprehensive test cases to address these gaps:\n- Test pattern matching with slash in includes (e.g. \"debug/*.h\") and\n  excludes (e.g. \"debug/*\").\n- Test absolute directory prefixing, invalid workspace paths, and zero-\n  match cases in TestFilegroupGlob.\n- Add TestParseFilegroups to verify parsing of implicit/explicit \u0027dir\u0027,\n  \u0027includes\u0027, \u0027excludes\u0027, and invalid configuration errors.\n- Add TestUpdateFilegroups to verify concurrent updates and handling of\n  missing directories (fs.ErrNotExist).\n\nChange-Id: I54d8237903c60645ed196a4ec9b1123deb478892\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8257189\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "99831a9867bb79a711c407151e63162816b91b85",
      "tree": "178d51145c1e51136656f1b350cace77bed1d821",
      "parents": [
        "3859b3540bac7e156e3d8975c6d89c193677c871"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 14 03:00:42 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 03:00:42 2026"
      },
      "message": "[go] update toolchain go 1.26.5 -\u003e 1.26.6\n\nhttps://groups.google.com/g/golang-announce/c/94pEornpRlI\n\n\u003d\u003d\u003d Symbol Results \u003d\u003d\u003d\n\nVulnerability #1: GO-2026-6218\n    Avoid quadratic complexity in resolvePath in net/url\n  More info: https://pkg.go.dev/vuln/GO-2026-6218\n  Standard library\n    Found in: net/url@go1.26.5\n    Fixed in: net/url@go1.26.6\n    Example traces found:\n      #1: toolsupport/abfsutil/abfs.go:193:26: abfsutil.Client.RegisterFiles calls http.Client.Do, which eventually calls url.URL.Parse\n\nVulnerability #2: GO-2026-6091\n    Fix Javascript regexp context tracking in html/template\n  More info: https://pkg.go.dev/vuln/GO-2026-6091\n  Standard library\n    Found in: html/template@go1.26.5\n    Fixed in: html/template@go1.26.6\n    Example traces found:\n      #1: build/statusz.go:98:15: build.NewStatuszServer calls http.Server.Serve, which eventually calls template.Template.Execute\n      #2: build/statusz.go:98:15: build.NewStatuszServer calls http.Server.Serve, which eventually calls template.Template.ExecuteTemplate\n\nVulnerability #3: GO-2026-6090\n    Limit handshake messages we are willing to accept post-handshake in\n    crypto/tls\n  More info: https://pkg.go.dev/vuln/GO-2026-6090\n  Standard library\n    Found in: crypto/tls@go1.26.5\n    Fixed in: crypto/tls@go1.26.6\n    Example traces found:\n      #1: reapi/proxy.go:164:24: reapi.Serve calls grpc.Server.Serve, which eventually calls tls.Conn.Handshake\n      #2: build/statusz.go:98:15: build.NewStatuszServer calls http.Server.Serve, which eventually calls tls.Conn.HandshakeContext\n      #3: hashfs/fs.go:864:22: hashfs.HashFS.ReadFile calls io.ReadFull, which eventually calls tls.Conn.Read\n      #4: o11y/trace/trace.go:593:20: trace.Tracer.Close calls bufio.Writer.Flush, which calls tls.Conn.Write\n      #5: toolsupport/abfsutil/abfs.go:193:26: abfsutil.Client.RegisterFiles calls http.Client.Do, which eventually calls tls.Dialer.DialContext\n\nVulnerability #4: GO-2026-6089\n    Apply ReadHeaderTimeout when doing unencrypted HTTP/2 check in net/http\n  More info: https://pkg.go.dev/vuln/GO-2026-6089\n  Standard library\n    Found in: net/http@go1.26.5\n    Fixed in: net/http@go1.26.6\n    Example traces found:\n      #1: webui/serve.go:568:28: webui.WebuiServer.Serve calls http.ListenAndServe\n      #2: build/statusz.go:98:15: build.NewStatuszServer calls http.Server.Serve\n\nVulnerability #5: GO-2026-5972\n    Enforce maximum recursion depth in encoding/asn1\n  More info: https://pkg.go.dev/vuln/GO-2026-5972\n  Standard library\n    Found in: encoding/asn1@go1.26.5\n    Fixed in: encoding/asn1@go1.26.6\n    Example traces found:\n      #1: auth/cred/cred.go:404:29: cred.lazyCredWrapper.Token calls oauth2.reuseTokenSource.Token, which eventually calls asn1.Unmarshal\n\nVulnerability #6: GO-2026-5026\n    Invoking failure to reject ASCII-only Punycode-encoded labels in\n    golang.org/x/net/idna\n  More info: https://pkg.go.dev/vuln/GO-2026-5026\n  Standard library\n    Found in: net/http@go1.26.5\n    Fixed in: net/http@go1.26.6\n    Example traces found:\n      #1: toolsupport/abfsutil/abfs.go:193:26: abfsutil.Client.RegisterFiles calls http.Client.Do\n      #2: auth/cred/cred.go:404:29: cred.lazyCredWrapper.Token calls oauth2.reuseTokenSource.Token, which eventually calls http.Client.PostForm\n      #3: webui/watch_handlers.go:45:24: webui.WebuiServer.handleOutdirWatch calls http.Get\n\nYour code is affected by 6 vulnerabilities from the Go standard library.\nThis scan also found 1 vulnerability in packages you import and 2\nvulnerabilities in modules you require, but your code doesn\u0027t appear to call\nthese vulnerabilities.\nUse \u0027-show verbose\u0027 for more details.\n\nChange-Id: I6e4a2aa95382335c6c046780e6441e3eeb6192a3\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8254719\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "3859b3540bac7e156e3d8975c6d89c193677c871",
      "tree": "2e0bec4fa826cd47b240779ffeb046928cc448f0",
      "parents": [
        "d7f4f8e69b203af0110a70f5f6c9418d19722466"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Fri Aug 14 00:30:01 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 14 00:30:01 2026"
      },
      "message": "siso: fetch action_list shows action_digest by default\n\nfor format\u003d\"\", print action digest for action_list\n\nbefore:\n % ~/go/bin/siso fetch -project rbe-android-ci -type action-list bc256fd3a797bee941b7cf71df1e7eb4047b90fc04a1cec4c2b80d3c9ecbce5a/157\ncommand_digest:{hash:\"cac87fd6ae77e58949e18422c88add162ffe6719bd57e70dba85d7d1cba39a7a\" size_bytes:848} input_root_digest:{hash:\"bebb012fc2efc9b5a6d1979c2ff4f9143c0950c21874ee84c1726cd0fa9d9128\" size_bytes:78} timeout:{seconds:7200} salt:\"tpc-exp.5\"\n\nafter:\n % ~/go/bin/siso fetch -project rbe-android-ci -type action-list bc256fd3a797bee941b7cf71df1e7eb4047b90fc04a1cec4c2b80d3c9ecbce5a/157\naction_digest: 4261b88a75d4644d3530756dbf161c63637d03d332614129e4510a3111572417/157\nChange-Id: I9b33add11f5a2a6aab3d8dbbce84ab7ca1d27e16\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8257109\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "d7f4f8e69b203af0110a70f5f6c9418d19722466",
      "tree": "6f7e949e5c58cda07c6424033b9e726ecba4c8d3",
      "parents": [
        "7d8bb93671f33285a85ee56c653842a0f8f36579"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 13 22:42:28 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 13 22:42:28 2026"
      },
      "message": "siso: fix data race in abfs_test\n\n--- FAIL: TestBuild_ABFS (0.25s)\n    abfs_test.go:40:\n        2026/08/13 11:18:20 INFO validated blobs in CAS count\u003d1 size\u003d\"0 MiB\" duration\u003d604.1µs hash_speed\u003d\"0.00 MiB/s\"\n        2026/08/13 11:18:20 INFO validated results in action cache count\u003d0 referenced_blobs\u003d0 duration\u003d94.94µs\n        schedule pending:1+ready:0 (node:4 edge:1)\n        build start: Ready 1 Pending 0\n        [0/1] 0.00s S python3 ../../tools/cp.py ../../foo.in gen/foo.out\n        fatal error: concurrent map writes\n\n        goroutine 513 [running]:\n        internal/runtime/maps.fatal({0x15179c2?, 0x12fc1c0?})\n        \t/usr/lib/go-1.26/src/runtime/panic.go:1181 +0x18\n        go.chromium.org/build/siso/subcmd/ninja/e2etests.TestBuild_ABFS.func3({0x15c4950, 0x300237974ff0}, 0x300237d1bb30?)\n        \t/usr/local/google/home/ukai/src/crbuild/build/siso/subcmd/ninja/e2etests/abfs_test.go:106 +0xfd\n        net/http.HandlerFunc.ServeHTTP(0x300237b14000?, {0x15c4950?, 0x300237974ff0?}, 0x7c59b6?)\n        \t/usr/lib/go-1.26/src/net/http/server.go:2286 +0x29\n        net/http.(*ServeMux).ServeHTTP(0x48aab9?, {0x15c4950, 0x300237974ff0}, 0x300237a077c0)\n        \t/usr/lib/go-1.26/src/net/http/server.go:2828 +0x1c7\n        net/http.serverHandler.ServeHTTP({0x300237a05740?}, {0x15c4950?, 0x300237974ff0?}, 0x1?)\n        \t/usr/lib/go-1.26/src/net/http/server.go:3311 +0x8e\n        net/http.(*conn).serve(0x300237c90090, {0x15c8388, 0x3002376e8240})\n        \t/usr/lib/go-1.26/src/net/http/server.go:2073 +0x650\n        created by net/http.(*Server).Serve in goroutine 193\n        \t/usr/lib/go-1.26/src/net/http/server.go:3464 +0x485\n    abfs_test.go:40: subprocess test failed: exit status 2\nFAIL\n\nChange-Id: I9bc1cff5f61f7381e06a37ef6cf4d0e9132ee2ce\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8256691\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "7d8bb93671f33285a85ee56c653842a0f8f36579",
      "tree": "f5b7fa691dfe27a6e66527f8b76117bd623c8515",
      "parents": [
        "6cfbff6f6663ddc3472c10f2e023c00db368d796"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Thu Aug 13 01:55:16 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 13 01:55:16 2026"
      },
      "message": "siso: integrate with abfs\n\ngo/abfs-siso-intf\n\nBug: b/544495904\nChange-Id: If638a5513ca96ae5b2ea0a10bbf2134324fae06f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8230239\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "6cfbff6f6663ddc3472c10f2e023c00db368d796",
      "tree": "0984b2f197a31d5be603b39ec616da73ed4a8652",
      "parents": [
        "1b75f5dea5f0c57fb22ee8f99c20ae34429e50ba"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Wed Aug 12 23:35:47 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 12 23:35:47 2026"
      },
      "message": "siso: fall back from invalid OTLP metric collectors\n\nReturn exporter construction errors without converting a nil pointer to\na non-nil interface. This lets cloud monitoring initialization fall back\nto the Cloud Monitoring exporter instead of panicking after an invalid\ncollector address.\n\nChange-Id: I1e377b2acdfde9e4189c17decd17c2b4336761e1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8201405\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "1b75f5dea5f0c57fb22ee8f99c20ae34429e50ba",
      "tree": "44bef15f739093a5241e6bf548c172c05dea1360",
      "parents": [
        "f790a8bbea18ca0cfb3cc2af4755438c20fe4d00"
      ],
      "author": {
        "name": "Ryosuke Miyake",
        "email": "rysk@google.com",
        "time": "Wed Aug 12 07:48:43 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 12 07:48:43 2026"
      },
      "message": "siso: clarify error prefixes on deps validation failures\n\nWhen checkDeps fails during post-step dependency validation, error\nmessages were previously prefixed with:\n- \"error in /showIncludes:\" for deps\u003dmsvc\n- \"error in depfile %q:\" for deps\u003dgcc\n\nPrefixing MSVC validation failures with \"error in /showIncludes:\" was\nmisleading because the compiler invocation with /showIncludes completed\nsuccessfully. The prefix falsely suggested a compiler execution failure\nrather than an undeclared dependency in the build graph.\n\nThis CL updates the error prefixes for consistency and clarity:\n- deps_msvc: \"error in MSVC deps check: %w\"\n- deps_gcc: \"error in GCC deps check with depfile %q: %w\"\n\nBug: 541969064\nChange-Id: I2aa6e2a5f42a119e2b49535728d25a0b2b82a9e5\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8246760\nCommit-Queue: Ryosuke Miyake \u003crysk@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "f790a8bbea18ca0cfb3cc2af4755438c20fe4d00",
      "tree": "0b900bce1397f02aee54f481c8b2d378405e54d3",
      "parents": [
        "e7cedea16668ce768f8914f5d5d9afab5de580b7"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 12 01:08:07 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 12 01:08:07 2026"
      },
      "message": "upgraded google.golang.org/protobuf v1.36.11 \u003d\u003e v1.36.12\n\nhttps://github.com/protocolbuffers/protobuf-go/releases/tag/v1.36.12\n\nChange-Id: I875a82b8cdd22161ca3e9228bf9fc3bafad0e49a\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8246078\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "e7cedea16668ce768f8914f5d5d9afab5de580b7",
      "tree": "d766a0a587795ea63b1faf51d83190595bf954ec",
      "parents": [
        "4491d96b609ffb32b368eea2909000c4e8a6e7e7"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 12 01:01:33 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 12 01:01:33 2026"
      },
      "message": "upgraded github.com/klauspost/compress v1.19.1 \u003d\u003e v1.19.2\n\nhttps://github.com/klauspost/compress/releases/tag/v1.19.2\n\nChange-Id: I4547f9f5353750cca3ca589c34c22cec7243f2ca\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8229166\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "4491d96b609ffb32b368eea2909000c4e8a6e7e7",
      "tree": "baf0573b2907ed7a061e2693461b3c8d0f60ab0a",
      "parents": [
        "2e645588e0c044b7a2cd255ef72ae843c124db99"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 10 11:49:19 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 10 11:49:19 2026"
      },
      "message": "kajiya: add simple chunked blob support\n\nAdd SpliceBlob and SplitBlob implementation.\nIt doesn\u0027t support in-the-fly chunking in SplitBlob.\nClient needs to upload chunk and SpliceBlob to\nconstruct large blobs, so other client can use SplitBlob\nto retrieve chunks of the large blob.\n\nBug: b/542773532\nChange-Id: I9d283c5887cffad389930da26dd282ba228bfb55\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210899\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "2e645588e0c044b7a2cd255ef72ae843c124db99",
      "tree": "2f784fa4da12d2f4b9aa4abab919e93e710e97a4",
      "parents": [
        "a1d78d4b694c068c06a4144442def9639e63bf1b"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 10 09:03:28 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 10 09:03:28 2026"
      },
      "message": "siso: move build.LocalCache to reapi.LocalCache\n\nLocalCache will be used for chunking support,\nso it should be in reapi, not in build.\n\nBug: b/542773532\nChange-Id: I3f032aad582249e8614f2d46ee731fbd7c20c800\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8223666\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "a1d78d4b694c068c06a4144442def9639e63bf1b",
      "tree": "09f58801044adf10eae9cf95225878035b16976e",
      "parents": [
        "3bf9b0568f5b32b83f9a14dfffd35035b63189d7"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Mon Aug 10 02:41:29 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 10 02:41:29 2026"
      },
      "message": "kajiya: advertise supported_node_properties in capabilities\n\nGetCapabilities now lists the NodeProperties names the executor\nhonours (MTime, UnixMode). We already parse them on inputs and\nround-trip them on outputs; advertising the names tells clients they\ncan rely on that.\n\nChange-Id: I0cd3988d694dc431b59a223f6899c3c68df25e02\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/7806077\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "3bf9b0568f5b32b83f9a14dfffd35035b63189d7",
      "tree": "4eba22850967b40454a4c0246c20761071c35d92",
      "parents": [
        "4fa4d8007478131e5fb582d686603fc916c41a2c"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 10 01:56:34 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 10 01:56:34 2026"
      },
      "message": "siso: update version string to v1.5.28\n\nv1.5.27 is rolled out as pinned version at\ngit_revision:1b1109fc6f5e177a439a195b87931224efc7a007\nhttps://crrev.com/c/8231119\nhttp://ag/41439524\n\nBug: b/541975863\nChange-Id: Iaca67a4fc686c7a70d741db396a79b9e44e92659\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8224326\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n"
    },
    {
      "commit": "4fa4d8007478131e5fb582d686603fc916c41a2c",
      "tree": "c6e4201896047a043d127a4e68a610f98bad1e45",
      "parents": [
        "da05a3df708c0a0816c2e3c7a920899807bb3e00"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:27:20 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:27:20 2026"
      },
      "message": "Bump deps in bench/go.mod\n\nChange-Id: I3235d146bacd6217613498ae47ed39b7b3e51711\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210987\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "da05a3df708c0a0816c2e3c7a920899807bb3e00",
      "tree": "31cb4cce8f1386cea4e5e1f5eafbe91d2f7e028d",
      "parents": [
        "1b1109fc6f5e177a439a195b87931224efc7a007"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:23:30 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:23:30 2026"
      },
      "message": "Bump deps in kzipinfo/go.mod\n\nChange-Id: I81e43e1af55b3233122a6afb13b0d2d2b4b327bf\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210984\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "1b1109fc6f5e177a439a195b87931224efc7a007",
      "tree": "6c32d9c9a1cac6c6bef55b93f9e508f3f7511ba0",
      "parents": [
        "5482690de8df973b37943cfb2348ab6507b77f0a"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:23:14 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:23:14 2026"
      },
      "message": "siso: forward the caller\u0027s trace context through the proxy\n\nThe proxy forwarded only the REAPI RequestMetadata upstream, so a build\nrunning through `siso proxy` lost its trace context: siso\u0027s client\nwrites grpc-trace-bin, the proxy dropped it, and RBE saw the RPC with no\nparent span. The server-side spans were orphaned instead of nesting\nunder the step that issued the RPC, which is what the same build gets\nwhen it talks to RBE directly.\n\nForward grpc-trace-bin alongside the RequestMetadata. Each upstream call\nbelongs to exactly one incoming RPC, so forwarding the caller\u0027s value\ndoes not combine trace contexts.\n\nThis relies on the proxy not setting Option.TracerProvider. If it did,\nits own client would write grpc-trace-bin via the tracing dial option\nand the forwarded value would be a duplicate.\n\nChange-Id: I3aedd2c0759a0021aa473cb8a295d03d92712070\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8130017\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "5482690de8df973b37943cfb2348ab6507b77f0a",
      "tree": "595a1d3840b066451766aa558e95753a17b93ac8",
      "parents": [
        "3ccf7e6c42ff2c432b93277193fd6004c57a56f5"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:21:45 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:21:45 2026"
      },
      "message": "Bump deps in siso/go.mod\n\nChange-Id: I9316a7b43d85e69bed9e1e879c40b344ae1b2145\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210983\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "3ccf7e6c42ff2c432b93277193fd6004c57a56f5",
      "tree": "f221474c4e81f3c4d66bffe5049037e7de5480af",
      "parents": [
        "d77456f30ba4ffae6d960f59c028f7df3c7f6692"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:20:55 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:20:55 2026"
      },
      "message": "Bump deps in kajiya/go.mod\n\nChange-Id: Idd561d8e6fc0f585902922d717a28e3be3c87d6f\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210982\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "d77456f30ba4ffae6d960f59c028f7df3c7f6692",
      "tree": "f1a0739949a7059c72f67491cd58be20ed7bc190",
      "parents": [
        "09525731e25093d58e9c0e57007f6bdb87254ed8"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 07:20:49 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 07:20:49 2026"
      },
      "message": "Bump deps in hashigo/go.mod\n\nChange-Id: I69516108dd4f9726142935ea88e7b80df100eea4\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210981\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "09525731e25093d58e9c0e57007f6bdb87254ed8",
      "tree": "bf534a2656a5712b5825ea49c08fd15cf555d970",
      "parents": [
        "e91a16581e0c30c71a6771328fe7da3ffdf87f7e"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 06:36:56 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 06:36:56 2026"
      },
      "message": "siso: record gRPC client metrics\n\nCloud Trace disables gtransport\u0027s default OpenTelemetry handler so\ngrpc-native tracing is the sole writer of grpc-trace-bin. That handler\nwas also the only source of the per-RPC client metrics. Metric volume in\nCloud Monitoring for rbe-chromium-untrusted fell by 99.5% when v1.5.20\nrolled out to CI because the LUCI builders enable Cloud Trace.\n\nPass the Cloud Monitoring meter provider and Cloud Trace tracer provider\nto REAPI explicitly. Use grpc-go\u0027s native OpenTelemetry dial option when\neither provider is configured, and disable the gtransport handler to\navoid duplicate rpc.client.* metrics. Monitored connections now emit\ngrpc.client.* metrics whether tracing is enabled or not while preserving\ngrpc-trace-bin propagation.\n\nExplicitly select the five supported grpc-go client metrics so\ndependency upgrades cannot silently expand the fleet-visible descriptor\nset.\n\nPass grpc.StaticMethod from the pinned ByteStream helpers and\nlong-running GetOperation client. Without it, dominant Read and Write\ntraffic and timeout status lookups are recorded with\ngrpc.method\u003d\"other\".\n\nCover traced and untraced monitored connections, the complete\nmetric-name set, a real server attempt, and StaticMethod forwarding from\neach old-codegen call path.\n\nChange-Id: I8f3a1c9276cf4f4be14e33ac2f0932be14d5a7c1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8130180\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "e91a16581e0c30c71a6771328fe7da3ffdf87f7e",
      "tree": "d67e95d7d13347bc2fe167b0107db8ed74b5960e",
      "parents": [
        "bb129b0c68747d113ba463986a065265b5d81190"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 06:26:31 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 06:26:31 2026"
      },
      "message": "Bump deps in gong/go.mod\n\nChange-Id: If3a611cef8ef53cb8d0a5bfb7c0aebc5cf91b832\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210986\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "bb129b0c68747d113ba463986a065265b5d81190",
      "tree": "6a8e29c292870f0d06ef84ff83fc1a42341cdb4d",
      "parents": [
        "7f9a110e92d977f8c185489f586c8d67bf71ea84"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Fri Aug 07 06:26:25 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 06:26:25 2026"
      },
      "message": "Bump deps in infra/subtestanalyzer/go.mod\n\nChange-Id: I456b398c50d1faac461bd28b7cb68b947bda5489\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210985\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "7f9a110e92d977f8c185489f586c8d67bf71ea84",
      "tree": "34c87ce411908af9054da855db4ee3e268fbfbef",
      "parents": [
        "449733b5c3cc7177b0b9f4cfe63d6670335baef2"
      ],
      "author": {
        "name": "Saatvik Sharma",
        "email": "sharmasaatvik@google.com",
        "time": "Fri Aug 07 02:06:28 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Fri Aug 07 02:06:28 2026"
      },
      "message": "siso: Introduce \u0027siso fs gc\u0027 subcommand for target build label cleanup\n\nAdds the `siso fs gc` CLI subcommand to enable mathematical build label\ngarbage collection against the HashFS `.siso_fs_state` ledger.\n\nThis tool allows developers and continuous integration workers to sweep\norphaned or evicted build target artifacts from disk while preserving\nshared libraries and header caches.\n\nKey capabilities:\n- Supports positional regex target eviction (`siso fs gc \"target-.*\"`)\n- Supports LRU build cache bounding (`siso fs gc --retain_last_x\u003d3`)\n- Protects shared files using bitwise intersection (`(fileMask \u0026 keepMask) \u003d\u003d 0`)\n- Includes `--dry_run` flag for non-destructive simulation and reporting\n- Exports structured metrics to `siso_metrics.json` for telemetry pipelines\n\nAlso introduces an E2E integration test suite under\n`subcmd/ninja/e2etests/fs_gc_test.go` and wires `--build_label`\ninto `setupBuild` in `utils_test.go`.\n\nThis is the 4th CL for go/targeted-build-cleaning.\n\nBUG\u003d446692498\nTAG\u003dagy\nChange-Id: I096d9ed17b0163142212f96b7d9d40f497abe4ad\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8183971\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Saatvik Sharma \u003csharmasaatvik@google.com\u003e\n"
    },
    {
      "commit": "449733b5c3cc7177b0b9f4cfe63d6670335baef2",
      "tree": "e7076a1320e9c86db20ede2cfbb304ba3184a604",
      "parents": [
        "1e5b10d80626f5c1aa429cb3b8ddff9c7a43afb7"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Aug 06 10:21:42 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 06 10:21:42 2026"
      },
      "message": "siso: webui adopt native CSS color-scheme, prefers-contrast\n\nTake advantage of `color-scheme` by combining the Material 3 light/dark\npairs of stylesheets into `light-dark()` pairs, which drops from 6 -\u003e 3.\n\nNext, take advantage of `prefers-contrast`. The existing medium and high\ncontrast CSS generated by the Material Theme Builder weren\u0027t being wired\nup, and the web platform doesn\u0027t provide a slider for how much \"more\"\ncontrast.\n\nIn that case, we may as well be safe and pick the highest contrast\npalette as the one to apply with `prefers-contrast: more`, and drop the\nmedium contrast palette. This doesn\u0027t require any custom JavaScript to\napply; the user\u0027s OS/browser native contrast settings are automatically\nrespected now.\n\nThe high contrast palette isn\u0027t extreme anyway, it dials up the\nforeground colors but background colors remain.\n\nSo in total we drop from 6 -\u003e 3 -\u003e finally 1 theme stylesheet.\n\nDownside of doing this is that it\u0027s no longer possible to drop in\nMaterial Theme Builder stylesheets, but I\u0027d argue that needs to happen\nso rarely that the reduction in boilerplate code and automatic adoption\nof light/dark mode + high contrast is much more worthwhile.\n\nChange-Id: I3ded7516d336e93d6767c210623c7bca81f56fb5\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8211659\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "1e5b10d80626f5c1aa429cb3b8ddff9c7a43afb7",
      "tree": "2ac49ca743a6c1e7e5ab803aa9b22ad1476ed745",
      "parents": [
        "7ad1c9130360e017b34a2187f96623124f05755d"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Aug 06 08:03:35 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 06 08:03:35 2026"
      },
      "message": "siso: webui adopt go1.25 http.CrossOriginProtection\n\nBug: 533258244\nChange-Id: I9e5e0bf3a5f09b38ca54c5e73a4a70109eaaf1e4\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8210279\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "7ad1c9130360e017b34a2187f96623124f05755d",
      "tree": "97a8e558e9700a8ca175ec68b662b5dc25a7135a",
      "parents": [
        "dfd4f6d02d79b8ec32a77438d6c3ba0ec4f4784e"
      ],
      "author": {
        "name": "Junji Watanabe",
        "email": "jwata@google.com",
        "time": "Thu Aug 06 06:39:53 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 06 06:39:53 2026"
      },
      "message": "siso: populate outputs and output_dirs in StepMetric at step completion\n\nOutput directories added by Starlark handlers were missing from\nsiso_metrics.json because StepMetric.Outputs was only populated\nduring step init from static StepDef outputs before handlers ran.\n\nThis change defers output resolution to StepMetric.done, capturing\nboth file outputs (step.cmd.Outputs) and directory outputs\n(step.cmd.OutputDirs with trailing \u0027/\u0027) populated during step\nand handler execution.\n\nTAG\u003dagy\nCONV\u003df21d239a-05f1-4489-be78-67a9a1894823\n\nChange-Id: I7f916b4bd9dfbefd5441c4e534f8089ace4c2c18\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8203964\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "dfd4f6d02d79b8ec32a77438d6c3ba0ec4f4784e",
      "tree": "a2206653de3b75764207fd0c40e3474d13a9cefb",
      "parents": [
        "433c3d0495c55f5767e72edbf3845aba99c4f218"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Aug 06 06:04:58 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 06 06:04:58 2026"
      },
      "message": "siso: decouple build package from o11y/resultstore\n\nBug: 542011953\nChange-Id: I5e9424d0412994d549baefca62a0e7f96a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8190936\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "433c3d0495c55f5767e72edbf3845aba99c4f218",
      "tree": "8b7f097ba2e896cd610148d6ff845aced5f0ea7d",
      "parents": [
        "83c0fdb6474ef703cb714e9351e03f498ba8eb6f"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Aug 06 03:31:11 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Aug 06 03:31:11 2026"
      },
      "message": "siso: enable subtest name linter on reapi/merkletree/\n\nBug: b/539831698\nChange-Id: Ib8fd585e141b98a7daf788356c8706a26a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8207542\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "83c0fdb6474ef703cb714e9351e03f498ba8eb6f",
      "tree": "90dcc67527eac7ccf614806584b3863361877722",
      "parents": [
        "7d621b551da7ab59fb00ad77cba3fbf4e06e6871"
      ],
      "author": {
        "name": "LaMont Jones",
        "email": "lamontjones@google.com",
        "time": "Wed Aug 05 18:05:38 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 18:05:38 2026"
      },
      "message": "siso: export more detailed completion statuses\n\nUpdate reclientutil CompletionStatus and Siso build stats to\ndifferentiate completion statuses:\n- STATUS_CACHE_HIT_EARLY: actions completed due to early cache hit\n  before any race\n- STATUS_CACHE_HIT_LATE: actions where racing remote execution hit cache\n  after race started\n- STATUS_CACHE_HIT: total actions completed via cache hit (early or\n  late)\n- STATUS_RACING_REMOTE: actions where remote won (including\n  STATUS_CACHE_HIT_LATE)\n- STATUS_RACING_LOCAL: actions where local won\n\nAlso fix float division for build_cache_hit_ratio in RBEBuildMetrics.\n\nTAG\u003dagy\nCONV\u003d3a855756-465c-4db8-958f-89d1845363bd\n\nChange-Id: I6533086b41a1f9b32fadd46ab3bc995a8a060386\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8177225\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nReviewed-by: Alex Ovsienko \u003covsienko@google.com\u003e\nCommit-Queue: LaMont Jones \u003clamontjones@chromium.org\u003e\n"
    },
    {
      "commit": "7d621b551da7ab59fb00ad77cba3fbf4e06e6871",
      "tree": "5bebba4cb02acc398ec83082782afe3711953063",
      "parents": [
        "b30ffbc77a6db786dbaf03db41d202f16fe21151"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Wed Aug 05 08:03:30 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 08:03:30 2026"
      },
      "message": "siso: webui refactor start time into invocation interface\n\nTook the opportunity to also visually indicate when a build time is\ninferred, since now with siso_metadata.json i.e. InvocationInfo we can\nactually know the true build start time\n\nAlso fix regression where we accidentally applied siso_metadata.json to\nall builds even if the build didn\u0027t have such a corresponding file.\n\nBug: b/533258244\nChange-Id: Iab10046b81d8e77baaf264a99741a5b22c9be3f7\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8201464\nReviewed-by: Alex Ovsienko \u003covsienko@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "b30ffbc77a6db786dbaf03db41d202f16fe21151",
      "tree": "01f34d37170295b0719a08ada2c2f4e6cfbe1358",
      "parents": [
        "d482677448ad135b745e8b27a725b929430a35d6"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Wed Aug 05 05:58:31 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 05:58:31 2026"
      },
      "message": "siso: enable subtest name linter on toolsupport/nsjailutil/\n\nBug: b/539831698\nChange-Id: I4dabed91895d9ac568eee8fd741862616a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8200924\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "d482677448ad135b745e8b27a725b929430a35d6",
      "tree": "fce7de08e13e7931fb509a3fea90e57c92380c08",
      "parents": [
        "48de3827c40f5f28c08b6d030d1e96b2e862c0dd"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 05 05:12:41 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 05:12:41 2026"
      },
      "message": "siso: increase GetActionResultTimeout to 2 sec\n\nBug: b/540566219\nChange-Id: Ia2019a02d29a9900936b55e175bd2cf3a3e33644\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8200604\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Junji Watanabe \u003cjwata@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "48de3827c40f5f28c08b6d030d1e96b2e862c0dd",
      "tree": "569689d0d12cb5c9db0f57283390476a614498ce",
      "parents": [
        "37d5865019489e6419134801baa234732fb7fec0"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 05 04:00:25 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 04:00:25 2026"
      },
      "message": "siso: handle tailing-/ path as directory target.\n\n*execute.Cmd distinguishes Outputs and OutputDirs,\nbut not distinguish them for Inptus, but use tailing-/ as directory\ntarget.\n\nuse tailing-/ path as outputs in starlark API.\n\nBug: b/511878434\nChange-Id: I3097e37ab594d08c9c50a3cfe66f6e792a130fc6\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8195084\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "37d5865019489e6419134801baa234732fb7fec0",
      "tree": "4d110040ccbf9383b6078451e805b4a58a429d66",
      "parents": [
        "96f9dae63a98cf4f83527feb75f7e4c63fb8fe83"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Wed Aug 05 02:17:48 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Wed Aug 05 02:17:48 2026"
      },
      "message": "siso: ignore dep path that failed to make relative to workspace root\n\nBug: b/542224263\nChange-Id: Ic28836bebfaf6c7b6ec50f334306bfaab0498ce5\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8190575\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "96f9dae63a98cf4f83527feb75f7e4c63fb8fe83",
      "tree": "ffe9afa47ce3b6c628e62760e0051362961bd1b5",
      "parents": [
        "6ca009bbe3cd25afed6e7c3d7108adfeaa7a4eef"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 11:06:24 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 11:06:24 2026"
      },
      "message": "siso: remove a stale non-directory ancestor when flush creates parent dirs\n\nA previous build can leave a regular file at a path where the current\nbuild needs a directory. Flush already handles this type mismatch for\nthe flushed path itself, but not for its ancestors. When a member is\nflushed on its own - the step producing its parent directory was\nskipped this build, and neither ClearStaleFileForDirOutput nor\nensureActionOutputDirs touched the path at plan time - MkdirAll\nfailed with ENOTDIR against the stale file.\n\nReplace the bare MkdirAll in flushRegularFile and flushDir with\nmkdirAllForFlush. On failure it walks up to the first existing path\ncomponent, removes it if it is not a directory, and retries. The\nrecorded entry below the path proves that every ancestor must be a\ndirectory, and at most one non-directory can exist on the path, so a\nsingle removal is enough.\n\nSymlinks need care. A symlink that resolves to a directory is a valid\npath component and is kept. A symlink is removed only on positive\nproof that it is wrong: it resolves to a non-directory, or it is\ndangling. If its target cannot be statted at all (EACCES, EIO), the\nflush fails instead of removing what may be an intentional symlink.\n\nThe removal and retry run under a mutex. Flush materializes outputs\nconcurrently, and two outputs below the same stale file must not both\nact on their own Lstat: one would recreate the directory and write\nits output while the other still sees the stale file, and its\nRemoveAll would then delete the sibling\u0027s fresh output.\n\nChange-Id: I3c6f4641e4b185e9d0ff87db8c740420ab97dab6\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037826\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\nReviewed-by: Neri Marschik \u003cnerima@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "6ca009bbe3cd25afed6e7c3d7108adfeaa7a4eef",
      "tree": "6bf8a5538ee5110e05fa095b6686a85963dc42a5",
      "parents": [
        "e6fc23d84c88f0fe2bb415735ad900fb2ac23785"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 11:05:58 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 11:05:58 2026"
      },
      "message": "siso: require a regular file in flushRegularFile\u0027s already-exist check\n\nBefore writing a file, flushRegularFile checks whether the correct\nfile is already on disk. matchesFileInfo compared only size and\nmtime, so a stale symlink could pass the check by accident: a\nsymlink\u0027s lstat size is the length of its target string, and on\nfilesystems with coarse mtimes the timestamps can collide too. Flush\nthen left a symlink at a path where a regular file belongs. The TODO\nin the code already pointed at the missing mode check.\n\nRequire fi.Mode().IsRegular(). A non-regular entry now falls through\nto flushRemoveReason, which removes it before the write.\n\nChange-Id: Ia575ce1e2b58036a79fdfcfa498bfce6c1d968fb\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037825\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "e6fc23d84c88f0fe2bb415735ad900fb2ac23785",
      "tree": "c864916a26ad03aa2d69eebdc458a0913886c4be",
      "parents": [
        "f089653cca799beaf5362b3e4cf858f122b4e265"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 10:45:11 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 10:45:11 2026"
      },
      "message": "siso: keep the hashfs entry when RemoveAll fails on disk\n\nWhen clean-dead deletes a dead output and the disk removal fails, for\nexample due to a transient sharing violation on Windows, RemoveAll\nstill replaced the in-memory entry with one whose err field holds the\nremoval error. State() skips entries with a non-nil err, so the build\nsaved its state without that path. The next build derives\nprevGenerated only from loaded state entries, so the file never\nappeared in PreviouslyGeneratedFiles again and clean-dead never\nretried the removal. One transient error was enough to exempt a dead\nfile from cleanup forever.\n\nA failed RemoveAll always leaves the root path on disk. So in that\ncase, keep the recorded entry (still invalidating the dir-input\ncache) and store the not-exist entry only when the disk removal\nsucceeded. The kept root entry keeps its cmdhash, so the next build\u0027s\nclean-dead retries the removal.\n\nChildren need the opposite treatment: a failed RemoveAll may already\nhave deleted some of them, and those must not stay recorded. CleanDead\nonly warns and continues into the build, and a stale child entry can\nsatisfy Stat for a path that is gone from disk. If the manifest\nmeanwhile turned the directory output into a direct member output, an\nunchanged command would be judged up to date and the build could\nfinish with the output missing. So drop every recorded child that\nLstat proves absent, and keep everything that is still on disk.\n\nChange-Id: Ib88d5a5dd9654773a3ff554d9023af6bbb73c691\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037824\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "f089653cca799beaf5362b3e4cf858f122b4e265",
      "tree": "78a3d814139f1939f53a10916a8bd39be89517b6",
      "parents": [
        "c9612442d1e7ae30becd513873a1cdeb6656d010"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 10:44:38 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 10:44:38 2026"
      },
      "message": "siso: fold the member-order flush test into the stale-non-dir table\n\nTestFlush_MemberListedBeforeDirTarget repeated about 60 lines of\nTestFlush_PopulatedDirReplacesStaleNonDir. The only real difference\nwas the order of the paths in the flush list. Make that order a table\ndimension (dirTarget/membersFirst, crossed with file/symlink), so the\nscenario becomes one table row instead of a second test body that\nwould drift out of sync over time.\n\nAlso use the got/want pattern for the value comparison in\nTestOpenReadDeepPath.\n\nChange-Id: I23571c1c486c156f1611db38b7497c483d43205b\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037823\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "c9612442d1e7ae30becd513873a1cdeb6656d010",
      "tree": "30c0f19a5fff9e636c0b700460f02069832d6575",
      "parents": [
        "cde8dae360b70df4c69d4a63f5091d656620bdc4"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 10:43:55 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 10:43:55 2026"
      },
      "message": "siso: wait for running member flushes when a directory flush fails\n\nFlush writes a directory\u0027s member files in parallel goroutines. When\nthe synchronous directory branch failed, Flush returned the error\nright away while member goroutines started in earlier loop iterations\nwere still running. The caller could then see the failure and react\nto it while files were still being written or renamed behind its\nback.\n\nCancel the flush context and wait for the errgroup before returning\nthe directory error.\n\nChange-Id: Ice0c1b8679367e222627a4f6d5427ba6fb4649d1\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037822\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\n"
    },
    {
      "commit": "cde8dae360b70df4c69d4a63f5091d656620bdc4",
      "tree": "02c118885f2f546a083f06ebef09eb0253fee507",
      "parents": [
        "ae45e8bede75f481ffd148f455b253084283cc2d"
      ],
      "author": {
        "name": "Philipp Wollermann",
        "email": "philwo@google.com",
        "time": "Tue Aug 04 10:43:48 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 10:43:48 2026"
      },
      "message": "siso: restore mtimes only for directories Flush actually wrote\n\nWhen Flush writes a directory\u0027s members to disk, those writes bump the\ndirectory\u0027s on-disk mtime. Flush therefore sets the directory\u0027s mtime\nback to the recorded value afterwards, so that the next build sees the\ndirectory as unchanged.\n\nThe bug: Flush queued a directory for this mtime restore as soon as it\nsaw the entry, before the lready check that decides whether there is\nanything to write at all. So even directories that Flush then skipped\ngot their mtime rewritten. That is wrong in two ways:\n\n- Flush also runs on inputs (prepareLocalInputs), so source\n  directories pass through it. If the user changed such a directory\n  during the build, for example by adding a file, the restore reset\n  its mtime to the old recorded value. updateDir then saw no change,\n  and the new file stayed invisible to ReadDir and Glob.\n- If the path on disk had changed type in the meantime, Flush rewrote\n  the mtime of whatever now sits at that path, for example a user\u0027s\n  source file.\n\nNow Flush queues a directory for the mtime restore only when flushDir\nactually wrote it, plus one more case: generated directories (cmdhash\nset) that are already local-ready. For those, a trailing-slash flush\ncan still write missing members beneath them, which bumps the on-disk\nmtime. Without the restore the saved state no longer matches disk, and\nthe next build sees entryBeforeLocal and re-runs the producing step\nfor nothing. Source directories (no cmdhash) never get their mtime\nrewritten, so a user\u0027s mid-build change stays visible; see\nTestFlush_LocalReadyDirMtimeNotRestored.\n\nChange-Id: If04f07c6a5ce04eda3b316107dfbaa6440dc933c\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8037821\nCommit-Queue: Neri Marschik \u003cnerima@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nAuto-Submit: Philipp Wollermann \u003cphilwo@google.com\u003e\n"
    },
    {
      "commit": "ae45e8bede75f481ffd148f455b253084283cc2d",
      "tree": "e4a161edc0e3d05366cfe4b3b4686b32fad1a611",
      "parents": [
        "3dc3f0205fe4285f33b4fa6b49d0d0de35cd8d4d"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Tue Aug 04 05:07:53 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 05:07:53 2026"
      },
      "message": "siso: reapi.UpdateProjectID returns original projectID if not RBE\n\nIn android soong, siso runs in nsjail and reapi address is\nnot RBE, but unix domain socket to siso proxy.\nIn this case reapi.UpdateProjectID returned empty,\nso it would disable cloud profiler etc.\n\nJust return original projectID (given by -project flag)\nwhen reapi address it not RBE.\n\nChange-Id: Ie7b46e8a9eaab798cce1e98a8eee4c9dbd513909\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8192135\nReviewed-by: Richard Wang \u003crichardwa@google.com\u003e\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "3dc3f0205fe4285f33b4fa6b49d0d0de35cd8d4d",
      "tree": "bffbbb685039a90d00a4dfd63d9634192b290bdd",
      "parents": [
        "d6a79eb9d48d4e222776eefd8c9ccb83798a052b"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Tue Aug 04 04:57:07 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 04:57:07 2026"
      },
      "message": "siso: fix resultstoreUploader nil regression\n\ncf https://crrev.com/c/7317097\n\nBug: b/329564182\nChange-Id: I93dd5a6e2f7933c79f9136787f9591236a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8191576\nReviewed-by: Fumitoshi Ukai \u003cukai@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "d6a79eb9d48d4e222776eefd8c9ccb83798a052b",
      "tree": "b401fad65c34cc2ec98008ce996449e3848f50b4",
      "parents": [
        "93a9ffb5b42957f52e4f34e802d8f860a1da8a2a"
      ],
      "author": {
        "name": "Ryosuke Miyake",
        "email": "rysk@google.com",
        "time": "Tue Aug 04 04:02:09 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Tue Aug 04 04:02:09 2026"
      },
      "message": "siso: remove obsolete /showincludes basename matching in DepsAfterRun\n\nThis workaround was originally implemented for an upstream clang-cl issue where /showincludes failed to report canonical header paths (https://github.com/llvm/llvm-project/issues/58726, b/294927170).\n\nBecause the LLVM issue has been fixed upstream, this basename matching loop is no longer necessary and can be cleanly removed.\n\nRemoving this also resolves false-positive missing dependency failures on Windows when SISO_EXPERIMENTS\u003dfail-on-bad-deps is enabled, as scandeps inputs will no longer collide with compiler dependency tracking via basename matching.\n\nBug: 541968721, 539781437\nChange-Id: I77703853e232cbf43fc132a9dd8d2d6300d3855e\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8176008\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Ryosuke Miyake \u003crysk@google.com\u003e\n"
    },
    {
      "commit": "93a9ffb5b42957f52e4f34e802d8f860a1da8a2a",
      "tree": "3ad7f407d57237cb49526836ab87399f69b8f260",
      "parents": [
        "6127f362a97cffb8d4c5c2d8b30a02b20cd03fda"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 03 15:02:22 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 03 15:02:22 2026"
      },
      "message": "siso: tap expands symlink for reads\n\nwhen tap returns symlink as reads, siso should use\nsymlink target as inputs too\n\nBug: b/506882659\nChange-Id: Ie1dd0c99b968cb13b7dda35a2fdf68ce0c43812a\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8185357\nAuto-Submit: Fumitoshi Ukai \u003cukai@google.com\u003e\nReviewed-by: Yuke Liao \u003cliaoyuke@google.com\u003e\nCommit-Queue: Yuke Liao \u003cliaoyuke@google.com\u003e\n"
    },
    {
      "commit": "6127f362a97cffb8d4c5c2d8b30a02b20cd03fda",
      "tree": "e5b2cf155166a2ac6e4856e7db1f6b75c178b350",
      "parents": [
        "a99cd09a624960213906cade22d68d542fb7b810"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Mon Aug 03 08:03:34 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 03 08:03:34 2026"
      },
      "message": "siso: o11y/pprof split concrete uploader out of package\n\nwant to allow stubbing or dropping pprof\n\nBypass-Check-License: Moved file\nBug: 542011953\nChange-Id: Ida97a9b3852c1e0f730054ce6997ea106a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8180300\nReviewed-by: Alex Ovsienko \u003covsienko@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    },
    {
      "commit": "a99cd09a624960213906cade22d68d542fb7b810",
      "tree": "6d7d15b294f73ffd9e40ff4b3cd38219b249cd26",
      "parents": [
        "cb6ccf7181532ce7ca0d533152a68747d1a885c3"
      ],
      "author": {
        "name": "Fumitoshi Ukai",
        "email": "ukai@google.com",
        "time": "Mon Aug 03 05:03:45 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Mon Aug 03 05:03:45 2026"
      },
      "message": "siso: update version string to v1.5.27\n\nv1.5.26 is rolled out as pinned version at\ngit_revision:cb6ccf7181532ce7ca0d533152a68747d1a885c3\nhttps://crrev.com/c/8181729\nhttp://ag/40958995\n\nBug: b/539417887\nChange-Id: Ic3e899a2efc62d21d7799c2ba636fd6080e1f789\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8182447\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\nCommit-Queue: Fumitoshi Ukai \u003cukai@google.com\u003e\n"
    },
    {
      "commit": "cb6ccf7181532ce7ca0d533152a68747d1a885c3",
      "tree": "446c701ec395830a9bc75901f1d0a021aa3c3454",
      "parents": [
        "669e903aa8b1ec742937459224fe1b556ec0185d"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Jul 30 10:08:52 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Jul 30 10:08:52 2026"
      },
      "message": "siso: fix StepMetric.RunTime to include postproc for remoteexec\n\nFor local exec and remote cache, RunTime already included postproc.\n\nHence for remote exec to not include it was inconsistent, and also goes\nagainst the intention of RunTime being \"the total duration of the action\nexecution, including overhead such as uploading / downloading files\".\n\nA previous CL introduced a `-run` span for remoteexec, but it would have\nto overlap the last attempt + postproc.\nRather than trying to contort the last attempt to be parented to the\n`-run` span, let all the `-attempt` spans be siblings, have another\n`-postproc` sibling span.\n\nThen, the responsibility for deciding `-run` is pushed to where RunTime\nis projected.\n\nBug: b/520207778\nChange-Id: Ia3f07f1ceef3733c37cd8341752a99e16a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8160704\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\nReviewed-by: Junji Watanabe \u003cjwata@google.com\u003e\n"
    },
    {
      "commit": "669e903aa8b1ec742937459224fe1b556ec0185d",
      "tree": "7388664702fc7ec29fd52369c1e70adab2884b42",
      "parents": [
        "41d19b51c152d16844818bdc83e1751547876525"
      ],
      "author": {
        "name": "Richard Wang",
        "email": "richardwa@google.com",
        "time": "Thu Jul 30 08:12:03 2026"
      },
      "committer": {
        "name": "LUCI CQ",
        "email": "infra-scoped@luci-project-accounts.iam.gserviceaccount.com",
        "time": "Thu Jul 30 08:12:03 2026"
      },
      "message": "siso: webui refactor critical path from handler to invocation interface\n\nBug: 533258244\nChange-Id: Ie6a0050ee5354d9d0f74fad46629eb30bb71e649\nReviewed-on: https://chromium-review.googlesource.com/c/build/+/8169905\nReviewed-by: Alex Ovsienko \u003covsienko@google.com\u003e\nCommit-Queue: Richard Wang \u003crichardwa@google.com\u003e\n"
    }
  ],
  "next": "41d19b51c152d16844818bdc83e1751547876525"
}
