feat(15d): complete localization of full-guide page to PT

This commit is contained in:
Marcos Paulo
2026-09-05 22:30:50 +00:00
parent c022a93302
commit 054393f7af
38 changed files with 1322 additions and 325 deletions
+13 -10
View File
@@ -1,6 +1,9 @@
---
name: verify-contract
description: Evolve scripts/verify.mjs across the Astro migration without losing coverage. Use whenever a verify assertion fails because of a refactor, or when adding checks for new architecture.
description:
Evolve scripts/verify.mjs across the Astro migration without losing coverage.
Use whenever a verify assertion fails because of a refactor, or when adding
checks for new architecture.
---
# The verification contract
@@ -29,13 +32,13 @@ report. Nobody else may reduce coverage.
## Translating assertions
| Kind | Old | New |
| --- | --- | --- |
| Content presence | `html.includes('data-phase="plan"')` | same token, read from `dist/full-guide/index.html` |
| Implementation detail | `js.includes('renderTree')` | assert the rendered output has the tree UI, not that a function is named that |
| Asset version | `'app.js?v=20260904-vote-widget'` | assert the built HTML references a hashed asset |
| Kind | Old | New |
| --------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| Content presence | `html.includes('data-phase="plan"')` | same token, read from `dist/full-guide/index.html` |
| Implementation detail | `js.includes('renderTree')` | assert the rendered output has the tree UI, not that a function is named that |
| Asset version | `'app.js?v=20260904-vote-widget'` | assert the built HTML references a hashed asset |
Implementation-detail assertions are the dangerous ones: they *look* deletable.
Implementation-detail assertions are the dangerous ones: they _look_ deletable.
They are pinning a feature. Replace with an output-level assertion of the same
feature; never drop.
@@ -54,9 +57,9 @@ Commit the snapshots. They are the migration's regression net.
## Extend audit-ui.mjs
It rejects external `<script>`/`<link>` but **misses external URLs inside CSS**
which is exactly how the broken Google Fonts `@font-face` in `styles.css:1` got
into a "dependency-free" site. Add:
It rejects external `<script>`/`<link>` but **misses external URLs inside CSS**
which is exactly how the broken Google Fonts `@font-face` in `styles.css:1`
got into a "dependency-free" site. Add:
```js
if (/@import|src:\s*url\(['"]?https?:|url\(['"]?https?:/i.test(css))