Back to Skiasharp

Sample Scout Report Schema (v1)

.agents/skills/sample-scout/references/schema-cheatsheet.md

4.148.02.1 KB
Original Source

Sample Scout Report Schema (v1)

Top-Level Structure

json
{
  "meta": { ... },
  "summary": { ... },
  "findings": [ ... ]
}

meta

FieldRequiredDescription
dateYesYYYY-MM-DD
schemaVersionYesMust be "1.0"
sourceYese.g., "google/skia/gm/"
totalFilesYesNumber of .cpp files in gm/
existingGallerySamplesNoNumber of existing SkiaSharp Gallery samples

summary

FieldRequiredDescription
totalFindingsYesNumber of GM files analyzed
byInterestNo{"high": N, "medium": N, "low": N}
byApiAvailabilityNo{"available": N, "blocked": N}
bySampleStatusNo{"none": N, "similar": N, "existing": N}
opportunitiesNoCount of high + APIs ready + no existing sample

findings — Array of GM Analyses

Required Fields

FieldTypeDescription
filestringGM filename (e.g., "mesh.cpp")
namestringHuman-readable name
descriptionstringWhat the sample demonstrates
interestingstring"high", "medium", or "low"
apis_availablebooleanWhether all required APIs exist in SkiaSharp
missing_apisstring[]APIs not available (empty if all available)
key_apisstring[]Main Skia APIs used
visualGoalstringWhat the user sees — 1-3 sentences describing the rendered output
suggestedControlsstring[]Interactive controls with ranges (e.g., "Threshold slider (0–1)")
categorystringGallery category: "Shaders", "Text", "Paths", "Image Filters", "General", etc.
skiaSharpApisstring[]C# SkiaSharp equivalents (e.g., "SKRuntimeEffect", "SKCanvas.DrawRect")

Optional Fields

FieldTypeDescription
notesstringContext (GPU-only, bug regression, etc.)
sampleStatusstring"none", "similar", or "existing" — Gallery coverage
matchedSamplestringName of matching Gallery sample if similar/existing