Narrow development guidance to provisional contract

Keep plan enrichment internal and read-only pending consumer agreement and runtime pilot evidence. Move knowledge to its independent PR and remove the consumer-owned forensic evaluator.

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-18 15:46:52 +02:00
parent 8f025ac679
commit fa7eb750c6
40 changed files with 294 additions and 2053 deletions

View file

@ -32,7 +32,8 @@ function Assert-ThrowsLike {
$generator = Join-Path $Root 'tools/Build-SkillIndex.ps1'
$indexSchema = Join-Path $Root 'schemas/skill-index.schema.json'
$reportSchema = Join-Path $Root 'schemas/findings-report.schema.json'
foreach ($path in $generator, $indexSchema, $reportSchema) {
$guidanceReportSchema = Join-Path $Root 'schemas/development-guidance-report.schema.json'
foreach ($path in $generator, $indexSchema, $reportSchema, $guidanceReportSchema) {
if (-not (Test-Path -LiteralPath $path -PathType Leaf)) {
throw "Required contract file not found: $path"
}
@ -123,6 +124,36 @@ try {
throw 'al-development-plan must remain a leaf action skill.'
}
$minimalGuidanceReport = @{
skill = @{ id = 'al-development-plan'; version = 1 }
outcome = 'completed'
summary = @{
request = 'Enrich the existing plan.'
kind = 'feature'
candidates = 1
selected = 1
}
context = @{
'bc-version' = '28'
technologies = @('al')
countries = @('w1')
'application-area' = @('all')
unknown = @()
}
knowledge = @(@{
path = 'microsoft/knowledge/performance/apply-filters-before-iterating.md'
'used-for' = 'Constrain filtered iteration.'
constraints = @('Apply filters before iterating.')
'sample-paths' = @()
})
'validation-considerations' = @()
suppressed = @()
unresolved = @()
} | ConvertTo-Json -Depth 10
if (-not ($minimalGuidanceReport | Test-Json -SchemaFile $guidanceReportSchema -ErrorAction Stop)) {
throw 'Minimal development-guidance report does not satisfy schemas/development-guidance-report.schema.json.'
}
$minimalReport = @{
skill = @{ id = 'al-style-review'; version = 1 }
outcome = 'completed'

View file

@ -1,25 +0,0 @@
name: Validate read-only development guidance
on:
pull_request:
branches: [main]
push:
branches: [main]
jobs:
validate-development-guidance:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Validate and prepare development-guidance fixtures
shell: pwsh
run: ./tools/Test-DevelopmentGuidanceFixtures.ps1 -Root . -PrepareDirectory "$env:RUNNER_TEMP/bcquality-development-guidance-fixtures"
- name: Run credential-free guidance evaluator regressions
shell: pwsh
run: ./tools/Test-DevelopmentGuidanceEvaluator.ps1