Skip to content

Chameleon

v4.4.9 Feature

This release adds 1 notable feature for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-coding-assistant archetype ast-analysis claude-code claude-plugin code-conventions
+12 more
code-review code-style developer-tools javascript linter mcp mcp-server prompt-engineering python ruby rails typescript

Summary

AI summary

Added advisory lint for missing required methods on classes extending dominant bases.

Changes in this release

Feature Low

Adds per-edit advisory for missing required methods in class contracts

Adds per-edit advisory for missing required methods in class contracts

Source: llm_adapter@2026-07-18

Confidence: high

Performance Low

Ensures the artifact reaches every lint path (in-process, tool, daemon)

Ensures the artifact reaches every lint path (in-process, tool, daemon)

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Full changelog

Added

  • A per-edit missing-required-method advisory closes an effectiveness gap: the
    class_contract artifact (an archetype's required methods, derived at bootstrap)
    was advertised in the pre-edit block but no lint ever verified it. Now, on a
    post-edit lint, a class that extends the archetype's dominant base but omits a
    method the entire cohort defines is nudged (an ActiveJob subclass without
    perform, a service without call). It is advisory-only (never block-eligible),
    Ruby + Python, and false-positive-safe by construction:
    • Only a method the cohort defines at 100% frequency is enforced. A genuine
      abstract-method contract is always 1.0 (the base raises NotImplementedError,
      so every subclass implements it); a method in the 0.95-0.99 band is instead a
      commonly-overridden method with a base default, or one some members inherit via
      a mixin -- flagging it is a false positive the file-level check cannot see
      through. Measured ~0 false positives at 1.0 versus ~91% below it, across
      gitlabhq, ef-api, mastodon, maybe, and Django (1500+ files, 0 false positives).
    • Only a class DIRECTLY extending the dominant base is in the cohort (matched on
      the full qualified base name, or its unqualified short form -- not a different
      class that merely shares a common tail like Foo::Base); the base class itself
      is exempt; and the method is flagged only when it is defined nowhere in the file.
    • Wired through every lint path (in-process, the lint_file tool, and the daemon)
      so the artifact reaches the check rather than silently vanishing.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Chameleon

Get notified when new releases ship.

Sign up free

About Chameleon

All releases →

Related context

Earlier breaking changes

  • v3.0.0 MCP surface folded from 48 tools to 19; remaining 32 operator tools become actions on three dispatchers.

Beta — feedback welcome: [email protected]