Skip to content

chore(release): re-cut v1.1.1 with PR #43 hotfix (1.1.0 -> 1.1.1 on master) - #45

Merged
SHcommit merged 3 commits into
masterfrom
release/v1.1.1-real
Sep 6, 2026
Merged

chore(release): re-cut v1.1.1 with PR #43 hotfix (1.1.0 -> 1.1.1 on master)#45
SHcommit merged 3 commits into
masterfrom
release/v1.1.1-real

Conversation

@SHcommit

@SHcommit SHcommit commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Summary

Cut release v1.1.1, take 2.

The previous PR #44 accidentally shipped release branch release/v1.1.1 that was branched off a stale local develop before PR #43's hotfix landed. master ended up at 1.1.0 instead of 1.1.1, so release.yml failed at "Verify tag matches VERSION" with tag v1.1.1 != v1.1.0. This PR re-cuts v1.1.1 from the real develop HEAD (99153e9 = PR #43 merge commit) and brings master to v1.1.1.

Why a second release PR

This PR (release/v1.1.1-realmaster) brings master to 99153e9, with VERSION=1.1.1. After merge, the existing v1.1.1 tag will be force-moved to the new master HEAD and release.yml will re-trigger automatically.

What this PR brings

All of PR #43's content:

  • .claude-plugin/marketplace.json$schema, top-level description, owner.name (Claude Code v2.1.263 schema).
  • scripts/sync_version.pyTOML_VERSION_SPECS + sync_toml_version() so pyproject.toml's [project] table is in the sync surface; require_known_paths() asserts the [project] table is present.
  • tests/unit/test_sync_version.py — 6 new TOML sync regression tests + real-repo drift guard.
  • All version-metadata files synced to 1.1.1 via scripts/sync_version.py.

Verification

  • PR fix(release): marketplace.json owner + pyproject.toml version sync for v1.1.1 #43 CI: 13/13 passed.
  • Local scripts/sync_version.py --check: exit 0.
  • release/v1.1.1-real HEAD = 99153e9 (= origin/develop), so develop CI coverage applies.
  • After this PR merges, v1.1.1 tag will be force-moved to the new master HEAD and the existing release.yml trigger will produce a v1.1.1 GitHub Release with adr_toolkit-1.1.1-* wheel/sdist (the fix that v1.1.0 missed).

Examples Impact

  • N/A — release-wrap PR.

ADR Impact

  • N/A — bugfix release.

SHcommit and others added 3 commits September 6, 2026 18:43
… version

Two gaps surfaced while deploying v1.1.0:

1) `.claude-plugin/marketplace.json` was missing the `owner` field that
Claude Code v2.1.263's marketplace schema requires, so
`claude plugin marketplace add <repo>` failed with
"Invalid schema: ... owner: Invalid input". Added `$schema`, a top-level
`description`, and `owner.name`, mirroring the working
`Agent-toolkit/.claude-plugin/marketplace.json` shape. The existing
`plugin.json` was already correct, so the symlink-based install kept
working; this only unblocks fresh marketplace-add installs.

2) `pyproject.toml`'s `version` field was not in
`scripts/sync_version.py`'s sync surface. The v1.1.0 GitHub Release
shipped a skill tarball labeled v1.1.0 but a Python wheel/sdist labeled
1.0.1, and `release.yml`'s "tag matches VERSION" check only verified the
skill VERSION against the tag, so the drift slipped through. Added
`TOML_VERSION_SPECS` (currently `pyproject.toml` `[project]` table) and a
new `sync_toml_version()` that rewrites the `version = "..."` line in-place
by regex (Python 3.10 stdlib has no TOML writer; `tomli` is read-only).
`require_known_paths()` now also asserts the `[project]` table is present,
so a future structural edit that deletes the table fails loudly instead
of silently dropping pyproject.toml out of the drift check.

Added 6 regression tests in `tests/unit/test_sync_version.py` that pin the
new behavior (writes under [project], leaves other tables untouched,
idempotent, --check-only, skips when section missing, and a real-repo guard
that fails the moment pyproject.toml drifts from skills/adr-toolkit/VERSION).

Bumped VERSION 1.1.0 -> 1.1.1 and ran `scripts/sync_version.py` to propagate
the bump to SKILL.md, .claude-plugin/plugin.json,
adapters/gemini-cli/gemini-extension.json, adapters/antigravity/plugin.json,
and pyproject.toml.

Verification:
- scripts/sync_version.py --check: exit 0 (no drift, including pyproject.toml).
- 6 new TOML sync tests re-run as standalone assertions with Python 3.13: pass.
- ast.parse on both edited files: OK.
The initial PR #43 title fix(v1.1.1): ... did not match the
pr-title-check regex (scope v1.1.1 contains dots
fix(release): marketplace.json owner + pyproject.toml version sync for v1.1.1
@github-actions github-actions Bot added type:docs Documentation only type:test Test-only change area:core skills/adr-toolkit/scripts core and CLI commands area:adapter adapters/** and .claude-plugin/** harness integrations area:docs docs/**, README, CONTRIBUTING, and other project documentation labels Sep 6, 2026
@SHcommit
SHcommit merged commit d640196 into master Sep 6, 2026
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:adapter adapters/** and .claude-plugin/** harness integrations area:core skills/adr-toolkit/scripts core and CLI commands area:docs docs/**, README, CONTRIBUTING, and other project documentation type:docs Documentation only type:test Test-only change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant