Skip to content

feat: add shared Foundry extension feature access - #10636

Draft
Hui Miao (huimiu) wants to merge 1 commit into
hui/foundry-feature-flags-corefrom
hui/foundry-shared-feature-access
Draft

Hui Miao (huimiu) wants to merge 1 commit into
hui/foundry-feature-flags-corefrom
hui/foundry-shared-feature-access

Conversation

@huimiu

Copy link
Copy Markdown
Member

Summary

Add shared Foundry feature access without migrating existing behavior or introducing a production feature. This is the top layer of the two-PR stack, based on #10635 (hui/foundry-feature-flags-core).

Changes

  • Add extensions/featureflags.IsEnabled(ctx, client, featureID, environmentName) in the existing root Go module, backed by the shared Alpha registry and pure source evaluator.
  • OR the canonical process flag, the selected environment's raw dotenv values, global Alpha config, and every service's environment map. Service hosts and project-service counts do not restrict enablement, and conflicting service maps are never merged.
  • Forward explicit environment selection and return genuine loading, decoding, file-read, and transport failures. Recognize only known optional no-project/no-default-environment absence when no environment was explicitly selected.
  • Add focused tests and package documentation. All three changed files are under cli/azd/extensions/featureflags/; there are no dependency, manifest, registry, session carry-over, or other runtime behavior changes.

Validation

Using Go 1.26.4:

  • Focused package tests pass, including all 16 four-source combinations; 97.4% statement coverage, with the snapshot-loading/evaluation and optional-scope functions at 100%.
  • Five shuffled repetitions pass, including conflicting service order and invocation isolation cases.
  • go vet, package-scoped golangci-lint (zero issues), source/README spelling, copyright headers, comment lengths, and git diff --check pass.
  • Race testing could not run because CGO is disabled and no C compiler is available in this Windows environment.

Compatibility

Adoption requires an azd host containing the lower PR's canonical Foundry process-opt-in launch preservation; an SDK update alone cannot restore a flag lost by an older host. No unreleased version is claimed to guarantee support. Existing host environment-loading behavior, including remote resolution or environment-name normalization, is unchanged.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
26 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@github-actions github-actions Bot added the ext-foundry azure.ai.{agents,connections,inspector,projects,routines,skills,toolboxes}, microsoft.foundry label Oct 20, 2026
@huimiu
Hui Miao (huimiu) added this pull request to stack #10637 October 20, 2026 13:32
@huimiu
Hui Miao (huimiu) marked this pull request as draft October 20, 2026 13:46

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

ext-foundry azure.ai.{agents,connections,inspector,projects,routines,skills,toolboxes}, microsoft.foundry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant