Skip to content

feat(iac): add provider region lister contract#819

Merged
intel352 merged 3 commits into
mainfrom
feat/813-iac-provider-region-lister
Jun 1, 2026
Merged

feat(iac): add provider region lister contract#819
intel352 merged 3 commits into
mainfrom
feat/813-iac-provider-region-lister

Conversation

@intel352
Copy link
Copy Markdown
Contributor

@intel352 intel352 commented Jun 1, 2026

Summary

  • add optional IaCProviderRegionLister gRPC service and generated bindings
  • auto-register/advertise the optional service through the plugin SDK and ContractRegistry
  • wire wfctl typed adapter support and let infra-admin prefer provider-sourced regions with local-catalog fallback

Closes part of #813. Provider plugin implementations will cascade after this core contract PR lands.

Verification

  • GOWORK=off go test ./plugin/external/proto -run TestOptionalServicesHaveDistinctInterfaces -count=1
  • GOWORK=off go test ./plugin/external/sdk -run TestBuildContractRegistry_AdvertisesRegisteredIaCServices -count=1
  • GOWORK=off go test ./cmd/wfctl -run 'TestTypedAdapter_(OptionalReturnsUnimplementedSentinel|RegionLister|ListProviderRegions)' -count=1\n- GOWORK=off go test ./iac/admin/handler -run 'TestListProviders_(UsesProviderRegionListerWhenAvailable|RegionListerErrorFallsBackToLocalCatalog|PopulatesRegionsAndEnginesAndTypes)' -count=1\n- GOWORK=off go test ./plugin/external/... ./iac/admin/... -count=1\n- GOWORK=off go test ./cmd/wfctl -run 'TestTypedAdapter|TestInfraAdminCLI_ListProvidersOutput_RoundTrip' -count=1\n- GOWORK=off golangci-lint run ./plugin/external/... ./iac/admin/... ./cmd/wfctl\n- GOWORK=off go build -o /tmp/wfctl-813 ./cmd/wfctl\n- GOWORK=off go test ./cmd/wfctl -count=1 -timeout 300s\n- git diff --check\n\n## Notes\n- buf lint still fails on existing repo-wide proto lint drift (package/version/service-name conventions); the new service intentionally follows existing IaC service naming.

Copilot AI review requested due to automatic review settings June 1, 2026 15:36
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new optional IaC gRPC contract (IaCProviderRegionLister) and wires it through the plugin SDK, wfctl typed adapter, and infra-admin so provider-sourced regions are preferred when available, with a fallback to the host-side local region catalog.

Changes:

  • Introduces IaCProviderRegionLister + request/response messages in the IaC proto and regenerates Go bindings.
  • Auto-registers/advertises the optional service via the IaC plugin SDK and ContractRegistry, and adds wfctl typed-adapter support (RegionLister() + ListProviderRegions).
  • Updates infra-admin ListProviders to call the optional region lister when available and successful, falling back to local catalog regions otherwise (with tests and updated proto comments).

Reviewed changes

Copilot reviewed 11 out of 14 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
plugin/external/sdk/iacserver.go Auto-registers IaCProviderRegionLister when the provider implements the service.
plugin/external/sdk/contracts_iac_test.go Extends ContractRegistry advertisement tests to include the new optional service.
plugin/external/proto/iac.proto Adds the IaCProviderRegionLister service and region listing messages.
plugin/external/proto/iac.pb.go Regenerated protobuf Go bindings for the new service/messages.
plugin/external/proto/iac_grpc.pb.go Regenerated gRPC Go bindings for the new service.
plugin/external/proto/iac_proto_test.go Ensures optional IaC service interfaces remain distinct, including the new service.
iac/admin/proto/infra_admin.proto Updates AdminProviderSummary comments to reflect provider-lister vs local-catalog sourcing.
iac/admin/proto/infra_admin.pb.go Regenerated Go bindings reflecting updated proto comments.
iac/admin/handler/list_providers.go Prefers provider-sourced regions via an optional host-side interface; normalizes and sets regions_source.
iac/admin/handler/list_providers_test.go Adds coverage for provider-lister success path and error fallback to local catalog.
cmd/wfctl/iac_typed_adapter.go Adds the region-lister service constant, client wiring, and ListProviderRegions helper.
cmd/wfctl/iac_typed_adapter_test.go Adds tests for region lister presence and ListProviderRegions behavior.
cmd/wfctl/iac_typed_fixture_test.go Extends typed-adapter test fixture to register IaCProviderRegionLister.
docs/plans/2026-06-01-iac-provider-region-lister.md Documents the implementation plan and verification steps for the new contract and consumer behavior.
Files not reviewed (2)
  • iac/admin/proto/infra_admin.pb.go: Language not supported
  • plugin/external/proto/iac_grpc.pb.go: Language not supported

Comment thread cmd/wfctl/iac_typed_adapter.go
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 1, 2026

⏱ Benchmark Results

No significant performance regressions detected.

benchstat comparison (baseline → PR)
## benchstat: baseline → PR
baseline-bench.txt:308: parsing iteration count: invalid syntax
baseline-bench.txt:278955: parsing iteration count: invalid syntax
baseline-bench.txt:610996: parsing iteration count: invalid syntax
baseline-bench.txt:937364: parsing iteration count: invalid syntax
baseline-bench.txt:1270962: parsing iteration count: invalid syntax
baseline-bench.txt:1604572: parsing iteration count: invalid syntax
benchmark-results.txt:308: parsing iteration count: invalid syntax
benchmark-results.txt:339135: parsing iteration count: invalid syntax
benchmark-results.txt:640525: parsing iteration count: invalid syntax
benchmark-results.txt:975941: parsing iteration count: invalid syntax
benchmark-results.txt:1297182: parsing iteration count: invalid syntax
benchmark-results.txt:1846348: parsing iteration count: invalid syntax
goos: linux
goarch: amd64
pkg: github.com/GoCodeAlone/workflow/dynamic
cpu: AMD EPYC 9V74 80-Core Processor                
                            │ baseline-bench.txt │       benchmark-results.txt        │
                            │       sec/op       │    sec/op     vs base              │
InterpreterCreation-4               9.468m ± 68%   9.602m ± 68%       ~ (p=0.818 n=6)
ComponentLoad-4                     3.538m ±  1%   3.628m ±  9%  +2.54% (p=0.015 n=6)
ComponentExecute-4                  1.810µ ±  1%   1.828µ ±  1%  +0.99% (p=0.004 n=6)
PoolContention/workers-1-4          1.040µ ±  5%   1.047µ ±  1%       ~ (p=0.732 n=6)
PoolContention/workers-2-4          1.035µ ±  2%   1.045µ ±  1%       ~ (p=0.065 n=6)
PoolContention/workers-4-4          1.013µ ±  2%   1.013µ ±  3%       ~ (p=0.729 n=6)
PoolContention/workers-8-4          1.009µ ±  1%   1.008µ ±  0%       ~ (p=0.887 n=6)
PoolContention/workers-16-4         1.012µ ±  1%   1.015µ ±  1%       ~ (p=0.985 n=6)
ComponentLifecycle-4                3.504m ±  1%   3.607m ±  1%  +2.93% (p=0.002 n=6)
SourceValidation-4                  2.122µ ±  2%   2.109µ ±  3%       ~ (p=0.768 n=6)
RegistryConcurrent-4                776.4n ±  3%   761.1n ±  4%       ~ (p=0.485 n=6)
LoaderLoadFromString-4              3.546m ±  0%   3.623m ±  1%  +2.16% (p=0.002 n=6)
geomean                             18.27µ         18.41µ        +0.77%

                            │ baseline-bench.txt │        benchmark-results.txt         │
                            │        B/op        │     B/op      vs base                │
InterpreterCreation-4               2.027Mi ± 0%   2.027Mi ± 0%       ~ (p=0.589 n=6)
ComponentLoad-4                     2.180Mi ± 0%   2.180Mi ± 0%       ~ (p=0.195 n=6)
ComponentExecute-4                  1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-1-4          1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-2-4          1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-4-4          1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-8-4          1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-16-4         1.203Ki ± 0%   1.203Ki ± 0%       ~ (p=1.000 n=6) ¹
ComponentLifecycle-4                2.183Mi ± 0%   2.183Mi ± 0%       ~ (p=0.554 n=6)
SourceValidation-4                  1.984Ki ± 0%   1.984Ki ± 0%       ~ (p=1.000 n=6) ¹
RegistryConcurrent-4                1.133Ki ± 0%   1.133Ki ± 0%       ~ (p=1.000 n=6) ¹
LoaderLoadFromString-4              2.182Mi ± 0%   2.182Mi ± 0%       ~ (p=0.905 n=6)
geomean                             15.25Ki        15.25Ki       -0.00%
¹ all samples are equal

                            │ baseline-bench.txt │        benchmark-results.txt        │
                            │     allocs/op      │  allocs/op   vs base                │
