From cf89a5d88fb738883e9663b9e44afcc7b7f98807 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Thu, 15 Oct 2026 13:06:37 +0200 Subject: docs: PwNode.isSink reads true for a playback stream Recorded because the inverted filter looked correct, linted clean and returned an empty list with no error. Co-Authored-By: Claude Opus 5.5 --- AGENTS.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 48f7970..863a7e5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -83,6 +83,10 @@ changing that component. The ones that generalise: - **`PwObjectTracker` is not optional.** Node properties only stay current while something binds the node; without it the volume reads once and goes stale. +- **`PwNode.isSink` reads true for a playback stream.** Firefox playing + audio is `isStream` and `isSink`, so `isStream && !isSink` finds no apps. + Match `type === PwNodeType.AudioOutStream`. A node's `properties` are empty + until it is bound, so read `application.name` only under a tracker. - **playerctld publishes a duplicate of every MPRIS player** under its own bus name. Filter by `dbusName`, not by identity. - **Key events reach a focused item, not a window.** Setting -- cgit v1.2.3