{"version":"2.1.247","anchor":"artifact-preview-a-local-headless-chrome-render-check-that-i","canonical_anchor":"artifact-preview-a-local-headless-chrome-render-check-that-i","heading":"Artifact preview : a local headless-Chrome render check that is not compiled into this build","tier":"soon","area":"Artifacts","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.247\/e\/artifact-preview-a-local-headless-chrome-render-check-that-i","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.247","markdown":"### Artifact `preview`: a local headless-Chrome render check that is not compiled into this build\n\nAn artifact preview action would screenshot a page locally at several widths, but it cannot run here.\n\n**What**\n\nA new Artifact action would take a `file_path`, wrap that single page the way publishing does, render it in a headless Chrome over loopback and hand back JPEG screenshots at each requested width in both light and dark, along with a mechanical list of layout problems, all without uploading anything. In this build the rendering module itself is absent, so the internal availability accessor throws and the action text is never added to the tool schema, leaving it unreachable no matter how it is configured. Only the descriptions and prompt guidance that would tell the model about it actually ship.\n\n**Details**\n\n- The missing module makes the internal accessor throw \"artifact preview is not compiled into this build\", and because the build-time constant behind it is null the gates are never consulted at all.\n- Those gates, had they been reached, add the action to the tool schema when the `CLAUDE_CODE_ARTIFACT_PREVIEW` environment variable is set or the server enables the flag `tengu_cobalt_plinth_aspen`, whose built-in fallback is false, and force it off when `CLAUDE_CODE_REMOTE` is set.\n- Parameters are `widths` in CSS pixels, defaulting to 1280 and 390, and `themes`, meaning light and dark.\n- The issue list would cover overflow, SVG clipping, theme-only CSS variables, blocked or local-only loads, mermaid diagram failures and console errors.\n- Chrome is located by a bundled finder that is compiled in and has no other caller, using hardcoded per-platform paths including `\/usr\/bin\/google-chrome-stable`, `\/usr\/bin\/chromium-browser`, `Google Chrome.app\/Contents\/MacOS\/Google Chrome` and `chrome.exe` under Program Files.\n- The action is classified read-only and safe to run concurrently, but it ignores whole-tool allow rules and suppresses always-allow prompting.\n- A call made while the gate is shut returns \"preview is not available in this session.\", and the permission handler denies separately with \"Preview gate closed at schema freeze\".\n- Telemetry event `tengu_artifact_preview` would record rendered, partial, failed and no_browser outcomes with counts of screenshots, issues, widths, themes, bytes and duration.\n- A stored preview result that has gone stale replies with an instruction to run the action again.\n- This repeats the pattern of the Artifact rooms module that was already compiled out in 2.1.246; the preview half is new here.\n\n**Evidence**\n\n`Render a local page file in a headless browser to check it before publishing. Nothing is uploaded.`, `**Preview**: `action: \"preview\"` with a `file_path` renders that one page file locally the way publish wraps it, in light and dark themes at desktop and phone widths`, `return V.CLAUDE_CODE_ARTIFACT_PREVIEW ?? we(\"tengu_cobalt_plinth_aspen\", !1);`, `This record of a preview result is unreadable \\u2014 re-run action: \"preview\" for a current render.`, ` For 'preview', the local .html page to render.`, `artifact preview is not compiled into this build`\n\n- Flag `tengu_cobalt_plinth_aspen`: Not enough to say (read for one account on one subscription tier against v2.1.247; this account: no value returned, anonymous baseline: no value returned, compiled default: off)\n- Area: Artifacts\n- Names: `CLAUDE_CODE_ARTIFACT_PREVIEW`\n- Tier: Nothing to try yet\n- Useful: 2\/5\n- Signal: 5\/5\n- Present in the build but not switched on"}