diff --git a/.planning/phases/17-blog-companions/deferred-items.md b/.planning/phases/17-blog-companions/deferred-items.md new file mode 100644 index 0000000..f415598 --- /dev/null +++ b/.planning/phases/17-blog-companions/deferred-items.md @@ -0,0 +1,11 @@ +# Phase 17 deferred items + +Out-of-scope findings logged during execution. None blocks the plan that found it. + +## From 17-02 (admin SPA) + +1. **Singleton form subtitle link has no schema key.** The UI-SPEC asks for a "View sitemap.xml" subtitle link on the singleton form, "supplied by the form schema". Plan 01's `cabana.FormView` has no such key (only `singleton`), so FormView's singleton mode shows no subtitle line. Follow-up: an optional `config_form.yaml` key (for example a subtitle link with a label key and a URL) in cabana's form schema, OpenAPI and FormView. +2. **Reorder button label cannot be overridden per controller.** `cabana.ListReorder` carries `title` and `partition` only, so the list button always reads `messages.list.reorder` ("Reorder records"). The UI-SPEC's menu entries override ("Reorder entries") needs a list schema key. +3. **OpenAPI gaps the SPA works around.** `GET …/fields/{field}/dependent-options` reads `values[]` from the query, but the document declares no query (the SPA casts the query). `AdminReorderNode.parent_id`, `AdminReorderRequest.partition` and `AdminReorderTree.partition` are nullable on the wire but typed as plain numbers or objects. +4. **npm audit in admin/.** Seven advisories in existing dev and test dependencies (vitest and @vitest/mocker, tinypool, @vue/server-renderer through vue, source-map-js, esbuild). None comes from the TipTap packages added in 17-02. +5. **Main bundle size.** `index-*.js` is about 609 kB minified (591 kB before 17-02) and Vite warns above 500 kB. TipTap itself is a separate lazy chunk (`editor-*.js`, about 381 kB).