Skip to content

Add frictionless Fabric context selection - #9

Merged
Kirat Pandya (kiratp) merged 1 commit into
mainfrom
users/kiratpandya/frictionless-fabric-context
Aug 23, 2026
Merged

Add frictionless Fabric context selection#9
Kirat Pandya (kiratp) merged 1 commit into
mainfrom
users/kiratpandya/frictionless-fabric-context

Conversation

@kiratp

Copy link
Copy Markdown
Contributor

Summary

  • Make workspace and Lakehouse selection frictionless by reusing Fabric page context, resolving user-supplied names with Microsoft Fabric Skills, or accepting a browser URL when explicitly selected.
  • Use the current Azure CLI session by default and request a resource-tenant override only after a tenant-related authentication failure.
  • Add schema-flexible detection for Copilot running in Microsoft Fabric while keeping every other agent on one generic path.
  • Add the first-run experience, Project Osmos explainer, and public use-case references without interrupting concrete task requests.
  • Parse workspace and Lakehouse IDs only from strict URL path UUID segments and return workspace-only URLs to context selection.
  • Add routing/auth contract tests and publish plugin version 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 --check
  • uv run --no-project python build/check_version_bump.py --base-ref origin/main
  • uvx --from ruff==0.15.13 ruff check skills/project-osmos/scripts tests

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

Copilot AI 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.

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.12 and 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.

@kiratp
Kirat Pandya (kiratp) merged commit 5162ef1 into main Aug 23, 2026
5 checks passed
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