Skip to content

test(M-L10.7.3): RED — Header + Footer refactor (inline styles → design class names)#99

Open
a3ka wants to merge 2 commits into
devfrom
feature/M-L10.7.3-header-footer-classes
Open

test(M-L10.7.3): RED — Header + Footer refactor (inline styles → design class names)#99
a3ka wants to merge 2 commits into
devfrom
feature/M-L10.7.3-header-footer-classes

Conversation

@a3ka
Copy link
Copy Markdown
Contributor

@a3ka a3ka commented Apr 30, 2026

Goal

Pure refactor: replace 16 inline style={} blocks in Header.tsx (385 lines) + Footer.tsx (180 lines) with design source class names. CSS rules for .hdr-* / .foot-* ALREADY ported in paxio-b3-page.css; components just need to use them.

Three discrepancies pinned

# Where Current Target
D-1 Header.tsx <header className="paxio-header"> + 16 inline styles <header id="paxio-header"> + .hdr-inner / .hdr-brand / .hdr-mark / .hdr-wordmark / .hdr-tagline / .hdr-links / .hdr-actions / .hdr-cta / .hdr-cta-outline / .hdr-cta-primary / .hdr-live
D-2 Footer.tsx inline-styled, no foot-* classes, no id="page-foot" <footer id="page-foot"> + .foot-inner / .foot-brand / .foot-mark / .foot-tagline / .foot-cols / .foot-h / .foot-legal + 3-col sitemap (Product/Builders/Company)
D-3 layout.tsx body data-production="false" + data-motion + data-density="regular" + data-accent="classic"

Test plan

  • RED state — 19 failed | 6 passed in header-footer-classes spec
  • After frontend-dev impl — all GREEN, gate-1 merge

frontend-dev slim spec

M-L10.7.3 — Header + Footer refactor (pure CSS class application).

Setup:
  cd /home/nous/paxio
  git worktree add /tmp/paxio-fd-ml1073 -B feature/M-L10.7.3-header-footer-classes-wip origin/feature/M-L10.7.3-header-footer-classes
  cd /tmp/paxio-fd-ml1073
  git config user.email frontend-dev@paxio.network && pnpm install

Read ONLY:
  apps/frontend/landing/tests/header-footer-classes.test.tsx (the spec)
  docs/sprints/M-L10.7.3-header-footer-classes.md (D-1..D-3 details)
  docs/design/paxio-b5/Paxio-B5.html lines 26-72 (Header markup) + lines 101-160 (Footer markup)
  apps/frontend/landing/app/styles/paxio-b3-page.css lines 17-110 (.hdr-* rules) + 329-379 (.foot-* rules)

Implement 3 fixes:
  D-1: packages/ui/src/Header.tsx — rewrite using design class names. id="paxio-header" (NOT className). Apply hdr-inner/hdr-brand/hdr-mark/hdr-wordmark/hdr-tagline/hdr-links/hdr-actions/hdr-cta/hdr-cta-outline/hdr-cta-primary/hdr-live. Remove layout inline styles (allow ≤4 SVG-internal style={} only).
  D-2: packages/ui/src/Footer.tsx — rewrite using design class names. id="page-foot". Apply foot-inner/foot-brand/foot-mark/foot-tagline/foot-cols/foot-h/foot-legal. 3-column sitemap exactly per design (Product/Builders/Company с конкретными links per design).
  D-3: apps/frontend/landing/app/layout.tsx — add data-density="regular" + data-accent="classic" к body element.

CRITICAL — pre-готово verification (mandatory all 5):
  pnpm typecheck
  pnpm exec vitest run apps/frontend/landing/tests/header-footer-classes.test.tsx       # 25/25 GREEN
  pnpm --filter @paxio/landing-app test -- --run                                          # full suite GREEN
  pnpm --filter @paxio/landing-app build                                                  # catches Next ESLint
  bash scripts/verify_M-L10.7.3.sh                                                        # PASS=20+ FAIL=0

Commit local conventional message + report готово.

🤖 Generated with Claude Code