InterpreterCreation-4                15.68k ± 0%   15.68k ± 0%       ~ (p=1.000 n=6)
ComponentLoad-4                      18.02k ± 0%   18.02k ± 0%       ~ (p=1.000 n=6)
ComponentExecute-4                    25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-1-4            25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-2-4            25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-4-4            25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-8-4            25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
PoolContention/workers-16-4           25.00 ± 0%    25.00 ± 0%       ~ (p=1.000 n=6) ¹
ComponentLifecycle-4                 18.07k ± 0%   18.07k ± 0%       ~ (p=1.000 n=6) ¹
SourceValidation-4                    32.00 ± 0%    32.00 ± 0%       ~ (p=1.000 n=6) ¹
RegistryConcurrent-4                  2.000 ± 0%    2.000 ± 0%       ~ (p=1.000 n=6) ¹
LoaderLoadFromString-4               18.06k ± 0%   18.06k ± 0%       ~ (p=1.000 n=6) ¹
geomean                               183.3         183.3       +0.00%
¹ all samples are equal

pkg: github.com/GoCodeAlone/workflow/middleware
                                  │ baseline-bench.txt │       benchmark-results.txt       │
                                  │       sec/op       │   sec/op     vs base              │
CircuitBreakerDetection-4                 305.4n ± 13%   297.2n ± 2%  -2.67% (p=0.015 n=6)
CircuitBreakerExecution_Success-4         22.68n ±  0%   22.65n ± 1%       ~ (p=0.597 n=6)
CircuitBreakerExecution_Failure-4         70.98n ±  0%   70.91n ± 0%  -0.10% (p=0.028 n=6)
geomean                                   78.92n         78.16n       -0.97%

                                  │ baseline-bench.txt │       benchmark-results.txt        │
                                  │        B/op        │    B/op     vs base                │
CircuitBreakerDetection-4                 144.0 ± 0%     144.0 ± 0%       ~ (p=1.000 n=6) ¹
CircuitBreakerExecution_Success-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
CircuitBreakerExecution_Failure-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                              ²               +0.00%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

                                  │ baseline-bench.txt │       benchmark-results.txt        │
                                  │     allocs/op      │ allocs/op   vs base                │
CircuitBreakerDetection-4                 1.000 ± 0%     1.000 ± 0%       ~ (p=1.000 n=6) ¹
CircuitBreakerExecution_Success-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
CircuitBreakerExecution_Failure-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                              ²               +0.00%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

pkg: github.com/GoCodeAlone/workflow/module
                                 │ baseline-bench.txt │       benchmark-results.txt        │
                                 │       sec/op       │    sec/op     vs base              │
IaCStateBackend_InProcess-4              325.5n ± 15%   329.4n ± 15%       ~ (p=0.699 n=6)
IaCStateBackend_GRPC-4                   10.19m ±  2%   10.28m ±  1%       ~ (p=0.394 n=6)
JQTransform_Simple-4                     661.0n ± 28%   664.2n ± 31%       ~ (p=0.937 n=6)
JQTransform_ObjectConstruction-4         1.417µ ±  1%   1.446µ ±  1%  +2.01% (p=0.009 n=6)
JQTransform_ArraySelect-4                3.378µ ±  1%   3.460µ ±  2%  +2.43% (p=0.002 n=6)
JQTransform_Complex-4                    41.29µ ±  0%   41.90µ ±  1%  +1.47% (p=0.002 n=6)
JQTransform_Throughput-4                 1.732µ ±  0%   1.775µ ±  2%  +2.48% (p=0.002 n=6)
SSEPublishDelivery-4                     63.32n ±  0%   63.76n ±  1%  +0.69% (p=0.009 n=6)
geomean                                  3.843µ         3.899µ        +1.46%

                                 │ baseline-bench.txt │        benchmark-results.txt         │
                                 │        B/op        │     B/op      vs base                │
