V0.44.0
Name:v0.44.0Status:planning

v0.44.0 — Hero, cta and testimonial compose

The first marketing runes become compositions over section, beside the plugin runes they will replace. Before they can, a composed rune has to put its universal attributes somewhere other than its empty root, and state its chrome defaults (SPEC-145 D31–D34, SPEC-160 D7, SPEC-161 D1).

Not enough history yet — burndown needs at least one completed day of activity.

Progress 7/12 work items
Related 30

Work Items

Ready 5
WORK-680 main
A staging site renders the docs with staged runes in place of plugin runes
A second site, staging, renders site/content with the project runes in site/staged-runes/ preferred over the plugin runes they replace (SPEC-181 D1). It uses only existing configuration: runes.dir and runes.prefer (__project__).
high simple
0/6 criteria
WORK-681 main
Stage hero, cta and testimonial on the staging site
The composed hero, cta and testimonial move out of the test fixtures into site/staged-runes/. This makes the review of WORK-665, WORK-666 and WORK-668 possible: the runes' reference pages, the homepage and every other page that uses them, rendered with the compositions on the staging site.
high simple
0/6 criteria
WORK-683 main
Document the staging convention and rollout, and test that conversions follow it
Every conversion of a plugin rune into a composition is staged until it goes live, and goes live on its own (SPEC-181 D5, D6). Writing that down is not enough to make it happen, so this item also adds a test that fails when a conversion skips staging.
medium simple
0/4 criteria
WORK-684 main
The plugin hero accepts start and end for align, and the site content uses them
The composed hero takes align="start | center | end", which is section's vocabulary. The plugin hero takes left | center | right. The staging site renders the same content as main, so align="left" on the homepage and on the hero reference page would be invalid there (SPEC-181 D7). The plugin hero learns the new values first, and the content moves to them.
high simple
0/5 criteria
WORK-685 main
The plugin testimonial accepts author and role attributes, and the codemod is applied to this repository
The composed testimonial (WORK-668) takes author and role attributes and reports a **Name** — Role paragraph as content-unmatched. The plugin testimonial takes no author attribute. So WORK-668 built refrakt marketing migrate-testimonial but did not apply it: the rewritten content would not have rendered through the plugin.The staging site renders the same content as main (SPEC-181 D7). The plugin testimonial therefore learns the attributes first, and the codemod is then applied.
high simple
0/6 criteria
Done 7
WORK-660 main
Stop documenting heading eyebrows
ADR-046 decides that an eyebrow is a paragraph directly before the headline, never a heading. The docs still teach the heading form. The guide's only example of it uses hero, which renders it wrongly (BUG-047), and nineteen rune pages say "a short paragraph or heading" in the same boilerplate sentence.The native page-section runes keep their grammar until each one is composed (ADR-046, decision 4), so some of them still accept the heading form. The docs stop recommending it anyway: it is not the direction, and documenting less than a rune accepts is safe where documenting more is not.
medium simple
4/4 criteria
WORK-664 main
section takes guest-fit
The native hero and feature host a media guest with guestFit: 'bleed', a config field. A config field cannot differ between compositions that place the same section, and hero needs bleed where a card-like composition needs clip (SPEC-160 D7).
medium simple
4/4 criteria
WORK-665 main
hero is a composition over section
hero becomes a section with a split, cover, the header and {% actions %}, with no rune CSS of its own (SPEC-160 D7). WORK-654 leaves a composed hero fixture; this item completes it and compares it with the plugin.
high complex
8/8 criteria
WORK-666 main
cta is a composition over section
cta becomes a section with a header and {% actions %}, with no rune CSS of its own (SPEC-160 D7).
medium moderate
7/7 criteria
WORK-667 main
A lead layout for blocks
A blocks entry renders through bar (a row) or definition-list (a label/value grid). Neither draws a byline, a lead value with secondary values beneath, which testimonial and cast each hand-roll in their CSS (SPEC-161 D6).
medium simple
5/5 criteria
WORK-668 main
testimonial is a composition over section, with a codemod for its byline
testimonial becomes one section with a portrait media zone, the rating and byline metablocks, and the quote slot (SPEC-161 D1). Its author and role move from a **Name** — Role paragraph to attributes, so the schema table can publish them.
medium complex
9/9 criteria
WORK-669 main
A theme override aimed at a composed rune is reported and dropped
ADR-042 makes a composed rune's config its definition's: a theme cannot know which definition it faces, so an override of a composed rune's blocks or metaFields is a guess that silently resolves to nothing. Nothing enforces this yet. mergeThemeConfig and mergeRuneConfig (packages/transform/src/merge.ts) guard the identity fields on every rune, and nothing else, so a theme's runes: entry keyed to a composed rune's type name applies.v0.44.0 adds the first composed runes a theme could try to override (hero, cta, testimonial), so the guard lands with them.
high simple
5/5 criteria