Markdown for LLMs
LPK-E0605 — pack: project not ready for release
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LPK-E0605 — pack: project not ready for release
## What it means
Packing seals a reproducible release: it needs the lock for the exact pins and a fresh empty output directory to write into. A project without a lock cannot be reproduced, and a non-empty output might mix old bytes with new, so either condition stops the command. Nothing is created or changed by the refusal.
Locking first and naming a new empty directory second is the whole fix. A case with its own rules at the root is never published at all.
## Example
```pkgtest
{"files": {"law.toml": "[package]\nname = \"demo.mini\"\nversion = \"0.1.0\"\nlanguage = \"0.2\"\nnamespace = \"urn:law:demo:mini\"\n"}, "cmd": ["pack", "--out", ".", "--project", "."], "expect": "LPK-E0605"}
```
## Fix
```pkgtest
{"files": {}, "cmd": ["init", ".", "--name", "demo.diag"]}
```
## Engine message
The tool reports this in its own wording:
```text
law: REFUSAL: LPK-E0605: .: artifact directory not empty
```
## Related
- [Package, context, snapshots](/recipes/n-package/) — what a project directory holds.