II.
Grammar overview
Reference · livegrammar:adapters-triggers-query-dsl
adapters-triggers TriggerQuery DSL overview
Inspect the raw attributes, linked wiki pages, and inbound or outbound graph edges for grammar:adapters-triggers-query-dsl.
Attributes
displayName
adapters-triggers TriggerQuery DSL
dslName
TriggerQuery
surfaceVariants
- compact-key-value
- json-object
- expression-clause
productions
- <Query> ::= <CompactQuery> | <JsonQuery>
- <CompactQuery> ::= <Segment> ( WS <Segment> )*
- <Segment> ::= <Pair> | <BareTerm>
- <Pair> ::= <Key> COLON <Value>
- <Key> ::= 'event' | 'action' | 'text' | 'contains' | 'diff' | 'path' | 'file' | 'branch' | 'label'
- <Value> ::= STRING_LITERAL
- <BareTerm> ::= STRING_LITERAL ; folds into query.text
- <JsonQuery> ::= '{' <JsonField> ( ',' <JsonField> )* '}' ; parsed via JSON.parse if input.startsWith('{')
- <JsonField> ::= '"' <Key> '"' ':' ( STRING | LIST<STRING> )
- <JsonField> ::= '"expression"' ':' STRING ; <ExprClause>
- <ExprClause> ::= <ExprAtom> ( WS '&&' WS <ExprAtom> )*
- <ExprAtom> ::= <Field> WS '~' WS QUOTED_STRING ; case-insensitive contains
- <ExprAtom> ::= <Field> WS '==' WS QUOTED_STRING ; equality (membership for list-valued fields)
- <Field> ::= IDENT ( ('.' | '-') IDENT )*
- <PathGlob> ::= ( '**' | '*' | '?' | LITERAL )* ; ** = any, * = non-slash, ? = single, all else literal
tokens
- IDENT := [A-Za-z][\w.-]*
- STRING_LITERAL := non-whitespace run after the COLON
- QUOTED_STRING := single- or double-quoted string
- COLON := ':'
- WS := /\s+/
- AMP_AMP := '&&'
- TILDE := '~'
- EQ_EQ := '=='
operators
- ~ : binary contains (case-insensitive substring; for list-valued fields, joins with newline first)
- == : binary equals (for list-valued fields, membership)
- && : binary clause-and (whitespace-padded; only top-level conjunction supported)
- : : key-value separator in compact form
globSyntax
** matches any (including '/'); * matches non-slash; ? matches single non-slash; all other regex specials are literally escaped (packages/triggers-adapter/src/query.ts:20-37).
parserEntrypoint
parseQuery (packages/triggers-adapter/src/query.ts:75); evaluateExpression (packages/triggers-adapter/src/query.ts:55); globToRegExp (packages/triggers-adapter/src/query.ts:20)
sourceCitation
packages/triggers-adapter/src/query.ts:20-100
Outgoing edges
grammar_parses_for5
- operational-trigger:adapters-triggers-github·OperationalTriggeradapters-triggers — GitHub backend
- operational-trigger:adapters-triggers-gitlab·OperationalTriggeradapters-triggers — GitLab backend
- operational-trigger:adapters-triggers-bitbucket·OperationalTriggeradapters-triggers — Bitbucket backend
- operational-trigger:adapters-triggers-generic-webhook·OperationalTriggeradapters-triggers — generic webhook backend
- operational-trigger:adapters-triggers-action·OperationalTriggerAgent Adapter — reusable GitHub Action composite
Incoming edges
parsed_by_grammar5
- operational-trigger:adapters-triggers-github·OperationalTriggeradapters-triggers — GitHub backend
- operational-trigger:adapters-triggers-gitlab·OperationalTriggeradapters-triggers — GitLab backend
- operational-trigger:adapters-triggers-bitbucket·OperationalTriggeradapters-triggers — Bitbucket backend
- operational-trigger:adapters-triggers-generic-webhook·OperationalTriggeradapters-triggers — generic webhook backend
- operational-trigger:adapters-triggers-action·OperationalTriggerAgent Adapter — reusable GitHub Action composite