Skip to content

Glossary

Audience: anyone reading the rest of this documentation set who wants a quick definition without following every cross-reference.

TermMeaning
IR / ProjectCatalogThe 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.
CollectorThe 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.
ParserThe 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.
RendererThe 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 rendererThe 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 BThe 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.tomlThe 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.
GroupsConfigThe 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 gateThe 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_policyGlobal setting controlling batch-build error handling: fail-fast (default) or continue-on-error.
Fingerprint / build cacheTwo 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.
PortalThe top-level Hugo site (ude_hugo_site/portal/) that links to every generated SDK. Built as part of Phase B.
GAP / IMP / FIN tagsTags 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).

(Paths below are repository-root-relative.)

  • user-docs/docs/architecture.md — where Collector/Parser/Renderer/Phase A/Phase B fit together
  • user-docs/docs/sidebar-and-groups.md — full detail behind the sidebar.toml/GroupsConfig entries above
  • user-docs/docs/target-settings.md — full detail behind the config-file entries above