docs← Back to article

Markdown for LLMs

LDC-Q1002 — The snapshot document names no package

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# LDC-Q1002 — The snapshot document names no package

## What it means

Every snapshot document carries its package identity: a name and a
namespace that tie the stored rows back to the package they were built
from. When a document arrives without that identity, the engine cannot
attribute its rows to any package, so the load stops instead of mixing
ownerless rows into the answer.

Rebuild the snapshot from its package so the identity travels with the
document, then run the query again. The query text itself is not at
fault.

## Example

```run
{"argv": ["query", "from r in rules select r", "--path", "$ROOT/world.json"], "expect": "LDC-Q1002", "files": {"world.json": "{\"nodes\": [], \"package\": {}}"}}
```

## Fix

```run
{"argv": ["query", "from r in rules select r", "--path", "$ROOT/world.json"], "expect": "LDC-Q1002", "files": {"world.json": "{\"nodes\": [], \"package\": {\"name\": \"demo.diagnostics\", \"namespace\": \"urn:law:demo:diagnostics\"}}"}}
```

## Engine message

The engine reports this in its own wording:

```text
LDC-Q1002: $ROOT/world.json: CLIR without package.name/namespace.
```

## Related

- [Questions to the engine](/constructs/queries/) — what a snapshot carries.
- [LDC-Q1005](/diagnostics/LDC-Q1005/) — when the snapshot bytes cannot be read at all.