QuantEcon / QuantEcon/test-lecture-theme-sphinx
Corpus completion: the ten missing constructs, a known-failures section, and the capture script for the two verbatim pages
Nobody has claimed this yet.
- Dominant language
- TeX
- Stars
- 0
- Forks
- 0
- Avg merge
- 28m
- Merged PRs (30d)
- 6
Description
Phase 2 of QuantEcon/project-theme-parity#2. Brief revised 2026-09-17 after review (mmcky): synthetic snippets as the rule; the two verbatim pages stay; no further lecture captures unless the coverage join asks for one. Revised again the same day: the coverage join itself moves to the project's pass (bin/coverage in project-theme-parity), because it needs the private lecture inventory as well as this public corpus, and coverage is a property of an inventory version × a corpus version — a pass, not a repository.
Where the corpus stands (measured 2026-09-17)
Running bin/feature-inventory (workspace-lectures) over this repository's lectures/ and joining it to the 2026-09-17 matrix: 130 of the 140 inventoried constructs are present. Absent:
| Kind | Construct | Lecture uses | Source |
|---|---|---|---|
| directive-option / cell-option | label on {code-cell} and {figure} (3 rows) |
89 | lecture-wasm, the mystmd-native convention — and now the after-form of the mystnb.figure rewrite (QuantEcon/mystmd#114) |
| role | any |
3 | lecture-python-programming; QuantEcon/mystmd#118 |
| cell-tag | no-execute |
1 | one lecture; not a MyST-NB tag on either stack |
| latex-env | align, equation*, gathered |
1 each | one lecture each |
| html-tag | font, style |
1 each | one lecture each |
Decisions that shape this item
- Synthetic by default (2026-09-17). Snippets are cheap, stable and provenance-tagged; verbatim lectures add execution time, data dependencies and drift. The two verbatim pages already here (
lp_intro.md,troubleshooting.md) stay as the realism fixtures for the visual review and for interaction effects — numbering across many targets, a{numref}far from its figure, a bibliography with real citation density (references.mdneeds a lecture that cites to test BibTeX rendering). Nothing further is captured unless the project's coverage report shows a construct a snippet cannot express. - Execution is measured too. The corpus must exercise how each stack renders execution outcomes, not only markup: errors, halts, long outputs, skipped cells. GPU-only cells are out of scope — that is the execution backend, not the theme.
- Real material for figures and files: images and static files referenced by snippets are copied from the lecture repositories'
_static/lecture_specific/<slug>/with a provenance line (repo, path, commit); datasets load fromdata-lecturesURLs exactly as the lectures do. - Corpus scope: the eight manifest repositories (QuantEcon/project-theme-parity#5).
- Coverage is computed by the project, not here:
bin/coveragein project-theme-parity runs the inventory scanner over this repository at a recorded commit, joins it to the lecture inventory, writespasses/<date>/coverage.md, and fails the pass when a construct with lecture uses is absent. This README links to the latest coverage report rather than carrying aCOVERAGE.md.
Work
- Ten missing constructs as snippets, each with a provenance comment naming the lecture it is adapted from: the
label:convention on a code cell and a figure (fromlecture-wasm),{any},no-execute,align,equation*,gathered,<font>,<style>. - A known-failures section at the end of
code_cells.md: araises-exceptioncell, a deliberateNameErrorwithout the tag (both stacks' halt behaviour), an output longer than the scroll cap, askip-executioncell, a cell writing to stderr, a cell producing a wide DataFrame. Last on the page so a halt cannot hide other surfaces, as the:load:demonstration already is. bin/capturefor the two verbatim pages only: re-copylp_intro.mdandtroubleshooting.mdfromlecture-python-introat a named commit, record(repo, path, commit, date)inCAPTURES.yml, and replace the hand-written provenance comments with a generated header. The script fails loudly on a referenced file it cannot copy rather than editing the lecture.- Keep the Sphinx build clean under
-W; update_toc.yml; re-synctest-lecture-theme-mystmdwithbin/sync-from-sphinx; link the README to the project's latest coverage report.
Exit
All ten constructs and the known-failures section are on pages with provenance, both builds are green, the mystmd repository is re-derived, and the next pass in project-theme-parity reports 140 of 140 present.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by running bin/feature-inventory against lectures/ and reading code_cells.md, the existing verbatim pages, and their provenance. Add the ten missing constructs and known-failures section, then use bin/capture for lp_intro.md and troubleshooting.md with CAPTURES.yml and update _toc.yml and the README. Verify clean Sphinx builds, re-sync with bin/sync-from-sphinx, and confirm the next project-theme-parity coverage pass reports 140 of 140 constructs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- latex
- Domain
- build-system, documentation, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 52/100