@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 30, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
paxio-docs Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-fleet Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-intel Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-landing Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-pay Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-radar Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-registry Ready Ready Preview, Comment May 7, 2026 11:13am
paxio-wallet Ready Ready Preview, Comment May 7, 2026 11:13am

Request Review

a3ka pushed a commit that referenced this pull request May 3, 2026
…* packages

Pre-existing infrastructure debt: packages/types/src/index.ts uses .js
extension imports (TS NodeNext). Next.js webpack does NOT transpile
workspace packages by default — fails to resolve './agent-category.js'
(actual file: agent-category.ts).

Broke at M-L1-taxonomy merge (commit 120988e, ~April 30). Last successful
landing CI: f4cefcf (April 30). Path-filtered landing CI didn't trigger
on backend PRs (#118-#125) → silent for 3 days. PR #99 (M-L10.7.3) is
first PR touching landing since → CI red → exposes baseline.

Affects all 8 frontend apps' production builds + likely silently breaks
their Vercel deploys.

Acceptance script verifies (17 checks):
  1. all 8 apps' next.config.ts have transpilePackages field (8 checks)
  2. transpilePackages includes @paxio/types (8 checks)
  3. landing-app build succeeds (1 smoke check)

Currently RED 0/17 (no transpilePackages in any config; landing-app build
fails on .js resolution). Fix is frontend-dev scope — slim spec in
docs/sprints/TD-FE-transpile.md.
architect and others added 2 commits May 7, 2026 11:07
…gn class names)

Visual fidelity round-3. Static analysis нашёл architectural drift:
Header.tsx (385 lines) + Footer.tsx (180 lines) построены на 16 inline
style={} блоках вместо design source class names. CSS rules для .hdr-*,
.foot-*, #paxio-header, #page-foot УЖЕ ported в landing's paxio-b3-page.css
(M-L10.6 byte-identical port), но компоненты их игнорируют.

Three concrete discrepancies pinned:

  D-1. Header.tsx — refactor to design source structure:
       - <header id="paxio-header"> (was className="paxio-header" — wrong selector)
       - .hdr-inner / .hdr-brand / .hdr-mark / .hdr-wordmark / .hdr-tagline /
         .hdr-links / .hdr-actions / .hdr-cta / .hdr-cta-outline /
         .hdr-cta-primary / .hdr-live / .hdr-theme-btn
       - Drop layout inline styles (≤4 style={{}} for SVG-internal only)

  D-2. Footer.tsx — refactor to design source structure:
       - <footer id="page-foot"> (no id currently)
       - .foot-inner / .foot-brand / .foot-mark / .foot-tagline / .foot-cols /
         .foot-h / .foot-legal
       - 3-column sitemap: Product / Builders / Company
       - Tagline "Financial OS for the agentic economy"

  D-3. layout.tsx body data-attributes per design:
       - Add data-density="regular" + data-accent="classic"
       - Keep data-production="false" (R-FE-Preview disclosure preserved)
       - Keep data-motion=...

This is pure refactor — все CSS rules уже в landing's CSS files. No new
CSS needed; just remove inline styles and apply class names.

Verified locally:
  pnpm typecheck — clean
  Targeted vitest — 19 failed | 6 passed (RED expected — frontend-dev impl pending)

Branch base: origin/dev=f4cefcf.
…ass names

T-1 Header.tsx: id=paxio-header + .hdr-inner/.hdr-brand/.hdr-wordmark/.hdr-links/.hdr-actions/.hdr-cta-outline/.hdr-cta-primary/.hdr-live applied. Removed 16 layout inline styles. Preserved ≤4 SVG-internal style blocks.

T-2 Footer.tsx: id=page-foot + .foot-inner/.foot-brand/.foot-mark/.foot-tagline/.foot-cols/.foot-h/.foot-legal applied. 3-column sitemap (Product/Builders/Company). Removed all layout inline styles. Removed unused 'use client' + Dialog import.

T-3 layout.tsx: added data-density=regular + data-accent=classic to body.

Baseline: 1382 passed | 26 skipped | 5 todo.
CSS coverage: 264 className tokens resolve cleanly.
Typecheck: clean.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant