Skip to content

release skill: disambiguate placeholder tokens (VERSION, PGXNTOOL_UPSTREAM, PGXNTOOL_TEST_UPSTREAM) #49

Description

@jnasbyupgrade

Summary

.claude/skills/release/SKILL.md uses several bare all-caps tokens as placeholders that are meant to be substituted with real values when the skill actually runs, but nothing in the text visually distinguishes them from literal strings:

  • VERSION -- the actual version being released (e.g. 2.2.0). Appears 45 times, including inside real bash command blocks like git tag VERSION and git push PGXNTOOL_UPSTREAM VERSION.
  • PGXNTOOL_UPSTREAM / PGXNTOOL_TEST_UPSTREAM -- the actual git remote name for each repo (e.g. upstream), extracted by the pre-flight script in Run Pre-flight Checks. Also used bare inside real bash blocks, e.g. git push PGXNTOOL_UPSTREAM master.

Read literally, a command like git push PGXNTOOL_UPSTREAM VERSION looks like it could be executed verbatim -- there's nothing marking PGXNTOOL_UPSTREAM or VERSION as "substitute the real value here" rather than a literal remote name / tag name.

Proposal

Switch to an unambiguous placeholder notation throughout the skill, e.g. $VERSION / $PGXNTOOL_UPSTREAM (shell-variable style) or <VERSION> / <PGXNTOOL_UPSTREAM> (angle-bracket style) -- pick whichever reads better in the surrounding bash blocks and prose, and apply it consistently to all three tokens.

Scope

Checked other skills under .claude/skills/*/SKILL.md -- this pattern (bare-word placeholders inside real bash blocks) doesn't show up elsewhere, so this is scoped to the release skill only.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions