Skip to content

Fix release workflow: remove invalid xpecs bump from changeset#10

Merged
brnrdog merged 4 commits into
mainfrom
claude/changeset-release-workflow-error-1lyx99
Jul 23, 2026
Merged

Fix release workflow: remove invalid xpecs bump from changeset#10
brnrdog merged 4 commits into
mainfrom
claude/changeset-release-workflow-error-1lyx99

Conversation

@brnrdog

@brnrdog brnrdog commented Jul 23, 2026

Copy link
Copy Markdown
Owner

The root "xpecs" package.json isn't listed in the npm workspaces field (only packages/*, skill, website are), so changesets doesn't recognize it as a workspace package. The modern-icon-library changeset referenced "xpecs": minor, which made changeset version fail in CI with "Found changeset modern-icon-library for package xpecs which is not in the workspace".

claude added 2 commits July 23, 2026 20:34
The root "xpecs" package.json isn't listed in the npm workspaces
field (only packages/*, skill, website are), so changesets doesn't
recognize it as a workspace package. The modern-icon-library
changeset referenced "xpecs": minor, which made `changeset version`
fail in CI with "Found changeset modern-icon-library for package
xpecs which is not in the workspace".
The `@xpecs` scope is unavailable on npm, so this renames it across
all workspace packages (`@prescriptive/tokens`, `@prescriptive/xote`,
`@prescriptive/reativa`, `@prescriptive/skill`), the lockfile,
changesets, docs, build scripts, and the website's ReScript/Reativa
sources. The root private package (name "xpecs") and the website
package (name "xpecs-website") are unscoped and unaffected.
@brnrdog
brnrdog force-pushed the claude/changeset-release-workflow-error-1lyx99 branch from c13a39b to 45feafc Compare July 23, 2026 20:58
claude added 2 commits July 23, 2026 21:07
Rebrands the project throughout: the display name (Xpecs -> Prescriptive)
in docs, website UI, and the Agent Skill; the root package (`xpecs` ->
`prescriptive`) and the website package (`xpecs-website` ->
`prescriptive-website`); internal DOM id prefixes (`xpecs-*` ->
`prescriptive-*`) in the Xote and Reativa component sources; the
`prescriptive_reativa` build directory; and the repository URLs and
schema `$id`s (github.com/brnrdog/ux-archetypes ->
github.com/brnrdog/prescriptive), plus the project-name npm keyword.

The GitHub Pages base path is derived from the repo name at deploy time,
so it follows the repository rename automatically. Historical CHANGELOG
entries are left intact, since they record the name the project actually
had at the time.
`Switch` and `Checkbox` both declare a `~label` string argument and
rendered their wrapper with the mlx `<label>` host element. The mlx JSX
desugars `<label>` to the `label` binding from `Reativa.View.Mlx`, but
the `~label` argument shadows it, so the compiler saw a `string` where a
host-element constructor was expected:

    Error: This expression has type string
           This is not a function; it cannot be applied.

Build the wrapper with `View.element ... "label"` instead — the same
approach `Field.mlx` already uses to avoid this exact collision. The
inner `<span>` elements are unaffected (no shadowing) and stay as JSX.
@brnrdog
brnrdog merged commit 6a2f568 into main Jul 23, 2026
1 check passed
@brnrdog
brnrdog deleted the claude/changeset-release-workflow-error-1lyx99 branch July 23, 2026 21:26
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.

2 participants