-
Notifications
You must be signed in to change notification settings - Fork 60
Description
🤖 This is a Repo Assist automated PR.
Summary
Addresses two separate improvements:
Task 3: SchemaReaderErrors property (fixes #160)
Adds a static SchemaReaderErrors : string list property to the root type generated by OpenApiClientProvider. This surfaces any OpenAPI parse errors at runtime, enabling users to see which validation issues were tolerated when IgnoreParseErrors=true.
type MyApi = OpenApiClientProvider<"schema.yaml", IgnoreParseErrors=true>
// Inspect which errors were silently tolerated
MyApi.SchemaReaderErrors |> List.iter printfn
// e.g. "Property 'nullable' is not allowed ... @ #/paths/..."The property returns [] for valid schemas, so it's safe to always check.
Implementation details:
- Uses
Expr.NewUnionCaseto build the string list quotation at design time, embedding error message strings as literals in the generated assembly. - Errors are formatted as
"(message) @ (pointer)", matching the existingeprintfnoutput forIgnoreParseErrors=true. - The property is added for both the valid-schema and error-schema code paths.
Tests added:
Swagger.SchemaReaderErrors.Tests.fs: verifiesSchemaReaderErrors = []for a valid schema, and that the property is accessible for a schema with errors.schema-reader-errors-test.json: minimal schema with a parameter-levelnullable(an OpenAPI 3.0 validation error).
Task 4: CI dotnet tools caching
Adds a cache step for ~/.dotnet/tools keyed on .config/dotnet-tools.json. This avoids re-downloading paket, fantomas, and dotnet-serve on each CI run.
Test Status
✅ SwaggerProvider.Tests: 204 passed, 0 failed (2 skipped - pre-existing)
SwaggerProvider.ProviderTests: requires live Swashbuckle test server — not run locally (infrastructure dependency)
✅ Format check (dotnet fantomas --check): passed on changed files
Generated by Repo Assist · ◷
Generated by Repo Assist · ◷
To install this agentic workflow, run
gh aw add githubnext/agentics/workflows/repo-assist.md@346204513ecfa08b81566450d7d599556807389f
Warning
🛡️ Protected Files — Push Permission Denied
This was originally intended as a pull request, but the patch modifies protected files: .github/workflows/dotnetcore.yml.
The push was rejected because GitHub Actions does not have workflows permission to push these changes, and is never allowed to make such changes, or other authorization being used does not have this permission. A human must create the pull request manually.
To create a pull request with the changes:
# Download the patch from the workflow run
gh run download 23154515974 -n agent-artifacts -D /tmp/agent-artifacts-23154515974
# Create a new branch
git checkout -b repo-assist/feat-schema-reader-errors-2026-03-16-710d5bf170ae380c master
# Apply the patch (--3way handles cross-repo patches)
git am --3way /tmp/agent-artifacts-23154515974/aw-repo-assist-feat-schema-reader-errors-2026-03-16.patch
# Push the branch and create the pull request
git push origin repo-assist/feat-schema-reader-errors-2026-03-16-710d5bf170ae380c
gh pr create --title '[Repo Assist] Add SchemaReaderErrors property to OpenApiClientProvider (fixes #160) + CI tool caching' --base master --head repo-assist/feat-schema-reader-errors-2026-03-16-710d5bf170ae380c --repo fsprojects/SwaggerProvider