web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Copilot Studio / Git Push corrupts Invo...
Copilot Studio
Suggested Answer

Git Push corrupts InvokeFlowAction nodes — flow calls silently fail after sync

(0) ShareShare
ReportReport
Posted on by
Summary: 
When a topic YAML file containing `InvokeFlowAction` nodes is **pushed** to Copilot Studio via the Git integration, the flow action bindings (connection references and auth context) are silently dropped. After the push, the affected flows are never invoked at runtime — no error is thrown, the flow call is simply skipped. This makes Git-based source control unusable for any topic that calls Power Automate flows.
Env:
- **Platform version**: 2026.3.5.12304
- **UX version**: 0.0.20260407.2-26.04.07-prod
- **Solution version**: 2026.2.4.19561674
- **Insights app solution version**: 1.0.3.99
- **Relevance search solution version**: 1.0.0.618
- **AI extensions base solution version**: 1.0.1.1588
- **AI platform extensions components solution version**: 1.0.0.300
- **Cluster geo**: US
- **Cluster environment**: Prod
 
## Steps to Reproduce
 
### Prerequisites
1. A Copilot Studio agent with Git integration enabled
2. A topic (e.g., `ValueCaseMain`) that calls one or more Power Automate flows via `InvokeFlowAction`
3. The flows work correctly when edited via the GUI canvas
 
### Reproduction Steps
1. In Copilot Studio, open the agent and confirm the topic works:
   - Open the topic that calls flows (e.g., `ValueCaseMain`)
   - Test in the Test pane — verify flows are invoked (check run history in Power Automate)
2. Use **Get** (pull) to sync the topic YAML to your local Git repo
3. Make a minor change to the topic YAML file locally (e.g., edit a `SendActivity` text string)
4. **Push** the modified YAML back to Copilot Studio via Git sync
5. Test the topic again in the Test pane
 
### Expected Result
- Flows should still be invoked after the push
- `InvokeFlowAction` nodes should retain their connection references and auth bindings
 
### Actual Result
- Flows are **silently skipped** — no error, no run history entry in Power Automate
- The `InvokeFlowAction` node appears to exist in the YAML, but the connection reference binding is lost
- The only way to restore functionality is to **manually re-add the flow call via the GUI canvas**
 
## Impact
- **Severity**: High — blocks Git-based development workflow for any agent using Power Automate flows
- **Workaround**: Never push topic files containing `InvokeFlowAction`. Instead, make changes via the GUI and use **Get** (pull) only. This defeats the purpose of source control for the core topic.
- **Scope**: Affects all topics with flow references, not just a specific topic
 
## Additional Context
 
### What we verified
- The YAML structure of `InvokeFlowAction` is identical before Get and after Push
- Connection references exist in `connectionreferences.mcs.yml` and are not modified
- Flows themselves are functional (can be triggered manually from Power Automate)
- Adding the same flow call via the GUI canvas immediately restores functionality
- This confirms the issue is in how Push processes `InvokeFlowAction` — it does not re-establish the connection reference binding that the GUI creates
 
### Affected YAML structure (example)
```yaml
- kind: InvokeFlowAction
  input:
    binding:
      flowId: <your-flow-guid>  # YourFlowName
      userId: =System.User.Id
  output:
    binding:
      resultVar: Topic.yourVariable
```
 
### Files involved
- Topic file: `topics/<YourTopic>.mcs.yml`
- Connection references: `connectionreferences.mcs.yml`
- Affected flows: Any flow referenced via `InvokeFlowAction`
 
### Workaround currently in use
We maintain a strict rule: **never push topic files that contain `InvokeFlowAction`**. All edits to those topics are done manually in the GUI, then synced to Git via Get (pull). This is documented but fragile and blocks proper CI/CD workflows.
 
## Request
Please fix the Git Push mechanism to correctly preserve `InvokeFlowAction` connection reference bindings, so that topics with flow calls can be safely round-tripped through source control
 
If wrong forum/topic please excuse me and guide me
 
Thanks,
Robin
I have the same question (0)
  • Suggested answer
    AP-26031104-0 Profile Picture
    Microsoft Employee on at
    Thanks for reporting this — based on the behavior described, this appears to be an issue with how Git Push processes InvokeFlowAction bindings.
     Suggested Initial Fixes
    • Ensure that during Git Push, InvokeFlowAction nodes are not only deserialized from YAML but also fully rehydrated with runtime binding metadata, including:
    1. Connection reference mapping
    2. Authentication context
    • Add a binding resolution step that maps flowId to the correct connection reference defined in connectionreferences.mcs.yml
    • As a safeguard, introduce validation at publish/runtime to detect missing bindings and raise an explicit error instead of silently skipping flow execution
     Workaround (current)
    • Avoid pushing topic files that contain InvokeFlowAction
    • Make changes to such topics via the GUI canvas only
    • Use Git Get (pull) to sync changes back to source control

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the March Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Copilot Studio

#1
Valantis Profile Picture

Valantis 624

#2
Vish WR Profile Picture

Vish WR 181

#3
Haque Profile Picture

Haque 180

Last 30 days Overall leaderboard