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
-[`mdsmith lsp` emits diagnostics, quick-fixes, and navigation — definition, references, symbol search, and a call-hierarchy over `<?include?>`, `<?catalog?>`, and cross-file links — consumed by any LSP-aware editor.](../docs/features/live-diagnostics.md)
88
88
-[`mdsmith extract` projects a schema-conformant Markdown file into a JSON, YAML, or msgpack data tree; `mdsmith export` writes a portable, directive-free copy that renders anywhere.](../docs/features/markdown-as-data.md)
89
89
-[Pin a Markdown convention to get a curated rule preset and a target renderer flavor in one switch. `MDS034` flags syntax the flavor will not render; a placeholder vocabulary spares template tokens.](../docs/features/markdown-conventions.md)
90
-
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — roughly 4x faster than Node markdownlint, with a CI gate against regression.](../docs/features/performance.md)
90
+
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — an order of magnitude faster than Node markdownlint, with a CI gate against regression.](../docs/features/performance.md)
91
91
-[CI badge, Go Report Card grade, and Codecov coverage badge report live project health. mdsmith lints its own docs with the rules it ships, and a coverage gate blocks any merge that drops below the line.](../docs/features/quality.md)
92
92
-[`mdsmith list query 'status: "✅"' plan/` selects files by a CUE expression on front matter; `mdsmith metrics rank` ranks files by any shared metric — both ready to pipe into a release script.](../docs/features/release-gating.md)
93
93
-[Rename a heading and every workspace anchor link that points at it is rewritten in one atomic edit. Link-reference labels rename with their uses. A colliding slug fails loudly instead of silently breaking cross-file links.](../docs/features/rename.md)
# Build the PR body with echo appends (no heredoc) so dedent
974
+
# and backtick expansion cannot bite. Single quotes keep the
975
+
# Markdown backticks literal.
976
+
{
977
+
echo 'Automated refresh of the committed cross-tool benchmark snapshot,'
978
+
echo "re-measured on the CI runner during the ${VERSION} release."
979
+
echo ''
980
+
echo 'Review the number diff under `docs/research/benchmarks/data/` and the'
981
+
echo 'regenerated fragments. Absolute times wobble on a shared runner, so the'
982
+
echo '**ratio** is the signal -- the regression gate compares mdsmith to mado,'
983
+
echo 'which cancels both the runner speed and the corpus size:'
984
+
echo ''
985
+
echo '```'
986
+
echo "$verdict"
987
+
echo '```'
988
+
} > /tmp/pr-body.md
989
+
gh pr create \
990
+
--base main \
991
+
--head "$branch" \
992
+
--title "bench: refresh cross-tool benchmark numbers for ${VERSION}" \
993
+
--body-file /tmp/pr-body.md
994
+
995
+
if [ "$rc" -ne 0 ]; then
996
+
# rc!=0 is either a real regression or bench-check failing to
997
+
# read the data (missing tool/file); the verdict echoed above
998
+
# says which. Either way fail the job so it is visible.
999
+
echo "::error::bench-check failed — perf regression, or it could not read the benchmark data (see the verdict above). The refresh PR opened for review; this run is marked failed."
-[`mdsmith lsp` emits diagnostics, quick-fixes, and navigation — definition, references, symbol search, and a call-hierarchy over `<?include?>`, `<?catalog?>`, and cross-file links — consumed by any LSP-aware editor.](docs/features/live-diagnostics.md)
94
94
-[`mdsmith extract` projects a schema-conformant Markdown file into a JSON, YAML, or msgpack data tree; `mdsmith export` writes a portable, directive-free copy that renders anywhere.](docs/features/markdown-as-data.md)
95
95
-[Pin a Markdown convention to get a curated rule preset and a target renderer flavor in one switch. `MDS034` flags syntax the flavor will not render; a placeholder vocabulary spares template tokens.](docs/features/markdown-conventions.md)
96
-
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — roughly 4x faster than Node markdownlint, with a CI gate against regression.](docs/features/performance.md)
96
+
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — an order of magnitude faster than Node markdownlint, with a CI gate against regression.](docs/features/performance.md)
97
97
-[CI badge, Go Report Card grade, and Codecov coverage badge report live project health. mdsmith lints its own docs with the rules it ships, and a coverage gate blocks any merge that drops below the line.](docs/features/quality.md)
98
98
-[`mdsmith list query 'status: "✅"' plan/` selects files by a CUE expression on front matter; `mdsmith metrics rank` ranks files by any shared metric — both ready to pipe into a release script.](docs/features/release-gating.md)
99
99
-[Rename a heading and every workspace anchor link that points at it is rewritten in one atomic edit. Link-reference labels rename with their uses. A colliding slug fails loudly instead of silently breaking cross-file links.](docs/features/rename.md)
-[`mdsmith lsp` emits diagnostics, quick-fixes, and navigation — definition, references, symbol search, and a call-hierarchy over `<?include?>`, `<?catalog?>`, and cross-file links — consumed by any LSP-aware editor.](docs/features/live-diagnostics.md)
80
80
-[`mdsmith extract` projects a schema-conformant Markdown file into a JSON, YAML, or msgpack data tree; `mdsmith export` writes a portable, directive-free copy that renders anywhere.](docs/features/markdown-as-data.md)
81
81
-[Pin a Markdown convention to get a curated rule preset and a target renderer flavor in one switch. `MDS034` flags syntax the flavor will not render; a placeholder vocabulary spares template tokens.](docs/features/markdown-conventions.md)
82
-
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — roughly 4x faster than Node markdownlint, with a CI gate against regression.](docs/features/performance.md)
82
+
-[A single static Go binary, no runtime to start. The workspace walk runs in parallel, embeds are linted once, and `check` is built for the hot path — an order of magnitude faster than Node markdownlint, with a CI gate against regression.](docs/features/performance.md)
83
83
-[CI badge, Go Report Card grade, and Codecov coverage badge report live project health. mdsmith lints its own docs with the rules it ships, and a coverage gate blocks any merge that drops below the line.](docs/features/quality.md)
84
84
-[`mdsmith list query 'status: "✅"' plan/` selects files by a CUE expression on front matter; `mdsmith metrics rank` ranks files by any shared metric — both ready to pipe into a release script.](docs/features/release-gating.md)
85
85
-[Rename a heading and every workspace anchor link that points at it is rewritten in one atomic edit. Link-reference labels rename with their uses. A colliding slug fails loudly instead of silently breaking cross-file links.](docs/features/rename.md)
0 commit comments