Decisions called during the slice-1 → slice-6 work. These supplement
the 12 binding decisions in docs/styling-spec.md §10 — they're
project-level calls about scope, sequencing, and deprecations, not
about the styling dialect's design.
Recorded so they don't get re-litigated.
The bib-data render-prop returns content JSX. Resolver flips from
renderTemplateFragmentToIR to renderContentToIR (or a
*FragmentToIR variant). <bib-entry-content> moves to content side.
The bibliography IS content; this is the architecturally honest path.
~10 files. Costs are paid once.
Catches typos. The dialect is supposed to be typed; an open-ended
pass-through erodes that contract. Add table-layout, word-wrap,
overflow-wrap for slice 5.4. Future missing properties get added
in their own slice — it's cheap.
Propagate real parent sibling info so parent: {index: "last"} just
works. No new selector form. The walker already has this info; just
needs to pass it down.
Authors write <section role="abstract">. Engine doesn't define
"abstract." 12 files of mechanical change, but keeping dead
semantics in the engine is exactly what slice 6 exists to delete.
Split resolver/ir.ts and resolver/resolve.ts. Pure refactor,
behavior-preserving. Every future slice gets cheaper.
It's the one blocking customCss completion. The others (indent,
text-flow, column-fit, caption-position) wait for actual
demand. Don't pre-build.
reactwright-* becomes stable public surface. Renaming to
underscore-prefixed internals breaks user CSS without proportional
gain. Spec §9 slice-4 entry: rejected. Engine classes are public
API as of v1.0.
Wait until IEEE_CSS hits zero. Warning the only consumer is noise.
<bibliography>, <toc>, <list-of>, and the template-side
<index> were removed in 0.3.0 (pre-1.0 breaking change). Authors
use the <Bibliography>, <Toc>, <ListOf>, <Index> userland
helpers from reactwright/userland, which compose the data-source
primitives. The <index term=...> content-side marker remains.
Single-package. Don't fragment into a separate @reactwright/defaults
until packaging demands it (subscriber feedback, monorepo split, etc.).
Hasn't been touched. If it bites again it resurfaces with fresh context. Don't carry unmaintained pending work.
Established by these decisions:
- Slice 5.4 — cssPropertyMap (D2) + parentContext fix (D3) + 3 table customCss migrations. Next.
- Refactors #68 / #69 (D5).
- Slice 6.3 path A (D1) + slice 6.4.
- Slice 6.5 (D4) + slice 3
hanging-indent(D6). customCssdeprecation (D8) when IEEE_CSS = 0.- v1.0 removal pass (D9) when ready to cut.