The tools
Both are annotated honestly, and a client that respects annotations can rely on them: neither toolwrites to a database or to a file.
| Tool | Annotations | What it does |
|---|---|---|
sqlmc_script_complete |
readOnly, openWorld |
What can be written at a caret in a T-SQL script (§5) |
sqlmc_list_coverage |
readOnly, openWorld |
Read every database in a target group and report what differs (§6) |
Both are annotated honestly, and a client that respects annotations can rely on them: neither tool
writes to a database or to a file. openWorld is set because both reach servers outside the
client's control.
Errors arrive on two channels, and the split is deliberate:
- A call whose arguments do not work throws a protocol error. That is the caller failing to use the tool, not the tool having something to report.
- Everything the workspace or the databases refuse comes back in
errorsas a code, so the codes on the wire stay the ones an agent can look up and branch on rather than a mixture of those and each tool's own opinions.