Skip to content
docs
Arxo ↗

LPK-E0804 — fact cannot be safely printed into .lawcase

For LLMs5 sections

Adding a document pins a typed piece of evidence into the case: the document kind names a package and an entity declared by it. The tool checks the kind against the installed packages before touching anything; when the named package is not installed, there is no declaration to check the document against, so the command refuses. Nothing is created or changed by the refusal.

Installing the package that declares the entity — or naming an entity from a package that is already installed — is the whole fix.

pkgtest
{"files": {"law.toml": "[package]\nname = \"demo.case\"\nversion = \"0.1.0\"\nlanguage = \"0.2\"\nnamespace = \"urn:law:demo:case\"\n\n[[cases]]\nname = \"Main\"\npath = \"main.lawcase\"\n", "main.lawcase": "language \"law.core\" version \"0.2\";\npackage demo.case version \"0.1.0\";\nnamespace \"urn:law:demo:case\";\n\ncase Main {\n}\n", "law.lock": "{\"packages\":[],\"resources\":[]}", "note.txt": "hello doc\n"}, "cmd": ["case", "document", "add", "note.txt", "--as", "note1", "--type", "ghost.pkg::Thing", "--observed", "2026-01-01T00:00:00Z", "--recorded", "2026-01-02T00:00:00Z", "--project", "."], "expect": "LPK-E0804"}
pkgtest
{"files": {}, "cmd": ["init", ".", "--name", "demo.diag"]}

The tool reports this in its own wording:

Output
law: REFUSAL LPK-E0804: --type ghost.pkg::Thing: package not installed (§168.4)
→ present typed terms and reachable evidence; check §168.4

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.