conflict/bug?: object_info only contains one "Mask Combine" when both WAS and Masquerade installed
- Dominant language
- Python
- Stars
- 133k
- Forks
- 15.7k
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 153
Description
🔴
both [was-node-suite-comfyui](https://github.com/WASasquatch/was-node-suite-comfyui) and [masquerade-nodes-comfyui](https://github.com/BadCafeCode/masquerade-nodes-comfyui) export "Mask Combine"
- https://github.com/BadCafeCode/masquerade-nodes-comfyui/blob/d7af5106b3e5347d20202d7768bb311d2afd7203/MaskNodes.py#L1022

- https://github.com/WASasquatch/was-node-suite-comfyui/blob/main/WAS_Node_Suite.py#L8342

`/object_info` only contains one "Mask Combine" when both WAS and Masquerade installed

I really think this is a bug; since custom_node authors may not be aware of each other
🔴 this situation is bound to happen more and more often as time pass, because lots of custom_node suites will re-use the same sames naturally as ComfyUI becomes popular.
A schema change is probably needed sooner than later. a way to disambiguate both
------
# Proposal (copy pasted from some post below, I'll update this along the discussion)
1. 👉I would prefer having an **authority** part, like `author` rather than UUID or manual people coordination.
2. 👉I prefer all similar nodes to have similar names. better to have multiple `loadImage` nodes than a mix of `ImageLoad`, `LoadImage` and `ImageOpen` due to conflict consideration.
3. In CushyStudio, I'll probably generate classNames with suffix rather than prefix to disambiguate things so it play well with autocomplete
4. LoadImage
5. LoadImage_WAS
6. LoadImage_Rvion
4. manual coordination to avoid disambiguation will lead to antipatterns.
5. bonus remark: looking elsewhere, most thriving communities have a a scope/authority/author hierarchy system to allow everyone to share names: github, docker hub, etc. allowing the same names also promotes node forking, like on github
---
## PROPOSAL
### backward compatible `object_info` format change :
- no author in custom_node suite => same /object_info` as before, with `"anonymous"` author
=> *NO CHANGE*
- author specified in node_suite => key in `/object_info` change to `"author/nodename"` + and author key is filled
```diff
{
- "Combine Masks": {
+ "WAS/Combine Masks": {
"input": {... },
"output": ["MASK"],
"output_name": ["MASK"],
"display_name": "Combine Masks",
+ "author": "WAS",
"name": "Combine Masks",
"description": "",
"category": "WAS Suite/Image/Masking"
},
}
```
### Impact for custom_nodes
they need to add a single line (just one, **not** one per node) somewhere saying
```
author="theirname"
```
Contributor guide
Assessment
This issue has not been assessed yet.