Skip to content

feat: Support the flag-overrides capability in the contract test service - #368

Draft
kinyoklion wants to merge 1 commit into
rlamb/overrides-dotnet-file-sourcefrom
rlamb/overrides-dotnet-contract-tests
Draft

kinyoklion wants to merge 1 commit into
rlamb/overrides-dotnet-file-sourcefrom
rlamb/overrides-dotnet-contract-tests

Conversation

@kinyoklion

@kinyoklion kinyoklion commented Sep 25, 2026 •

Copy link
Copy Markdown
Member

Summary

Adds the flag-overrides capability to the contract test service and the overrides block of the SDK configuration it accepts, as described in the test harness service specification. The block's filePaths, duplicateKeysHandling (fail or ignore), changeDetection (polling or watching), and pollIntervalMs map onto FileOverrides.Source() options, and the source is attached to the FDv2 data system builder that the dataSystem block configures. The test service supplies a YamlDotNet parser to the source so the harness's YAML document test can run.

The test service also takes an optional port as its first command line argument, defaulting to 8000, so that several test services can run on one machine.

This PR is based on the branch of the file-based override source change, which it depends on.

SDK-3248


Note

Overview
The .NET server SDK contract test service now advertises the flag-overrides capability and accepts an overrides block on harness SDK configuration. That block maps to FileOverrides.Source() (file paths, duplicate key handling, change detection, poll interval) and is attached to the FDv2 data system builder; overrides without dataSystem is rejected.

The harness wires YamlDotNet as the override file parser so YAML contract tests can run. The test service executable also accepts an optional port as its first CLI argument (default 8000) so multiple instances can run on one machine.

Reviewed by Cursor Bugbot for commit 1335438. Bugbot is set up for automated code reviews on this repo. Configure here.

@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from 4011fef to bf327fc Compare September 28, 2026 20:39
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from a735815 to 108b012 Compare September 28, 2026 20:39
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from bf327fc to e30694a Compare October 1, 2026 23:43
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 108b012 to 38f158a Compare October 1, 2026 23:43
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from e30694a to 4de98c7 Compare October 3, 2026 01:34
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 38f158a to 1335438 Compare October 3, 2026 01:34
@kinyoklion

Copy link
Copy Markdown
Member Author

bugbot review

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit 1335438. Configure here.

@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from 4de98c7 to 57ffcf0 Compare October 3, 2026 01:52
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 1335438 to 9923ba9 Compare October 3, 2026 01:52
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from 57ffcf0 to c3dbd2d Compare October 5, 2026 21:55
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 9923ba9 to 27bea4c Compare October 5, 2026 21:55
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from c3dbd2d to 6973a4f Compare October 5, 2026 22:12
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 27bea4c to 8c96c87 Compare October 5, 2026 22:12
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from 6973a4f to 78d3e87 Compare October 5, 2026 22:28
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from 8c96c87 to f6043bf Compare October 5, 2026 22:28
The test service advertises the flag-overrides capability and accepts
the overrides block of the SDK configuration: filePaths,
duplicateKeysHandling, changeDetection, and pollIntervalMs map onto the
FileOverrides.Source() options, and the source is attached to the FDv2
data system builder. The service supplies a YamlDotNet parser so YAML
documents can be tested. An optional first command line argument selects
the port.
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-file-source branch from 78d3e87 to 08c4cf0 Compare October 5, 2026 23:56
@kinyoklion
kinyoklion force-pushed the rlamb/overrides-dotnet-contract-tests branch from f6043bf to 076e57b Compare October 5, 2026 23:56

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant