Added
- Fluid Animated Topic Rail & Spring Indicator (
motion.dev): Replaced bulky 44px capsule bubbles on/articles/and/topics/[topic]/with an editorial document-style rail featuring a hardware-accelerated cyan neon spring underline indicator (motion.devphysics,stiffness: 500, damping: 34), dedicated monospace counter badges, single-row touch swipe rail with edge gradient fade on mobile (saving 85% vertical height), and staggered card transition entrances. Documented in Section 21 ofDESIGN.md. - Engineering Changelog Page (
/changelog/): Introduced static, build-time generated system ledger parsing all 33 platform releases (v0.1.0 to present) fromCHANGELOG.mdwith deep-dive technical article case study linkages, sticky desktop release jump navigation, full WCAG AAA dark mode support, and zero runtime JavaScript overhead. - Automated Case Study Extraction & SemVer Governance: Enhanced the changelog parser to automatically resolve
/articles/<slug>links mentioned inCHANGELOG.mdinto rich Case Study cards viagetCollection('articles')without manual code editing. Implemented automated SemVer 2.0.0 and Keep a Changelog test suite (tests/changelog-semver.test.mjs) verifying version ordering, package.json synchronization, ISO release dates, and article reference integrity. - Expanded Canonical Topic Pillars (
/topics/): Expanded top-level topic architecture from 5 to 7 canonical pillars by introducing Frontend & Web (/topics/frontend-web/, 18 articles) and Software Architecture (/topics/software-architecture/, 27 articles). Decoupled the overloadeddeveloper-toolscatch-all into focused domains and established deterministic domain-first evaluation ordering (TOPIC_EVALUATION_ORDER), achieving 100% article-to-pillar resolution with zero unmapped orphans across all 290 approved articles. - Adsterra Native Partner Slot (
src/components/AdsterraSlot.astro): Reintroduced high-performance, non-intrusive Adsterra native banner slot at Option C (strictly positioned below the articleSourcesfooter and precedingYou Might Also Like). Features zero-CLS container height reservation (min-height: 90px), RayLabs design token card framing (var(--surface-card),var(--line)), micro-eyebrowSPONSOREDlabel, and 100% WCAG AA/AAA contrast compliance across light and dark modes. - Design System Section 20: Documented Sponsored Partner & Native Ad Slot Specifications in
DESIGN.mdacross repository and Obsidian vault.
Changed
- Global Footer & Version Provenance: Added permanent monospace version indicator (
v0.17.0) and Changelog link tosrc/components/SiteFooter.astro, reading version dynamically frompackage.json. - Platform Syndication Cleanup: Removed deprecated CoderLegion syndication links, SVG logos, and styles across
src/pages/index.astroandsrc/components/SiteFooter.astro.
Fixed
- Footer Layout Decoupling: Fixed regression where legacy
.site-footerflex rule insrc/styles/global.csscaused footer content and copyright bottom bar to render side-by-side on pages importing global styles. - Security & Supply Chain Remediation (Issue #36): Patched Astro AVIF RCE vulnerability (GHSA-26w7-cxv4-gfx2) by upgrading
astroto7.4.2and@astrojs/checkto0.9.12. Updatedwranglerto^4.152.0and enforced root overrides forfast-uri,source-map-js, andundiciinpnpm-workspace.yaml, bringingpnpm auditvulnerabilities from 57 down to 0. - CI Node Runtime Freshness: Configured
check-latest: trueonactions/setup-node@v4in.github/workflows/ci.ymland.github/workflows/sonar.ymlto prevent runner reuse of vulnerable cached Node patch versions. - Retired Worktree Archival: Safely retired obsolete
Stage-Timerworktree (feature branch was already merged intomain), archived untracked package manager notes intodocs/archive/stage-timer-pnpm-standardization.md. - Fully decode governed PNG, JPEG, and WebP assets; reject truncated containers and manifest dimensions that exceed bounded decode limits.
- Require explicit generator models for new AI raster manifests, preserve older model-less raster records as legacy metadata, and reject AI fields on authored diagrams.
Architecture case studies & deep-dives