Markdown for LLMs
LPK-E0103 — --offline on a registry-reading command
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LPK-E0103 — --offline on a registry-reading command
## What it means
The offline flag belongs to one command only: installing, which restores files strictly from the lock and never picks versions. Every other command that reads the registry — adding, updating, anything that resolves — needs the network by definition, so passing the flag there is refused up front. Nothing is created or changed by the refusal.
There is a second shape of the same refusal: installing offline while a locked file is missing from the local directories. Offline mode cannot fetch what is absent, so it names the missing file instead of reaching out. Reconnecting, or restoring the file first, clears the way.
## Example
```pkgtest
{
"files": {
"law.toml": "[package]\nname = \"demo.case\"\nversion = \"0.1.0\"\nlanguage = \"0.2\"\nnamespace = \"urn:law:demo:case\"\n\n[dependencies]\n\"test.leaf\" = \"0.1.0\"\n\n[[cases]]\nname = \"Main\"\npath = \"main.lawcase\"\n",
"law.lock": "{\n \"dependencyEdges\": [\n {\n \"features\": [],\n \"from\": \"demo.case\",\n \"requested\": \"0.1.0\",\n \"resolved\": \"0.1.0\",\n \"to\": \"test.leaf\"\n }\n ],\n \"languageSemantics\": \"law.core/0.2.0\",\n \"lockVersion\": \"0.1\",\n \"packages\": [\n {\n \"contentHash\": \"sha256:3740fe61c6f25b5f6af629b26503581aaa3f3cf8193f0b78e441870a7117a6b7\",\n \"features\": [\n \"core-executable\"\n ],\n \"name\": \"test.leaf\",\n \"namespace\": \"urn:test:leaf\",\n \"registryId\": \"local\",\n \"resolverUri\": \"registry://local/test.leaf/0.1.0\",\n \"version\": \"0.1.0\"\n }\n ],\n \"resolutionHash\": \"sha256:bdfee0b88ea42c67bf6239831a035db012db880bdde7b4cfbc947b5bb1fe1bfd\",\n \"root\": {\n \"contentHash\": \"sha256:8cea7321ec0f0a4912ea8c4e9d51da7eec79b519a12b9c5e5434116df49d1e60\",\n \"name\": \"demo.case\",\n \"namespace\": \"urn:law:demo:case\",\n \"version\": \"0.1.0\"\n }\n}\n"
},
"cmd": [
"install",
"--offline",
"--project",
"."
],
"expect": "LPK-E0103"
}
```
## Fix
```pkgtest
{"files": {}, "cmd": ["init", ".", "--name", "demo.diag"]}
```
## Engine message
The tool reports this in its own wording:
```text
law: REFUSAL LPK-E0103: offline: no deps/test.leaf.lawir.json
```
## Related
- [Package, context, snapshots](/recipes/n-package/) — what a project directory holds.