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
WIP: extract dev sections and test catalog approaches
Extract coverage gate and file placement from dev index into
separate files. Testing catalog vs static link approaches for
the dev index — catalog glob context shifts when content is
nested via include (see issue discussion).
https://claude.ai/code/session_01J3g8NnEwGYyJWXD1bqtTii
-[How generated sections work — markers, directives, and fix behavior.](../docs/background/archetypes/generated-section/README.md)
28
28
-[Shared patterns (archetypes) reused across multiple linting rules.](../docs/background/archetypes/README.md)
29
29
-[Comparison of mdsmith with other Markdown linters and formatters.](../docs/background/markdown-linters.md)
30
+
-[Codecov coverage gate and CI status checks.](../docs/development/coverage.md)
31
+
-[Where to place Markdown files and documentation types.](../docs/development/file-placement.md)
30
32
-[Build commands, project layout, code style, test fixtures, coverage gate, and merge conflicts.](../docs/development/index.md)
31
-
-[PR fixup workflow for rebase, CI monitoring, review comment resolution, and gh CLI setup.](../docs/development/pr-fixup-workflow.md)
33
+
-[Rebase, CI monitoring, and review comment resolution.](../docs/development/pr-fixup-workflow.md)
32
34
-[How to use schemas, require, and allow-empty-section to validate headings, front matter, and filenames.](../docs/guides/directives/enforcing-structure.md)
33
35
-[How to use catalog and include directives to generate and embed content in Markdown files.](../docs/guides/directives/generating-content.md)
34
36
-[Key differences between Hugo templates and mdsmith directives for users familiar with Hugo.](../docs/guides/directives/hugo-migration.md)
@@ -131,6 +133,19 @@ strip-frontmatter: "true"
131
133
heading-level: "absolute"
132
134
?>
133
135
Build and test reference for mdsmith contributors.
-[How generated sections work — markers, directives, and fix behavior.](docs/background/archetypes/generated-section/README.md)
35
35
-[Shared patterns (archetypes) reused across multiple linting rules.](docs/background/archetypes/README.md)
36
36
-[Comparison of mdsmith with other Markdown linters and formatters.](docs/background/markdown-linters.md)
37
+
-[Codecov coverage gate and CI status checks.](docs/development/coverage.md)
38
+
-[Where to place Markdown files and documentation types.](docs/development/file-placement.md)
37
39
-[Build commands, project layout, code style, test fixtures, coverage gate, and merge conflicts.](docs/development/index.md)
38
-
-[PR fixup workflow for rebase, CI monitoring, review comment resolution, and gh CLI setup.](docs/development/pr-fixup-workflow.md)
40
+
-[Rebase, CI monitoring, and review comment resolution.](docs/development/pr-fixup-workflow.md)
39
41
-[How to use schemas, require, and allow-empty-section to validate headings, front matter, and filenames.](docs/guides/directives/enforcing-structure.md)
40
42
-[How to use catalog and include directives to generate and embed content in Markdown files.](docs/guides/directives/generating-content.md)
41
43
-[Key differences between Hugo templates and mdsmith directives for users familiar with Hugo.](docs/guides/directives/hugo-migration.md)
@@ -138,6 +140,19 @@ strip-frontmatter: "true"
138
140
heading-level: "absolute"
139
141
?>
140
142
Build and test reference for mdsmith contributors.
143
+
See also:
144
+
145
+
<?catalog
146
+
glob:
147
+
- "*.md"
148
+
- "!index.md"
149
+
sort: path
150
+
row: "- [{summary}](docs/development/{filename})"
151
+
?>
152
+
-[Codecov coverage gate and CI status checks.](docs/development/coverage.md)
153
+
-[Where to place Markdown files and documentation types.](docs/development/file-placement.md)
154
+
-[Rebase, CI monitoring, and review comment resolution.](docs/development/pr-fixup-workflow.md)
155
+
<?/catalog?>
141
156
142
157
### Build & Test Commands
143
158
@@ -201,51 +216,6 @@ When adding or changing a rule feature, add both:
201
216
are discovered automatically by the integration test
202
217
runner in `internal/integration/rules_test.go`.
203
218
204
-
### Coverage Gate
205
-
206
-
Codecov blocks PRs that decrease per-file statement
207
-
coverage. Fork PRs skip the upload and are not gated.
208
-
Three status checks run on same-repo PRs:
209
-
210
-
-**project** — overall coverage must not drop below
211
-
the base commit.
212
-
-**patch** — changed lines must have coverage at
213
-
least equal to the project baseline.
214
-
-**changes** — no individual file's coverage may
215
-
decrease vs the base commit.
216
-
217
-
If any check fails, Codecov posts a comment listing
218
-
the affected files with baseline, current, and delta
219
-
percentages. Fix regressions by adding tests for the
220
-
uncovered code paths before merging.
221
-
222
-
Configuration lives in `codecov.yml` at the repo
223
-
root. The `test` job in `.github/workflows/ci.yml`
224
-
uploads the merged coverage profile to Codecov after
225
-
each run.
226
-
227
-
To reproduce CI's merged coverage locally:
228
-
229
-
```bash
230
-
mkdir -p e2e-cover
231
-
E2E_COVERDIR=e2e-cover \
232
-
go test -covermode=atomic \
233
-
-coverprofile=unit.cov ./...
234
-
head -1 unit.cov > merged.cov
235
-
tail -n +2 unit.cov \
236
-
| grep -v 'cmd/mdsmith/'>> merged.cov ||true
237
-
tail -n +2 e2e-cover/e2e_coverage.txt \
238
-
| grep 'cmd/mdsmith/'>> merged.cov
239
-
go tool cover -func=merged.cov
240
-
```
241
-
242
-
Unit tests cannot cover `cmd/mdsmith/` because those
243
-
functions run in a subprocess. The merge replaces
244
-
those zero-count unit lines with the e2e counts. CI
0 commit comments