HKUDS/nanobot · error · ValueError
ChannelPlugin.management.instance_specs for '{plugin.name}'
Error message
ChannelPlugin.management.instance_specs for '{plugin.name}' returned duplicate runtime name '{runtime_name}' What it means
Error "ChannelPlugin.management.instance_specs for '{plugin.name}' returned duplicate runtime name '{runtime_name}'" thrown in HKUDS/nanobot.
Source
Thrown at nanobot/channels/contracts.py:366
f"ChannelPlugin.management.instance_specs for '{plugin.name}' returned an invalid item"
)
instance_ids: set[str] = set()
runtime_names: set[str] = set()
for spec in specs:
instance_id = cast(object, spec.instance_id)
if not isinstance(instance_id, str) or not instance_id.strip():
raise ValueError(
f"ChannelPlugin.management.instance_specs for '{plugin.name}' returned an empty instance id"
)
if spec.instance_id in instance_ids:
raise ValueError(
f"ChannelPlugin.management.instance_specs for '{plugin.name}' returned duplicate instance id "
f"'{spec.instance_id}'"
)
runtime_name = channel_runtime_name(plugin, spec.instance_id)
if runtime_name in runtime_names:
raise ValueError(
f"ChannelPlugin.management.instance_specs for '{plugin.name}' returned duplicate runtime name "
f"'{runtime_name}'"
)
instance_ids.add(spec.instance_id)
runtime_names.add(runtime_name)
return specs
def _all_channel_instance_specs(
values: list[object],
) -> TypeGuard[list[ChannelInstanceSpec]]:
return all(isinstance(value, ChannelInstanceSpec) for value in values)
def resolve_channel_action_target(
requested_instance_id: str | None,
) -> str:
"""Resolve a feature action to an explicit or default instance."""View on GitHub (pinned to 42f37dc4c0)
When it happens
Trigger: Thrown at nanobot/channels/contracts.py:366 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HKUDS/nanobot@42f37dc4c0 (2026-08-26).
Data as JSON: /api/errors/b390bd3aacbbf1b8.
Report an issue: GitHub.