Skip to content

Report: longer content — arch summary, findings table, full minor blocks - #30

Merged
serenakeyitan merged 1 commit into
mainfrom
feat/report-longer-content
Jul 8, 2026
Merged

Report: longer content — arch summary, findings table, full minor blocks#30
serenakeyitan merged 1 commit into
mainfrom
feat/report-longer-content

Conversation

@serenakeyitan

Copy link
Copy Markdown
Contributor

Refs #29.

Makes the report longer so users have more to fix — without inventing findings or breaking the deterministic score. All new content is OUTSIDE the share card (the card is byte-untouched).

What's new (all outside the card)

  • 🧬 What Even Is This — a savage-but-TRUE architecture summary: what the thing is (stack/shape/wiring), roasted. New arch_summary / arch_transition fields. Fact discipline (hard rule): every architectural claim must point at a real file (package.json deps, dir layout, config) — backtick refs render as <code>. New Voice-register rule enforces it. Then a one-line transition into the professional fix zone.
  • 🎯 Findings by Priority — an overview table of every emitted finding, worst-first, derived from dimensions[].findings[] (no new required field).
  • Minor tier → full fix blocks — markdown's "Also Noted" was a one-liner list; now every Medium/Low gets the same Evidence / Root cause / The fix / Verify as a blocker (the HTML renderer already did this). Renderer accepts a Low tag.

Contract synced (3 points)

skill SKILL.md schema + render-report.mjs + report-template.html, mirrored on the website side (scanSample.ts + api/reports validateReport + ScanReport.astro) in the paired website PR.

Verification

  • render-report.test.mjs: 17/17 pass.
  • Rendered the fixture and viewed it in a real browser: all 5 banners render (What Even Is This → Score Breakdown → Findings by Priority → Must-Fix → Also Noted), arch <code> chips escaped safely, card untouched, no horizontal overflow.
  • example-report.md updated to the new shape; corrected a stale hosted-URL + link-CTA in the example to the S3 report.first-tree.ai/<key>.html form and the no-link teaser.

🤖 Generated with Claude Code

Give users more to fix without inventing findings or breaking the
deterministic score. Everything new is OUTSIDE the share card.

- "What Even Is This": a savage-but-TRUE architecture summary — new
  arch_summary / arch_transition fields (schema + template + renderer).
  Every architectural claim must point at a real file (package.json deps,
  dir layout, config); backtick refs render as <code> (escape-then-wrap, no
  un-escaping). New Voice-register rule enforces the fact discipline.
- "Findings by Priority": an overview table of every finding, worst-first,
  derived from dimensions[].findings[] (no new required field). New
  tpl-findings-block / tpl-finding-row + FINDINGS_BLOCK token.
- Minor tier upgraded to FULL fix blocks in the markdown report shape
  (Evidence / Root cause / The fix / Verify), matching what the HTML
  renderer already did for Medium/Low. Renderer now accepts a Low tag.
- example-report.md + fixture updated; stale hosted-URL and link-CTA in the
  example corrected to the S3 report.first-tree.ai form + no-link teaser.

render-report.test.mjs: 17/17 pass. Rendered fixture verified in a real
browser — all 5 sections render, card untouched, no horizontal overflow,
arch code chips escaped safely.

Refs #29.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@serenakeyitan
serenakeyitan merged commit bf5c0d7 into main Jul 8, 2026
1 check passed
@serenakeyitan
serenakeyitan deleted the feat/report-longer-content branch July 8, 2026 02:16
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