Ctrl K
ComunidadGuías…

blaise-guard.json

Rama master · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  "_comment": [
    "BlaiseGuard configuration for the Blaise compiler project itself.",
    "Discovered automatically by walking up from the analysed path; an",
    "explicit --config overrides it.  The SAMPLE config in",
    "tools/blaise-guard/ deliberately mirrors the built-in defaults and is",
    "what a new user copies -- do not tune that one for this codebase.",
    "",
    "Thresholds below are measured against compiler/ and stdlib/, not",
    "guessed.  Where a rule is relaxed the reason is recorded, so a future",
    "reader can tell a deliberate trade-off from an unexamined default."
  ],

  "rules": {
    "BL-0000": { "enabled": true, "severity": "warning" },

    "_BL-1001": "120 is the house limit and the code already respects it (41 hits).",
    "BL-1001": { "enabled": true, "severity": "warning", "params": { "maxLength": 120 } },

    "_BL-1002": [
      "Raised 15 -> 60.  At 15 the compiler reports 1114 findings, which is a",
      "description of the codebase rather than a defect list: the backends and",
      "the semantic pass are built from long, flat dispatch routines that are",
      "clearer whole than split.  60 keeps the genuinely oversized ones visible."
    ],
    "BL-1002": { "enabled": true, "severity": "warning", "params": { "maxLines": 60 } },

    "_BL-1003": [
      "Raised 3 -> 6.  1211 findings at depth 3, concentrated in codegen",
      "dispatch (native.x86_64 328, uSemantic 215, qbe 203).  Nested case/if",
      "over an instruction or node kind is the natural shape there."
    ],
    "BL-1003": { "enabled": true, "severity": "warning", "params": { "maxDepth": 6 } },

    "_BL-1004": [
      "ON here, although it ships off by default: closures and shadowing make",
      "it heuristic, but its error is to miss an unused local, never to invent",
      "one.  Turned on 2026-10-23, when its 76 findings across compiler/,",
      "stdlib/ and tools/ were removed.  Parameters stay unchecked: an override",
      "or interface method must keep its signature even when it ignores one."
    ],
    "BL-1004": { "enabled": true, "severity": "warning", "params": { "checkParameters": false } },

    "BL-1005": { "enabled": true, "severity": "warning" },
    "BL-1006": { "enabled": true, "severity": "warning" },

    "_BL-2001": [
      "Demoted to info.  3261 findings, and the top files are TESTS, where an",
      "explicit Free is often deliberate (exercising teardown, or a non-ARC",
      "fixture).  Worth reading, not worth failing a build over yet."
    ],
    "BL-2001": { "enabled": true, "severity": "info", "params": { "includeDestroy": true } },

    "BL-2002": { "enabled": true, "severity": "warning", "params": { "includeSelfReference": false } },
    "BL-2003": { "enabled": true, "severity": "info" },

    "_BL-2004": [
      "Kept ON at info.  86 findings and they are GENUINE -- Ord(S[i]) has been",
      "observed to miscompile under the self-hosted native stage (CLAUDE.md).",
      "The bulk conversion to OrdAt currently segfaults the built compiler",
      "(BUG-20260805-ordat-bulk-conversion-segfault), so these stay visible",
      "rather than suppressed: the rule is right, the migration is blocked."
    ],
    "BL-2004": { "enabled": true, "severity": "info" },

    "BL-2005": { "enabled": true, "severity": "warning" },

    "_BL-2006": [
      "ON again from the v0.16 cycle (it was off for v0.15 only).  It was the",
      "work list for type standardisation Phase 5 (docs/type-standardisation-",
      "design.adoc): 4529 findings in compiler/ and 1751 in stdlib/ at v0.15.0.",
      "Since Phase 5 the only findings are ClassicPascalTypes' own tests, which",
      "exercise the classic names on purpose.  Still at info, so those 39 do",
      "not read as defects."
    ],
    "BL-2006": { "enabled": true, "severity": "info" },

    "_BL-3001": [
      "minTokens raised 30 -> 120.  At 30 the compiler reports 6855 findings.",
      "That is real duplication -- the known codegen-duplication problem tracked",
      "in docs/future-improvements.adoc -- but at that threshold it drowns every",
      "other rule. 120 surfaces only substantial clones."
    ],
    "BL-3001": { "enabled": true, "severity": "warning",
                 "params": { "minTokens": 120, "ignoreIdentifierNames": false } },

    "BL-3002": { "enabled": true, "severity": "warning" }
  }
}