Problem
Needly.Domain/ActionFilter.cs supports type, state, repository, organization, author, assignee scope, waiting duration and bot involvement. That is not enough to express the filters people actually want, and it blocks both search and useful automation rules.
Missing: labels, draft state, pull request size, milestone, and whether the review was requested through CODEOWNERS.
Scope
Extend ActionFilter to SchemaVersion = 2, with migration of stored Saved Views and Rules.
New criteria:
Labels - GitHub labels on the subject, OR semantics within the set
IsDraft - include, exclude or any
SizeBuckets - XS, S, M, L, XL derived from additions plus deletions
Milestones
RequestedViaCodeowners - include, exclude or any
Risk levels once review risk classification exists
AgentAuthor once agent detection exists
Acceptance criteria
Problem
Needly.Domain/ActionFilter.cssupports type, state, repository, organization, author, assignee scope, waiting duration and bot involvement. That is not enough to express the filters people actually want, and it blocks both search and useful automation rules.Missing: labels, draft state, pull request size, milestone, and whether the review was requested through CODEOWNERS.
Scope
Extend
ActionFiltertoSchemaVersion = 2, with migration of stored Saved Views and Rules.New criteria:
Labels- GitHub labels on the subject, OR semantics within the setIsDraft- include, exclude or anySizeBuckets- XS, S, M, L, XL derived from additions plus deletionsMilestonesRequestedViaCodeowners- include, exclude or anyRisklevels once review risk classification existsAgentAuthoronce agent detection existsAcceptance criteria
SchemaVersionbumped, with a documented upgrade path inActionFilterJsonSerializerActionFilterMatcherapplies the new criteria with the documented AND/OR semanticsActionFilterEditorexposes every new criteriondocs/saved-views-and-rules.mdupdated