Close AL development contract gaps

Bound post-implementation review rounds, expose output kinds in Entry
dispatch, enforce capability coverage, map BCFIX-HANDOFF v1, clarify
no-knowledge behavior, and reject repository-escaping skill paths.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 638b66d2-9f06-4f60-8781-808709e1485c
This commit is contained in:
Jesper Schulz-Wedde 2026-09-04 13:36:49 +02:00
parent 56b80e6dcf
commit f6fca1d56d
15 changed files with 356 additions and 52 deletions

View file

@ -1,6 +1,7 @@
{
"version": 1,
"skill": "microsoft/skills/development/al-development.md",
"maximumReviewRounds": 3,
"minimumKnowledgeRecall": 1.0,
"minimumKnowledgePrecision": 0.5,
"cases": [
@ -183,6 +184,54 @@
"tests",
"review"
]
},
{
"id": "versioned-data-upgrade",
"title": "Implement a rerunnable data upgrade",
"capabilities": [
"install-and-upgrade"
],
"expectedKind": "upgrade",
"development-request": {
"kind": "upgrade",
"description": "Upgrade an existing app from a text-based Customer Tier field to a new enum-backed Tier field. Preserve existing customer data, support tenants that skip intermediate app versions, keep fresh installation separate from migration, and add upgrade tests.",
"acceptance-criteria": [
"Existing tier values are migrated without running field validation triggers.",
"The migration is guarded by an upgrade tag and is safe when the upgrade runs again.",
"Check and validation triggers do not write data.",
"Fresh installation does not run version-upgrade migration.",
"Tests cover more than one historical source data version."
]
},
"context": {
"technologies": [
"al"
],
"countries": [
"w1"
],
"application-area": [
"all"
]
},
"requiredKnowledge": [
"microsoft/knowledge/upgrade/appversion-meaning-depends-on-execution-context.md",
"microsoft/knowledge/upgrade/install-and-upgrade-codeunits-have-no-order.md",
"microsoft/knowledge/upgrade/use-upgrade-tags-not-version-checks.md",
"microsoft/knowledge/upgrade/check-only-triggers-do-not-migrate-data.md",
"microsoft/knowledge/upgrade/install-code-does-not-run-on-version-upgrade.md"
],
"optionalKnowledge": [
"microsoft/knowledge/upgrade/datatransfer-skips-triggers-and-subscribers.md",
"microsoft/knowledge/upgrade/datatransfer-for-bulk-init.md",
"microsoft/knowledge/upgrade/register-upgrade-tags-with-subscribers.md",
"microsoft/knowledge/testing/transactionmodel-attribute-governs-test-transactions.md"
],
"requiredChecks": [
"compile",
"tests",
"review"
]
}
]
}