Add frictionless Fabric context selection - #9
Merged
Kirat Pandya (kiratp) merged 1 commit intoAug 23, 2026
Conversation
Use current-session authentication by default, preserve optional resource-tenant overrides, support Fabric page context and workspace/Lakehouse name discovery, make URL entry optional, add first-run explanation content, and validate strict URL/resource routing behavior. Release the public plugin as 0.4.12. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3be19050-6445-44c4-a307-f3b81fa3bbdd
Kirat Pandya (kiratp)
requested review from
a team
and
a lite review from Copilot
August 23, 2026 20:57
There was a problem hiding this comment.
Pull request overview
This PR updates Project Osmos’ onboarding and routing contract to make Fabric workspace/Lakehouse context selection “frictionless” by prioritizing Fabric page context and name-based discovery (via Microsoft Fabric Skills), while keeping URL parsing as an explicit opt-in path. It also revises authentication to default to the current Azure CLI session and only require a resource-tenant override when needed, with updated docs, helpers, and new contract tests.
Changes:
- Introduces per-run host/environment routing and a first-run experience flow, plus adds public use-case and explainer references.
- Updates auth/routing helpers to support an optional
--resource-tenant-id(with legacy alias support) and aligns poller/diagnostics guidance accordingly. - Adds unit tests for auth/routing and contract assertions; bumps published plugin version to
0.4.12and runs tests in CI.
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
tests/test_resolve_auth_and_routing.py |
Adds tests covering tenant override selection, routing payload construction, and legacy env compatibility. |
tests/test_project_osmos_host_context.py |
Adds contract tests asserting SKILL/refs content (routing, URL parsing strictness, and host-context guidance). |
skills/project-osmos/SKILL.md |
Reworks operating contract: per-run host routing, frictionless context selection, and first-run experience gating. |
skills/project-osmos/scripts/resolve-auth-and-routing.py |
Adds optional resource-tenant override, legacy alias handling, and env normalization mode. |
skills/project-osmos/scripts/resolve-auth-and-routing.ps1 |
Updates PowerShell wrapper to accept optional -ResourceTenantId with -TenantId alias. |
skills/project-osmos/references/url-parsing.md |
Makes URL parsing explicitly opt-in, uses strict path UUID matching, and returns workspace-only URLs to context selection. |
skills/project-osmos/references/troubleshooting.md |
Updates 403 guidance to request resource tenant only after tenant-related auth failures. |
skills/project-osmos/references/project-osmos-use-cases.md |
Adds curated example outcomes for user “examples” requests. |
skills/project-osmos/references/project-osmos-explainer.md |
Adds explainer content for “Explain Project Osmos” onboarding path. |
skills/project-osmos/references/first-run-experience.md |
Defines first-run choice flow without interrupting concrete task requests. |
skills/project-osmos/references/environment-routing.md |
Adds environment routing reference and rules for production runs. |
skills/project-osmos/references/dashboard.md |
Updates dashboard state sourcing notes for workspace/Lakehouse IDs. |
skills/project-osmos/references/dashboard-poller.md |
Updates env guard/refresh recipe to use RESOURCE_TENANT_ID with legacy TENANT_ID support. |
skills/project-osmos/references/auth-and-routing.md |
Documents optional tenant override and updated helper invocation including Fabric API host selection. |
README.md |
Aligns setup docs with session-first Azure CLI behavior and frictionless context selection. |
.github/workflows/plugin-validation.yml |
Adds unittest execution to the Linux validation workflow. |
.github/plugin/marketplace.json |
Bumps plugin version to 0.4.12. |
.claude-plugin/marketplace.json |
Bumps plugin version to 0.4.12. |
.agents/plugins/marketplace.json |
Bumps plugin version to 0.4.12. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
0.4.12.Validation
uv run --no-project python -m unittest discover -s tests -p "test_*.py"uv run --no-project python build/validate_plugin.py --checkuv run --no-project python build/check_version_bump.py --base-ref origin/mainuvx --from ruff==0.15.13 ruff check skills/project-osmos/scripts tests