Releases and Versioning

Version components

CODYGIENE reports three version numbers:

codygiene --version
codygiene 0.9.1-beta.1
engine 1.0.0
ruleset 1.0.0
  • CLI version · the CLI package version (follows semver with prerelease)
  • Engine version · the analysis engine version
  • Ruleset version · the rule registry version

Current release

CODYGIENE 0.9.1-beta.1 is prepared for public beta testing but has not yet been published to npm. This is a prerelease (beta), not a mature stable release. Expect:

  • Rule refinements based on real-world feedback
  • CLI UX improvements
  • Documentation updates
  • Bug fixes

The frozen Ruleset 1.0.0 (44 rules) is stable: its rule IDs, categories, intended risk semantics, and ruleset identity are frozen (see below). Alpha candidate rules (26 rules) may be refined; most are enabled by default (CAND-030 and CAND-031 are disabled experimental · see below).

Versioning policy

  • Major · breaking changes to CLI interface or report format
  • Minor · new rules, features, or non-breaking improvements
  • Patch · bug fixes and documentation updates

During the public test period, versions follow a prerelease pattern (e.g., 0.9.1-beta.1).

Frozen Ruleset 1.0.0

The 44 frozen rules (CH-* IDs) are part of Ruleset 1.0.0. The freeze covers:

  • Rule IDs · a CH-* ID keeps its meaning permanently
  • Categories · a rule's category assignment does not change
  • Intended risk semantics · what the rule is meant to detect
  • Ruleset identity · the ruleset 1.0.0 version contract

Precision, false-positive, compatibility, and performance fixes may still be made when they preserve the intended meaning of a rule. Material semantic changes require explicit versioning · a new ruleset version, not silent edits under the same ID.

Alpha candidates

The 26 Alpha candidate rules (CAND-* IDs) may be refined based on feedback. Most are enabled by default; CAND-030 and CAND-031 are disabled experimental. If an Alpha candidate is found to produce unacceptable false positives, it may be adjusted or moved to disabled-by-default status.

Default rule profile

  • Registered: 70 rules
  • Enabled by default: 64 rules
  • Disabled by default: 6 rules · disabled for signal-quality reasons (high false-positive rates or unvalidated metrics), not feature gating. Each can be enabled explicitly via --enable or .codygiene.json rules.enable.

Disabled by default:

Rule Reason
CH-HEALTH-004 Unused-file detection: workspace/monorepo false positives
CH-HEALTH-005 Dead-code detection: workspace false positives
CH-HEALTH-007 Undeclared package import: often intentional in monorepos
CH-HEALTH-008 Duplicated logic: can be noisy on large codebases
CAND-030 Excessive coupling: metric validation pending
CAND-031 Architectural hotspot: size threshold needs validation

Architecture insights (informational)

CODYGIENE maps workspace dependencies, identifies package cycles, and highlights modules with large architectural blast radius. These findings are marked as insights: they appear in all report formats but do not reduce quality scores or trigger release gates. Architecture insights are informational context for engineering review · not verdicts that the architecture is defective.

  • CAND-029 · Change blast radius: modules with top-percentile transitive dependents
  • CAND-032 · Package cycles: strongly connected workspace dependency groups
  • CAND-033 · Cross-workspace dependency risk: app-to-app imports (boundary review)

CAND-030 (excessive coupling) and CAND-031 (architectural hotspot) are disabled by default and can be enabled explicitly with --enable.

Reserved candidates

  • CAND-012 · Rate limiting (reserved, not implemented)
  • CAND-013 · Behavior/documentation drift (reserved, not implemented)
  • CAND-014 through CAND-018 · Historical backlog reservations