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
* feat: manifesto-driven pass/fail rule engine
Generic rule engine that evaluates function-level, file-level, and
graph-level rules against the DB and returns pass/fail verdicts.
- 9 rules: cognitive, cyclomatic, maxNesting (function), importCount,
exportCount, lineCount, fanIn, fanOut (file), noCycles (graph)
- Exits with code 1 on any fail-level breach (CI gate)
- Exposed via CLI (codegraph manifesto), programmatic API, and MCP tool
Impact: 9 functions changed, 7 affected
* perf: eliminate WASM re-parse for native complexity + build optimizations
Port complexity algorithm to Rust (complexity.rs) so the native engine
computes cognitive/cyclomatic/maxNesting during extraction, eliminating
the expensive WASM re-parse fallback that caused the 1.9→4.8 ms/file
regression.
Additional optimizations:
- Cache line counts during parse (avoids re-reading every file from disk)
- Use pre-loaded nodesByNameAndFile maps for extends/implements edges
(replaces inline DB queries in the edge-building loop)
- Optimize structure cohesion from O(dirs×edges) to O(edges+dirs) via
reverse file→dirs index and single-pass edge aggregation
Impact: 44 functions changed, 46 affected
* fix: add missing complexity field to native extractors and manifesto tool to MCP tests
- Add complexity: None to Definition initializers in go, rust, java,
csharp, and php extractors (fixes Rust compile errors)
- Add 'manifesto' to MCP test ALL_TOOL_NAMES (fixes tool count mismatch)
- Log errors in manifesto query catch blocks instead of silencing them
- Remove redundant isTestFile filtering already handled by SQL WHERE
Impact: 7 functions changed, 7 affected
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
0 commit comments