Validate mutual exclusion of StreamRoute sni and snis
Open
@bzp2010 is already working on this.
Since Sep 18, 2026.
- Dominant language
- Rust
- Stars
- 70
- Forks
- 15
- Avg merge
- 1h 58m
- Merged PRs (30d)
- 42
Description
Summary
Add ADC validation that rejects a stream route when both sni and snis are configured.
Rationale
The current schema and backend conversion paths can pass both fields to a backend. The gateway or API7 control plane rejects this invalid configuration. ADC should reject the configuration before it reaches a backend.
Affected areas
- TypeScript stream-route schema validation in
libs/sdk/src/core/schema.ts - Rust stream-route schema validation in
rust/crates/adc-sdk/src/resources/route.rs - Generated TypeScript and Rust schema artifacts, if required
- Validation tests for all supported backend write paths
Acceptance criteria
- ADC rejects any
StreamRoutethat sets bothsniandsnis. - A route with only
sniremains valid. - A route with only
snisremains valid. - TypeScript and Rust validation tests cover the invalid and valid configurations.
- The configuration fails before backend-specific conversion or write operations.
Backlinks
- Pull request: https://github.com/api7/adc/pull/618
- Requesting comment: https://github.com/api7/adc/pull/618#issuecomment-5727794393
- Requested by: @bzp2010
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.