Improve PR merge commit message generation - #4676
Conversation
Consolidate evidence gathering, topic boundaries, claim proof, repository voice, and attribution guidance into one skill. Add a /merge-message agentic workflow that uses Terra to inspect pull request evidence and publishes through the built-in safe comment output while minimizing older results. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 11104869-1f5e-4e03-a997-d2452435bc96
📦 Try the packages from this PRWarning Do not run these scripts without first reviewing the code in this PR. Step 1 — Download the packages bash / macOS / Linux: curl -fsSL https://raw.githubusercontent.com/mono/SkiaSharp/main/scripts/get-skiasharp-pr.sh | bash -s -- 4676PowerShell / Windows: iex "& { $(irm https://raw.githubusercontent.com/mono/SkiaSharp/main/scripts/get-skiasharp-pr.ps1) } 4676"Step 2 — Add the local NuGet source dotnet nuget add source ~/.skiasharp/hives/pr-4676/packages --name skiasharp-pr-4676More options
Or download manually from Azure Pipelines — look for the Remove the source when you're done: dotnet nuget remove source skiasharp-pr-4676 |
Define the skill output as exactly one text code fence with no surrounding assistant prose. Keep missing-context notes outside the fence and make the /merge-message workflow post the skill response without unwrapping it. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 11104869-1f5e-4e03-a997-d2452435bc96
📊 SkiaSharp benchmarks — PR #4676⭐ this PR (full source build) vs 🌙 nightly · Linux · Windows · macOS
Highlights⏱️ Time — 🔴 65 slower · 🟢 20 faster
Full per-OS benchmark deltasLinux⏱️ Time (vs 🌙 nightly
Windows⏱️ Time (vs 🌙 nightly
macOS⏱️ Time (vs 🌙 nightly
|
Move the final quality gate into explicit step 6 and verify the copyable text fence alongside content coverage, claim proof, and attribution before returning the message. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 11104869-1f5e-4e03-a997-d2452435bc96
|
📖 Documentation Preview The documentation for this PR has been deployed and is available at: 🔗 View Staging Site This preview will be updated automatically when you push new commits to this PR. This comment is automatically updated by the documentation staging workflow. |
[infra] Upgrade agentic workflows to gh-aw v0.84.3 (#4679) Context: #4676 Context: https://github.com/mono/SkiaSharp/actions/runs/31033558899 Context: github/gh-aw-firewall#6695 Upgrade the repository-wide agentic workflow toolchain and generated infrastructure. This remains workflow-only and does not change SkiaSharp's public API or product behavior. ~~ Restore Terra execution ~~ PR #4676 introduced Merge Message with `gpt-5.6-terra`, but its gh-aw v0.83.4 lock selected AWF v0.27.42. Although that release's model mapping documented Terra, runtime startup rejected it as unsupported before Copilot inference. Retain the requested model while moving all six agentic workflows to gh-aw v0.84.3 and AWF v0.27.43. The newer firewall includes the runtime-model work that adds the gpt-5.6 Sol, Terra, and Luna family to its static model and pricing catalogs. Apply the current workflow codemods, move nested engine models to top-level frontmatter, refresh GitHub Actions and container digest pins, and regenerate all lock files. Add an SC1090 annotation around Auto Skia Sync's dynamic environment import so the stricter ShellCheck phase can verify it without changing execution behavior. Strict schema validation and ShellCheck compiled all six workflows. gh-aw's Windows actionlint handoff emitted backslash container paths and exited with a tooling error, so the same pinned actionlint 1.7.12 container was invoked with forward-slash paths; all six generated lock workflows passed. A repeat compile changed no generated hashes, and `git diff --check` passed. ~~ Canonical Copilot authoring entry points ~~ The existing Agentic Workflows dispatcher lived under `.agents/agents` and linked to gh-aw v0.71.1 guidance. Replace it with gh-aw v0.84.3's canonical `.github/agents` custom agent and add the matching `.github/skills` router. These entry points classify workflow creation, update, debugging, and upgrade requests, then load the corresponding current upstream guidance. Keeping the tool-owned locations avoids stale duplicate dispatchers being recreated by future upgrades. ~~ Generated maintenance control plane ~~ Add gh-aw's generated Agentic Maintenance workflow because the repository uses expiring safe outputs. Its daily jobs close expired discussions, issues, and pull requests and clean stale cache-memory entries. The same workflow provides guarded maintainer operations for enable/disable, update/upgrade, safe-output replay, label creation, activity and forecast reports, pull-request branch updates, and workflow validation. Global permissions remain empty; each job declares only its required permissions, checks maintainer authorization, and refuses to operate on forks. Co-authored-by: Matthew Leibowitz <mattleibow@live.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
📦 Artifact size reportPackages from this PR (build Total Packages
+38 package(s) unchanged (< 50.0 KB). Per-file changes
|
| File | Size |
|---|---|
runtimes/win-arm64/native/libGLESv2.pdb |
64.5 MB → 64.4 MB (🟢 −128.0 KB) |
runtimes/win-x86/native/libGLESv2.pdb |
67.3 MB → 67.2 MB (🟢 −128.0 KB) |
runtimes/win-x64/native/libGLESv2.pdb |
66.6 MB → 66.5 MB (🟢 −96.0 KB) |
Informational only — this never blocks the PR. Native binaries are labelled by os/arch.
Description
Strengthen the
pr-commit-messageskill so different models consistently produce durable, evidence-backed merge histories instead of terse diff summaries. Consolidate the former separate style reference into the authoritative skill, define material-topic boundaries, require source-backed claims and attribution, and standardize the final response as one copyabletextcode fence without surrounding assistant prose.Add a
/merge-messageGitHub Agentic Workflow for pull request comments. The workflow uses GPT-5.6 Terra with read-only repository tools, follows the skill, and publishes its fenced response through gh-aw's built-inadd-commentsafe output. Older results from the same workflow are minimized so rerunning the command leaves the latest message visible without custom GitHub API code.Related issues
None.
Required skia PR
None.
Areas affected
binding/)externals/skia/src/c,include/c)Changes
None — skill and workflow automation only; no public API or application behavior changes.
Testing
python .agents/skills/skill-creator/scripts/quick_validate.py .agents/skills/pr-commit-message— passed.gh aw compile merge-message --validate --approve --no-check-update— compiled with zero errors and warnings.git diff --check— passed.No product tests were added because this changes repository guidance and workflow automation rather than runtime code.
Checklist
Changesabove lists all public API and behavioral changes (or "None.")mono/skiaPR linked above and bindings regenerated — not applicable