Skip to content

Auto: Content & Presence Updates (June-July 2026)#1

Open
ppradyoth wants to merge 8 commits into
mainfrom
auto/presence-updates
Open

Auto: Content & Presence Updates (June-July 2026)#1
ppradyoth wants to merge 8 commits into
mainfrom
auto/presence-updates

Conversation

@ppradyoth

@ppradyoth ppradyoth commented Jun 23, 2026

Copy link
Copy Markdown
Owner

Cumulative content & presence work for the June–July 2026 autonomous agent window. Do not merge until review.

Cumulative changelog

2026-06-30 run

  • New script: code-fence-lint.js — zero-dependency Node CLI that lints fenced code blocks in Markdown. Detects unclosed fences (a fence that opens but never closes — error), missing language tags (opening fence with no info string — warning by default; --strict-language promotes to error, --no-require-language silences), and mismatched fence lengths (a closer shorter than its opener doesn't close the block). CommonMark-aligned and length/character-aware: a closer must use the same char (``` or ~~~) and be at least as long as the opener, so backtick-wrapped blocks containing ~~~ (and vice-versa) parse correctly; only a line starting (after ≤3 spaces) with a fence run counts, so inline code never false-positives. --json, --quiet, CI exit codes (0 ok / 1 lint fail / 2 usage), exports matchFence/lintFences for require(). Honest documented limitation: not a full block parser (deeply nested/blockquoted fences). Tested before commit: unclosed + missing-lang fixture → exit 1; clean file (list-item fences, backtick-nested, cross-char) → exit 0; mismatch fixture → flagged; every CLI flag and error path; the repo's own README → clean. README section 9 + TOC entry added.

2026-06-29 run

  • New script: table-fmt.jsgofmt for GFM tables. Pads each column to its widest cell, rewrites the delimiter row to honor alignment (:---/---:/:--:/---), justifies body cells, repairs ragged rows, leaves tables inside fenced code blocks untouched. Idempotent, stdin (-), --write/--check/--json, CI exit codes. Tested across all column types, ragged-row repair, fence skipping, escaped pipes, idempotency, every CLI/error path. README section 8 + TOC entry.

2026-06-28 run

  • New script: heading-lint.js — zero-dep linter for Markdown heading structure (duplicate-slug, skipped-level, multiple-h1/no-h1, empty-heading, first-not-h1). Reuses the GitHub slug algorithm and code-fence skipping. --json, --quiet, CI exit codes. README section 7 + TOC entry.

2026-06-27 run

  • New script: frontmatter-lint.js — zero-dep linter for YAML frontmatter (required keys, date validity, boolean/list types, duplicate keys, unterminated blocks). --dir recursion, --json, CI exit codes.

2026-06-26 run

  • New examples/ foldercheck-docs.sh, docs-check.yml (GitHub Actions), git-pre-commit hook wiring the docs scripts into automation.

2026-06-25 run

  • New script: link-check.js — zero-dep Markdown link checker (dead relative links + #anchor validation with GitHub's real slug algorithm).

2026-06-23 run

  • New script: markdown-toc.js — zero-dep, GitHub-accurate TOC generator. Code-fence aware, idempotent --write, CI-friendly --check.

Verification

  • All scripts run locally and tested before commit; zero runtime dependencies (pure Node built-ins).
  • code-fence-lint.js validated on crafted fixtures (unclosed, missing-language, mismatched, cross-char nesting) + every CLI path; runs clean against the repo's own README.

🤖 Generated with Claude Code

claude and others added 8 commits June 23, 2026 07:05
Zero-dependency Node script. Extracts headings (code-fence aware), builds
GitHub-compatible anchor slugs with duplicate disambiguation, prints to stdout
or injects an idempotent TOC block via --write. Documented in README.
Verifies the TOC is current without writing: exit 0 (up to date), 1 (stale),
2 (no markers). Documented in README. Tested across all three exit states.
- Detects relative file links pointing at missing paths
- Validates #anchors (same-file and cross-file) using GitHub's slug algorithm
- Ignores links in fenced code blocks and inline code spans
- Network-free by default; --external lists URLs without fetching
- CI-friendly exit codes (0 ok / 1 broken / 2 usage); --json output
- Documented in README with usage and feature list
…hecks

Concrete copy-paste artifacts wiring link-check.js (and opt-in markdown-toc.js
--check) into CI and git hooks. Tested on this repo. README section + note on
the marker false-positive caveat.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YC1umQHkdcQLWnoF5GKE45
Zero-dependency, network-free Node linter for the --- frontmatter block:
required-key checks, YYYY-MM-DD date validation, boolean/list type checks,
duplicate-key and unterminated-block detection. Supports --dir recursion,
--json, --quiet, and CI exit codes (0/1/2). Practical YAML subset parser
(scalars, quoted strings, flow + block lists, booleans, numbers). Tested
against the blog-drafts repo plus crafted bad-input fixtures. README section
6 + TOC added; all links verified.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants