G.Core:8 - Common anti-patterns and how to avoid them
-
Anti-pattern: Restating CN‑Spec/CG‑Spec rules inside a
G.x“for convenience”. Avoid: citeA.19.CNandG.0throughCC‑GCORE‑CN‑CG‑1. -
Anti-pattern: Adding a fourth guard status (“unknown”, “maybe”, “probe-only”) as a separate decision value. Avoid: keep guard domain tri‑state; express “probe-only” as policy/branching and record via pins/audit.
-
Anti-pattern: Treating mandatory invariants as “defaults” to centralize them. Avoid: keep invariants as invariants (CC‑GCORE‑* cited through canonical governing definitions); restrict the Default Governing Definition Index to true defaults (constants or conditional default-rules).
-
Anti-pattern: Turning partial orders into scalar ranks silently. Avoid: keep set‑valued semantics unless a total order is explicitly declared by a comparator/policy.
-
Anti-pattern: Competing defaults scattered across multiple patterns. Avoid: Default Governing Definition Index; delegate duplicate statements to the one governing definition.
-
Anti-pattern: Local trigger tokens without canonical mapping. Avoid: provide/cite a
TriggerAliasMapwith namespace‑qualified aliases. -
Anti-pattern: Breaking public CC ids during dedup. Avoid: convert to delegation items; preserve IDs.