tree bbbd7721670ba0b8d67812fdb91f13799df68b1a
parent 938fefa4feff9d9d6f2b9ca7ad1e4a8322c20895
author gBMC Team <gbmc-core@google.com> 1739522338 -0800
committer Copybara-Service <copybara-worker@google.com> 1739522376 -0800

Fix 9 IncludeCleaner findings:
* Used header "production/sushid/safepower_agent/proto/safepower_agent.proto.h" is not included directly (3 times)
* Used header "production/sushid/safepower_agent/proto/state_persistence.proto.h" is not included directly (2 times)
* Used header "third_party/absl/strings/str_format.h" is not included directly
* Used header <iostream> is not included directly
* Used header "production/sushid/safepower_agent/proto/safepower_agent_config.proto.h" is not included directly
* Used header "google/protobuf/timestamp.proto.h" is not included directly

 ⚠️ Problems with this CL?
 Click the "Roll back" button above, write a description of the problem (ideally with supporting logs/dashboards/screenshots) and a human global approver will be assigned to review the generated rollback CL.
* See go/include-cleaner for more information about the tool that generated this change.
* The global approvers for this change category are currently piloting the go/reviewbot tool so you may see global-review-bot-composite as the approver. Please contact code-health-team@google.com if you have any questions/concerns about the approval process.

See go/include-cleaner-lsc-approval for more information on why you've received this change and why it is important.

This CL looks good? Just LGTM and Approve it!
This CL doesn’t look good? This is what you can do:
* Revert this CL, by replying "REVERT: <provide reason>"
* File a bug under go/include-cleaner-bug for category IncludeCleaner if there's an issue with the CL content.
* File a bug under go/rosie-bug if there's an issue with how the CL was managed.
* For all other issues such as the formatting of the CL, please file a bug under
go/clrobot-bug.
* Revert this CL and not get a CL that cleans up these paths in the future by
replying "BLOCKLIST: <provide reason>". This is not reversible! We recommend to
opt out the respective paths in your CL Robot configuration instead:
go/clrobot-opt-out.

This CL was generated by CL Robot - a tool that cleans up code findings
(go/clrobot). The affected code paths have been enabled for CL Robot in //depot/google3/METADATA by
following go/clrobot#how-to-opt-in. Anything wrong with the signup? File a bug
at go/clrobot-bug.

#codehealth

Tested:
    Local presubmit tests passed.
PiperOrigin-RevId: 726808700
Change-Id: I4b74d18c0d3b7b8dd8ba700a63cbbe6d8f80b7f9
