Skip to content

chore: sync fork with upstream microsoft/main - #2

Merged
cxzyr9hm2t-del merged 318 commits into
mainfrom
claude/full-sync-status-mv873v
Jul 28, 2026
Merged

chore: sync fork with upstream microsoft/main#2
cxzyr9hm2t-del merged 318 commits into
mainfrom
claude/full-sync-status-mv873v

Conversation

@cxzyr9hm2t-del

Copy link
Copy Markdown
Owner

Purpose

  • Brings this fork up to date with microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator@main.
  • The fork's main was pinned at 452419c (merge of psl-mainChanges, 2026-07-07) and had drifted 1359 commits behind upstream, with 0 commits ahead — so this is a clean fast-forward, not a merge.
  • Branch claude/full-sync-status-mv873v now points at upstream 9937162 (merge of PR feat: Modularity Enhancement and New use case for Content Generation microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator#1068 microsoft/dev, 2026-07-23) and is byte-identical to it.
  • Net effect: 399 files changed, ~191,955 insertions, ~82,597 deletions. No commits were authored here — every commit in this PR originates upstream.

Notable content carried in by the sync:

  • Backend test suite reorganized out of src/tests/backend/v4/... into src/tests/backend/{services,tools}/..., with new test_mcp_service.py, test_plan_service.py, test_team_service.py, and test_clarification_tool.py.
  • New src/tests/mcp_server/test_image_service.py and tests/e2e-test/pyproject.toml.
  • Assorted infra, orchestration, and MCP tooling updates from the upstream dev merge.

Does this introduce a breaking change?

  • Yes
  • No

Not a breaking change to any code written in this fork, but it is a large upstream jump: test paths moved, backend service modules were restructured, and infra/Bicep templates changed. Anything pinned to the old src/tests/backend/v4/ layout will need updating.

How to Test

  • Get the code
git clone https://github.com/cxzyr9hm2t-del/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator.git
cd Multi-Agent-Custom-Automation-Engine-Solution-Accelerator
git checkout claude/full-sync-status-mv873v
  • Test the code
# Confirm the branch is an exact fast-forward of upstream main
git fetch https://github.com/microsoft/Multi-Agent-Custom-Automation-Engine-Solution-Accelerator.git main
git rev-list --left-right --count FETCH_HEAD...HEAD   # expect: 0  0

# Run the suites
python -m pytest src/tests/backend
python -m pytest src/tests/mcp_server
flake8 --config=.flake8 src/backend

What to Check

Verify that the following are valid

  • git rev-list --left-right --count <upstream/main>...HEAD reports 0 0 — the branch matches upstream exactly with no fork-local drift.
  • The relocated backend tests are collected and pass under their new src/tests/backend/services/ and src/tests/backend/tools/ paths, and no stale v4/ test paths remain referenced by CI.
  • CI workflows under .github/workflows/ still resolve to existing paths after the test-tree move.
  • No fork-specific customization was silently dropped — the fast-forward is only safe because the fork had zero unique commits, which is worth confirming before merge.

Other Information

  • Fast-forward only; no merge commit and no conflict resolution was required.
  • PR fix: correct CLAUDE.md against the current tree and repair three dead test-config defects #1 (claude/claude-md-docs-fbnno8, adds CLAUDE.md) branches from the old 452419c base and is unaffected by this PR, but will need a rebase onto the synced main before it merges cleanly.
  • GitHub reports 130 open Dependabot vulnerability alerts on the default branch (1 critical, 47 high, 40 moderate, 42 low). Out of scope for this sync, but flagging it.

Generated by Claude Code

marktayl1 and others added 30 commits May 24, 2026 01:27
…erification checklists

- Add RE-INVOCATION CHECK to prevent redundant blueprint calls on resume
- Add explicit VERIFICATION CHECKLIST matching blueprint items exactly
- Separate BLUEPRINT STEP, QUESTION RULE, and EXECUTION phases
- Apply to both HRHelperAgent and TechnicalSupportAgent
Upstream PR #5690 (agent-framework 1.4.0) only fixes the fc_ duplicate
variant, not the orphaned function_call_output variant that triggers
'Progress ledger creation failed' in multi-agent Magentic workflows.
…om AppConfig

- AGENT_TEAM_FILE was never referenced anywhere in the codebase
- REASONING_MODEL_NAME duplicated ORCHESTRATOR_MODEL_NAME (already present)
- azure_config.py: superseded by direct model construction in orchestration_manager
- orchestration/patches.py: superseded by patches/tool_history_leak.py
- Neither module is imported anywhere in the codebase
- agent-framework==1.6.0 (GA umbrella)
- agent-framework-foundry==1.6.0 (Foundry integration)
- All existing imports validated — no breaking changes
…0 upgrade

- Fix agent_template.py: OpenAIChatOptions, cast(PromptAgentDefinition), typed dicts, update.text
- Fix orchestration_manager.py: Optional typing, asyncio.iscoroutine, assert narrowing
- Fix frontend tsconfig.json: add ignoreDeprecations for TS 6.0
- Fix mcp_server lint: factory.py, mcp_server.py, README formatting
- Add pyrightconfig.json (root + mcp_server) for import resolution
- Add/update pylintrc configs to suppress no-name-in-module, import-error
- Fix test_response_handlers.py: type: ignore for Mock .called access
- Collapse duplicate pylint sections in root pyproject.toml
…mework 1.6.0

- Flatten agent_teams JSON to use tool-based config (remove legacy fields)
- Simplify agent_factory.py and agent_template.py for new framework API
- Remove pyrightconfig.json files (consolidated in pyproject.toml)
- Update tests to match simplified agent creation flow
- Add e2e-test pyproject.toml
- Minor lint and type fixes across mcp_server and frontend models
…cess

The MCP image tool was returning direct blob URLs that are inaccessible
from the browser (private container, SAS generation often fails locally).

- Add backend_url config to MCP server settings
- Update image_service to return backend proxy URL when BACKEND_URL is set
- Add BACKEND_URL env var to MCP container in Bicep for deployed scenario

The backend already has a /api/v4/images/{blob_name} proxy endpoint that
fetches from blob storage using its own credential.
…s, upgrade Dockerfiles

- Remove dead Key Vault resource and all references (secret, RBAC, DNS zone)
- Fix circular dependency: BACKEND_URL uses constructed FQDN pattern
- Fix AZURE_OPENAI_IMAGE_DEPLOYMENT: use deployment variable not hardcoded string
- Add 'generated-images' blob container to storage account
- Build SUPPORTED_MODELS dynamically from deployed model names
- Add Cognitive Services OpenAI Contributor role for image generation
- Add gpt5Mini and gptImage params to main.parameters.json
- Add AZURE_OPENAI_IMAGE_DEPLOYMENT to backend container env
- Upgrade all Dockerfiles from EOL Bullseye to Bookworm
- Replace MCP devcontainer base with slim production image
- Remove dead AZURE_AI_SEARCH_API_KEY from app_config.py
- Disable MCP auth by default (runs behind backend Easy Auth)
- Integrate seed_knowledge_bases.py into post-deploy scripts (PS1 + bash)
- azure.yaml now uses main.bicep (pre-built images from public registry)
- azure_custom.yaml explicitly uses main_custom.bicep (build from source)
- Port to main_custom.bicep:
  - Add Cognitive Services OpenAI Contributor role for image generation
  - Build SUPPORTED_MODELS dynamically from deployed model names
  - Add AZURE_OPENAI_IMAGE_DEPLOYMENT to backend container env
  - Add 'generated-images' blob container to storage account
- Suppress no-hardcoded-env-urls on private link DNS zones
- Replace hardcoded login.microsoftonline.com with environment().authentication.loginEndpoint
- Remove unused storageContainerName param
- Remove unused aiSearchIndexName variable (main_custom)
- Remove unnecessary dependsOn on aiFoundryAiServices
- Add non-null assertion on guarded conditional module access
- Suppress BCP318 on unconditional userAssignedIdentity access
- Suppress no-unused-params on azd-injected container image params (main_custom)
- Suppress BCP334 theoretical length warning on container registry name (main_custom)
- Change gptImageModelName from gpt-image-1 to gpt-image-1.5
- Update gptImageModelVersion from 2025-04-15 to 2025-12-16
- Increase gptImageModelCapacity from 1 to 5 RPM (matches main_custom.bicep)
- Add infra/scripts/post_deploy.ps1: interactive use-case menu that seeds
  Cosmos DB teams, uploads blobs, creates search indexes, vector stores,
  and Foundry IQ knowledge bases directly (no backend required)
- Move seed_vector_stores.py and seed_knowledge_bases.py into infra/scripts/
- Remove top-level scripts/ directory (seed_teams.py superseded)
- Update azure.yaml postdeploy hook to invoke post_deploy.ps1
- Update requirements.txt with azure-cosmos, aiohttp, httpx deps
- Fix .gitignore: scope scripts/ rule to top-level only, remove obsolete entry
- Update agent_template.py error message to reflect new script path
- Make APPLICATIONINSIGHTS_CONNECTION_STRING optional in app_config.py
- Fix frontend PlanDataService.tsx TeamAgentBE to Agent mapping
- Remove invalid ignoreDeprecations from tsconfig.json (TS 5.8+)
…s dep

- Add azure-ai-projects to requirements.txt (fixes vector store ModuleNotFoundError)
- Track step failures with $script:hasErrors flag
- Exit with code 1 and report errors when any step fails
- Change WARNING to ERROR with red output for failed steps
- Only print 'ready to use' when all steps succeed
- Detect when toolbox stores outdated project_connection_id for KB tools
- Auto-update toolbox and patch MCPTool at runtime with correct connection
- Add search_connection_name lookup support in mcp_config
- Change AI Search Foundry connection from ApiKey to AAD with managed identity
- Add Search Service Contributor role for user-assigned MI
- Add Cognitive Services OpenAI User role for Search system MI on AI Services
- Add post-deploy step to seed KB MCP RemoteTool connections
…mpts

Domain agents now call request_user_clarification tool directly.
The framework pauses via function_approval_request events and resumes
when the user answers — no intermediary agent routing needed.

- Rewrite clarification_policy to describe tool-based pause/resume
- Remove QUESTION RELAY RULE and relay-based RE-INVOCATION RULE
- Add explicit 'do NOT select UserInteractionAgent' warnings
- Update stale comment in agent_factory.py
…tent gen use case

- Replace Azure OpenAI references with Microsoft Foundry Service
- Add Azure AI Search as a separate pricing line item
- Add Content Generation scenario to use cases table
- Update architecture and agent flow diagrams
fix: updated the post deployment script for selected scenario run and WAF and EXP alignment
Ayaz-Microsoft and others added 24 commits July 17, 2026 16:14
…osix

fix: Add posix in pre-deployment hook in azure.yaml
…-resolve

fix: updated the branch to resolve the conflict
…al-deployment-macae

fix: remove local deployment related files
…l-changes

fix: resolve the destructive action bug
fix: updated the testcases and resolve the conflict
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 5d45e267-6090-4be3-9a18-eaafa983b38c
refactor: remove unused imports in test files for improved code quality
fix: updated the documents and resolve the code quality issue
feat: Modularity Enhancement and New use case for Content Generation
@cxzyr9hm2t-del
cxzyr9hm2t-del marked this pull request as ready for review July 28, 2026 04:58
@cxzyr9hm2t-del
cxzyr9hm2t-del merged commit 4bca7ec into main Jul 28, 2026
12 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.