Skip to content

feat(instructions): add overlay metadata annotation guidance and skill#17890

Open
liunan-ms wants to merge 2 commits into
4.0from
liunan/overlay_annotation_instructions
Open

feat(instructions): add overlay metadata annotation guidance and skill#17890
liunan-ms wants to merge 2 commits into
4.0from
liunan/overlay_annotation_instructions

Conversation

@liunan-ms

Copy link
Copy Markdown
Contributor

Summary

Adds documentation and an on-demand skill for annotating Azure Linux overlays with metadata (category, provenance, upstreamability).

Commits

  • overlay-metadata.instructions.md — source of truth for the closed set of overlay category values, field semantics (commits, bugs, upstreamable), the per-file .overlay.toml vs. inline TOML forms, and overlay file layout/naming.
  • skill-annotate-overlays — targeted skill that, for new or user-specified overlays, reads each change, suggests a category (with rationale), hunts for grounding upstream commits/bugs, judges upstreamable, and writes the metadata per the instructions. Registered in AGENTS.md.

Key principles

  • An overlay file is the unit of intentional change: one top-level [metadata] block per logical change, with one or more [[overlays]].
  • Prefer the per-file .overlay.toml layout for new work, even single-overlay changes.
  • Annotation is pure documentation — it must not change the rendered spec; metadata is excluded from component fingerprints, so it needs no rebuild/smoke-test.

Validation

  • Guidance-only change (Markdown + skill definition). No component output affected.

Copilot AI review requested due to automatic review settings July 2, 2026 04:52
@liunan-ms liunan-ms requested a review from a team as a code owner July 2, 2026 04:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR is documentation-only. It adds guidance and an on-demand skill for annotating Azure Linux overlays with metadata (a category, plus optional provenance/upstreamable fields). It fits the repo's existing .github/instructions/* + .github/skills/* structure, giving agents a canonical reference for the closed set of overlay categories and a workflow to classify overlays, find grounding upstream commits/bugs, and write metadata without changing rendered specs.

Changes:

  • New overlay-metadata.instructions.md documenting the 10-value category set, commits/bugs/upstreamable semantics, the per-file .overlay.toml vs. inline TOML forms, and file layout/ordering rules.
  • New skill-annotate-overlays skill defining the classify → hunt-provenance → judge-upstreamability → write → validate workflow.
  • Registers the new skill in the AGENTS.md skills table.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
.github/instructions/overlay-metadata.instructions.md New instructions on picking a category and writing overlay metadata; the multi-overlay TOML example misuses spec-remove-subpackage and has a mismatched package value.
.github/skills/skill-annotate-overlays/SKILL.md New skill defining the annotation workflow; references an azldev component diff-sources subcommand that isn't documented or used elsewhere in the repo.
AGENTS.md Adds a skills-table row for the new skill; format is consistent with surrounding rows.

Comment on lines +120 to +132
# One logical change: drop the maven-local-openjdk21 subpackage.
[metadata]
category = "azl-pruning"

[[overlays]]
description = "Remove maven-local-openjdk21 %package section — AZL ships no java-21-openjdk"
type = "spec-remove-subpackage"
package = "maven-local-openjdk21"

[[overlays]]
description = "Remove maven-local-openjdk21 %files section — subpackage above is gone"
type = "spec-remove-subpackage"
package = "javapackages-local-openjdk21"
Comment on lines +240 to +242
azldev component diff-sources -p <name> -q > ./base/build/work/scratch/<name>-diff-before.txt # before edits
# … move overlays into files / add metadata …
azldev component diff-sources -p <name> -q > ./base/build/work/scratch/<name>-diff-after.txt # after edits
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants