You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Change-coupling indexer over git history: non-merge commits touching ≤ 30 files,
Wilson lower bound scoring, alert floor 0.6, minimum support 10, incremental
updates keyed by HEAD (.conventionsense/index.json).
MCP server (conventionsense mcp) with five tools: check_holes, expected_companions, explain_rule, stats, reindex — every alert carries
counts, confidence, and example commits as evidence.
Pre-commit CLI: conventionsense check --staged (exit 1 at ≥ 0.7, configurable
via --fail-at), plus stats and reindex subcommands.
Content-aware exception layer for JSON triggers: learns which top-level keys
("facets") predict each rule and suppresses alerts for non-predictive edits
(e.g. pure version bumps). Suppressed holes are excluded from the exit code; --strict re-includes them. Fail-open everywhere.
Opt-in C# member-level detection ("memberLevel": true): members as entities
(Namespace.Type.Member/arity, survives file renames), Roslyn syntax-only
diffing, member holes in check_holes and the CLI, cosmetic-edit suppression
(whitespace/comment-only C# edits), 5,000-commit training window.
Packaged as a dotnet tool (ConventionSense, command conventionsense).
Notes
Renamed from the working title "Lacuna"; the original spec document
(lacuna-claude-code-prompt.md) keeps the old name as a historical record.