blob: 6b835b7b0dc0f99ab25fea6595db434304d89c56 [file] [log] [blame] [view]
# Inspect Validator
Reviewed on: 2024-04-2024
## Overview
Since Go is deprecated on Fuchsia, it does not have a complete FIDL implementation
or Inspect implementation. In order to be able to use new FIDL features for validating Inspect in
C++ and Rust, the Go puppet is hidden behind a dispatcher component written in Rust.
## Dispatcher
The files associated with the Rust component that dispatches to the Go puppet:
```
./meta/puppet.cml
./src/*
```
This component serves `diagnostics.validate.InspectPuppet`, like the puppets written in Rust
and C++ for the Rust and C++ libraries. It intercepts anything the Go Inspect implementation does
not support and returns the `TestResult::Unimplemented` result.
## Go puppet
The actual Go puppet is everything under `./puppet-internal`.
This puppet serves `diagnostics.validate.deprecated.InspectPuppet`.