Summary
pac canvas unpack reports PA3003 / PA3011 when a canvas package contains a duplicated control property emitted once as a normal rule and once through dynamic/source metadata. The error is actionable, but the diagnostics point only to generated YAML line numbers and do not identify the source control/property ownership conflict in the .msapp JSON.
This came up while round-tripping a Power Apps canvas app package that had a duplicate ZIndex property on a gallery template-derived control. The local remediation was to strip gallery-template ZIndex state before packing, but the tooling error was difficult to map back to source.
Environment
- pac version failed: Command '['pac', '--version']' returned non-zero exit status 1.
- Darwin JNPR-MAC-KH9J9F 25.4.0 Darwin Kernel Version 25.4.0: Thu Mar 19 19:33:25 PDT 2026; root:xnu-12377.101.15~1/RELEASE_ARM64_T6041 arm64
- Source format version observed by
pac canvas unpack: 0.24
- App type: classic canvas app, exported/imported
.msapp
Expected behavior
The tooling should either emit a source-path/control-name/property diagnostic for duplicate property ownership before YAML generation, or normalize duplicate property ownership deterministically when one copy is metadata/dynamic state and the other is an ordinary rule.
Actual behavior
pac canvas unpack fails roundtrip validation with PA3003 and PA3011 and only reports generated YAML line numbers.
Full error log
'pac canvas unpack' and 'pac canvas pack' are deprecated, and will be removed in a future release.
Unpack from /Users/mhickok/Documents/LRE-Workbench/output/lre-workbench-remediations-view-download-20260527T082954Z/LRE-Workbench-remediations-view-download.msapp --> /Users/mhickok/Documents/LRE-Workbench/output/lre-workbench-remediations-view-download-20260527T082954Z/pac-unpack
source format version: 0.24
Microsoft PowerPlatform CLI
Version: 2.4.1+g3799f3e (.NET 10.0.5)
Online documentation: https://aka.ms/PowerPlatformCLI
Feedback, Suggestions, Issues: https://github.com/microsoft/powerplatform-build-tools/discussions
Error: Error PA3003: Parse error: Property was already defined on line 2911 and now on line 2912.
Error PA3011: Roundtrip validation on unpack failed.
You have found a bug; this is not a specific bug, rather an indicator that some bug has been encountered.
Please open an issue and log the entirety of this error log at https://github.com/microsoft/PowerApps-Language-Tooling
Summary
pac canvas unpackreportsPA3003/PA3011when a canvas package contains a duplicated control property emitted once as a normal rule and once through dynamic/source metadata. The error is actionable, but the diagnostics point only to generated YAML line numbers and do not identify the source control/property ownership conflict in the.msappJSON.This came up while round-tripping a Power Apps canvas app package that had a duplicate
ZIndexproperty on a gallery template-derived control. The local remediation was to strip gallery-templateZIndexstate before packing, but the tooling error was difficult to map back to source.Environment
pac canvas unpack:0.24.msappExpected behavior
The tooling should either emit a source-path/control-name/property diagnostic for duplicate property ownership before YAML generation, or normalize duplicate property ownership deterministically when one copy is metadata/dynamic state and the other is an ordinary rule.
Actual behavior
pac canvas unpackfails roundtrip validation withPA3003andPA3011and only reports generated YAML line numbers.Full error log