kb/ is its own wiki root: 34 pages across 7 categories, index.md catalog, log.md, AGENTS.md schema layer, and raw/ holding copies of README, the spec, the 13-task plan, the design master and the SDD ledger. Every page cross-references 3 to 6 others and all 107 wikilinks resolve except two [["list"]] artefacts inside JSON snippets in the copied plan. Kept separate from the repository root on purpose: its generated graph lands in kb/.ua/ instead of overwriting the code graph. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
17 lines
955 B
Markdown
17 lines
955 B
Markdown
# OpenUI report language
|
|
|
|
The report is elements, not markdown. `lib/report-spec.ts` defines the component vocabulary and the library prompt
|
|
with `@openuidev/lang-core`; `lib/report-ui.ts` attaches the React renderers.
|
|
|
|
The split exists because `@openuidev/react-lang` calls `React.createContext` at module scope, which breaks the API
|
|
route's server-side collection. A route that needs the prompt must not import a React-backed module.
|
|
|
|
Components: Headline, MetricGrid, Finding, OptionTable, ActionSteps, SqlBlock, ScoreBar, Callout, VerdictBlock.
|
|
The report renders while `oul` is still arriving, so the headline appears before the option table.
|
|
|
|
Every numeric the model supplies passes through `num` and `conf` guards. Before that, a `null` confidence inside
|
|
ScoreBar threw and OpenUI dropped the whole block — visible live as "runtime/render-error: Component ScoreBar
|
|
render failed".
|
|
|
|
Related: [[SSE stream]], [[Analyst model]], [[Console runner]].
|