Cha
1.10.0 - 2026-04-25
v1.10.0
Apr 25 2026 at 15:03 UTC
Added
god_config— flags aConfig/Settings/Options/Context/Env/AppState/Store-shaped type (exact name or*Config/*Settings/*Optionssuffix) passed as a parameter to ≥ 10 distinct functions spanning ≥ 3 files. Signals ambient configuration leaking everywhere instead of each caller taking only the fields it actually needs. Hint severity.circular_abstraction— flags two files whose functions call each other's functions in both directions (≥ 2 calls each way). Catches behaviour-level mutual dependency that import-graph cycle detection misses when the callees are re-exported or wrapped. Complementstyped_intimacy(type flow) with call flow. Hint severity.parameter_position_inconsistency— flags functions where a domain type appears at a different parameter position than the project-wide majority. Requires ≥ 3 usages of the same type across functions and disagreement on position; primitives, unresolved-origin types, mutable-ref out-params (&mut Vec<_>), andselfreceivers are skipped. Hint severity.
Changed
- Internal:
cha-cli/src/project_index.rs— sharedProjectIndexowns parsed models plus derived maps (function_home, class_home, project_type_names, function_by_name).anemic_domain_model,typed_intimacy,module_envy, andparameter_position_inconsistencybuild the index once per analyze call instead of each rebuilding their own copies. No behaviour change; behaviourally identical on self-analyze. Boundary_leak still parses fresh because of a stale-typedef cache bug not yet rooted out.