Ticket Field
ticket.ticket-field
Ensures a configured ticket field, such as a Jira custom field, has an allowed value.
Compatible Integrations
This guardrail works with the following integrations. Click to see how to use Ticket Field with each collector.
Enable This Guardrail
Add the parent policy to your lunar-config.yml to enable this guardrail.
policies:
- uses: github://earthly/lunar-lib/policies/ticket@v1.0.5
include: [ticket-field]
# with: ...
How This Guardrail Works
This guardrail is part of the Ticket Guardrails policy. It evaluates data collected by integrations and produces a pass/fail check with actionable feedback.
When enabled, this check runs automatically on every PR and in AI coding workflows, providing real-time enforcement of your engineering standards.
Learn How Lunar Works →Configuration Options
These inputs can be configured in your lunar-config.yml to customize
how the parent policy (and this guardrail) behaves.
| Input | Required | Default | Description |
|---|---|---|---|
allowed_sources
|
Required | — | Comma-separated list of allowed ticket sources (e.g. "jira,linear"). Empty = any. |
allowed_statuses
|
Required | — | Comma-separated list of allowed ticket statuses (empty = any) |
disallowed_statuses
|
Required | — | Comma-separated list of disallowed ticket statuses (empty = none) |
allowed_types
|
Required | — | Comma-separated list of allowed issue types (empty = any) |
max_ticket_reuse
|
Optional |
3
|
Maximum number of other PRs allowed to reference the same ticket |
ticket_field
|
Required | — | Field the `ticket-field` check reads, as a path relative to the ticket (e.g. native.jira.fields.customfield_10042 for a Jira custom field). Empty skips the check. |
allowed_field_values
|
Required | — | Values `ticket-field` accepts: comma-separated, one per line, or a JSON array for values that contain a comma. Empty accepts any value, so the field only has to be set. |
ticket_path
|
Optional |
.vcs.pr.ticket
|
Where every check reads the ticket from. Point a second import of this policy at the path a second jira collector import records to (e.g. .vcs.pr.architecture_review) to check that reference as well. |
skip_authors
|
Required | — | PR author logins whose PRs every check skips, such as dependency bots (e.g. dependabot[bot], renovate[bot]). Comma-separated or one per line; matched exactly, ignoring case, so keep the [bot] suffix GitHub gives an app. Empty skips no one. |
Ticket Guardrails
This guardrail is part of the Ticket Guardrails policy, which includes 7 guardrails for devex build and ci.
Ready to Automate Your Standards?
See how Lunar can turn your AGENTS.md, engineering wiki, compliance docs, or postmortem action items into automated guardrails with our 300+ built-in guardrails.