Skip to content

epythet v2: modernization epic (Sphinx 9, README landing, nested API tree, themes, normalizer, validate + ledger, AI artifacts, fleet migration) #16

Description

@thorwhalen

Tracking issue for the epythet v2 modernization. The design rationale, evidence, and the fleet migration plan are in the decision record discussion: #15

Scope (one work package per session)

  • WP0 — Safety pin (PR Pin epythet to <0.2 in publish-github-pages action #17): the Pages action installs epythet<0.2 until v2 is validated; pin the wads stub to a tagged action ref
  • WP1 — Core v2 (PR epythet v2 core (0.2.0): config SSOT, README landing page, nested API tree, themes, docstring normalizer, agent outputs #19, 0.2.0): [tool.epythet] SSOT config, generated conf.py (thin shim if committed), MyST index.md including the README, recursive API generator (nested TOC), theme registry (furo default, curated seven, OKLCH accent), build-time docstring normalizer, agent outputs (llms.txt + .md twins), compatibility entry points (quickstart, make_docsrc, make_autodocs, make)
  • WP1b — Single-document aggregates (.md by default, .pdf opt-in via aggregates = ["md", "pdf"]; no separate epythet aggregate command, every html build produces them): <site>/<package>.md (agents) and <site>/<package>.pdf (humans) at stable URLs, produced by default, linked from the landing page and the "For AI agents" section; epythet aggregate tool
  • WP2 — epythet validate levels 0 / 0.5 / 1 and the artifact ledger (YAML rules + fixtures, seed rules) — landed in epythet validate (levels 0, 0.5, 1) and the artifact ledger (WP2) #18
  • WP3 — validate levels 2 / 3, repair, migrate-style, sweep
  • WP4 — Shipped consumer skills and subagents, "For AI agents" docs section template, README rewrite (gh skill install instructions)
  • WP5 — Action v2, fleet validation run on a sample of repos, pilot, default flip
  • WP6 — Fleet documentation sweep (one session per repo): artifact repair coupled with coverage, correctness and completeness improvements
  • R1 — Research: what makes documentation good for agents and for humans (feeds the docstring-style skill and the sweep procedure)

Back-compat contract to preserve

  • epythet quickstart <dir> --ignore ... keeps working and writes HTML to ./docsrc/_build/html/
  • epythet.config_parser.parse_config keeps its 5-tuple return
  • epythet.tools.docstring_diagnosis.diagnose_doctest_code_blocks and repair_package import paths stay stable (used by wads skills)

Folded-in issues

#13 (conf.py SSOT), #9, #10, #8 (Markdown vs RST), #2 (doctest prompt toggle), #11 (doctest detection), #7 (version and date on the page). The wiki's "Documentation problems ledger" becomes the first ledger entries.

Journal

  • 2026-09-10: research complete (doc systems, themes, validation tooling, fleet impact, past decisions); baseline render of dol / i2 measured (127 / 119 docutils warnings, dozens of silent artifacts); decision record posted; awaiting maintainer answers on the 8 questions in the discussion.
  • 2026-09-10: maintainer accepted all 8 recommendations; added WP1b (flat .md/.pdf aggregates) and the coverage/correctness coupling for WP6 (see discussion epythet v2 — decision record and fleet migration plan (2026-09) #15 comment). Dispatching WP0, WP1, WP2 and R1 in parallel.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions