wave8-enableable-component-query-mismatch

Align EntityQuery filters with IEnableableComponent enabled-state semantics.

6|Updated Apr 2, 2026
One-click install
npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave8-enableable-component-query-mismatch
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: wave8-enableable-component-query-mismatch
Source: https://github.com/dyCuong03/unity-agent-team/tree/main/.claude/skills/unity-dots/wave8-enableable-component-query-mismatch
Command: npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave8-enableable-component-query-mismatch

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It prevents correctness bugs where ECS queries silently target the wrong entity set by using the wrong enableable-component filter semantics for IEnableableComponent.

Core Features & Use Cases

  • Correct filter selection: Use WithAll, WithDisabled, WithNone, or IgnoreComponentEnabledState intentionally to match enabled, disabled, absent, or all entities.
  • Job safety guidance: Avoid redundant or incorrect EnabledRef usage by aligning query options with the job’s expectations.
  • Debugging support: Diagnose “systems that silently miss entities” by validating the intended enabled-state behavior against the actual query filter.

Quick Start

Use wave8-enableable-component-query-mismatch when you write or review an EntityQuery (or SystemAPI.Query/QueryBuilder) that targets an IEnableableComponent, and change the filter method to match whether you want enabled-only, disabled-only, absent-only, or all entities.

Frequently Asked Questions about wave8-enableable-component-query-mismatch

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why does my Unity DOTS EntityQuery silently miss entities with enableable components?

EntityQuery filters mismatch the intended enabled state of IEnableableComponent when using incorrect semantics. Applying the wrong filter like WithAll instead of WithDisabled causes queries to silently target an incorrect entity set without throwing errors.

How do I use WithAll, WithDisabled, and WithNone correctly with IEnableableComponent?

Use WithAll to select enabled-only entities, WithDisabled for disabled-only entities, and WithNone for entities lacking the component entirely. Apply IgnoreComponentEnabledState to select all entities regardless of the enabled bit.

How do I align EnabledRef access with EntityQuery filters in Unity ECS?

Align EnabledRef access by matching the query’s enabled-state behavior to avoid redundant or incorrect job safety usage. Ensure the selected EntityQuery filter method matches whether the job expects enabled, disabled, or all entities.

What is the best way to debug systems that silently skip disabled entities in Unity ECS?

Debug silent entity skipping by validating the intended enabled-state behavior against the actual EntityQuery filter. Diagnose the mismatch by checking if SystemAPI.Query or QueryBuilder patterns use the correct enableable component filter.

Does IgnoreComponentEnabledState affect SystemAPI.Query performance in Unity DOTS?

IgnoreComponentEnabledState affects SystemAPI.Query by returning all entities regardless of the enabled bit. It bypasses enableable component filtering to target the full entity set, preventing mismatched query semantics.

When should I not use WithDisabled in an EntityQuery filter?

Do not use WithDisabled in an EntityQuery filter when you need entities lacking the component entirely. WithDisabled only selects entities possessing the disabled component, so use WithNone instead to target absent-only entities.