Add AL code generation skill contracts

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: bd6344b4-eafd-4a58-a1c9-5a2d96fa2938
This commit is contained in:
Jesper Schulz-Wedde 2026-07-14 13:43:31 +02:00
parent be1b92b624
commit b0d71418fa
17 changed files with 1885 additions and 39 deletions

View file

@ -0,0 +1,67 @@
{
"output-kind": "generated-files-report",
"contract-version": 1,
"skill": {
"id": "al-code-generation",
"version": 1
},
"outcome": "completed",
"outcome-reason": "Generated the requested create-only AL object from the complete worklist.",
"summary": {
"artifact-count": 1,
"total-content-bytes": 217,
"coverage": {
"candidate-count": 3,
"relevant-count": 1,
"worklist-count": 1,
"opened-article-count": 1,
"opened-good-sample-count": 1,
"opened-bad-sample-count": 0,
"omitted-count": 0
}
},
"knowledge-revision": {
"repository": "https://github.com/microsoft/BCQuality",
"commit-sha": "1111111111111111111111111111111111111111"
},
"assumptions": [
"The requested table is a new object and the consumer will verify the destination does not exist."
],
"artifacts": [
{
"path": "src/SampleApp/Setup/CQSampleSetup.Table.al",
"encoding": "utf-8",
"object-type": "table",
"object-id": 70000,
"object-name": "CQ Sample Setup",
"content": "table 70000 \"CQ Sample Setup\"\n{\n Caption = 'Sample Setup';\n DataClassification = CustomerContent;\n\n fields\n {\n field(1; Enabled; Boolean)\n {\n Caption = 'Enabled';\n }\n }\n}",
"rationale": "Creates the requested bounded setup table with a reserved CQ affix and explicit classification.",
"article-references": [
{
"path": "microsoft/knowledge/appsource/object-affixes-prevent-collisions.md",
"sha": "1111111111111111111111111111111111111111"
}
],
"good-sample-references": [
{
"path": "microsoft/knowledge/appsource/object-affixes-prevent-collisions.good.al",
"sha": "1111111111111111111111111111111111111111"
}
]
}
],
"applied-guidance": [
{
"reference": {
"path": "microsoft/knowledge/appsource/object-affixes-prevent-collisions.md",
"sha": "1111111111111111111111111111111111111111"
},
"artifact-paths": [
"src/SampleApp/Setup/CQSampleSetup.Table.al"
],
"application": "Applied the CQ object-name affix without copying demonstration object IDs or names."
}
],
"omitted-guidance": [],
"suppressed": []
}

View file

@ -0,0 +1,54 @@
{
"schema-version": 1,
"project-root": ".",
"app-root": "src/SampleApp",
"requested-artifacts": [
{
"operation": "create",
"path": "src/SampleApp/Setup/CQSampleSetup.Table.al",
"object-type": "table",
"object-id": 70000,
"object-name": "CQ Sample Setup",
"intent": "Store one setup record with an enabled flag and an appropriate data classification."
}
],
"related-file-allowlist": [
"src/SampleApp/app.json",
"src/SampleApp/Setup/CQSampleSetup.Page.al"
],
"context": {
"countries": [
"w1"
],
"application-areas": [
"all"
]
},
"target": {
"effective-bc-major": 28,
"runtime": "15.0",
"app": {
"id": "11111111-1111-4111-8111-111111111111",
"name": "CQ Sample App",
"publisher": "Contoso",
"version": "1.0.0.0",
"platform": "28.0.0.0",
"application": "28.0.0.0",
"target": "Cloud",
"dependencies": [],
"id-ranges": [
{
"from": 70000,
"to": 70049
}
]
}
},
"generation-settings": {
"context-budget": 24
},
"app-json-provenance": {
"path": "src/SampleApp/app.json",
"sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}
}