Skip to content

Release assets under assets/readme/examples/ drift — nothing regenerates them, and the deck stamps a raw SNAPSHOT #454

Description

@DemchaAV

Two problems that compound

1. Nothing regenerates the committed example assets

cut-release.ps1 refreshes web/showcase/** (Step 4, ShowcaseSync) and assets/readme/repository_showcase_render.png (Render-ReadmeBanner). It touches nothing under assets/readme/examples/**.

Those files are linked from examples/README.md and the root README, so a reader clicking through gets whatever was committed the day the example was added. assets/readme/examples/engine-deck.pdf is the visible case: it is still the v1.8.0 render, carrying the codename illustrative, two minors behind. It has not been regenerated since dcc62500.

2. The deck bakes a pre-release qualifier into a public asset

EngineDeckExample interpolates the raw VERSION in three places — the page title, the section header, and the footer on every slide:

.leftText("GraphCompose · v" + VERSION + " “" + CODENAME + "”")

The version pill is handled: versionBlock() strips the qualifier with VERSION.replaceFirst("-.*$", ""), with a comment explaining that 2.0.0-SNAPSHOT is too wide for the 96 pt pill. The other three sites got no such treatment, so a render taken on develop today produces:

GraphCompose · v2.1.0-SNAPSHOT “twinned”

So the two problems pull against each other: the asset is stale, and regenerating it at any moment other than during a cut publishes a -SNAPSHOT string to readers.

Suggested direction

  • Strip the qualifier once, where VERSION is resolved, rather than at one of four use sites — the pill's replaceFirst then becomes redundant and can go. A deck should never display a build qualifier.
  • Either add an assets/readme/examples/** refresh step to cut-release.ps1 (alongside Render-ReadmeBanner, which already solves the same problem for the hero), or drop the version and codename from the deck entirely so the asset stops being version-bound.
  • If a refresh step lands, verify it under -DryRun, -PostReleaseOnly and -SkipShowcase — the v1.6.5 lesson was a release step that only worked in the default mode.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingrelease2.0 release-cycle task

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions