Skip to content

fix: dev to main - Private Networking for Web Apps, Improve CI Test Reporting, and Strengthen Error Handling#890

Merged
Avijit-Microsoft merged 78 commits into
mainfrom
dev
Apr 27, 2026
Merged

fix: dev to main - Private Networking for Web Apps, Improve CI Test Reporting, and Strengthen Error Handling#890
Avijit-Microsoft merged 78 commits into
mainfrom
dev

Conversation

@Pavan-Microsoft
Copy link
Copy Markdown
Contributor

Purpose

This pull request introduces several improvements and fixes across infrastructure, CI/CD workflows, and Python scripts. The main focus areas are enhanced private networking support for Azure Web Apps, improved test reporting in GitHub Actions, more robust and explicit error handling in Python scripts, and minor code cleanups.

Infrastructure and Deployment Enhancements:

  • Added private DNS zone and private endpoint support for Azure Web Apps in both infra/main.bicep and infra/main_custom.bicep, enabling backend web apps to be deployed with private networking and disabling public network access when private networking is enabled. Related app settings are also conditionally set based on networking mode. [1] [2] [3] [4] [5] [6] [7] [8]
  • Updated the compiled ARM template infra/main.json to reflect these changes, including DNS zone indices and dependency ordering. [1] [2] [3] [4]

CI/CD and Test Reporting:

  • Enhanced the GitHub Actions workflow (.github/workflows/test.yml) to generate and post pytest coverage comments on pull requests, improving visibility into test coverage for changed files. [1] [2]

Python Script Improvements:

  • Replaced generic except: blocks with more explicit except Exception: across several scripts for better error handling and clarity. Added comments to clarify when exceptions are expected and safe to ignore. [1] [2] [3] [4] [5] [6] [7]
  • Minor code cleanups in scripts, including removing unused imports and variable renaming for clarity in file uploads. [1] [2]

Bug Fixes:

  • Removed unnecessary variable initializations in utility functions to streamline code in docs/workshop/docs/workshop/Challenge-5/python/utility.py. [1] [2] [3]

Other:

  • Updated version constraints in azure.yaml for dependencies.

Let me know if you have questions about any of these changes or want to dive deeper into a specific area!

Does this introduce a breaking change?

  • Yes
  • No

Golden Path Validation

  • I have tested the primary workflows (the "golden path") to ensure they function correctly without errors.

Deployment Validation

  • I have validated the deployment process successfully and all services are running as expected with this change.

Roopan-Microsoft and others added 30 commits February 21, 2026 00:11
docs: Update README with AI and Data playbook links
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.5.0 to 6.7.1.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.5.0...6.7.1)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.6 to 6.14.0.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](ajv-validator/ajv@v6.12.6...v6.14.0)

---
updated-dependencies:
- dependency-name: ajv
  dependency-version: 6.14.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [axios](https://github.com/axios/axios) from 1.13.2 to 1.13.5.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](axios/axios@v1.13.2...v1.13.5)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.13.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps  and [minimatch](https://github.com/isaacs/minimatch). These dependencies needed to be updated together.

Updates `minimatch` from 3.1.2 to 3.1.3
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](isaacs/minimatch@v3.1.2...v3.1.3)

Updates `minimatch` from 5.1.6 to 5.1.7
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](isaacs/minimatch@v3.1.2...v3.1.3)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.3
  dependency-type: indirect
- dependency-name: minimatch
  dependency-version: 5.1.7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
…#782)

* Update Troubleshoot doc

* Fixed the tag issue

* Call the variable outside the resource

* docs: Update README with AI and Data playbook links

Added links to AI and Data Engineering playbooks for best practices.

* Regenerated the main.json file

* build: bump pypdf from 6.6.2 to 6.7.2 in /infra/scripts/index_scripts

Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.7.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.7.2)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Niraj Chaudhari (Persistent Systems Inc) <v-nirajcha@microsoft.com>
Co-authored-by: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com>
Co-authored-by: Prekshith D J (Persistent Systems Inc) <v-pdj@microsoft.com>
Co-authored-by: Prajwal-Microsoft <v-dcprajwal@microsoft.com>
Co-authored-by: Avijit-Microsoft <v-aghorui@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update Troubleshoot doc

* Fixed the tag issue

* Call the variable outside the resource

* docs: Update README with AI and Data playbook links

Added links to AI and Data Engineering playbooks for best practices.

* Regenerated the main.json file

* Migrated GitHub Actions authentication from client secrets to OIDC

* Add Azure re-authentication steps to refresh OIDC token in deployment workflows

* combined Ubuntu & Windows workflows into a single pipeline

* build: bump rollup from 2.79.2 to 2.80.0 in /src/App

Bumps [rollup](https://github.com/rollup/rollup) from 2.79.2 to 2.80.0.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/v2.80.0/CHANGELOG.md)
- [Commits](rollup/rollup@v2.79.2...v2.80.0)

---
updated-dependencies:
- dependency-name: rollup
  dependency-version: 2.80.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Niraj Chaudhari (Persistent Systems Inc) <v-nirajcha@microsoft.com>
Co-authored-by: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com>
Co-authored-by: Prekshith D J (Persistent Systems Inc) <v-pdj@microsoft.com>
Co-authored-by: Prajwal-Microsoft <v-dcprajwal@microsoft.com>
Co-authored-by: Avijit-Microsoft <v-aghorui@microsoft.com>
Co-authored-by: Vamshi-Microsoft <v-vamolla@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ci: Migrated GitHub Actions authentication from client secrets to OIDC and combined Ubuntu & Windows workflows into a single pipeline
Bumps  and [minimatch](https://github.com/isaacs/minimatch). These dependencies needed to be updated together.

Updates `minimatch` from 3.1.2 to 3.1.5
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](isaacs/minimatch@v3.1.2...v3.1.5)

Updates `minimatch` from 5.1.6 to 5.1.9
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](isaacs/minimatch@v3.1.2...v3.1.5)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.5
  dependency-type: indirect
- dependency-name: minimatch
  dependency-version: 5.1.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
ci: Migrated GitHub Actions authentication from client secrets to OIDC and combined Ubuntu & Windows workflows into a single pipeline
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.7.3.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.7.3)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the frontend-deps group in /src/App with 12 updates:

| Package | From | To |
| --- | --- | --- |
| [@fluentui/react](https://github.com/microsoft/fluentui) | `8.125.4` | `8.125.5` |
| [@azure/msal-react](https://github.com/AzureAD/microsoft-authentication-library-for-js) | `3.0.25` | `5.0.5` |
| [@azure/msal-browser](https://github.com/AzureAD/microsoft-authentication-library-for-js) | `4.28.1` | `5.3.0` |
| [@fluentui/react-icons](https://github.com/microsoft/fluentui-system-icons) | `2.0.318` | `2.0.320` |
| [@fluentui/react-components](https://github.com/microsoft/fluentui) | `9.72.11` | `9.73.1` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.1` | `25.3.3` |
| [axios](https://github.com/axios/axios) | `1.13.5` | `1.13.6` |
| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `18.3.1` | `19.2.4` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `18.3.28` | `19.2.14` |
| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `18.3.1` | `19.2.4` |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) | `18.3.7` | `19.2.3` |
| [typescript](https://github.com/microsoft/TypeScript) | `4.9.5` | `5.9.3` |


Updates `@fluentui/react` from 8.125.4 to 8.125.5
- [Release notes](https://github.com/microsoft/fluentui/releases)
- [Commits](https://github.com/microsoft/fluentui/compare/@fluentui/react_v8.125.4...@fluentui/react_v8.125.5)

Updates `@azure/msal-react` from 3.0.25 to 5.0.5
- [Release notes](https://github.com/AzureAD/microsoft-authentication-library-for-js/releases)
- [Commits](AzureAD/microsoft-authentication-library-for-js@msal-react-v3.0.25...msal-node-v5.0.5)

Updates `@azure/msal-browser` from 4.28.1 to 5.3.0
- [Release notes](https://github.com/AzureAD/microsoft-authentication-library-for-js/releases)
- [Commits](AzureAD/microsoft-authentication-library-for-js@msal-browser-v4.28.1...msal-browser-v5.3.0)

Updates `@fluentui/react-icons` from 2.0.318 to 2.0.320
- [Changelog](https://github.com/microsoft/fluentui-system-icons/blob/main/docs/releases.md)
- [Commits](https://github.com/microsoft/fluentui-system-icons/commits)

Updates `@fluentui/react-components` from 9.72.11 to 9.73.1
- [Release notes](https://github.com/microsoft/fluentui/releases)
- [Commits](https://github.com/microsoft/fluentui/compare/@fluentui/react-components_v9.72.11...@fluentui/react-components_v9.73.1)

Updates `@types/node` from 25.2.1 to 25.3.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `axios` from 1.13.5 to 1.13.6
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](axios/axios@v1.13.5...v1.13.6)

Updates `react` from 18.3.1 to 19.2.4
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react)

Updates `@types/react` from 18.3.28 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `react-dom` from 18.3.1 to 19.2.4
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react-dom)

Updates `@types/react-dom` from 18.3.7 to 19.2.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

Updates `typescript` from 4.9.5 to 5.9.3
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v4.9.5...v5.9.3)

---
updated-dependencies:
- dependency-name: "@fluentui/react"
  dependency-version: 8.125.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend-deps
- dependency-name: "@azure/msal-react"
  dependency-version: 5.0.5
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: "@azure/msal-browser"
  dependency-version: 5.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: "@fluentui/react-icons"
  dependency-version: 2.0.320
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend-deps
- dependency-name: "@fluentui/react-components"
  dependency-version: 9.73.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend-deps
- dependency-name: "@types/node"
  dependency-version: 25.3.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend-deps
- dependency-name: axios
  dependency-version: 1.13.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend-deps
- dependency-name: react
  dependency-version: 19.2.4
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: "@types/react"
  dependency-version: 19.2.14
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: react-dom
  dependency-version: 19.2.4
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: "@types/react-dom"
  dependency-version: 19.2.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
- dependency-name: typescript
  dependency-version: 5.9.3
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: frontend-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the index-scripts-deps group in /infra/scripts/index_scripts with 4 updates: [openai](https://github.com/openai/openai-python), [pypdf](https://github.com/py-pdf/pypdf), [azure-identity](https://github.com/Azure/azure-sdk-for-python) and [pandas](https://github.com/pandas-dev/pandas).


Updates `openai` from 2.16.0 to 2.24.0
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](openai/openai-python@v2.16.0...v2.24.0)

Updates `pypdf` from 6.7.3 to 6.7.4
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.7.3...6.7.4)

Updates `azure-identity` from 1.25.1 to 1.25.2
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-identity_1.25.1...azure-identity_1.25.2)

Updates `pandas` from 3.0.0 to 3.0.1
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](pandas-dev/pandas@v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 2.24.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: index-scripts-deps
- dependency-name: pypdf
  dependency-version: 6.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: index-scripts-deps
- dependency-name: azure-identity
  dependency-version: 1.25.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: index-scripts-deps
- dependency-name: pandas
  dependency-version: 3.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: index-scripts-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the backend-deps group in /src/api with 17 updates:

| Package | From | To |
| --- | --- | --- |
| [cachetools](https://github.com/tkem/cachetools) | `6.2.6` | `7.0.1` |
| [fastapi](https://github.com/fastapi/fastapi) | `0.128.0` | `0.135.0` |
| [uvicorn[standard]](https://github.com/Kludex/uvicorn) | `0.40.0` | `0.41.0` |
| [pydantic[email]](https://github.com/pydantic/pydantic) | `2.11.10` | `2.12.5` |
| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.0` | `1.38.2` |
| [azure-identity](https://github.com/Azure/azure-sdk-for-python) | `1.25.1` | `1.25.2` |
| [azure-cosmos](https://github.com/Azure/azure-sdk-for-python) | `4.14.5` | `4.15.0` |
| [semantic-kernel[azure]](https://github.com/microsoft/semantic-kernel) | `1.39.2` | `1.39.4` |
| [openai](https://github.com/openai/openai-python) | `1.99.0` | `2.24.0` |
| [pandas](https://github.com/pandas-dev/pandas) | `3.0.0` | `3.0.1` |
| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.39.0` | `1.39.1` |
| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.39.0` | `1.39.1` |
| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.39.0` | `1.39.1` |
| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.39.0` | `1.39.1` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.60b0` | `0.60b1` |
| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.60b0` | `0.60b1` |
| [azure-monitor-opentelemetry](https://github.com/Azure/azure-sdk-for-python) | `1.8.3` | `1.8.6` |


Updates `cachetools` from 6.2.6 to 7.0.1
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](tkem/cachetools@v6.2.6...v7.0.1)

Updates `fastapi` from 0.128.0 to 0.135.0
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](fastapi/fastapi@0.128.0...0.135.0)

Updates `uvicorn[standard]` from 0.40.0 to 0.41.0
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](Kludex/uvicorn@0.40.0...0.41.0)

Updates `pydantic[email]` from 2.11.10 to 2.12.5
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](pydantic/pydantic@v2.11.10...v2.12.5)

Updates `azure-core` from 1.38.0 to 1.38.2
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-core_1.38.0...azure-core_1.38.2)

Updates `azure-identity` from 1.25.1 to 1.25.2
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-identity_1.25.1...azure-identity_1.25.2)

Updates `azure-cosmos` from 4.14.5 to 4.15.0
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-cosmos_4.14.5...azure-cosmos_4.15.0)

Updates `semantic-kernel[azure]` from 1.39.2 to 1.39.4
- [Release notes](https://github.com/microsoft/semantic-kernel/releases)
- [Commits](microsoft/semantic-kernel@python-1.39.2...python-1.39.4)

Updates `openai` from 1.99.0 to 2.24.0
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](openai/openai-python@v1.99.0...v2.24.0)

Updates `pandas` from 3.0.0 to 3.0.1
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](pandas-dev/pandas@v3.0.0...v3.0.1)

Updates `opentelemetry-exporter-otlp-proto-grpc` from 1.39.0 to 1.39.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.39.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.39.0...v1.39.1)

Updates `opentelemetry-exporter-otlp-proto-http` from 1.39.0 to 1.39.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.39.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.39.0...v1.39.1)

Updates `opentelemetry-sdk` from 1.39.0 to 1.39.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.39.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.39.0...v1.39.1)

Updates `opentelemetry-api` from 1.39.0 to 1.39.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/v1.39.1/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-python@v1.39.0...v1.39.1)

Updates `opentelemetry-semantic-conventions` from 0.60b0 to 0.60b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/commits)

Updates `opentelemetry-instrumentation` from 0.60b0 to 0.60b1
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `azure-monitor-opentelemetry` from 1.8.3 to 1.8.6
- [Release notes](https://github.com/Azure/azure-sdk-for-python/releases)
- [Commits](Azure/azure-sdk-for-python@azure-monitor-opentelemetry_1.8.3...azure-monitor-opentelemetry_1.8.6)

---
updated-dependencies:
- dependency-name: cachetools
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: backend-deps
- dependency-name: fastapi
  dependency-version: 0.135.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: backend-deps
- dependency-name: uvicorn[standard]
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: backend-deps
- dependency-name: pydantic[email]
  dependency-version: 2.12.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: backend-deps
- dependency-name: azure-core
  dependency-version: 1.38.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: azure-identity
  dependency-version: 1.25.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: azure-cosmos
  dependency-version: 4.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: backend-deps
- dependency-name: semantic-kernel[azure]
  dependency-version: 1.39.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: openai
  dependency-version: 2.24.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: backend-deps
- dependency-name: pandas
  dependency-version: 3.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: opentelemetry-exporter-otlp-proto-grpc
  dependency-version: 1.39.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: opentelemetry-exporter-otlp-proto-http
  dependency-version: 1.39.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: opentelemetry-sdk
  dependency-version: 1.39.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: opentelemetry-api
  dependency-version: 1.39.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
- dependency-name: opentelemetry-semantic-conventions
  dependency-version: 0.60b1
  dependency-type: direct:production
  dependency-group: backend-deps
- dependency-name: opentelemetry-instrumentation
  dependency-version: 0.60b1
  dependency-type: direct:production
  dependency-group: backend-deps
- dependency-name: azure-monitor-opentelemetry
  dependency-version: 1.8.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the github-actions group with 4 updates: [tj-actions/changed-files](https://github.com/tj-actions/changed-files), [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action), [codfish/semantic-release-action](https://github.com/codfish/semantic-release-action) and [actions/upload-artifact](https://github.com/actions/upload-artifact).


Updates `tj-actions/changed-files` from 47.0.1 to 47.0.4
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](tj-actions/changed-files@e002140...7dee1b0)

Updates `lycheeverse/lychee-action` from 2.7.0 to 2.8.0
- [Release notes](https://github.com/lycheeverse/lychee-action/releases)
- [Commits](lycheeverse/lychee-action@v2.7.0...v2.8.0)

Updates `codfish/semantic-release-action` from 4 to 5
- [Release notes](https://github.com/codfish/semantic-release-action/releases)
- [Changelog](https://github.com/codfish/semantic-release-action/blob/main/RELEASE_NOTES_V5.md)
- [Commits](codfish/semantic-release-action@v4...v5)

Updates `actions/upload-artifact` from 6 to 7
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v6...v7)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-version: 47.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: lycheeverse/lychee-action
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: codfish/semantic-release-action
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
…#791)

* Update Troubleshoot doc

* Fixed the tag issue

* Call the variable outside the resource

* docs: Update README with AI and Data playbook links

Added links to AI and Data Engineering playbooks for best practices.

* Regenerated the main.json file

* Migrated GitHub Actions authentication from client secrets to OIDC

* Add Azure re-authentication steps to refresh OIDC token in deployment workflows

* combined Ubuntu & Windows workflows into a single pipeline

* build: bump pypdf from 6.6.2 to 6.7.4 in /infra/scripts/index_scripts

Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.7.4.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.7.4)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Niraj Chaudhari (Persistent Systems Inc) <v-nirajcha@microsoft.com>
Co-authored-by: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com>
Co-authored-by: Prekshith D J (Persistent Systems Inc) <v-pdj@microsoft.com>
Co-authored-by: Prajwal-Microsoft <v-dcprajwal@microsoft.com>
Co-authored-by: Avijit-Microsoft <v-aghorui@microsoft.com>
Co-authored-by: Vamshi-Microsoft <v-vamolla@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.7.5.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.7.5)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
docs: Include note for azd version 1.23.9 in deployment guide
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.9.1.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.9.1)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.9.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
docs: Include note for azd version 1.23.9 in deployment guide
Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.4 to 3.4.2.
- [Commits](WebReflection/flatted@v3.3.4...v3.4.2)

---
updated-dependencies:
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
ci: refactor notification email templates
Bumps [requests](https://github.com/psf/requests) from 2.32.5 to 2.33.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](psf/requests@v2.32.5...v2.33.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.33.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
* Merge pull request #828 from microsoft/psl-refactor-email

ci: refactor notification email templates

* chore(deps): bump picomatch from 2.3.1 to 2.3.2 in /src/App

Bumps [picomatch](https://github.com/micromatch/picomatch) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](micromatch/picomatch@2.3.1...2.3.2)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 2.3.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Roopan-Microsoft <168007406+Roopan-Microsoft@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.9.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](py-pdf/pypdf@6.6.2...6.9.2)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.9.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 23, 2026

Coverage

Coverage Report •
FileStmtsMissCoverMissing
src/api/common/database
   cosmosdb_service.py107298%31, 177
   sqldb_service.py1872288%18–26, 28–29, 62–63, 65–70, 195, 294, 334
src/api/services
   chat_service.py1721293%59–60, 223–226, 230, 233, 244–245, 265–266
TOTAL130514788% 

Tests Skipped Failures Errors Time
163 0 💤 0 ❌ 0 🔥 6.571s ⏱️

Comment thread tests/e2e-test/config/constants.py Dismissed
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

This PR enhances deployment/security (private networking for Azure Web Apps), improves CI feedback (pytest coverage PR comments), strengthens Python exception handling, and refactors the React frontend to Redux Toolkit with a new fetch-based HTTP client + updated chat/history/citation flows.

Changes:

  • Add private endpoint + private DNS zone support for Azure Web Apps, with conditional public access/app settings for WAF/private deployments.
  • Improve GitHub Actions backend test reporting by publishing pytest coverage/comments to PRs.
  • Refactor frontend state from a custom context/reducer to Redux Toolkit; add new utilities (HTTP client, retry/cache helpers, chat streaming hook) and update components accordingly.

Reviewed changes

Copilot reviewed 75 out of 84 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tests/e2e-test/tests/test_telecom_smoke_tc.py Removes unused variables in e2e telecom smoke tests.
tests/e2e-test/pages/loginPage.py Ensures BasePage initialization via super().__init__.
tests/e2e-test/pages/KMGenericPage.py Ensures BasePage initialization via super().__init__.
tests/e2e-test/pages/HomePage.py Ensures BasePage initialization via super().__init__.
tests/e2e-test/config/constants.py Reformat + env loading for e2e constants (URL/API_URL trimming).
tests/e2e-test/base/base.py Cleanup in BasePage helper (remove unused vars/imports).
src/tests/api/services/test_history_service.py Removes unused import from unit tests.
src/tests/api/services/test_chat_service.py Removes unused import from unit tests.
src/tests/api/helpers/test_utils.py Test cleanup (remove unused mocks/imports).
src/tests/api/common/logging/test_event_utils.py Removes unused test import.
src/tests/api/common/database/test_cosmosdb_service.py Updates test expectations for delete_messages return value.
src/tests/api/auth/test_auth_utils.py Removes unused import from auth tests.
src/tests/api/api/test_api_routes.py Removes unused imports and formatting cleanup.
src/api/services/chat_service.py Adds clarifying comment for best-effort DB close exception handling.
src/api/requirements.txt Updates backend dependency pins.
src/api/common/database/sqldb_service.py Fixes connection return path; narrows exception handling to Exception.
src/api/common/database/cosmosdb_service.py Ensures delete_messages consistently returns a list.
src/App/src/utils/messageUtils.ts Adds message helpers (chart query detection, citation parsing).
src/App/src/utils/chartUtils.ts Adds chart parsing + sentiment color helper.
src/App/src/utils/apiUtils.ts Adds retry/cache/debounce/throttle helpers and error response helper.
src/App/src/types/AppTypes.ts Cleans up unused types/imports.
src/App/src/state/useAppContext.tsx Removes legacy context hook.
src/App/src/state/store.ts Adds Redux Toolkit store configuration.
src/App/src/state/slices/dashboardSlice.ts Adds Redux slice for dashboard/filter/chart state.
src/App/src/state/slices/citationSlice.ts Adds Redux slice for citation panel state.
src/App/src/state/slices/chatSlice.ts Adds Redux slice for chat state and message updates.
src/App/src/state/slices/chatHistorySlice.ts Adds Redux slice + thunks for chat history list/read/rename/delete.
src/App/src/state/slices/appSlice.ts Adds Redux slice for app config, conversation selection, and spinner state.
src/App/src/state/hooks.ts Adds typed Redux hooks (useAppDispatch, useAppSelector).
src/App/src/state/AppReducer.tsx Removes legacy reducer implementation.
src/App/src/state/AppProvider.tsx Removes legacy context provider.
src/App/src/state/ActionConstants.tsx Removes legacy action constants.
src/App/src/logo.svg Removes unused default CRA logo asset.
src/App/src/index.tsx Wires Redux <Provider store={store}> instead of AppProvider.
src/App/src/hooks/useChatApi.ts Adds new chat streaming + persistence hook built on Redux + new API layer.
src/App/src/hooks/useAutoScroll.ts Adds auto-scroll hook for chat UI.
src/App/src/configs/Utils.tsx Avoids mutating inputs; tightens error parsing behavior.
src/App/src/components/Citations/Citations.tsx Updates citations rendering to Redux-based state updates and memoization.
src/App/src/components/Citations/AnswerParser.tsx Simplifies answer parsing (returns citations/markdown directly).
src/App/src/components/CitationPanel/CitationPanel.tsx Updates panel close behavior to Redux; removes raw HTML rendering.
src/App/src/components/CitationPanel/CitationPanel.css CSS cleanup/formatting.
src/App/src/components/ChatHistoryPanel/ChatHistoryPanel.tsx Refactors to Redux selectors and removes legacy context usage.
src/App/src/components/ChatHistoryListItemGroups/ChatHistoryListItemGroups.tsx Refactors to Redux selectors and improves observer cleanup.
src/App/src/components/ChatHistoryListItemCell/ChatHistoryListItemCell.tsx Refactors rename/delete flows to Redux thunks; fixes citation cleanup on delete.
src/App/src/components/ChatHistory/ChatHistory.tsx Removes unused legacy chat history placeholder component.
src/App/src/components/ChatHistory/ChatHistory.css Removes CSS for deleted legacy component.
src/App/src/components/ChatChart/ChatChart.tsx Safer canvas/parent handling for Chart.js + resize observer.
src/App/src/components/Chat/ChatMessageItem.tsx Adds unified renderer for chat messages, charts, citations, typing indicator.
src/App/src/components/Chat/Chat.css Removes commented-out CSS.
src/App/src/components/ChartFilter/ChartFilter.tsx Refactors filter state updates to Redux slice; improves menu list rendering.
src/App/src/components/Chart/Chart.tsx Refactors chart/filter fetching to Redux, consolidates fetch logic, adds fallbacks.
src/App/src/chartComponents/WordCloudChart.tsx Updates re-render triggers and resize observer handling.
src/App/src/chartComponents/HorizontalBarChart.tsx Fixes effect dependency list for chart rendering.
src/App/src/chartComponents/DonutChart.tsx Improves ref usage + safe cleanup.
src/App/src/api/httpClient.ts Adds fetch wrapper with interceptors, query params, timeout, and auth header injection.
src/App/src/api/api.ts Migrates API calls to new httpClient + retry/cache helpers; improves parsing/fallbacks.
src/App/src/Assets/km_logo.png Asset touched in PR metadata (no textual diff shown).
src/App/src/Assets/Sparkle.png Asset touched in PR metadata (no textual diff shown).
src/App/src/Assets/Reset-icon.svg Removes unused reset icon SVG asset.
src/App/src/Assets/ContosoImg.png Asset touched in PR metadata (no textual diff shown).
src/App/package.json Adds Redux dependencies and bumps frontend package versions.
src/App/nginx.conf Adds custom nginx config including API proxy include + security headers.
src/App/env.sh Generates nginx proxy config at startup when BACKEND_API_HOST is set.
src/App/WebApp.Dockerfile Installs custom nginx.conf and ensures proxy conf exists at runtime.
infra/scripts/validate_bicep_params.py Adds clarifying comment for JSON decode error handling.
infra/scripts/index_scripts/requirements.txt Updates pypdf pin.
infra/scripts/index_scripts/04_cu_process_custom_data.py Narrows exception handling; removes unused vars; avoids unused upload result.
infra/scripts/index_scripts/03_cu_process_data_text.py Narrows exception handling; removes unused vars; avoids unused upload result.
infra/scripts/index_scripts/02_create_cu_template_text.py Narrows exception handling with explanation.
infra/scripts/index_scripts/02_create_cu_template_audio.py Narrows exception handling with explanation.
infra/scripts/fabric_scripts/create_fabric_items.py Removes unused imports; narrows exception handling; minor cleanup.
infra/main_custom.bicep Adds Web Apps private DNS zone + private endpoint support; conditional app settings.
infra/main.json Updates compiled ARM template to reflect Bicep changes.
infra/main.bicep Adds Web Apps private DNS zone + private endpoint support; conditional app settings.
docs/workshop/docs/workshop/Challenge-5/python/utility.py Replaces bare except: with except Exception: and removes unnecessary initializations.
azure.yaml Updates required version constraints (removes bicep constraint line).
.github/workflows/test.yml Adds junit XML output and posts pytest coverage comments to PRs.
Files not reviewed (1)
  • src/App/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/App/src/hooks/useChatApi.ts
Comment thread src/App/src/hooks/useChatApi.ts
Comment thread tests/e2e-test/config/constants.py
Comment thread src/App/src/hooks/useChatApi.ts
@Avijit-Microsoft Avijit-Microsoft merged commit 5409392 into main Apr 27, 2026
45 of 48 checks passed
@github-actions
Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.22.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.