GitHub
10/17/2025, 8:38 AMprod, pci, dev and an operator submits a query with expression prod OR pci, When dispatch occurs, Then only nodes with prod or pci receive task records.
2. Given no nodes have any of the requested tags, When the query is submitted, Then system records 0 targeted nodes and returns success without error.
## Summary
Implement advanced tag expression parsing (AND/OR, parentheses, precedence) for distributed query targeting, preview capability with counts and sample, transactional dispatch re-evaluation, tag management CRUD & batch operations, and performance/observability instrumentation.
## Expression Rules
• Operators: AND, OR (uppercase or lowercase) and parentheses.
• AND precedence > OR.
• Max tokens: 50, Max depth: 6.
• NOT unsupported (will error).
• Tags normalized to lowercase.
example expression: (prod AND linux) OR pci
### Tags limitation
For tags, we would like to limit to lowercase only, but for user query input, it should be case-insensitive:
• Fields:
• id - unique identifier
• name (STRING, lowercase canonical) - validated [a-z0-9-_]{1,64}
• created_at (TIMESTAMP)
• Constraints:
• Unique name
• Length ≤64
• Charset [a-z0-9-_] only
I'll be sure to follow up with more details.
jmpsec/osctrl