Add events knowledge domain and review leaf skill

Add a new `events` knowledge domain covering AL events & subscribers,
wired into the AL review pipeline.

- 3 atomic articles (+ .good.al/.bad.al samples) under
  microsoft/knowledge/events/: the IsHandled override pattern, thin
  OnBefore/OnAfter integration-event publishers, and static vs manual
  subscribers.
- New leaf skill microsoft/skills/review/al-events-review.md sourcing the
  events domain.
- Wired into microsoft/skills/review/al-code-review.md (sub-skills + Source
  + description) and README.md (leaf-skill count + domain list).

AL event syntax verified against Microsoft Learn. Samples are
demonstration-only (not compiled by CI). Additive change; no contract change.

Part of #34.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Jesper Schulz-Wedde 2026-06-23 12:32:54 +02:00
parent 45c2b2f5ec
commit 54ddd8ecc2
12 changed files with 477 additions and 2 deletions

View file

@ -3,7 +3,7 @@ kind: action-skill
id: al-code-review
version: 1
title: AL code review
description: Reviews AL source changes by composing the AL review leaf skills (performance, security, privacy, upgrade, style, UI, error handling).
description: Reviews AL source changes by composing the AL review leaf skills (performance, security, privacy, upgrade, style, UI, error handling, events).
inputs: [pr-diff, file-path]
outputs: [findings-report]
bc-version: [all]
@ -18,6 +18,7 @@ sub-skills:
- microsoft/skills/review/al-style-review.md
- microsoft/skills/review/al-ui-review.md
- microsoft/skills/review/al-error-handling-review.md
- microsoft/skills/review/al-events-review.md
---
# AL code review
@ -39,6 +40,7 @@ The sub-skills invoked by this skill are those listed in frontmatter `sub-skills
- `microsoft/skills/review/al-style-review.md`
- `microsoft/skills/review/al-ui-review.md`
- `microsoft/skills/review/al-error-handling-review.md`
- `microsoft/skills/review/al-events-review.md`
Additional leaf skills (for example, telemetry, testing) are added by updating the `sub-skills` list. The skill does not discover sub-skills implicitly.