Skip to content

v1.35.0.0 feat: add /document-generate skill + enhance /document-release with Diataxis coverage map#1477

Merged
garrytan merged 10 commits into
mainfrom
feat/document-release-diataxis
May 14, 2026
Merged

v1.35.0.0 feat: add /document-generate skill + enhance /document-release with Diataxis coverage map#1477
garrytan merged 10 commits into
mainfrom
feat/document-release-diataxis

Conversation

@garrytan
Copy link
Copy Markdown
Owner

@garrytan garrytan commented May 13, 2026

Summary

Documentation pipeline becomes a tracked surface. Ships a new /document-generate skill (Diataxis-based doc author) and substantially enhances /document-release with coverage maps, doc-debt PR sections, and architecture diagram drift detection.

Headline shipping items:

  • /document-generate (NEW) — 446-line skill template, 9-step workflow. Reads codebase first, then writes docs in 4 Diataxis quadrants (tutorial / how-to / reference / explanation). Runnable standalone or auto-chained from /document-release when coverage gaps surface.
  • /document-release enhancements — new Step 1.5 Coverage Map (scores every new public-surface entity across the 4 quadrants), Documentation Debt section in PR body (critical + common gaps with Diataxis tags), Architecture diagram drift detection (scans ASCII/Mermaid blocks for renamed entities), CHANGELOG sell-test rubric (0-3 scoring).
  • CLAUDE.md fork-PR workflow — new section codifying how to handle garrytan-agents PRs: push to base repo so eval CI gets secrets, instead of broadening fork secret access.

Test Coverage

bun test across browse/test, test/, make-pdf/test — all passed. Security ensemble bench: Detection 56.2% (above 55% floor), FP 22.9% (below 25% ceiling). No new code paths introduced (diff is markdown + skill templates), so no new unit/integration tests required.

Pre-Landing Review

Codex review ran during plan-mode session — 17 findings on the original cathedral plan, all addressed via two-phase rollout + inline mitigations (see plan file /Users/garrytan/.claude/plans/what-can-we-do-idempotent-flurry.md). Adversarial Claude subagent: no new issues on the final diff.

Eval Results

Paid evals (bun run test:evals) skipped for this ship — diff is documentation + skill-routing changes, not LLM-output-changing logic. Run manually if you want extra confidence: EVALS=1 bun run test:evals.

Plan Completion

Two-phase plan codified in ~/.gstack/projects/garrytan-gstack/ceo-plans/2026-05-11-document-generate-and-release-platform.md. Phase 1 (this PR) ships the /document-generate skill + /document-release enhancements + CLAUDE.md fork-PR workflow. Phase 2 (follow-up PR after dogfooding) ships the shared gstack-doc-coverage CLI primitive, tutorial sandbox validation, /ship doc-debt gate, and delight pack — see plan file for gate-activation criteria (≥10 PRs of observer-mode data + <10% false-positive rate).

Documentation

  • README.md — added /document-generate row to skills table (Technical Writer category); updated install-command skill lists in both Claude Code and Codex/AGENTS sections
  • SKILL.md.tmpl + SKILL.md — added routing line: "User asks to write docs from scratch, generate documentation, document this feature/module → invoke /document-generate"
  • CLAUDE.md — added document-generate/ to project structure tree; added new "Checking out PRs from garrytan-agents" section
  • gstack/llms.txt — auto-regenerated to include /document-generate entry
  • VERSION — 1.34.2.0 → 1.35.0.0 (MINOR: new skill + substantial enhancement)
  • package.json — synced to 1.35.0.0

Documentation Debt

Two follow-up items flagged for future work, not blocking:

  • Tutorial coverage for /document-generate — no getting-started walkthrough in README beyond the skills-table row. Diataxis quadrant: tutorial.
  • Explanation coverage for Diataxis adoption — no ARCHITECTURE.md entry on why gstack uses Diataxis. Diataxis quadrant: explanation. Low priority.

Test plan

  • All free tests pass (bun test)
  • Security ensemble bench above floor (Detection 56.2%, FP 22.9%)
  • Skill docs regenerated and freshness check passes
  • VERSION + package.json synced to 1.35.0.0
  • CHANGELOG entry at top in release-summary format
  • PR title prefixed v1.35.0.0
  • Manual: run /document-generate on a sample project to dogfood the four-quadrant flow
  • Manual: verify /document-release Step 1.5 coverage map renders correctly in a real PR body

🤖 Generated with Claude Code

Documentation Generated

Filled the documentation debt items flagged by /document-release earlier in this PR. Closes both gaps surfaced in the previous ### Documentation Debt section.

