# LDC-E1372 — Explicit ID differs from the derived ID The compiler warns when `@id` on a declaration whose ID is currently derived would be ignored. An annotation equal to the derived ID stays silent. This covers source, edition, fragment, publication, reference, entity, record, alias type, relation, constraint, presumption, function, decision, counterfactual, closure, procedure, stage, map, evidence policy, deadline policy, temporal resolution policy, event, action and named query. Nested interpretation constraints and presumptions use their scoped derived ID. The warning preserves the existing ID algorithm and does not enable ID replacement for these kinds. Remove the divergent annotation or use the actual derived ID. This boundary is separate from whether the declaration itself is executable (SPEC [§21](https://github.com/arxohq/law/blob/master/spec/SPEC.ru/05-part-v-lexis-and-basic-syntax.ru.md#21-единицы-и-деньги)).