Every commit scored for change-risk against this repo's own history, so 'elevated' means elevated here rather than on some global curve.
Needs review
60 commits sit in this repo's top risk tercile, which is 34% of the 176scored. The cut is drawn against this codebase's own history rather than a global curve, so a quiet repo still fills its top band, and here it starts at 8.8 out of 10. What pushes a commit up is size and spread together: a large change confined to one area scores below a smaller one scattered across a dozen files.
Commit categories over time, read off the subject line. Fixes carry the accent because that is the series this chart exists to show.
Began feature-led, now leaning fix.
Ranked by change-risk, highest first. Priority is a tercile of this repo's own distribution, so a quiet repo still fills its top band.
| # | Commit | Author | When | Lines | Risk | Top driver |
|---|---|---|---|---|---|---|
| 1 | 61454c47fix(grammar): allow hyphens in step_text pattern (#117) | Varioclaudeassisted | 6mo ago | +56.6K -2.8K | 100%Elevated | more lines added than baseline |
| 2 | 59fbd8fffeat(tree-sitter): implement complete NL grammar with external scanner | Mnehmosclaudeassisted | 6mo ago | +10.4K -351 | 99%Elevated | more lines added than baseline |
| 3 | cbfea578docs: Comprehensive documentation site update (#119) | Varioclaudeassisted | 6mo ago | +4.5K -17 | 98%Elevated | more lines added than baseline |
| 4 | 10169a8cfix(grammar): add constraint_pair, invariant_block, property_block support | Mnehmosclaudeassisted | 6mo ago | +3.7K -2.5K | 98%Elevated | more lines added than baseline |
| 5 | f2176213feat(grammar): add tree-sitter grammar and formal EBNF specification (#26) | Mnehmosclaudeassisted | 6mo ago | +2.1K -0 | 98%Elevated | more lines added than baseline |
| 6 | 3a46a255fix(compiler): handle Type? syntax and stdlib imports correctly | Mnehmosclaudeassisted | 6mo ago | +2.7K -2.3K | 96%Elevated | more lines added than baseline |
| 7 | c9f3d968feat(vscode): add missing TypeScript files for extension compilation | Mnehmos | 6mo ago | +2.1K -0 | 96%Elevated | more lines added than baseline |
| 8 | fac9a264feat(tests): add semantic test suite for Core NLS semantics | Mnehmosclaudeassisted | 6mo ago | +1.6K -7 | 96%Elevated | more lines added than baseline |
| 9 | 4fac2c6ffeat: NLS Phase 1 MVP - compiler and schema foundation | Mnehmos | 7mo ago | +2.7K -69 | 96%Elevated | more lines added than baseline |
| 10 | e03f88f4fix(atomize): harden Python roundtrip stress loop | Mnehmos | 4mo ago | +1.0K -79 | 94%Elevated | more lines added than baseline |
| 11 | 757c6ae3Add billing example and examples README (#104) | Vario | 6mo ago | +853 -0 | 94%Elevated | more lines added than baseline |
| 12 | 531e6c20docs: Add MkDocs site with comprehensive documentation (#39) | Vario | 6mo ago | +1.2K -0 | 94%Elevated | more lines added than baseline |
| 13 | b700e972feat(localization): add Japanese localization support and tests | Mnehmos | 4mo ago | +828 -230 | 91%Elevated | more lines added than baseline |
| 14 | ae2d8b8bfix: harden parser runtime and worktree hygiene | Mnehmos | 5mo ago | +1.3K -286 | 91%Elevated | more lines added than baseline |
| 15 | a8570634chore: blue phase cleanup | Mnehmosclaudeassisted | 6mo ago | +1.4K -20 | 91%Elevated | more lines added than baseline |
| 16 | f4749e85feat(lockfile): enhanced lockfile with zero-LLM rebuilds (#23) | Mnehmosclaudeassisted | 6mo ago | +745 -55 | 91%Elevated | more lines added than baseline |
| 17 | 4fd21565fix(schema): handle expression return types properly (#52) (#53) | Varioclaudeassisted | 6mo ago | +797 -0 | 91%Elevated | more lines added than baseline |
| 18 | c5ddda3fdocs: initial PRD for Natural Language Source | Mnehmos | 7mo ago | +668 -0 | 91%Elevated | more lines added than baseline |
| 19 | 8937eab4feat(emitter): add initial TypeScript target support | Mnehmos | 4mo ago | +891 -202 | 88%Elevated | more lines added than baseline |
| 20 | 033b06a1feat(stdlib): add @use directives with versioned stdlib resolution | Mnehmos | 6mo ago | +1.1K -2 | 88%Elevated | more lines added than baseline |
| 21 | af5ea08dfeat(diff): implement nlsc diff command (#15) (#35) | Vario | 6mo ago | +603 -4 | 88%Elevated | more lines added than baseline |
| 22 | 8c1175aafeat(roundtrip): implement round-trip equivalence testing (#29) (#34) | Vario | 6mo ago | +641 -723 | 88%Elevated | more lines added than baseline |
| 23 | 53fb777bfeat(cli): add graph command for dependency visualization (#8) | Vario | 7mo ago | +654 -2 | 88%Elevated | more lines added than baseline |
| 24 | 1ba33243fix(cli): add structured JSON diagnostics (#148) | Mnehmos | 4mo ago | +554 -35 | 84%Elevated | more lines added than baseline |
| 25 | 04a86c10feat: Implement quicksort algorithm in NLS with comprehensive tests | Mnehmos | 4mo ago | +728 -82 | 84%Elevated | more lines added than baseline |
| 26 | 012baafcfeat(windows): add file association installer and CLI command | Mnehmosclaudeassisted | 6mo ago | +848 -5 | 84%Elevated | more lines added than baseline |
| 27 | 1bfdd676feat(cli): enhance nlsc run with source maps and flags (#89) | Mnehmosclaudeassisted | 6mo ago | +560 -1 | 84%Elevated | more lines added than baseline |
| 28 | 695603f0test(atomize): add 32 edge case tests for production patterns | Mnehmos | 6mo ago | +503 -0 | 84%Elevated | more lines added than baseline |
| 29 | 9d316236feat: Add @main block for executable scripts - Closes #42 (#43) | Vario | 6mo ago | +501 -3 | 84%Elevated | more lines added than baseline |
| 30 | 8b4bf249feat(parser): add tree-sitter Python bindings | Mnehmosclaudeassisted | 6mo ago | +639 -0 | 84%Elevated | more lines added than baseline |
| 31 | 6f64d112feat(cli): implement nlsc watch - continuous compilation (#36) | Varioclaudeassisted | 6mo ago | +456 -0 | 84%Elevated | more lines added than baseline |
| 32 | f4d2d327feat(cli): implement nlsc atomize command (#33) | Varioclaudeassisted | 7mo ago | +464 -0 | 84%Elevated | more lines added than baseline |
| 33 | 300965f4feat(emitter): deterministic code generation from LOGIC steps | Mnehmosclaudeassisted | 7mo ago | +504 -18 | 84%Elevated | more lines added than baseline |
| 34 | d2c3a3e5feat(lsp): comprehensive hover support for 22 symbol kinds | Mnehmos | 6mo ago | +501 -42 | 79%Elevated | more lines added than baseline |
| 35 | 3629a895feat(ci): add mypy, security scanning, and expanded property tests | Mnehmosclaudeassisted | 6mo ago | +489 -0 | 79%Elevated | more lines added than baseline |
| 36 | d967f70fdocs: update all documentation for PyPI release | Mnehmos | 6mo ago | +495 -63 | 79%Elevated | more lines added than baseline |
| 37 | c585b571feat: add @property and @invariant test specifications (#30) | Mnehmosclaudeassisted | 6mo ago | +479 -8 | 79%Elevated | more lines added than baseline |
| 38 | e8767bf7feat(ci): implement GitHub Action for NLS CI/CD (#22) | Mnehmosclaudeassisted | 6mo ago | +529 -2 | 79%Elevated | more lines added than baseline |
| 39 | 6ff74427feat(emitter): generate dataclasses from @type blocks | Mnehmosclaudeassisted | 7mo ago | +413 -14 | 79%Elevated | more lines added than baseline |
| 40 | 291802d6feat(parser): implement dataflow extraction from LOGIC steps (#6) | Vario | 7mo ago | +384 -3 | 79%Elevated | more lines added than baseline |
| 41 | 75621a2afeat(parser): implement @type blocks and method binding (#5) | Vario | 7mo ago | +447 -15 | 79%Elevated | more lines added than baseline |
| 42 | c3146d57fix(cli): add JSON diagnostics for lock commands | Mnehmos | 4mo ago | +388 -14 | 76%Elevated | more lines added than baseline |
| 43 | ded964d3feat(emitter): generate guard validation code | Mnehmosclaudeassisted | 7mo ago | +378 -9 | 76%Elevated | more lines added than baseline |
| 44 | 63bc449efeat(parser): implement FSM-style state names in LOGIC steps (#7) | Vario | 7mo ago | +350 -10 | 76%Elevated | more lines added than baseline |
| 45 | 97aabf70fix(cli): harden compile and lock update JSON I/O | Mnehmos | 4mo ago | +404 -5 | 74%Elevated | more lines added than baseline |
| 46 | 1bdc0f94fix(init): add structured JSON failure diagnostics | Mnehmos | 4mo ago | +355 -14 | 74%Elevated | more lines added than baseline |
| 47 | f0b39653fix(assoc): add JSON diagnostics for assoc failures | Mnehmos | 4mo ago | +387 -13 | 74%Elevated | more lines added than baseline |
| 48 | 84f5d32bfix(watch): add JSON runtime compile diagnostics | Mnehmos | 4mo ago | +344 -45 | 72%Elevated | more lines added than baseline |
| 49 | 00d76c55fix(cli): add error code explanations | Mnehmos | 4mo ago | +347 -11 | 72%Elevated | more lines added than baseline |
| 50 | b1638b2fstyle(docs): apply Mnehmos copper/stone design system | Mnehmosclaudeassisted | 6mo ago | +390 -22 | 72%Elevated | more lines added than baseline |
Two views of the same model: where the cuts fall, and what commit shape lands you above them.
Every scored commit, binned on the raw 0 to 10 score rather than the percentile. Percentile ranks are uniform by construction, so that axis has no shape to draw. The dashed lines are the tercile cuts behind each row's priority pill.
The 176 most recent commits, on their own recency sample rather than the feed above: that defaults to risk-sorted, so reusing it would plot only the top tercile and call it the spread. Big and scattered is what the model penalises. Click a dot to open it.
Mnehmos/mnehmos.nls.lang has 207 commits in its history from 2 contributors, the first of them Jan 15, 2026. No file in the repository changed in the last 90 days. Every commit is scored for change risk from its size, spread and the history of the files it touches.