mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-10-05 14:46:55 +01:00
Foreslå regel: al MCP build/publish kræver absolut projectPath
This commit is contained in:
parent
4c225c4ac3
commit
d1fec64533
1 changed files with 60 additions and 0 deletions
|
|
@ -0,0 +1,60 @@
|
||||||
|
---
|
||||||
|
bc-version: [all]
|
||||||
|
domain: mcp
|
||||||
|
keywords: [al-mcp, projectpath, invalid-uri, relative-path, al_build, al_publish]
|
||||||
|
technologies: [al]
|
||||||
|
countries: [w1]
|
||||||
|
application-area: [all]
|
||||||
|
---
|
||||||
|
|
||||||
|
# al MCP server's al_build/al_publish require an absolute projectPath
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
When calling the `al` MCP server's `al_build` or `al_publish` tools, the `projectPath`
|
||||||
|
parameter must be an absolute path. A relative path — even a simple sibling-folder
|
||||||
|
form like `"../MyApp.Test"` or `"Apps/MyApp.Test"` — reliably fails with:
|
||||||
|
|
||||||
|
Invalid URI: The format of the URI could not be determined.
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
This failure mode is misleading: the error looks like a server-connection or
|
||||||
|
environment problem (matching several of the tool's own suggested causes —
|
||||||
|
"Extension internal error", "Unexpected system state"), not a path-formatting
|
||||||
|
issue. An agent chasing it will burn time retrying authentication, symbol
|
||||||
|
downloads, or environment parameters before finding the actual cause.
|
||||||
|
|
||||||
|
The same relative path works fine on `al_downloadsymbols`, which makes the
|
||||||
|
failure look tool-specific and inconsistent rather than a clear, learnable
|
||||||
|
rule — reinforcing the wrong hypothesis (auth/environment) instead of the
|
||||||
|
right one (path form).
|
||||||
|
|
||||||
|
## How to apply
|
||||||
|
|
||||||
|
Always resolve `projectPath` to an absolute path before calling `al_build` or
|
||||||
|
`al_publish`:
|
||||||
|
|
||||||
|
al_build({ projectPath: "D:\\Repo\\Apps\\MyApp.Test", onlyErrors: true })
|
||||||
|
al_publish({ projectPath: "D:\\Repo\\Apps\\MyApp.Test", skipBuild: true, ... })
|
||||||
|
|
||||||
|
If only `appPath` is available (pointing directly at a built `.app` file) with
|
||||||
|
`skipBuild: true`, a relative path there is tolerated — the bug is specific to
|
||||||
|
`projectPath` on `al_build`/`al_publish`, not to relative paths in general on
|
||||||
|
every parameter of every `al` MCP tool.
|
||||||
|
|
||||||
|
## What NOT to do
|
||||||
|
|
||||||
|
- Do not pass a relative `projectPath` to `al_build` or `al_publish`, even one
|
||||||
|
that resolves correctly on disk (e.g. verified via a shell `cd`).
|
||||||
|
- Do not diagnose "Invalid URI" from these two tools as an auth, tenant, or
|
||||||
|
environment-name problem before first checking whether `projectPath` is
|
||||||
|
relative.
|
||||||
|
- Do not conclude the `al` MCP server itself is broken/unreachable from this
|
||||||
|
error alone — `al_downloadsymbols` and other tools may work fine in the same
|
||||||
|
session with the same relative path.
|
||||||
|
|
||||||
|
## Applies to
|
||||||
|
|
||||||
|
All CURABIS projects using the `al` MCP server (any repo with the standard
|
||||||
|
`al` entry in `.mcp.json`, machine-global per the v24 CURABIS Standard).
|
||||||
Loading…
Add table
Add a link
Reference in a new issue