Appearance
Glossary
Audience: anyone reading the rest of this documentation set who wants a quick definition without following every cross-reference.
| Term | Meaning |
|---|---|
IR / ProjectCatalog | The language-independent Intermediate Representation produced by parsing — a tree of Pydantic models (namespaces, classes, methods, fields) common to every language and renderer. See engine/ude/models.py. |
| Collector | The Collect stage: runs the real doxygen binary as a subprocess over SDK source and reads back its XML output. See engine/ude/collectors/doxygen.py. |
| Parser | The Parse stage: turns Doxygen XML into the IR (ProjectCatalog). Language-specific (CsharpDoxygenParser, JavaDoxygenParser, PythonDoxygenParser, a legacy C++ shim), dispatched by engine/ude/parsers/doxygen_router.py. |
| Renderer | The Render stage: turns the IR into final output. Named <Lang><Output><ID>Renderer, Lang ∈ {Cpp, Cs, Java, Py}, Output ∈ {Html, Hugo}, ID ∈ {Default, ODA} — 16 concrete classes in total. See engine/ude/renderers/. |
| ODA renderer | The ID = ODA renderer family (engine/ude/renderers/oda.py) — produces output in Open Design Alliance / Doc-O-Matic house style, run in parallel with the generic Default family. Not a legacy/predecessor variant despite the historical Legacy naming still visible in a couple of older documents. |
| Phase A / Phase B | The two independent, file-system-connected stages of building a browsable Hugo site: Phase A (ude.cli compile) writes Markdown or HTML per document; Phase B (ude_hugo_site/build_site.py, later and separate) turns Phase A's Markdown into the final combined site. See Architecture. |
SDK config (ude_sdk_config.json) | Per-SDK metadata — product_name and the list of that SDK's documents (docs[]). |
Doc config (ude_doc_config.json) | Per-document configuration: language, source paths, collector/parser/renderer settings. See Target Settings. |
sidebar.toml | The mandatory, per-document file carrying both navigation ([[sidebar]]) and folder taxonomy ([groups]). Strictly validated; no cascade or default for either table at any tier. See Sidebar & Groups. |
GroupsConfig | The Pydantic schema (engine/ude/config.py:56-68) validating sidebar.toml's [groups] table. Permits exactly one key, namespace_level — there is no class_level, despite what the engine's own (buggy) error message claims. |
| Coverage gate | The check of what fraction of parsed entities carry documentation, applied via ude audit or automatically at the end of every ude compile. Can block a build in reject-undocumented mode. See engine/ude/coverage.py and CLI Reference. |
error_policy | Global setting controlling batch-build error handling: fail-fast (default) or continue-on-error. |
| Fingerprint / build cache | Two independent hashes — xml_fingerprint for Collector inputs, ir_fingerprint for Parser/Renderer outputs — used to skip unchanged work on incremental builds. See engine/ude/doxygen_cache.py and Troubleshooting. |
| Portal | The top-level Hugo site (ude_hugo_site/portal/) that links to every generated SDK. Built as part of Phase B. |
| GAP / IMP / FIN tags | Tags used in engine source-code comments and commit history to reference specific architectural decisions or debt items (e.g. [IMP-32.10], cited on Sidebar & Groups for why [groups]/[[sidebar]] lost their old engine-tier defaults). Dense in some modules (orchestrator.py, cli.py, coverage.py), absent from others (config.py). |
Related Docs
(Paths below are repository-root-relative.)
user-docs/docs/architecture.md— where Collector/Parser/Renderer/Phase A/Phase B fit togetheruser-docs/docs/sidebar-and-groups.md— full detail behind thesidebar.toml/GroupsConfigentries aboveuser-docs/docs/target-settings.md— full detail behind the config-file entries above
