# Yocto Layer Review

> Review Yocto/OpenEmbedded layer structure, layer.conf, BBFILE collections and patterns, LAYERSERIES_COMPAT, LAYERDEPENDS, BBFILE_PRIORITY, BBFILES_DYNAMIC, bbappend matching, overlayed recipes, provider selection, and layer compatibility. Use for layer creation, layer migration, layer review, or when a bbappend/recipe is not being applied.

- Skill: `higangssh/yocto-layer-review` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add higangssh/yocto-layer-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/higangssh/yocto-layer-review/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Higangssh (https://skillmd.com/u/higangssh)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/higangssh/yocto-layer-review

---


# Yocto Layer Review

Use this skill to review layers and diagnose metadata visibility problems. Layer issues often look like recipe, provider, or package failures; prove whether BitBake sees the metadata first.

## Required Evidence

Ask for or inspect:

```text
conf/layer.conf
conf/bblayers.conf
bitbake-layers show-layers
bitbake-layers show-recipes <recipe>
bitbake-layers show-appends
bitbake-layers show-overlayed
```

## Layer Checklist

Review:

```bitbake
BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "mylayer"
BBFILE_PATTERN_mylayer = "^${LAYERDIR}/"
BBFILE_PRIORITY_mylayer = "6"
LAYERSERIES_COMPAT_mylayer = "scarthgap wrynose"
LAYERDEPENDS_mylayer = "core"
```

Check:

- collection name is unique and stable
- `LAYERSERIES_COMPAT_*` matches the target release
- required layers are declared with `LAYERDEPENDS_*`
- recipe and append globs cover intended files
- `BBFILE_PRIORITY_*` is not used to hide provider/version policy problems
- optional bbappends use `BBFILES_DYNAMIC` when the target layer may be absent
- `.bbappend` filename matches an existing recipe version or intentionally uses `%`

## Common Problems

- layer is present in the tree but missing from `bblayers.conf`
- `.bbappend` silently not applied due to recipe version mismatch
- collection name in `BBFILES_DYNAMIC` does not match target layer collection
- layer priority causes a recipe to win unexpectedly
- vendor BSP layer pins an older release and rejects modern syntax
- dependency layer missing even though a recipe path exists locally

## References

- Read [references/official-doc-map.md](references/official-doc-map.md) for official layer docs.
- Read [references/yocto-field-guide.md](references/yocto-field-guide.md) for layer and provider basics.
- Read [references/migration.md](references/migration.md) for release compatibility checks.

## Output

Answer with:

1. whether BitBake sees the layer and append
2. exact layer.conf or filename issue
3. metadata visibility command to prove it
4. minimal fix
5. validation command

