Nodes/BV Node Pack/πŸŒ€ BV LoRA Stack Collector
ComfyUI Node

πŸŒ€ BV LoRA Stack Collector

Stamp a stable identity on your LoRA stacks

By BlackVortexAIΒ·Created 8 months agoΒ·Updated a day agoΒ· 6
πŸŒ€ BV LoRA Stack Collector
  • resource_provider
  • resource_provider
β—„collector_idβ–Ί

BV LoRA Stack Collector is a small, optional node in the manual-chains corner of the pack, and it does one precise thing: it takes an existing LoRA resource provider and re-identifies it with a collector id you choose, so downstream references have a stable, deterministic identity.

Why would that matter? In the Regional V3 resource protocol, every LoRA provider has a provider_id - a UUID that resource references point at. When you build a provider by chaining manual nodes, the intermediate id can be derived from whatever the chain happens to hold (which changes when the content changes). The collector is where you stop that churn: give it a fixed collector_id, and the same resources come out under a stable name you control, regardless of how the stack was assembled upstream.

How it works

Two inputs, both straightforward:

  • resource_provider - an existing BV_RUNTIME_RESOURCE_PROVIDER carrying named LoRA stacks. It can come from a manual chain of nodes or from BV LoRA Registry.
  • collector_id - a UUID that becomes the provider's final identity.

The node validates the incoming provider against the full wire contract (schema, version, provider id, resource type, resources - it's strict), then rebuilds it with the new id. The resources themselves are unchanged; only the identity is stamped. That's the whole job, and it's deliberately narrow: a collector that did anything else would be a different node.

One detail worth knowing: forceInput is set on the provider input, meaning you must wire it from another node - you can't conjure a provider from a widget. And the id is validated as a real UUID, so an empty or malformed string fails fast with a clear message.

Output: resource_provider, the same stacks under the stable id - wire it onward to BV Regional LoRA or any regional consumer.

The inputs and outputs that matter

  • resource_provider - in and out.
  • collector_id - the UUID to stamp. Make it a fixed value per workflow so references stay stable; generate one once, keep it.
  • Output resource_provider β†’ the regional consumer.

How to install

Part of BV Node Pack:

cd ComfyUI/custom_nodes
git clone https://github.com/BlackVortexAI/bv_nodepack.git

Restart ComfyUI, hard-refresh. Or ComfyUI Manager β†’ "BV Node Pack". No model downloads.

Common issues

  • "must be a UUID" - empty or non-UUID collector id. Generate a proper UUID (any generator will do).
  • "LoRA runtime resource provider is invalid" - the incoming provider isn't the expected v1 runtime provider shape; you probably wired a registry object (the bv.lora_stack_registry) instead of a provider, or a stale node output.
  • Nothing downstream changed after adding it - right, that's expected: this node changes identity, not content. If you added it hoping to change the stacks, the change belongs upstream.

It's the kind of node that looks pointless until you have a workflow where references must survive being re-edited - then it's the difference between a stable workflow and one that quietly re-points itself every time you tweak a stack.

CategoryπŸŒ€ BV Node Pack/regional/LoRA/Manual Chains (Optional)

Inputs (2)

NameTypeDefaultDescription
resource_providerBV_RUNTIME_RESOURCE_PROVIDERβ€”
collector_idSTRINGβ€”

Outputs (1)

NameTypeDescription
resource_providerBV_RUNTIME_RESOURCE_PROVIDERβ€”