Add deterministic AI reporter qualification gates - #5999
Add deterministic AI reporter qualification gates#5999Sean Larkin (TheLarkInn) wants to merge 4 commits into
Conversation
|
Independent Findings fixed
Corpus evidence
Validation
State / blockers
|
|
Combined deep review of current head
|
e30aa36 to
7159901
比较
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d6318e80-5da9-4858-a147-817e8692f10e
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d6318e80-5da9-4858-a147-817e8692f10e
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d6318e80-5da9-4858-a147-817e8692f10e
ac3fd75 to
c46a4ea
比较
|
Fixed both combined review findings in
The three R8 commits are rebased directly onto Head is pending review. Auto-merge remains disabled. |
|
Four-review gate on Required fix: use an allowlisted secret-envelope projection that removes contextual metadata not guaranteed opaque, while preserving protocol and ordering fields. Extend the corpus with sentinel scope values. Dismissible low follow-on: decide whether local |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d6318e80-5da9-4858-a147-817e8692f10e
|
Fixed the HIGH secret scope metadata finding in
Reporter build, lint, API Extractor, and 336 tests passed. All 13 corpus cases passed across three identical runs. Reporter, rush-lib, apps/rush, Rush check, and stacked change verification passed. Local-sensitive and full-log behavior are unchanged. The low file-sidecar policy follow-on remains separate. Head is pending review and auto-merge remains disabled. |
|
Final combined review of Dismissible low follow-ons:
This head is low-only. |
Summary
Part of #5981.
Stack
copilot/reporter-r5b-demo-reporters)This PR does not copy or modify the telemetry projection from #5990. It applies the same producer-identity privacy boundary to presented reporter output and artifacts.
Corpus and gates
Corpus cases:
bootstrap-unsupported-node,configuration-invalid-json,input-unknown-project,dependency-package-manager,operation-build-failure,cache-restore-failure,network-auth-unauthorized,plugin-api-incompatible,logical-cancellation,internal-unexpected-error,success-no-warning, andsuccess-warning-only.External-service-shaped failures use stable canonical event fixtures. Returned results contain only case metadata, byte counts, booleans, and normalized hashes; absolute paths, private identities, and classified values are not stored.
Reproduce
cd libraries/reporter rushx build node scripts/runAiReporterQualification.jsThe script prints the versioned machine-readable result and exits nonzero when any blocking gate fails.
Selection boundary
getQualifiedAiReporterDecision()validates built-inCOPILOT_CLIdetection and configuredagentEnvironmentVariables, rejects absent or failed qualification results, and keepsRUSH_REPORTER=legacyauthoritative.It is intentionally not consumed by the Rush frontend in this PR. No environment variable automatically selects the AI reporter; the pre-major live path remains explicit
--reporteror repository-experiment opt-in, and no-opt-in behavior remains legacy.Validation
rush build --to @microsoft/rushrushx _phase:testinlibraries/reporter(314 tests)rushx _phase:testinlibraries/rush-librushx _phase:testinapps/rushCOPILOT_CLI=1legacy behavior andRUSH_REPORTER=legacyoverriderush checkrush change --verify --no-fetchNon-goals