Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 30 Oct 2026. What's built · Install 0.1.0
jadpo
Reference: Identity

Identity · rule

semantic.principal_variant_invalid

Principal variant is not a subject and an optional active condition.

Area 8, Identity; not declinable; the next step is usually the agent's.

example
principal {    user: {        active: Member.suspended == false    }}entity Member {    id: Uuid    suspended: Bool}
text
error: `user:` has no `subject:` --> main.jadpo:2:5  |2 |     user: {  |     ^^^^ no `subject:`  reason: A principal's variant names the unique field that identifies a caller, `subject: <Entity>.<field>`, and may say when a record counts as active, `active: <condition>`.  next: Add `subject: <Entity>.<field>`, naming a unique field (agent)  rule: semantic.principal_variant_invalid  help: https://jadpo.dev/docs/errors/semantic.principal_variant_invalidcheck failed: 1 error, 1 file

Markdown for agents: /docs/errors/semantic.principal_variant_invalid.md.Built from Jadpo main at a707efb.