[CredMgr] Refactor inspect topology

This does a few things to make the structure a bit more scalable:

* The IncomingMethod enum is now constructed with a pro macro that lets
  inspect iterate over its values so we can pre-polutate nodes for each
  RPC and also retain more of the convention of snake_case inspect
  (thank you paste!{})
* We nest the actual error counts and include a summary count of the
  errors which makes it easier to write a traige rule to detect errors
* All the incoming RPC are nested under an "incoming" node to provide
  room for other types of output.

Looking at the inspect unittests is the easiest way to visualize the new
output.

Note being able to refactor inspect output like this without having to
change operational code or tests shows the benefit of isolating with the
diagnostics trait.

Bug: 91714
Change-Id: I1c6a3c752578edd04cc97eb5d21950089d7fd2a0
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/669166
Reviewed-by: Ben Wright <benwright@google.com>
Commit-Queue: Jody Sankey <jsankey@google.com>
3 files changed
tree: 283fc511451c66de270fb736c048482ef31e76a8
  1. boards/
  2. build/
  3. bundles/
  4. docs/
  5. examples/
  6. garnet/
  7. products/
  8. scripts/
  9. sdk/
  10. src/
  11. third_party/
  12. tools/
  13. zircon/
  14. .clang-format
  15. .clang-tidy
  16. .editorconfig
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. analysis_options.yaml
  23. AUTHORS
  24. BUILD.gn
  25. CODE_OF_CONDUCT.md
  26. CONTRIBUTING.md
  27. LICENSE
  28. OWNERS
  29. PATENTS
  30. pyrightconfig.json
  31. README.md
  32. rustfmt.toml
README.md

Fuchsia

What is Fuchsia?

Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.

We expect everyone interacting with our project to respect our code of conduct.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.