Skip to content

Releases: jeduden/mdsmith

v0.55.1

Choose a tag to compare

@github-actions github-actions released this 29 Aug 22:32
Immutable release. Only release title and notes can be modified.
0ca0d2f

What's Changed

  • fix(release): pin PyPI wheel Metadata-Version to 2.4 by @jeduden in #820

Full Changelog: v0.55.0...v0.55.1

v0.55.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 11:37
Immutable release. Only release title and notes can be modified.

What's Changed

  • perf: audit against high-performance-go.md, fix 5 measured hot paths by @jeduden in #770
  • perf: audit against high-performance-go.md, fix 5 measured hot paths by @jeduden in #774
  • perf: audit against high-performance-go.md, fix top 5 hot-path violations by @jeduden in #775
  • perf: fix top 5 hot-path issues from a high-performance-go.md audit by @jeduden in #780
  • perf: fix top 5 high-performance-go.md violations found by codebase audit by @jeduden in #782
  • perf: audit against high-performance-go.md, fix 5 confirmed hot paths by @jeduden in #785
  • perf: fix top 5 high-performance-go.md violations by @jeduden in #786
  • perf: fix top 5 high-performance-go.md violations from a 3-agent audit by @jeduden in #783
  • perf: audit against high-performance-go.md, fix top 5 new hot-path issues by @jeduden in #788
  • perf: fix 4 high-performance-go.md violations found by codebase audit by @jeduden in #794
  • perf: consolidate #776, #779, #790, #793 with manual conflict resolution by @jeduden in #800
  • chore(deps): bump markdownlint-cli2 from 0.23.1 to 0.23.2 in /docs/research/benchmarks/npm by @dependabot[bot] in #778
  • fix(foreignregion): resolve MDS073 rule-ID collision with slidevstructure by @jeduden in #791
  • docs(security): scope zero-egress claim and add MDS072 SSRF caveat by @jeduden in #771
  • feat(init): APM coexistence — --apm flag, kind pack, and guide by @jeduden in #772
  • chore(deps-dev): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #787
  • docs(security): 2026-08-14 post-audit diff review — clean window by @jeduden in #795
  • docs(security): 2026-07-31 post-audit diff review — no new findings by @jeduden in #781
  • docs(security): 2026-08-07 post-audit diff review — zero new findings by @jeduden in #789
  • docs(security): consolidate the 2026-07-31, 08-07 and 08-14 post-audit reviews by @jeduden in #801
  • feat(mds072): SSRF guard and per-run egress ceiling by @jeduden in #769
  • test(cmd/mdsmith): add dedicated unit tests for runCheck/runFix by @jeduden in #784
  • perf: fix 5 highest-impact violations of the high-performance-go guideline by @jeduden in #802
  • plan: vendor go-runewidth as a patched fork, bump tinygo to 0.41.1 by @jeduden in #804
  • feat(runewidth): vendor go-runewidth as a patched fork, remove eager LUT by @jeduden in #807
  • ci(tinygo): bump pinned tinygo 0.39.0 → 0.41.1 by @jeduden in #808
  • perf: fix top 5 high-performance-go.md violations by @jeduden in #811
  • build(deps): bump golang.org/x/net from 0.57.0 to 0.58.0 by @dependabot[bot] in #812
  • refactor(githooks): split by responsibility; record 2026-08-23 arch audit by @jeduden in #815
  • test(pkg/mdsmith): add dedicated unit test for readBoundedFrontMatterSource by @jeduden in #805
  • feat(metrics,rules): add MET007 word-frequency metric and MDS074 over-repetition rule by @jeduden in #806
  • refactor(cmd/mdsmith): move list-query subcommand logic into query.go by @jeduden in #809
  • test(rules): add dedicated unit tests for occurrence and slidevstructure private helpers by @jeduden in #810
  • docs(security): 2026-08-28 post-audit diff review by @jeduden in #816
  • feat(schema): let filename: accept a list of globs (OR match) by @jeduden in #818
  • perf: cut check allocations 21% and CPU 6% across five hot-path fixes by @jeduden in #813
  • fix(security): remove proxy blind spot from MDS072 guarded HTTP client by @jeduden in #819

Full Changelog: v0.54.0...v0.55.0

v0.54.0

Choose a tag to compare

@github-actions github-actions released this 25 Jul 19:38
Immutable release. Only release title and notes can be modified.

What's Changed

  • feat(rules): add MDS072 slide-structure — real Slidev linting (plan 2607171900) by @jeduden in #745
  • feat(convention): add built-in slidev convention (plan 2606270013) by @jeduden in #706
  • chore(ci): bump pinned baseline to v0.53.0 and adopt scoped .gitattributes by @jeduden in #753
  • fix(merge-driver): emit merge=text instead of -merge for ignore-derived exclusions by @jeduden in #761
  • chore(deps-dev): bump fast-uri from 3.1.2 to 3.1.4 in /website/e2e in the npm_and_yarn group across 1 directory by @dependabot[bot] in #768
  • test(init): add unit tests for printInitCatalog and setInitUsage (plan 2607191917) by @jeduden in #754
  • refactor(schema): deduplicate isClaimed — export as schema.IsClaimed (plan 2607191918) by @jeduden in #756
  • feat(rules): add MDS060 occurrence rule (plan 2607022118) by @jeduden in #758
  • perf: fix top 5 high-performance-go.md violations found by codebase audit by @jeduden in #762
  • perf: fix top 5 high-performance-go.md violations found by codebase audit by @jeduden in #764
  • fix(cli): skip non-Markdown files named explicitly on check/fix by @jeduden in #760
  • chore(deps): bump markdownlint-cli2 from 0.23.0 to 0.23.1 in /docs/research/benchmarks/npm by @dependabot[bot] in #763
  • perf: fix top 5 high-performance-go.md violations (struct layout + byte scans) by @jeduden in #765
  • docs(security): 2026-07-24 post-audit diff review — MDS072 SSRF by @jeduden in #766
  • feat(rules): add MDS073 slide-structure — Slidev structural validation by @jeduden in #757
  • perf: audit against high-performance-go.md, fix 3 confirmed hot paths by @jeduden in #767

Full Changelog: v0.53.0...v0.54.0

v0.53.0

Choose a tag to compare

@github-actions github-actions released this 19 Jul 21:50
Immutable release. Only release title and notes can be modified.

