Skip to content

Commit e2ef727

Browse files
committed
docs: cut deterministic/no-LLM framing; lead with model+LLM workflow
1 parent 5d8028c commit e2ef727

1 file changed

Lines changed: 7 additions & 12 deletions

File tree

README.md

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ as a standalone validator in CI.
5959
- **Built for agents and pipelines.** Feed it whatever your LLM, agent, or design tool emits; get back blocks the editor trusts.
6060
- **Media resolution.** Resolve images to real attachment ids via a map, WP-CLI, or the REST API.
6161
- **Styling fidelity, your call.** Keep off-theme styles or map them to your theme, up to a ceiling you set.
62-
- **Pluggable engines.** Deterministic rules out of the box; bring your own rules, or plug an LLM/agent engine into the same seam.
62+
- **Extensible.** Built-in rules out of the box; add your own, or hand the hardest layouts to an LLM (experimental).
6363

6464
### Validate: prove it's editor-valid
6565

6666
- **Valid means what the editor means.** Every result runs through a gate wired to headless Gutenberg, not a converter's wishful thinking.
67-
- **Deterministic gate.** Reproducible: same markup, same verdict, no nondeterministic model in the loop. Safe to run on every request and in CI.
67+
- **Reproducible gate.** Same markup, same verdict, every time. Safe to run on every request and in CI.
6868
- **Canonicalize.** Rewrite near-miss markup into the exact shape the editor expects.
6969
- **Never fails silently.** When something can't be expressed natively, it says so and points at the exact line.
7070

@@ -140,21 +140,17 @@ const converted = await convert(html, { resolver: 'noop' });
140140

141141
## Conversion
142142

143-
Conversion runs on a pluggable engine. v1 ships a deterministic rule engine: an ordered
144-
walker that maps HTML straight to real block objects with `createBlock()` and serializes
145-
them with `serialize()`, skipping the brittle WordPress paste pipeline entirely. Fast, free,
146-
reproducible, and it already nails the composites the editor usually mangles:
143+
Point Block Runner at whatever your model or design tool generates, and it returns real,
144+
nested blocks ready for the editor. It covers the composites that usually break:
147145

148146
- Cover sections with inline or CSS background images
149147
- Columns and column-like rows
150148
- Buttons and button groups
151149
- Images, headings, paragraphs, and lists
152150
- Generic groups, with a last-resort Custom HTML fallback that always warns
153151

154-
The rules are a seam, not a ceiling. When a layout outgrows them, drop in your own rules, or
155-
an LLM or agent engine, on the same interface (experimental). Deterministic rules for the
156-
common case, a model for the long tail, one contract for both. Whichever engine emits a
157-
block, every result is held to the same validity gate before it ships.
152+
Need more than the built-ins? Add your own rules, or hand the hardest layouts to an LLM
153+
(experimental). Every result is checked against the validity gate before it ships.
158154

159155
## Media Resolution
160156

@@ -231,8 +227,7 @@ comes from a block plugin, or is dropped, and every drop or escalation is report
231227

232228
A conversion benchmark lives under `benchmarks/`: it measures how faithfully real generator
233229
output (Impeccable, Codex, Claude, and more) converts to native blocks, across swappable
234-
conversion engines (the deterministic rules; experimental LLM translators run via their CLIs,
235-
no API key).
230+
converters (the built-in rules, plus experimental LLM translators run via their CLIs).
236231

237232
```sh
238233
npm run bench # score the suite; write report/review.html + report/scoreboard.html

0 commit comments

Comments
 (0)