IaCStateBackend_InProcess-4             416.0 ±  0%       416.0 ± 0%       ~ (p=1.000 n=6) ¹
IaCStateBackend_GRPC-4                5.794Mi ± 11%     5.819Mi ± 8%       ~ (p=0.937 n=6)
JQTransform_Simple-4                  1.273Ki ±  0%     1.273Ki ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_ObjectConstruction-4      1.773Ki ±  0%     1.773Ki ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_ArraySelect-4             2.625Ki ±  0%     2.625Ki ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_Complex-4                 16.31Ki ±  0%     16.31Ki ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_Throughput-4              1.984Ki ±  0%     1.984Ki ± 0%       ~ (p=1.000 n=6) ¹
SSEPublishDelivery-4                    0.000 ±  0%       0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                             ²                 +0.05%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

                                 │ baseline-bench.txt │        benchmark-results.txt        │
                                 │     allocs/op      │  allocs/op   vs base                │
IaCStateBackend_InProcess-4              2.000 ± 0%      2.000 ± 0%       ~ (p=1.000 n=6) ¹
IaCStateBackend_GRPC-4                  6.856k ± 0%     6.859k ± 0%       ~ (p=0.723 n=6)
JQTransform_Simple-4                     10.00 ± 0%      10.00 ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_ObjectConstruction-4         15.00 ± 0%      15.00 ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_ArraySelect-4                30.00 ± 0%      30.00 ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_Complex-4                    328.0 ± 0%      328.0 ± 0%       ~ (p=1.000 n=6) ¹
JQTransform_Throughput-4                 17.00 ± 0%      17.00 ± 0%       ~ (p=1.000 n=6) ¹
SSEPublishDelivery-4                     0.000 ± 0%      0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                             ²                +0.01%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

pkg: github.com/GoCodeAlone/workflow/schema
                                    │ baseline-bench.txt │       benchmark-results.txt        │
                                    │       sec/op       │    sec/op     vs base              │
SchemaValidation_Simple-4                   1.081µ ± 18%   1.107µ ±  4%       ~ (p=0.485 n=6)
SchemaValidation_AllFields-4                1.641µ ±  6%   1.626µ ±  2%       ~ (p=0.699 n=6)
SchemaValidation_FormatValidation-4         1.566µ ±  2%   1.557µ ±  5%       ~ (p=0.848 n=6)
SchemaValidation_ManySchemas-4              1.592µ ±  1%   1.595µ ± 10%       ~ (p=0.818 n=6)
geomean                                     1.450µ         1.454µ        +0.26%

                                    │ baseline-bench.txt │       benchmark-results.txt        │
                                    │        B/op        │    B/op     vs base                │
SchemaValidation_Simple-4                   0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_AllFields-4                0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_FormatValidation-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_ManySchemas-4              0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                                ²               +0.00%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

                                    │ baseline-bench.txt │       benchmark-results.txt        │
                                    │     allocs/op      │ allocs/op   vs base                │
SchemaValidation_Simple-4                   0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_AllFields-4                0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_FormatValidation-4         0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
SchemaValidation_ManySchemas-4              0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                                ²               +0.00%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

pkg: github.com/GoCodeAlone/workflow/store
                                   │ baseline-bench.txt │        benchmark-results.txt        │
                                   │       sec/op       │    sec/op     vs base               │
EventStoreAppend_InMemory-4                1.075µ ± 19%   1.037µ ± 24%        ~ (p=1.000 n=6)
EventStoreAppend_SQLite-4                  1.207m ±  7%   1.088m ±  4%   -9.86% (p=0.004 n=6)
GetTimeline_InMemory/events-10-4           13.26µ ±  4%   13.05µ ±  3%        ~ (p=0.310 n=6)
GetTimeline_InMemory/events-50-4           75.84µ ±  2%   72.62µ ±  5%   -4.24% (p=0.041 n=6)
GetTimeline_InMemory/events-100-4          148.5µ ± 24%   148.3µ ±  3%        ~ (p=1.000 n=6)
GetTimeline_InMemory/events-500-4          581.7µ ±  1%   759.3µ ±  3%  +30.52% (p=0.002 n=6)
GetTimeline_InMemory/events-1000-4         1.194m ±  2%   1.496m ±  4%  +25.31% (p=0.002 n=6)
GetTimeline_SQLite/events-10-4             85.93µ ±  1%   85.28µ ±  1%   -0.75% (p=0.026 n=6)
GetTimeline_SQLite/events-50-4             225.4µ ±  1%   226.2µ ±  2%        ~ (p=0.818 n=6)
GetTimeline_SQLite/events-100-4            393.7µ ±  0%   396.1µ ±  1%        ~ (p=0.065 n=6)
GetTimeline_SQLite/events-500-4            1.723m ±  0%   1.718m ±  1%        ~ (p=0.240 n=6)
GetTimeline_SQLite/events-1000-4           3.363m ±  3%   3.408m ±  1%        ~ (p=0.065 n=6)
geomean                                    206.3µ         211.6µ         +2.56%

                                   │ baseline-bench.txt │        benchmark-results.txt         │
                                   │        B/op        │     B/op      vs base                │
EventStoreAppend_InMemory-4                 764.0 ± 11%     745.0 ± 2%       ~ (p=0.100 n=6)
EventStoreAppend_SQLite-4                 1.982Ki ±  1%   1.981Ki ± 2%       ~ (p=0.775 n=6)
GetTimeline_InMemory/events-10-4          7.953Ki ±  0%   7.953Ki ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-50-4          46.62Ki ±  0%   46.62Ki ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-100-4         94.48Ki ±  0%   94.48Ki ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-500-4         472.8Ki ±  0%   472.8Ki ± 0%  +0.00% (p=0.002 n=6)
GetTimeline_InMemory/events-1000-4        944.3Ki ±  0%   944.3Ki ± 0%  +0.00% (p=0.002 n=6)
GetTimeline_SQLite/events-10-4            16.74Ki ±  0%   16.74Ki ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-50-4            87.14Ki ±  0%   87.14Ki ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-100-4           175.4Ki ±  0%   175.4Ki ± 0%       ~ (p=1.000 n=6)
GetTimeline_SQLite/events-500-4           846.1Ki ±  0%   846.1Ki ± 0%  -0.00% (p=0.013 n=6)
GetTimeline_SQLite/events-1000-4          1.639Mi ±  0%   1.639Mi ± 0%  +0.00% (p=0.002 n=6)
geomean                                   67.15Ki         67.01Ki       -0.21%
¹ all samples are equal

                                   │ baseline-bench.txt │        benchmark-results.txt        │
                                   │     allocs/op      │  allocs/op   vs base                │
EventStoreAppend_InMemory-4                  7.000 ± 0%    7.000 ± 0%       ~ (p=1.000 n=6) ¹
EventStoreAppend_SQLite-4                    53.00 ± 0%    53.00 ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-10-4             125.0 ± 0%    125.0 ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-50-4             653.0 ± 0%    653.0 ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-100-4           1.306k ± 0%   1.306k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-500-4           6.514k ± 0%   6.514k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_InMemory/events-1000-4          13.02k ± 0%   13.02k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-10-4               382.0 ± 0%    382.0 ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-50-4              1.852k ± 0%   1.852k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-100-4             3.681k ± 0%   3.681k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-500-4             18.54k ± 0%   18.54k ± 0%       ~ (p=1.000 n=6) ¹
GetTimeline_SQLite/events-1000-4            37.29k ± 0%   37.29k ± 0%       ~ (p=1.000 n=6) ¹
geomean                                     1.162k        1.162k       +0.00%
¹ all samples are equal

Benchmarks run with go test -bench=. -benchmem -count=6.
Regressions ≥ 20% are flagged. Results compared via benchstat.

@codecov
Copy link
Copy Markdown

codecov Bot commented Jun 1, 2026

Codecov Report

❌ Patch coverage is 54.16667% with 33 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
plugin/external/proto/iac_grpc.pb.go 0.00% 29 Missing ⚠️
cmd/wfctl/iac_typed_adapter.go 88.88% 1 Missing and 1 partial ⚠️
iac/admin/handler/list_providers.go 89.47% 1 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

Copilot AI review requested due to automatic review settings June 1, 2026 16:00
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 12 out of 15 changed files in this pull request and generated no new comments.

Files not reviewed (2)
  • iac/admin/proto/infra_admin.pb.go: Language not supported
  • plugin/external/proto/iac_grpc.pb.go: Language not supported

@intel352 intel352 merged commit 52066f4 into main Jun 1, 2026
29 checks passed
@intel352 intel352 deleted the feat/813-iac-provider-region-lister branch June 1, 2026 16:12
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.

2 participants