{"record":{"id":"4308d4cec3daba36","repo":"sxyazi/yazi","slug":"receiver-receiver-does-not-have-the-ability-to","errorCode":null,"errorMessage":"Receiver `{receiver}` does not have the ability to receive `{kind}` messages.","messagePattern":"Receiver `(.+?)` does not have the ability to receive `(.+?)` messages\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"yazi-cli/src/dds/shot.rs","lineNumber":72,"sourceCode":"\t\t}\n\t\tOk(())\n\t}\n\n\tpub(super) fn ensure_ability(peers: &HashMap<Id, Peer>, kind: &str, receiver: Id) -> Result<()> {\n\t\tmatch (receiver, peers.get(&receiver).map(|p| p.able(kind))) {\n\t\t\t// Send to all receivers\n\t\t\t(Id::ZERO, _) if peers.is_empty() => {\n\t\t\t\tbail!(\"No receiver found. Check if any receivers are running.\")\n\t\t\t}\n\t\t\t(Id::ZERO, _) if peers.values().all(|p| !p.able(kind)) => {\n\t\t\t\tbail!(\"No receiver has the ability to receive `{kind}` messages.\")\n\t\t\t}\n\t\t\t(Id::ZERO, _) => Ok(()),\n\n\t\t\t// Send to a specific receiver\n\t\t\t(_, Some(true)) => Ok(()),\n\t\t\t(_, Some(false)) => {\n\t\t\t\tbail!(\"Receiver `{receiver}` does not have the ability to receive `{kind}` messages.\")\n\t\t\t}\n\t\t\t(_, None) => bail!(\"Receiver `{receiver}` not found. Check if the receiver is running.\"),\n\t\t}\n\t}\n}\n","sourceCodeStart":54,"sourceCodeEnd":78,"githubUrl":"https://github.com/sxyazi/yazi/blob/5f901b886b14de1f17460b6e52e9de5d67f8aba9/yazi-cli/src/dds/shot.rs#L54-L78","documentation":"Targeted send validation in `ya pub`: a specific receiver Id was named and found among the peers, but that peer did not register the ability for this message `kind`. The faulting inputs are the receiver Id and the message kind.","triggerScenarios":"Thrown at yazi-cli/src/dds/shot.rs:72 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pick a receiver that advertises the ability for this message kind (check via `ya pub --list`).","Register the ability in the target receiver's plugin before publishing to it.","Verify the receiver Id is current — restart receivers if versions changed."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5f901b886b14de1f17460b6e52e9de5d67f8aba9","analyzedAt":"2026-09-02T18:38:25.566Z","contentChangedAt":"2026-09-02T18:38:25.566Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}