|
| 1 | +{ |
| 2 | + "context": "Tests whether the agent correctly executes the full AEM EDS site creation flow: collecting inputs, creating the GitHub repo from the boilerplate template, handling the aem-code-sync human handoff with verification, authenticating with DA using a cache-first approach, creating nav/footer/index content via DA API, and triggering preview with the required Bearer auth. Covers the non-obvious DA-specific behaviours that trip up agents without this skill.", |
| 3 | + "type": "weighted_checklist", |
| 4 | + "checklist": [ |
| 5 | + { |
| 6 | + "name": "Inputs collected before any API call", |
| 7 | + "max_score": 5, |
| 8 | + "description": "Agent collects GitHub org, repo name, and site name from the user before attempting any automated step" |
| 9 | + }, |
| 10 | + { |
| 11 | + "name": "GitHub repo created from aem-boilerplate template", |
| 12 | + "max_score": 12, |
| 13 | + "description": "Agent uses gh CLI or GitHub API to create the repo specifically from the adobe/aem-boilerplate template, not a blank repo" |
| 14 | + }, |
| 15 | + { |
| 16 | + "name": "aem-code-sync handoff correctly signalled", |
| 17 | + "max_score": 12, |
| 18 | + "description": "Agent provides the GitHub App installation URL, instructs the user to select only the new repo, and explicitly waits for user confirmation before continuing" |
| 19 | + }, |
| 20 | + { |
| 21 | + "name": "aem-code-sync installation verified programmatically", |
| 22 | + "max_score": 8, |
| 23 | + "description": "After user confirmation, agent checks admin.hlx.page/status/{org}/{repo}/main/ returns a valid JSON response before proceeding to DA steps" |
| 24 | + }, |
| 25 | + { |
| 26 | + "name": "DA auth uses cache-first approach", |
| 27 | + "max_score": 10, |
| 28 | + "description": "Agent checks ~/.aem/da-token.json for a valid cached token and its expiry before attempting a new OAuth flow or asking the user for a token" |
| 29 | + }, |
| 30 | + { |
| 31 | + "name": "All three mandatory pages created in DA", |
| 32 | + "max_score": 15, |
| 33 | + "description": "Agent creates nav.html, footer.html, and index.html in DA (admin.da.live/source/{org}/{repo}/) with structurally correct HTML and the site name substituted" |
| 34 | + }, |
| 35 | + { |
| 36 | + "name": "DA API calls use temp files, not inline multiline content", |
| 37 | + "max_score": 8, |
| 38 | + "description": "Agent writes HTML to temp files and uses the @ syntax for the curl -F flag rather than passing multiline content inline (inline multiline causes curl exit 26)" |
| 39 | + }, |
| 40 | + { |
| 41 | + "name": "Preview requests include Bearer auth", |
| 42 | + "max_score": 15, |
| 43 | + "description": "Agent sends POST requests to admin.hlx.page/preview for nav, footer, and index — all with an Authorization: Bearer header. DA-sourced content returns 401 without it even on public repos." |
| 44 | + }, |
| 45 | + { |
| 46 | + "name": "Complete hand-off delivered", |
| 47 | + "max_score": 10, |
| 48 | + "description": "Agent provides the preview URL (https://main--{repo}--{org}.aem.page/), DA content browser link, individual page edit links, and GitHub repo URL" |
| 49 | + }, |
| 50 | + { |
| 51 | + "name": "Human handoff points clearly distinguished from automated steps", |
| 52 | + "max_score": 5, |
| 53 | + "description": "Agent clearly labels which steps require human action versus which it executes automatically, and does not proceed past handoff points without confirmation" |
| 54 | + } |
| 55 | + ] |
| 56 | +} |
0 commit comments