Problem
webjs-research-record governs investigations whose deliverable is a comparison, options analysis, or decision record, and it says nothing about HOW to investigate, so the research happens as one serial hunt in the main session. A comparison is inherently multi-angle work (each option's codebase evidence, prior art, the project's own constraints from AGENTS.md, what the ecosystem does), and each angle is an independent read: the exact shape for a parallel fan-out of read-only Explore agents, one per angle or per option, synthesized by the caller into the record.
Design / approach
Add an "Investigate in parallel" section to .claude/skills/webjs-research-record/SKILL.md, before the recording steps: for a multi-option or multi-angle investigation, spawn one read-only Explore agent per option or angle in ONE message, each returning evidence with concrete file paths and citations; the caller synthesizes and writes the record itself. Reads fan out, the writeup stays in the main session, since the record's voice and judgment are the caller's. A single-question spike needs no fan-out.
Implementation notes (for the implementing agent)
Acceptance criteria
Problem
webjs-research-recordgoverns investigations whose deliverable is a comparison, options analysis, or decision record, and it says nothing about HOW to investigate, so the research happens as one serial hunt in the main session. A comparison is inherently multi-angle work (each option's codebase evidence, prior art, the project's own constraints from AGENTS.md, what the ecosystem does), and each angle is an independent read: the exact shape for a parallel fan-out of read-only Explore agents, one per angle or per option, synthesized by the caller into the record.Design / approach
Add an "Investigate in parallel" section to
.claude/skills/webjs-research-record/SKILL.md, before the recording steps: for a multi-option or multi-angle investigation, spawn one read-onlyExploreagent per option or angle in ONE message, each returning evidence with concrete file paths and citations; the caller synthesizes and writes the record itself. Reads fan out, the writeup stays in the main session, since the record's voice and judgment are the caller's. A single-question spike needs no fan-out.Implementation notes (for the implementing agent)
.claude/skills/webjs-research-record/SKILL.md, a new section between the "Why an issue, not a PR" section (L25) and the recording steps. Grep the headings; line numbers drift.research-labeled issue, never reference docs, never a PR comment; the Clean up agent-docs: remove research/design records, keep it pure how-to-use guidance #548/docs: purge research/design records from agent-docs, reconcile the doc table #552/research: SSR partial navigation design record (nested-layout partial swap) #559/research: SSR partial navigation design record (nested-layout partial swap) #560 history at L20 to L23). The new section must not touch that; it governs only the investigation phase.~/.claude/skills/webjs-research-record/SKILL.mdin the same change,diff -qafterwards.node --test test/hooks/route-skills.test.mjsstill passes; no other surface.Acceptance criteria
diff -q)