Skip to main content

spec

Build the pre-migration spec of a website — pages, redirects, 404s, layout variants, the EDS blocks each page needs with reuse verdicts, dynamic features, martech and open decisions — as documented knowledge files for people and a migration agent. Use when someone asks to scope, estimate or plan a migration, wants "which pages use block X / which blocks does page Y need", a redirect or 404 inventory, or the facts behind a migration brief. Not the migration itself (replica, migrate, rollout).

Informations de source

Dépôt
adobe/skills
Dernière activité de la source
20 octobre 2026 à 16:14
Langue détectée de SKILL.md
anglais
Étoiles
304
Forks
94

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
40 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
spec
description
Build the pre-migration spec of a website — pages, redirects, 404s, layout variants, the EDS blocks each page needs with reuse verdicts, dynamic features, martech and open decisions — as documented knowledge files for people and a migration agent. Use when someone asks to scope, estimate or plan a migration, wants "which pages use block X / which blocks does page Y need", a redirect or 404 inventory, or the facts behind a migration brief. Not the migration itself (replica, migrate, rollout).
license
Apache-2.0
compatibility
Requires Node 20+, and Playwright with Chromium resolvable from the project for the capture stages. Real-user data needs an AEM Operational Telemetry domain key.
# stardust:spec — the migration spec, before the migration The spec answers the people planning a migration (what to build, reuse, fix or decide) and the agent that runs it (archetypes, block backlog, contracts, redirects, a default for every decision). The agent builds it stage by stage. ## Principles - **Evidence, then judgement.** Stages S1–S6 and S8 measure the live site; S7 and S9 are judgement (mapping, reuse, features, questions) recorded in `judgement/` with a rationale per decision. - **Blind judgement.** Judge from the source site only (reference/judgement.md); state the provenance in `implementation.json#provenance`. - **Variants, not templates.** CMS templates are loose; plan, capture and QA by layout variant (S8). - **Every open question ships a default.** A hands-off migration applies it; a recorded answer replaces it. - **Computed, never typed.** Every figure in findings, feature reach and question impact is a rule (reference/knowledge.md § Rules) the knowledge stage evaluates. ## Setup `stardust/spec/spec.config.json` (reference/config.md): `origin`, `scopePath`, `template` rule, `parser` profile (`aem-classic`, `aem-core`, or `generic` for any other site) + main selector, optional `maxPages`, `rum`, `referenceBlocks`. Copy the spec, diff, dynamics and deploy scripts to `stardust/scripts/<skill>/` (the stages import them). ## Stages | # | Stage | Command (from the project root) | Output | |---|---|---|---| | S1 | Inventory | `spec-inventory.mjs` | `<work>/inventory/` | | S2 | Fetch | `spec-fetch.mjs` | `<work>/fetch/` | | S3 | Parse | `spec-parse.mjs` | `<work>/parse/` | | S4 | Links | `spec-links.mjs`, then `spec-fetch.mjs --urls <work>/links/pages.txt --out <work>/links/pages.jsonl` and `spec-parse.mjs --fetch <work>/links/pages.jsonl --out <work>/links` | `<work>/links/` | | S5 | Real-user data (optional) | `spec-rum.mjs` (key from `$RUM_DOMAIN_KEY`) | `<work>/rum/rum.json` | | S6 | First capture | `spec-pick.mjs --components-only`, `spec-capture.mjs` | `<work>/media/` | | S7 | Judgement: mapping | `spec-profile.mjs`, `spec-sheet.mjs <component>`, write `judgement/mapping.json`, `spec-map.mjs` | `<work>/map/page-blocks.jsonl` | | S8 | Variants + visuals | `spec-variants.mjs`, `spec-pick.mjs`, `spec-capture.mjs` | `<work>/map/variants.json`, `<work>/media/` | | S9 | Implementation | `dynamics-detect.mjs --urls <reps> --out <work>/dynamics`, `spec-martech.mjs`, `chrome-explore.mjs <home> <work>/chrome/header.json`; write `judgement/catalog.json`, `implementation.json`, `findings.json`, `search-probes.json` | `<work>/`, `judgement/` | | S10 | Knowledge | `spec-knowledge.mjs` | `knowledge/` | Each stage logs start and end to `stardust/status.jsonl` (`ledger.mjs spec s1-inventory start`). `<work>` is `stardust/.work/spec/`, never committed. Large sites: S2 runs at 4 parallel requests and is resumable — start it, then write config and judgement scaffolding while it runs. One browser job at a time (S6/S8/S9), two tabs. ## Judgement (S7, S9) Start from `templates/`. `mapping.json` and `catalog.json`: reference/judgement.md. `implementation.json`: reference/implementation.md. `findings.json`: 6–10 plain-text `{ title, text, chapter, rank }` headlines. Recorded answers go in `judgement/answers.json`. ## Outputs `judgement/` and `knowledge/` in `stardust/spec/`, committed; reference/knowledge.md is the contract. Raw material, captures and crops stay in `<work>`. ## Gates - S7 passes when `spec-map.mjs` reports no unmapped component and every block in the page blocks is in `catalog.json` (`spec-knowledge.mjs` warns otherwise). - S10 passes when `spec-knowledge.mjs` exits 0 (every rule computed) and every open question has a default. - A blocked origin (S1 or S2 exit 3: bot challenges or refusals on 10% or more) stops the build: ask the user to allow-list the crawler, or to choose `--headed` (the plugin's stealth real-Chrome tier from the diff skill's `live-session.mjs`, as replica uses) or `--archive <date>` (Internet Archive captures, which the provenance and a finding must disclose). Never choose for them, and never work around a block another way. - Before sharing: no customer secret, internal evaluation or other migration's name in the project or the output. ## References - reference/config.md — `spec.config.json`, template rules, parser profiles. - reference/judgement.md — the blind rule, mapping rules, contact sheets, block families, reuse verdicts. - reference/implementation.md — features, martech, data layer, metadata, indexes, locales, open questions. - reference/knowledge.md — the output contract: files, fields, the rule format. - reference/evaluation.md — scoring a spec against a delivered migration; blind re-judgement.
Voir sur GitHub