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.
This commit is contained in:
@@ -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
|
||||
Reference in New Issue
Block a user