Commits
A real drop cap and a template editor: the longest day of the project
Eight hours of work in a row: we fix the floating drop cap down to the millimetre, close issue #7 and the template tickets, and end up with a complete template editor; the panel gains sections and the pilot lets you pick the AI model per piece.
Eight hours of work in a row. The day had one clear goal — a real drop cap instead of the decorative version — and it grew into the longest day of the project: layout artifacts that survive re-layouting, native InDesign drop caps, the layout editor complete, and a panel that finally understands sections.
A real drop cap, down to the millimetre
The floating drop cap was there, but it behaved differently depending on the measure: a span with a percentage font size scales relative to its parent and drifted a couple of points from the baseline. The fix was to stop scaling against a variable parent: span.capitular at 700% with a 0.68em line-height, measured against the rendered PDF and adjusted until the column lines up exactly. What was decorative now behaves like a real editorial drop cap.
Artifacts that don't regenerate
The derived artifacts kept regenerating on every re-layout and moved on their own. Now they only regenerate when their source changes, and the PDF keeps them where they were placed. For printed output, native InDesign drop caps arrived via IDML and JSX, with the glyph verified in the exported PDF.
The layout editor, complete
With issue #7 closed, the tickets of the template editor ended complete: library, compiler, fonts, preview, editor and variants, with AI proposals and the reopening of issue #23 pending review. The suite closed with 343 passing tests.
Panel: sections and AI proposal
The edition panel gained sections: each article shows a quick section selector on its card, and the proposal button is visible again on "Maquetar". We also finished the planning decisions: an explicit action to promote a composition into a global template, with confirmation required on screen and on the server, and a per-piece AI model selector in the pilot, sharing the same resolution function as the single-piece proposal. The report states which model composed each piece and fails clearly if the model is inactive, cannot handle text or its provider is off.
What remains
The real proof is missing: a rendered page with true editorial content. The pilot's full run with a live provider, print and InDesign checking, and the migration equivalence of existing templates are still on the list. The next day starts there, with the panel in production waiting for real material from issue n2.