Troubleshooting & limitations
Troubleshooting · Core Studio 3.0 · OneBox / UDE / CI · Verified 2026-09-01
Honest limitations — the whole truth, in one place
These are the product’s current boundaries. Each is a typed, designed state in the UI — never a silent failure.
- Off-VM builds: Build/deploy/package require a D365 F&O VM toolchain (xppc, d365fo.tools). Off-VM, those commands show exactly why they’re unavailable.
- net48 debugging: .NET Framework processes cannot be debugged (the adapter is CoreCLR-only). net48 code inside a .NET 8 host remains debuggable; build, edit, and deploy for net48 are fully supported. Logpoints and hit-count conditions are converted to plain breakpoints — and named at session start.
- UDE deploy: support for the cloud-side unified developer experience is authored but awaiting a Microsoft testbed for acceptance — roadmap, badged as such wherever it appears.
- SSRS report design: the WYSIWYG canvas is shipped and certified — pixel-accurate drag-and-drop RDL editing. Its boundary, stated on its face: layout truth only — the canvas never renders data; live SSRS preview stays typed-unavailable (deploy + execute is the fallback); the schematic view remains as the certified fallback.
- In-IDE X++ test execution: shipped — SysTests run in the Testing view through the SysTestConsole provider, UAT-verified. The generated CI stage (headless SysTestConsole) is the addition for pipeline runs.
- Inline AI completion: ghost-text suggestions are roadmap (spec ratified); the AI chat’s multi-file edits are shipped and certified (verified with byte-exact evidence — full-diff preview, approve/deny).
Symptom table
| Symptom | Likely cause | Fix |
|---|---|---|
| No squiggles/hover/symbols anywhere; definition still works | tree-sitter native binding missing | Rebuild the parser’s native binding |
| Full re-index on every launch | Cache fingerprint mismatch or locked/corrupt index DB | Check the [aot] log; delete the root’s .db to force a clean rebuild |
| “database is locked” from the language server at boot | WAL race with the indexing worker | Transient — the language server retries with backoff and recovers |
| Loose files in the AOT root show as their own “models” | Model names come from the first folder segment | Cosmetic — real Microsoft folder layouts group correctly |
| Build Model / Deploy unavailable | Not on a D365 VM, or toolchain not detected | Run on a onebox VM; check the compile-bridge status segment |
| Deploy fails immediately | Not running as Administrator | Restart the Studio elevated (the pipeline gates on this by design) |
| Global search finds elements but no source matches | Tier-4 FTS tail still running | Wait for index-tier-complete; results are flagged partial meanwhile |
| Hover/definition dead on one editor tab only | Tab’s model URI doesn’t match the LSP document | Close and reopen the file from the explorer |