diff --git a/.agent/archive/post-migration-visual-corrections-history.md b/.agent/archive/post-migration-visual-corrections-history.md new file mode 100644 index 00000000..e52665fd --- /dev/null +++ b/.agent/archive/post-migration-visual-corrections-history.md @@ -0,0 +1,51 @@ + + +# Post-migration visual corrections history + +## M0 — Narrow regression baseline + +Completed 2026-08-10 without implementation changes. The source head contract, +favicon/icon binaries, footer, legacy social component, license header model, and one +existing generated artifact were inspected directly. The regression is bounded to a +malformed tiny favicon plus incomplete head metadata, six footer text placeholders, +missing external-link protections, and source SPDX comments emitted into 19 generated +HTML documents. Large-image delivery remains assigned to the follow-up ExecPlan. + +## M1 — Favicon and social/external icon parity + +Completed 2026-08-10. Broken 16/32px favicon derivatives were regenerated from the +existing 512px TotalCross emblem, and a matching 180px Apple-touch icon was added. +The shared head now links ICO, PNG, touch, and manifest metadata; the cleaned manifest +describes all eight existing icon sizes under the root application scope. + +The footer keeps all legacy destinations but replaces initials with the corresponding +Font Awesome Free Brands paths rendered by a small Astro component. Links have labels, +titles, new-tab behavior, and noopener/noreferrer protection; the generated site ships +no icon JavaScript. Build, route, content, icon-contract, and desktop/mobile visual +checks passed without a design or navigation change. + +## M2 — Source-only SPDX metadata + +Completed 2026-08-10. License policy now distinguishes rendered formats from ordinary +documentation. Astro headers are JavaScript blocks inside component frontmatter; +blog Markdown/MDX headers are YAML comments inside content frontmatter. Exact known +legacy HTML forms migrate idempotently, including the repository's no-blank-line +variant, while conflicts and partial metadata remain refusals. + +The deliberate fixer migrated every project-authored renderable source. The mapped +Tecdet page and article retained their customer-material holder and license during a +manual placement-only move. Site validation now rejects recognized SPDX authoring +comments in generated HTML. The final M2 build contained zero such comments across +20 HTML documents while all existing routes, links, archives, feeds, sitemaps, drafts, +and translations continued to validate. + +## M3 — Final correction validation and handoff + +Completed 2026-08-10. The Unreleased changelog and factual editorial report describe +the visible correction without introducing a standalone version bump. The final +Level 3 matrix passed every unit, licensing, release, workflow, Astro, route, link, +content, feed, sitemap, draft, translation, and rendered-header assertion. This plan +is closed; the combined v1.0.1 release remains owned by the asset-performance plan. diff --git a/.agent/archive/site-asset-performance-optimization-history.md b/.agent/archive/site-asset-performance-optimization-history.md new file mode 100644 index 00000000..183fa032 --- /dev/null +++ b/.agent/archive/site-asset-performance-optimization-history.md @@ -0,0 +1,38 @@ + + +# Site asset performance optimization history + +## M0 — Deterministic asset baseline + +Completed 2026-08-10 without changing image delivery. A dependency-light reporter +uses explicit Sharp metadata plus repository/output traversal to rank source and +generated media. A tested fallback-resource graph provides representative page +payload proxies without claiming browser/network fidelity. The first fresh build +proved every 30.09 MiB source media byte was copied into generated output, with home +and get-started proxies at 16.34 MiB and 9.07 MiB respectively. + +## M1 — Responsive static raster delivery + +Completed 2026-08-10. Astro now generates responsive AVIF/WebP pictures, an optimized +eager LCP image, and optimized CSS backgrounds while preserving intrinsic dimensions +and below-fold lazy loading. Static generated media excluding the deferred GIF fell +81.0%, the home proxy fell 87.7% to 2.01 MiB, and automated desktop/mobile screenshots +covered every changed page class. + +## M2 — Efficient animated media delivery + +Completed 2026-08-10. Deterministic ffmpeg commands converted the sole 8.3 MB GIF to +VP9/WebM, H.264/MP4, and a WebP poster totaling 461 KB (94.5% smaller). Semantic video +markup preserves autoplay/muted/loop/playsinline behavior and adds native controls, +metadata preload, intrinsic sizing, and fallback content. Automated playback reached +2.5 seconds unpaused with the preferred WebM source. + +## M3 — Enforced asset policy + +Completed 2026-08-10. A tested canonical budget module protects generated raster, +GIF, total-media, home, and get-started output while source masters remain report-only. +PR CI and Pages enforce budgets in build order. A validated repository skill routes +future media work through Astro optimization, provenance review, and the same checks. diff --git a/.agent/evidence/post-migration-visual-corrections.md b/.agent/evidence/post-migration-visual-corrections.md new file mode 100644 index 00000000..6b21c9b2 --- /dev/null +++ b/.agent/evidence/post-migration-visual-corrections.md @@ -0,0 +1,61 @@ + + +# Post-migration visual corrections evidence + +- 2026-08-10, M0 branch baseline: focused branch and remote `main` both resolve to + `5a1abc26f751f3680ac4cbff47d98d3169454d6f`; the two supplied ExecPlans were the + only untracked paths. +- 2026-08-10, M0 favicon/head: `BaseLayout.astro` links only `/favicon.ico` with + `sizes="any"` and omits the 32px PNG, Apple touch icon, and web manifest. The ICO is + a 16×16 two-color Windows resource. The 32×32 PNG visibly contains only a small red + mark, while `public/icons/icon-192x192.png` is a complete TotalCross emblem; all + eight manifest PNGs have the dimensions declared by their filenames. +- 2026-08-10, M0 social parity: the current footer emits two-character placeholders + for GitHub, X, Telegram, YouTube, Instagram, and LinkedIn with neither `target` nor + `rel`. Legacy `site` used the corresponding Font Awesome brand glyphs. Destinations + survived the migration unchanged. +- 2026-08-10, M0 SPDX emission: the existing generated `dist/` contains recognized + project SPDX header comments in 19 HTML documents; `dist/index.html` begins with + both authoring tags. Policy classifies Astro/HTML/Markdown/MDX as HTML-comment + style, and the fixer inserts that header immediately after frontmatter, where Astro + renders it into output. +- 2026-08-10, M1 implementation: regenerated 32px PNG/ICO and 180px Apple-touch + derivatives from the existing 512px TotalCross brand emblem. The head now declares + ICO, PNG, Apple touch, manifest, and theme color metadata; the manifest declares + stable root scope plus eight verified PNG sizes. Font Awesome Free Brands 7.3.1 is + build-time-only, with CC BY 4.0/MIT provenance recorded in `NOTICE.md`. +- 2026-08-10, M1 social output: GitHub, legacy Twitter bird labeled X (Twitter), + Telegram, YouTube, Instagram, and LinkedIn render as static SVG paths inside labeled + links with `target="_blank"` and `rel="noopener noreferrer"`. Generated home HTML + contains all six and no client `