What's Changed

  • arch(lsp): split server.go into focused sibling files by @jeduden in #680
  • arch: add trivial-accessor exemption comments in workspace.go by @jeduden in #681
  • arch(lint): split layer0.go into focused sibling files by @jeduden in #678
  • perf: replace map[string]bool sets with map[string]struct{} across hot paths by @jeduden in #679
  • bench(lint): add inline scanner benchmark and corpus hit-rate test by @jeduden in #682
  • perf: reduce GC scan span and eliminate padding in hot structs by @jeduden in #683
  • security: retire resolved findings from 2026-06-19 SARIF files by @jeduden in #685
  • test(samefileanchor): add dedicated unit tests for 12 unexported helpers by @jeduden in #687
  • test(inline_scan): add dedicated unit tests for 12 unexported helpers by @jeduden in #686
  • docs(benchmarks): restructure the benchmark write-up for scannability by @jeduden in #684
  • perf: apply high-performance-go guidelines across 5 hot paths (3-round review) by @jeduden in #688
  • audit(2026-06-24): flag test-debt and rename dedup tax by @jeduden in #689
  • refactor(rename): export NormalizedLabel/RefDefBracketBytes, remove lsp duplicates by @jeduden in #690
  • test(lsp/rename): add dedicated unit tests for 13 unexported helpers by @jeduden in #692
  • chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 by @dependabot[bot] in #691
  • test: add dedicated unit tests for export helpers and two small rename helpers (plan 2606240213) by @jeduden in #693
  • audit(arch): 2026-06-24 sweep (09f22d3..3d35b77); add plans 2606241814-15 by @jeduden in #696
  • perf: five high-performance-go fixes from codebase audit by @jeduden in #697
  • security: upgrade golang.org/x/net to v0.56.0 (fixes 5 CVEs) by @jeduden in #698
  • test(lsp): add dedicated unit tests for rename dispatch helpers (plan 2606241814) by @jeduden in #699
  • fix: bump Go to 1.25.11 and golang.org/x/net to v0.56.0 to fix 22 CVEs by @jeduden in #700
  • test(lint): add unit tests for layer0_html.go helpers (plan 2606260211) by @jeduden in #701
  • test(lint): add dedicated unit tests for 9 lineclass_scan HTML helpers (plan 2606260614) by @jeduden in #702
  • test(cuelite): add dedicated unit tests for 7 engine.go unexported helpers (plan 2606260615) by @jeduden in #703
  • fix(plan): resolve merge conflict markers in plan 2606260615 by @jeduden in #704
  • chore(arch): architecture audit 2026-06-26 — clean pass by @jeduden in #705
  • Add opt-in reflow auto-fix to line-length (MDS001) by @jeduden in #709
  • chore(arch): architecture audit 2026-06-28 — clean pass by @jeduden in #708
  • docs(features): explain the Claude Code integration from a user view by @jeduden in #710
  • docs(vscode): lead the VS Code page with the install decision by @jeduden in #713
  • Plan: scope the LSP workspace singleton per client so instances coexist by @jeduden in #714
  • perf: replace manual byte loops with bytes package SIMD functions; fix CRLF reflow corruption by @jeduden in #712
  • ci(merge-queue): only run queue job when the queue label is added by @jeduden in #717
  • chore(deps): bump golang.org/x/tools from 0.45.0 to 0.47.0 by @dependabot[bot] in #716
  • perf: fix top 5 high-performance-go.md violations by @jeduden in #715
  • docs(comparison): refresh mdbase section for rename, backlinks, and deps by @jeduden in #718
  • Forbid "honest" + AI-speak repo-wide, and make the vocabulary a user-extensible word-list resource by @jeduden in #694
  • docs(plan): plan deterministic prose-tell rules and redraw the Vale boundary by @jeduden in #719
  • fix(arch): route reflow abbreviation lookup through internal/mdtext by @jeduden in #722
  • plan: redesign move/rename as one refactor engine (CLI, LSP, WASM) by @jeduden in #721
  • APM research: how mdsmith supports Agent Package Manager workflows by @jeduden in #728
  • chore(deps): bump markdownlint-cli2 from 0.22.1 to 0.23.0 in /docs/research/benchmarks/npm by @dependabot[bot] in #727
  • perf: fix top 5 high-performance-go.md violations in the rule hot path by @jeduden in #725
  • perf: fix top 5 high-performance-go.md violations found by audit by @jeduden in #729
  • security: 2026-07-03 post-audit diff review (low findings only) by @jeduden in #720
  • perf: fix top 5 high-performance-go.md violations by @jeduden in #723
  • plan: extractable per-file metrics (readability) with YAML output by @jeduden in #724
  • security: 2026-07-10 post-audit diff review (no findings) by @jeduden in #730
  • perf: fix top 5 high-performance-go.md violations from audit by @jeduden in #731
  • perf: fix top 5 high-performance-go.md violations by @jeduden in #732
  • refactor: export wordlist.Dedup/ToAnySlice, remove duplicate implementations by @jeduden in #726
  • feat: Open Knowledge Format (OKF) support — required-frontmatter rule, init --starter okf, and dev guide by @jeduden in #711
  • refactor(astutil): export CountLeadingSpaces and IsBlank, remove per-rule duplicates by @jeduden in #734
  • feat(init): redesign around config sources and additive packs by @jeduden in #733
  • test(architecture): add missing tests for public rule/directive contract methods by @jeduden in #736
  • perf: fix top 5 high-performance-go.md violations (round 6) by @jeduden in #737
  • review: fix double-scan, allocation regression, and test gaps by @jeduden in #735
  • chore(deps): bump golang.org/x/tools from 0.47.0 to 0.48.0 by @dependabot[bot] in #741
  • perf: fix top 5 high-performance-go.md violations (round 7) by @jeduden in #742
  • test: add dedicated unit tests for unexported helpers (plan 2607051919) by @jeduden in #738
  • Fix linkgraph purity-contract mismatch for wikilink resolution by @jeduden in #739
  • perf: fix top 5 high-performance-go.md violations (round 8) by @jeduden in #740
  • feat(placeholders): add apm-input-token for APM ${input:NAME} prompt parameters by @jeduden in #743
  • feat(output): add SARIF 2.1.0 output format for mdsmith check and fix --dry-run by @jeduden in #744
  • docs(security): 2026-07-17 post-audit diff review by @jeduden in #746
  • feat(metrics): add metrics get subcommand with readability metrics by @jeduden in #747
  • feat(MDS072): add external-link-check rule (issue #47) by @jeduden in #707
  • fix(merge-driver): scope ignore-derived -merge lines to Markdown (#750) by @jeduden in #752
  • docs(wordlists): complete plan 2606251522 — integration test and doc updates by @jeduden in #748
  • feat: foreign managed-region protection for mdsmith fix by @jeduden in #749
  • Split init-subcommand logic out of cmd/mdsmith/main.go by @jeduden in #751

Full Changelog: v0.52.0...v0.53.0

v0.52.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 19:59
Immutable release. Only release title and notes can be modified.

What's Changed

  • perf(parity): make the Layer-0 parse-skip correct for list files (and measure why it's still a wash on benchmark 2) by @jeduden in #673
  • perf: replace strconv/ToLower hot-path patterns with lower-alloc equivalents by @jeduden in #672
  • docs(plan/145): update blocker state and add 2026-06-21 review sweep by @jeduden in #674
  • feat(MDS070): add same-file-anchor rule for parse-skip-safe fragment resolution by @jeduden in #675
  • feat(lint): back InlineBlocks with a byte-level inline scanner by @jeduden in #676
  • arch(engine): split runner.go SRP violation into sibling files by @jeduden in #677

Full Changelog: v0.51.0...v0.52.0

v0.51.0

Choose a tag to compare

@github-actions github-actions released this 20 Jun 19:50
Immutable release. Only release title and notes can be modified.

What's Changed

  • perf: configured-rule cache (−78% allocs) + SIMD newline scan + directive-free fast path by @jeduden in #641
  • perf(MDS002): Layer-0 parse-skip path for heading-style (parity migration, 1/N) by @jeduden in #643
  • perf: vectorize whole-buffer byte scans with bytes.IndexByte/Count + document the lesson by @jeduden in #642
  • perf: let the Layer-0 parse-skip engage on code-bearing files by @jeduden in #644
  • plan: break the parity parse-skip migration into five batches by @jeduden in #645
  • perf(engine): unify the two Layer-0 parse-skip gates (plan 2606171400) by @jeduden in #647
  • plan(2606171401): correct the heading-rule migration approach (config-aware, depends on #647) by @jeduden in #648
  • perf: Layer-0 parse-skip for MDS010/MDS011/MDS031 (fenced-code batch, 3/5) by @jeduden in #649
  • plan(2606171136): mark configured-rule cache plan complete by @jeduden in #646
  • plan(2606171258): sync master scope inventory with the batch plans by @jeduden in #650
  • plan: line-rule fusion — spiked, measured, deprioritized (no win) by @jeduden in #651
  • feat(2606171402): migrate MDS065 and MDS066 to Layer-0 nil-AST path by @jeduden in #652
  • feat(2606171403): migrate list and blockquote parity rules to Layer-0 nil-AST path by @jeduden in #653
  • fix(deps): bump markdown-it to 14.2.0 and js-yaml to 4.2.0 by @jeduden in #659
  • perf: replace fmt.Sprintf with strconv across 5 hot paths (top-5 high-perf-Go audit) by @jeduden in #654
  • feat(2606171404): migrate 11 parity rules to Layer-1 nil-AST inline path by @jeduden in #655
  • feat: add nil-AST (parse-skip) paths to MDS003, MDS004, MDS051; classify MDS069 Layer 0 by @jeduden in #656
  • perf: top-5 hot-path optimizations per high-performance-go.md audit by @jeduden in #658
  • chore(deps): bump golang.org/x/sys from 0.44.0 to 0.46.0 by @dependabot[bot] in #660
  • perf: eliminate allocation in isMarkdownPath; add coverage tests for map-set changes by @jeduden in #662
  • feat(2606171258): promote MDS066 to Layer 0 so parity skips the parse by @jeduden in #661
  • security: 2026-06-19 full-repo and LSP/VSCode audit results by @jeduden in #663
  • Generalize the B-prose-only Layer-0 promotion (supersedes blockSkipSafe) by @jeduden in #665
  • fix(security): add defer recover() to lintFile to contain rule panics (S003) by @jeduden in #666
  • security: address low/info findings from 2026-06-19 full-repo audit (S004-S007) by @jeduden in #667
  • security: replace os.DirFS with os.OpenRoot to contain symlink escapes (S001, S002) by @jeduden in #668
  • security(S006,S007): add Workspace Trust gates to kinds and rule-doc VS Code commands by @jeduden in #669
  • fix(security): panic recovery and security hardening (rounds 1–3) by @jeduden in #670

Full Changelog: v0.50.0...v0.51.0

v0.50.0

Choose a tag to compare

@github-actions github-actions released this 17 Jun 11:08
Immutable release. Only release title and notes can be modified.

What's Changed

  • Prototype: flat Layer-0 line classifier for line-length vs gomarklint by @jeduden in #626
  • Lazy parse: Layer 0 block scanner and parse-skip gate (plan 2606141902) by @jeduden in #628
  • Lazy parse: BlockSpan seam for block NodeCheckers (plan 2606141903) by @jeduden in #630
  • Lazy parse: Layer 1 inline index (code spans + full inline rules) by @jeduden in #632
  • plan 2606141904: combine inline index (#632) and link-ref scanner (#634), update status by @jeduden in #635
  • perf: five hot-path optimizations from high-performance-go.md audit by @jeduden in #633
  • audit(arch): 2026-06-16 lazy-parse audit + plan 2606162214 (missing helper tests) by @jeduden in #638
  • build(deps): bump golang.org/x/mod from 0.34.0 to 0.37.0 by @dependabot[bot] in #640
  • docs(arch): document internal/checker and internal/rulelayer; remove engine shim by @jeduden in #639
  • perf: cut Fix() allocations and fix O(n²) gitignore ancestor walk by @jeduden in #637

Full Changelog: v0.49.0...v0.50.0

v0.49.0-marketplace

Choose a tag to compare

@jeduden jeduden released this 15 Jun 06:31
Immutable release. Only release title and notes can be modified.
1d5fbe0

Marketplace release

v0.49.0

Choose a tag to compare

@github-actions github-actions released this 15 Jun 06:23
Immutable release. Only release title and notes can be modified.
1d5fbe0

What's Changed

  • perf(goldmark): arena Heading/ListItem + research the parity-vs-gomarklint gap by @jeduden in #614
  • docs(bench): lazy-parse research + staged plans to beat gomarklint in parity by @jeduden in #615
  • refactor(arch): extract buildpathutil to break build→rules DIP violation by @jeduden in #616
  • security: clear Dependabot alert #2 (critical wish SCP path traversal) + harden VS Code dev deps by @jeduden in #618
  • test(index): make TestParallelBuildSpeedup tolerant of CI contention by @jeduden in #620
  • docs: complete the gomarklint comparison (benchmark + linter-comparison page) by @jeduden in #613
  • docs(plan/145): record mise PR rejection and blocked-upstream status by @jeduden in #612
  • perf: eliminate per-line allocation copies and separator allocs in five rules by @jeduden in #619
  • ci: upload security-audit SARIF to code scanning by @jeduden in #621
  • Spike: block-only parse cost vs gomarklint (plan 2606141901) by @jeduden in #622
  • docs: fill PGO catalog title by @LIghtJUNction in #624
  • Add GitHub Actions distribution channel by @jeduden in #623
  • Remove deprecated engine wrappers for checker and lint by @jeduden in #625
  • Add per-function unit tests for secreview/report.go by @jeduden in #627
  • Fix action.yml for GitHub Marketplace publish validation by @jeduden in #629

New Contributors

Full Changelog: v0.48.0...v0.49.0

v0.48.0

Choose a tag to compare

@github-actions github-actions released this 14 Jun 16:42
Immutable release. Only release title and notes can be modified.

What's Changed

  • perf(catalog): record front-matter fast-scan profiling deltas by @jeduden in #610
  • docs(bench): link performance page to the assets-branch benchmark write-up by @jeduden in #611

Full Changelog: v0.47.0...v0.48.0