Replies: 3 comments 4 replies
|
I'm not smart enough to make any contributions to AW, but this is an awesome idea. I'm a lowly PowerShell guy, not a python or rust guy. one that I had a long time ago was to be able to specify which watcher (for starters) your rules applied to, as well as granular control over which fields it matched, as perhaps one rule should only match against the chrome URL, and another should match the page title. same for the window watcher, which I feel desperately needs the path name in addition to the executable and window title. I love your additions to the rule editor UI as well, perhaps even giving options to match property type (string, int, bool), or even date/time. but yeah, picking which host(s) and watcher(s) each rule applies to is great. |
|
Been thinking along these lines before, but wasn't high-priority and the effort didn't seem worth it pre-LLMs (at least not for me personally). I'm also a bit hesitant of adding too much configuration complexity over decent defaults. I haven't thought through your proposal fully, but if the code and UX for it ends up clean enough I'd consider merging it. Ideally these things would be part of the I like the "added row for categories in timeline", worth a separate PR. |






Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Following up on #1169, I tried to sketch a more concrete design before starting implementation, mainly to check whether this is a direction that could realistically get merged.
I'm happy to contribute the change, but I understand such a big change might not be in line with the vision so discussing here first. If it can't be merged then I'll just fork and slop it 😅.
Motivation:
What I would like to express is stuff like:
Personalis Personal.Personalvirtual desktop are always personal even if they accidentally match deep rule in Work category subtree.The rough idea is to make both the active-time/AFK rule and category rules expression trees:
How:
I don't want to move responsibilities around unnecessarily. Canonical-query composition—selecting buckets, building the active mask, source precedence, multi-device merge, etc.—would stay in aw-webui / the existing client query builders where it is now. The Python/Rust transform layer would only gain rule-expression evaluation (or maybe no support at all? and keep it front-end only? but it might be useful for others querying the serer) and the overlap-enrichment primitive needed for consistent behavior.
Raw events and buckets would not change. Existing settings would migrate without rewriting data, and the UI should remain as simple as it is now by default: name + regex, with the more complex editor hidden under an Advanced option (or some other progressive exploration, not sure about the UX yet).
wdyt?
Cc @ErikBjare
All reactions