aae4d42229
Adds the agent-facing workspace and a 20-task plan for migrating the site to Astro. Nothing here implements the refactor; these are briefs, rules and templates that the task agents read. - .agents/ holds context, rules, checklists, skills, specialist agents, component/page/config templates and gate scripts. It is vendor-neutral so MiniMax, Gemini and Codex can all read it; CLAUDE.md just points at AGENTS.md. - .husky/ plus .lintstagedrc.json wire the three gate tiers. gate.sh locks on the shared git-common-dir so parallel worktrees serialise, and guards the assertion count in scripts/verify.mjs against a coverage drop. - plans/astro-refactor/ carries the phase graph, per-task briefs and the model-routing recommendation. These files must be tracked before fanning out: a worktree only checks out tracked files, so an untracked plan is invisible to every agent working in one. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
# Task 10 — Full-guide blocks
|
|
|
|
**Agent**: `component-builder` · **Model**: MiniMax-M3
|
|
**Depends on**: 07 · **Parallel with**: 08, 09, 11 · **Blocks**: 15
|
|
**Worktree**: `.agents/scripts/worktree.sh start 10 guide-blocks`
|
|
|
|
## Goal
|
|
|
|
The full guide's distinctive sections as components — **static shells only**.
|
|
Task 15 wires the interactivity.
|
|
|
|
## Scope
|
|
|
|
`src/components/blocks/` — `PhasePanel.astro`, `FleetDiagram.astro`,
|
|
`HandoffTable.astro`, `WorktreeMap.astro`, `RouteTable.astro`,
|
|
`SkillPackage.astro`.
|
|
|
|
## Source
|
|
|
|
`full-guide/index.html` (22 KB) + `styles.css` + `responsive.css`.
|
|
|
|
## Critical: the `data-*` hooks are asserted by name
|
|
|
|
`verify.mjs` requires these survive: `data-phase="plan|build|review"`,
|
|
`data-tree="main|ui"`, `data-worker="ui"`, `data-route="plan"`,
|
|
`data-model-provider="openai|claude|gemini"`, `data-effort="low|medium|high"`,
|
|
`data-skill-file="skill"`, `data-skill-step="observe|validate"`,
|
|
`data-common-skill="ponytail|caveman|unlazy"`, `role="tablist"`, `id="hands-on"`.
|
|
|
|
Each is a real feature hook, not decoration. Losing one is losing a feature.
|
|
|
|
## Watch for
|
|
|
|
`responsive.css` is 30 KB of append-only overrides on top of `styles.css`. **Do
|
|
not port it wholesale.** Take what each component needs, then prove the rest is
|
|
dead. Expect to delete most of it — that is a win, not a risk, provided the
|
|
screenshots agree.
|
|
|
|
## Done when
|
|
|
|
- [ ] Every `data-*` hook above present in rendered output
|
|
- [ ] Components take props and render static markup; **no `client:*` yet**
|
|
- [ ] Screenshots match the current guide at four widths
|
|
- [ ] Checklist complete; `npm run gate` green
|