Skip to content

fix(showcase): resolve every card's View-Code link and curate its copy#268

Merged
DemchaAV merged 2 commits into
developfrom
fix/showcase-metadata-registry
Jun 29, 2026
Merged

fix(showcase): resolve every card's View-Code link and curate its copy#268
DemchaAV merged 2 commits into
developfrom
fix/showcase-metadata-registry

Conversation

@DemchaAV

Copy link
Copy Markdown
Owner

Why

30 of the 85 showcase cards point their "View Code" link at a path that 404s.
26 examples were never registered in ShowcaseMetadata, so the manifest fell
back to the examples-root URL with a filename-derived title and a generic
"Generated showcase for …" description. 4 more (debug-overlay, block-align,
svg-icon-gallery, vector-path) resolved through the feature() /
flagship() group→class switch to the wrong or a non-existent class — the
switch guessed the class from the group, which cannot hold once a group has one
class per id (layout, navigation, text, …).

What

  • feature() / flagship() now take the example class explicitly, like cv()
    / letter() — the brittle group→class switch is gone.
  • Registered the 26 missing examples (in-document navigation, colour emoji,
    inline runs, per-page layout, charts, multi-section, the engine-deck /
    feature-catalog / financial-report flagships, …) each with a curated title, a
    one-line description naming the concrete DSL API it demonstrates, and tags.
  • Pointed the 4 mis-resolved links at their real class.
  • groupLabel: added charts / navigation / structure / title / docx.
  • Regenerated web/examples.json: exactly those 30 entries change, the other 55
    stay byte-identical, links preserved at /blob/v1.9.0.

Tests

  • Examples module compiles (ShowcaseSync BUILD SUCCESS).
  • Every code URL in web/examples.json (85/85) resolves to a committed
    .java file.
  • A structured diff confirms exactly the 30 intended entries changed (4
    link-only, 26 link + curated copy); the cited DSL APIs were each grepped in
    their example source.

Relation / deploy

Independent of #267 (which ships the 32 missing preview PDFs); this one fixes
the View-Code links and card copy. Both reach the live site the same way: once
merged to develop, a main fast-forward + deploy-web (asset-only, no version
bump, no tag).

DemchaAV and others added 2 commits June 29, 2026 13:34
30 showcase cards linked their "View Code" to a path that 404s. 26 examples
were never registered in ShowcaseMetadata, so the manifest fell back to the
examples-root URL with a filename-derived title and a generic description; 4
more (debug-overlay, block-align, svg-icon-gallery, vector-path) resolved
through the group→class switch to the wrong or a non-existent class. The
switch guessed the class from the group, which cannot work once a group holds
one class per id (layout, navigation, text, …).

- feature()/flagship() now take the example class explicitly, like cv() /
  letter(), dropping the brittle group→class switch.
- Register the 26 missing examples — in-document navigation, colour emoji,
  inline runs, per-page layout, charts, multi-section, the engine-deck /
  feature-catalog / financial-report flagships — each with a curated title, a
  one-line description naming the concrete DSL API, and tags.
- Point the 4 mis-resolved links at their real class (vector-path →
  VectorPathExample, etc.).
- groupLabel: add charts, navigation, structure, title, docx.
- Regenerate web/examples.json: exactly those 30 entries change, the other 55
  stay byte-identical, links kept at /blob/v1.9.0.

Verified the examples module compiles (ShowcaseSync BUILD SUCCESS) and every
code URL in web/examples.json (85/85) resolves to a committed .java file.
@DemchaAV DemchaAV merged commit dcd9442 into develop Jun 29, 2026
11 checks passed
@DemchaAV DemchaAV deleted the fix/showcase-metadata-registry branch June 29, 2026 12:59
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