From 107e429fb9015e9f80d1a683786f727a8ea2e561 Mon Sep 17 00:00:00 2001 From: Marcos Paulo Date: Sat, 5 Sep 2026 16:41:18 +0000 Subject: [PATCH] docs(plan): add task 04b for unfilled chapters collection Task 04 defined the chapters collection; nothing ever filled it. Task 08 built RouteCard/GridGroup and found no data and no href/cta field to feed them. Blocks 12 and 13. --- .../astro-refactor/task-04b-chapters-data.md | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 plans/astro-refactor/task-04b-chapters-data.md diff --git a/plans/astro-refactor/task-04b-chapters-data.md b/plans/astro-refactor/task-04b-chapters-data.md new file mode 100644 index 0000000..120947c --- /dev/null +++ b/plans/astro-refactor/task-04b-chapters-data.md @@ -0,0 +1,60 @@ +# Task 04b — Chapter and landing content + +**Agent**: `content-i18n-migrator` · **Model**: MiniMax-M3 **Depends on**: 04 · +**Parallel with**: 14, 15, 16, 17 · **Blocks**: 12, 13 **Worktree**: +`.agents/scripts/worktree.sh start 04b chapters-data` + +## Why this task exists + +It is not in the original plan. Task 04 defined the `chapters` collection and +tasks 05–06 filled `skillSources`, `phases`, `providers`, `efforts`, +`handsOnPrompts`, `skillInstallPrompts`, and `reviews` — but nothing ever filled +`chapters`. `src/content/chapters/` does not exist, so the collection is defined +and empty. Task 08 hit this from the other side: it built `RouteCard` and +`GridGroup` and then had no data to feed them. + +Two tasks are blocked on it, so it is worth doing on its own rather than +smuggling it into either. + +## Scope + +`src/content/config.ts` (the `chapters` schema only) and +`src/content/chapters/*.json`. **You own `config.ts`** — you are the only agent +who may edit it. Do not touch any other collection's schema. + +## Two things to deliver + +### 1. The landing route map has nowhere to live + +`index.html` has six cards, each with a destination and its own call-to-action +text. The current `chapters` schema has `cards[]` with `label`/`title`/`copy` +and no `href`, and no CTA field anywhere. + +Add what the real markup needs. From task 08's report, the six CTAs are not +uniform — four read "Open chapter →", one "Open lab →", one "Open desk →", so a +single hardcoded default would be wrong. Verify that against `index.html` +yourself rather than trusting it. + +### 2. The four chapter pages have no entries + +Fill `chapters` for `/models/`, `/agents/`, `/skills/`, `/summary/` plus the +landing page, both locales, from the existing HTML. + +## Rules that bite here + +- **Both `en` and `pt` are mandatory on every localized field.** A missing `pt` + must fail the build. Do not make a field optional to get past a validation + error — find the real Portuguese string in the existing HTML. +- Copy strings **verbatim** from the current HTML. This is a move, not a + rewrite. No fixing typos, no improving phrasing, no translating anything that + is already translated. +- Do not migrate any page. Tasks 12 and 13 own that. You produce data only. +- Do not edit `verify.mjs`, `tokens.css`, `astro.config.mjs`, or any component. + +## Done when + +- [ ] `chapters` schema carries the landing route map's real fields +- [ ] Entries exist for landing + the four chapter pages, both locales +- [ ] Every string traceable to the HTML it came from +- [ ] `pnpm run gate` green, 42 assertions intact +- [ ] Report names the exact schema change so tasks 12 and 13 can rely on it