Route HTTP error checks to canonical web-services knowledge - #1
Merged
demiliani merged 1 commit intoSep 28, 2026
Merged
Conversation
Let the Error Handling leaf conditionally retrieve the existing HTTP owner articles, preserving applicability and exact-path provenance. Add deterministic source-contract and retrieval regressions without duplicating knowledge rules. Copilot-Session-Id: a92a7788-103e-4651-9b84-19e34caffb94 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
gggdttt
marked this pull request as ready for review
September 28, 2026 10:03
JesperSchulz
approved these changes
Sep 28, 2026
Owner
|
Good to go for me. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Target and scope
This is a two-file increment into
demiliani/BCQuality:integration, based onde62a818dff867ed7dd6198eb07cd0aced8f3d97, so it can be incorporated into microsoft#196. It is not a PR intomicrosoft/BCQuality:mainand does not repeat the full diff of that PR.Coordination and the five historical examples: microsoft#196 (comment)
Why
Five reference-less Error Handling findings from retained, audited jobs in BC-Bench run
35608133170incorrectly assumed that omitting the optional Boolean result ofHttpClient.GetorHttpClient.Postcould allow a transport failure to continue silently. The examples aresynthetic__privacy-008:g1,synthetic__privacy-010:g1,synthetic__privacy-015:g2,synthetic__privacy-015:g3, andsynthetic__security-clean-02:g0. Their supplied source has no visible enclosing error-catching boundary. When the optional result is omitted, unsuccessful execution raises a runtime error; requiring Boolean capture solely to prevent silent transport failure is therefore based on a false premise.This does not establish that all five HTTP paths are otherwise correct. A completed non-success HTTP response is different from a transport failure. Consuming
falseand proceeding, interpreting an error response as success data, or converting an outer TryFunction failure into success remain separate concerns. The CRM and AI examples already check status; the other three do not. The status/body owner must be applied according to its own scope, not as a blanket replacement finding for every bare call.microsoft#196 already supplies the canonical transport and status/body articles under
web-services, but the Error Handling leaf currently requests only theerror-handlingcatalog. This patch connects that finder to the existing owners instead of duplicating AL rules.Changes
microsoft/skills/review/al-error-handling-review.md(+8): conditionally retrieve the supplementaryweb-servicescatalog for outbound Get/Post calls, including resolved call paths, and select onlyhandle-httpclient-platform-failure-before-response-accessandcheck-http-status-before-consuming-response-body. Preserve task dimensions, enabled layers, exact catalog paths, applicability, layer precedence, complete-body retrieval, and caller/TryFunction failure-path review.tools/Test-KnowledgeRetrieval.ps1(+54): exercise the declared source route, real catalog selection and complete-body reachability, and negative layer/technology filters through existing deterministic helpers.The canonical knowledge articles, engine, severity rules, reference gate, benchmark data, scores, pins, and thresholds are unchanged. No new knowledge files are added.
Validation and limits
python .github\scripts\validate_frontmatter.py --root .: 0 errors and 0 warnings.pwsh -NoProfile -File .github\scripts\Test-KnowledgeIndex.ps1 -Root .: deterministic index with full coverage; HTTP routing/retrieval regression passed; 340 articles and 571 samples round-tripped through bounded retrieval.git diff --checkpassed. Both resulting file blob IDs match the approved patch; the complete increment is exactly 2 files, 62 additions, 0 deletions.These checks establish the declared routing contract and tool reachability, not model compliance or AL runtime behavior. No live reviewer, Copilot subprocess, BC-Bench evaluation, judge, or paid A/B run was invoked. The five historical findings were not rerun, and no false-positive-rate or recall improvement is claimed.