Markdown for LLMs
LDC-E1357 — Foreign policy of the wrong kind
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LDC-E1357 — Foreign policy of the wrong kind
## What it means
A case context can borrow a policy from another package by qualified
name — but the position decides what kind of thing fits: a deadline
axis takes a deadline policy, a temporal axis a temporal one. The
compiler checks the target's kind against the position, not just its
name. A public name of the wrong kind is refused at the axis: borrowing
an entity where a policy belongs would silently change what the case
runs under.
The repair is to point at a real policy of the needed kind, or to
declare one locally. The name resolving is not enough; the kind must
match the seat.
## Example
```run
{"argv": ["lower-case", "$ROOT/case.law", "--imports", "$ROOT/imports.json"], "files": {"case.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:law:demo:diagnostics\";\n\nentity A;\n\ncase Solo {\n context {\n legal_time @2026-08-26;\n deadline_policy dep.shapes::Cal;\n }\n}\n", "imports.json": "[{\"package\": {\"name\": \"dep.shapes\", \"version\": \"0.1.0\", \"namespace\": \"urn:law:dep:shapes\", \"semanticHash\": \"sha256:0\"}, \"contentHash\": \"sha256:0\", \"exports\": [\"Cal\"], \"exportKinds\": {\"Cal\": \"entity\"}}]"}, "expect": "LDC-E1357"}
```
## Fix
```run
{"argv": ["lower-case", "$ROOT/case.law", "--imports", "$ROOT/imports.json"], "files": {"case.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:law:demo:diagnostics\";\n\nentity A;\n\ncase Solo {\n context {\n legal_time @2026-08-26;\n deadline_policy dep.shapes::Cal;\n }\n}\n", "imports.json": "[{\"package\": {\"name\": \"dep.shapes\", \"version\": \"0.1.0\", \"namespace\": \"urn:law:dep:shapes\", \"semanticHash\": \"sha256:0\"}, \"contentHash\": \"sha256:0\", \"exports\": [\"Cal\"], \"exportKinds\": {\"Cal\": \"deadline_policy\"}}]"}, "expect": null}
```
## Engine message
The engine reports this in its own wording:
```text
$ROOT/case.law:10:25: error LDC-E1357: deadline_policy axis §168.2 dep.shapes::Cal: target has kind "entity", but this position allows only "deadline_policy" (§24)
```
## Related
- [LDC-E1332](/diagnostics/LDC-E1332/) — a policy axis in an unresolvable shape.
- [LDC-E1105](/diagnostics/LDC-E1105/) — reaching for a dependency nobody presents.