Skip to content

[OPEN] Formalize policy DSL grammar (v0.2) #5

Description

@Faux16

Context

From concept-and-spec.md §3:

[OPEN] — DSL grammar formalization. The shape above is illustrative; v0.2 will publish a JSON Schema for the DSL with a reference parser.

Both SDKs already ship Phase β policy DSL evaluators against the illustrative shape, but the grammar isn't yet pinned down by schema. That makes it hard for third parties to build their own evaluator or for the spec to evolve without breaking interop.

Goal

Promote the illustrative DSL to a formal grammar:

  1. Publish schemas/policy-dsl.json (JSON Schema Draft 2020-12) that constrains the DSL surface — operators, value types, comparison semantics, composition rules.
  2. Document the evaluation order in decisions/0002-dsl-grammar.md (or whatever the next ADR number is) — short-circuit semantics, conflict resolution between rules, default-deny vs. default-allow.
  3. Confirm the existing test vectors still pass; expand them to cover any newly-pinned edge cases.

Comment period

This is a substantive spec change — 2-week public comment period per GOVERNANCE.md.

Why this matters

  • Third-party evaluators need a contract to implement against.
  • The CTS Go policy evaluator (tracked separately) needs this before it can be cross-validated.

Pointers

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedMaintainers welcome outside help on this issuestatus:needs-triageNewly opened, not yet assessed by a maintainertype:rfcSpec change requiring an RFC and comment period (per GOVERNANCE.md)

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions