# description
Canonical output of `sm scan --json` (and the data shape sent over WebSocket scan events). Self-describing and versioned; consumers MUST check `schemaVersion` before parsing.

# properties.schemaVersion.description
Scan result shape version. Bumped only on breaking changes to this schema.

# properties.scannedAt.description
Unix milliseconds when the scan started.

# properties.scannedBy.description
Implementation metadata. Optional so that synthetic fixtures can omit it.

# properties.scannedBy.properties.specVersion.description
Spec version that this scan conforms to (e.g. `0.1.0`).

# properties.scope.description
Scan scope. `project` walks the cwd repo; `global` walks user-level skill directories.

# properties.roots.description
Filesystem roots that were walked during this scan, as absolute or scope-root-relative paths.

# properties.providers.description
Provider ids that participated in classification. Empty if no Provider matched.

# properties.stats.properties.filesSkipped.description
Files walked but not classified by any Provider.