File Quadrant Description
docs/tutorial-document-generate.md Tutorial 90-second newcomer walkthrough: scope → archaeology → partition → write
docs/howto-document-a-shipped-feature.md How-to Post-ship workflow: /document-release audit → fill gaps with /document-generate → verify
docs/explanation-diataxis-in-gstack.md Explanation Why gstack uses Diataxis (failure modes of naive doc workflows; quadrant trade-offs; alternatives considered)
document-generate/SKILL.md Reference Already shipped earlier in this PR (1184 lines, generated from .tmpl)

All four Diataxis quadrants for /document-generate are now covered. Cross-linking verified — every Related section points at an existing file. README skills-table row now links the tutorial, how-to, and explanation directly.

Hermes Agent and others added 6 commits May 11, 2026 12:07
…ction, and docs debt tracking

Inspired by @doodlestein's documentation-website skill. Three key ideas incorporated:

1. Step 1.5: Coverage Map (Blast-Radius Analysis) — before editing any docs,
   scan the diff for new public surface and assess documentation coverage across
   Diataxis quadrants (reference/how-to/tutorial/explanation). Flags gaps without
   auto-generating content.

2. Architecture diagram drift detection — extracts entity names from ASCII/Mermaid
   diagrams and cross-references against the diff to catch stale diagrams.

3. Enhanced CHANGELOG sell test — Diataxis rubric scoring (0-3) replaces the
   subjective 'would a user want this?' check.

4. Documentation Debt section in PR body — surfaces coverage gaps and diagram
   drift as actionable items for future work.

All changes are audit-only: the skill flags what's missing, never auto-generates
missing documentation pages. Stays in its lane as a post-ship updater.

Co-Authored-By: Hermes Agent <agent@nousresearch.com>
New /document-generate skill, the companion to /document-release. While
/document-release audits and fixes existing docs post-ship, /document-generate
writes missing documentation from scratch using the Diataxis framework.

Inspired by doodlestein documentation-website-for-software-project skill.

Co-Authored-By: Hermes Agent <agent@nousresearch.com>
CI's check-freshness step ran gen:skill-docs and found llms.txt stale —
the index wasn't regenerated when /document-generate was added in the
preceding commit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Main brought in the Non-ASCII characters directive in the AskUserQuestion
Format resolver (scripts/resolvers/preamble/generate-ask-user-format.ts).
Regenerating document-generate/SKILL.md propagates the new section into
the generated output. check-freshness should now pass.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Fork PRs from non-collaborators don't get base-repo secrets passed to
their CI workflows, so eval/E2E jobs fail with empty-env auth. New
section: when checking out a PR from garrytan-agents, push the branch
to garrytan/gstack and re-target the PR from there.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 13, 2026

E2E Evals: ✅ PASS

12/12 tests passed | $.76 total cost | 12 parallel runners

Suite Result Status Cost
e2e-browse 4/4 $0.18
e2e-workflow 1/1 $0.23
llm-judge 6/6 $0.12
e2e-workflow 1/1 $0.23

12x ubicloud-standard-2 (Docker: pre-baked toolchain + deps) | wall clock ≈ slowest suite

- README.md: add /document-generate to skills table (Technical Writer
  category) + install-command skill lists
- CLAUDE.md: add document-generate/ to project structure tree
- SKILL.md.tmpl + regenerated SKILL.md: add /document-generate routing
  line ("write docs from scratch")
- VERSION: 1.34.0.0 → 1.35.0.0 (MINOR: new skill + enhancement)

CHANGELOG entry deferred to /ship.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@garrytan garrytan changed the title feat: add /document-generate skill + enhance /document-release with Diataxis coverage map v1.35.0.0 feat: add /document-generate skill + enhance /document-release with Diataxis coverage map May 13, 2026
garrytan and others added 3 commits May 14, 2026 08:14
CHANGELOG entry for the document-generate skill + document-release
Diataxis enhancements. package.json synced to VERSION (drift repair
after merging main which had bumped pkg to 1.34.2.0).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…explanation)

Fills the documentation debt items flagged by /document-release in PR #1477:
critical-gap tutorial coverage and common-gap explanation coverage for the
new /document-generate skill.

Quadrants: tutorial, how-to, explanation (reference already covered by
document-generate/SKILL.md).

- docs/tutorial-document-generate.md (1009 words): newcomer 90-second flow
- docs/howto-document-a-shipped-feature.md (770 words): post-ship audit + fill workflow
- docs/explanation-diataxis-in-gstack.md (1106 words): why Diataxis, trade-offs, alternatives
- README.md: links the three docs from the /document-generate skills-table row

All cross-links verified — every Related section points at an existing file.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@garrytan garrytan merged commit 40e34de into main May 14, 2026
24 checks passed
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.

1 participant