Upgrade the release tooling to ReleaseKit v0.3.0
This commit is contained in:
@@ -74,7 +74,7 @@ For an optional local diagnostic of a committed candidate, run:
|
|||||||
```
|
```
|
||||||
|
|
||||||
This is not a required step before publication. The upstream
|
This is not a required step before publication. The upstream
|
||||||
[candidate-check contract](https://gitea.maximumdirect.net/eric/ReleaseKit/src/tag/v0.2.0/docs/consumers/check.md)
|
[candidate-check contract](https://gitea.maximumdirect.net/eric/ReleaseKit/src/tag/v0.3.0/docs/consumers/check.md)
|
||||||
describes its requirements.
|
describes its requirements.
|
||||||
|
|
||||||
Run the single publication command with the chosen version:
|
Run the single publication command with the chosen version:
|
||||||
@@ -114,7 +114,7 @@ resolved. ReleaseKit reports the attempted version, tag object, and recovery
|
|||||||
state, including the captured publication endpoint when available. Use that
|
state, including the captured publication endpoint when available. Use that
|
||||||
endpoint—not merely the current `origin` URL—to query the exact tag; follow the
|
endpoint—not merely the current `origin` URL—to query the exact tag; follow the
|
||||||
upstream
|
upstream
|
||||||
[failure-recovery procedure](https://gitea.maximumdirect.net/eric/ReleaseKit/src/tag/v0.2.0/docs/release.md#resolve-failures):
|
[failure-recovery procedure](https://gitea.maximumdirect.net/eric/ReleaseKit/src/tag/v0.3.0/docs/release.md#resolve-failures):
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
releasekit_endpoint='COPY_CAPTURED_ENDPOINT'
|
releasekit_endpoint='COPY_CAPTURED_ENDPOINT'
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
# ReleaseKit v0.3.0 Upgrade Roadmap
|
# ReleaseKit v0.3.0 Upgrade Roadmap
|
||||||
|
|
||||||
Status: Accepted; implementation pending.
|
Status: Complete. ReleaseKit v0.3.0 is selected and the upgraded integration
|
||||||
|
is verified. Current workflow requirements belong in the
|
||||||
|
[release procedure](../release.md) and [release policy](../policy/release.md).
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
@@ -12,7 +14,7 @@ wrappers, and product-specific checks locally.
|
|||||||
This is a focused tooling upgrade, not another release-process migration.
|
This is a focused tooling upgrade, not another release-process migration.
|
||||||
The [release policy](../policy/release.md) and
|
The [release policy](../policy/release.md) and
|
||||||
[release procedure](../release.md) continue to own PromptKit's release
|
[release procedure](../release.md) continue to own PromptKit's release
|
||||||
requirements and workflow. A separate implementation plan will own staged work.
|
requirements and workflow. The upgrade was implemented as one focused unit.
|
||||||
|
|
||||||
## Current Baseline And Reviewed Upstream
|
## Current Baseline And Reviewed Upstream
|
||||||
|
|
||||||
@@ -111,3 +113,12 @@ Completion means v0.3.0 is selected, wiring verification passes without a
|
|||||||
duplicated version pin, and current documentation agrees with the adopted
|
duplicated version pin, and current documentation agrees with the adopted
|
||||||
tool. No real tag publication is part of implementation verification. Future
|
tool. No real tag publication is part of implementation verification. Future
|
||||||
PromptKit release preparation remains a separate task under the runbook.
|
PromptKit release preparation remains a separate task under the runbook.
|
||||||
|
|
||||||
|
Implementation verification passed with Go 1.26.8: the module-selected wrapper
|
||||||
|
reported `releasekit v0.3.0`, the disposable publication and failure fixtures
|
||||||
|
passed, and the ordinary offline Go suite, full vet, and maintained consumer
|
||||||
|
examples passed. The fixtures also verified native usage status, same-Go
|
||||||
|
bootstrap, and unchanged candidate module metadata. Release profile and wrapper
|
||||||
|
contents are unchanged; no real PromptKit tag was published. Upstream notices
|
||||||
|
were reviewed; the tooling-only upgrade introduced no incorporated material
|
||||||
|
requiring a new attribution entry.
|
||||||
|
|||||||
2
go.mod
2
go.mod
@@ -10,7 +10,7 @@ require (
|
|||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
gitea.maximumdirect.net/eric/ReleaseKit v0.2.0 // indirect
|
gitea.maximumdirect.net/eric/ReleaseKit v0.3.0 // indirect
|
||||||
github.com/yuin/goldmark/v2 v2.1.6 // indirect
|
github.com/yuin/goldmark/v2 v2.1.6 // indirect
|
||||||
go.yaml.in/yaml/v4 v4.0.0-rc.6 // indirect
|
go.yaml.in/yaml/v4 v4.0.0-rc.6 // indirect
|
||||||
golang.org/x/mod v0.40.0 // indirect
|
golang.org/x/mod v0.40.0 // indirect
|
||||||
|
|||||||
4
go.sum
4
go.sum
@@ -1,7 +1,7 @@
|
|||||||
gitea.maximumdirect.net/eric/ConfigKit v0.5.0 h1:2KwG10+kApWM3avOoYA+p768xcbHUp7tQ2rqizBNpyg=
|
gitea.maximumdirect.net/eric/ConfigKit v0.5.0 h1:2KwG10+kApWM3avOoYA+p768xcbHUp7tQ2rqizBNpyg=
|
||||||
gitea.maximumdirect.net/eric/ConfigKit v0.5.0/go.mod h1:tYWpsrbLyu05r8+1MapWp5fN6ZrX9I8hU2xEPedYmYk=
|
gitea.maximumdirect.net/eric/ConfigKit v0.5.0/go.mod h1:tYWpsrbLyu05r8+1MapWp5fN6ZrX9I8hU2xEPedYmYk=
|
||||||
gitea.maximumdirect.net/eric/ReleaseKit v0.2.0 h1:EACELngRel4RiulR+Ors56nMZ5fA9orJDyhPxn6UVe4=
|
gitea.maximumdirect.net/eric/ReleaseKit v0.3.0 h1:aTMn+50MEpHpHI2RoCCmJYsy7Ohrpa+RSva63Kq0/tU=
|
||||||
gitea.maximumdirect.net/eric/ReleaseKit v0.2.0/go.mod h1:xN8w1OWjhCwtDxyHVFbKxFWowuEPbMTCZrf0JIIm9pE=
|
gitea.maximumdirect.net/eric/ReleaseKit v0.3.0/go.mod h1:LVodqNQ3OIKv9NBq+fFeyMByd1lHY25YOmmpah/NaNI=
|
||||||
gitea.maximumdirect.net/eric/promptkit-backend-openrouter/v3 v3.20260930.0 h1:lzfCDbzJQRGzIlRPRprnAV9hVVL5zUQy80VMQ0kbYa0=
|
gitea.maximumdirect.net/eric/promptkit-backend-openrouter/v3 v3.20260930.0 h1:lzfCDbzJQRGzIlRPRprnAV9hVVL5zUQy80VMQ0kbYa0=
|
||||||
gitea.maximumdirect.net/eric/promptkit-backend-openrouter/v3 v3.20260930.0/go.mod h1:HjS0f+3q0IdHCTEz+VVAEgIwIWJFAZUjuKdAtvtqKdg=
|
gitea.maximumdirect.net/eric/promptkit-backend-openrouter/v3 v3.20260930.0/go.mod h1:HjS0f+3q0IdHCTEz+VVAEgIwIWJFAZUjuKdAtvtqKdg=
|
||||||
gitea.maximumdirect.net/eric/promptkit-backend-rakestrawhome/v3 v3.20260930.0 h1:h12ZTRldAmpLAomj0oQRGteFxHLN1LPE6XDl9zJNbm8=
|
gitea.maximumdirect.net/eric/promptkit-backend-rakestrawhome/v3 v3.20260930.0 h1:h12ZTRldAmpLAomj0oQRGteFxHLN1LPE6XDl9zJNbm8=
|
||||||
|
|||||||
@@ -216,6 +216,11 @@ def prepare_repository(repository, remote, environment, module_bytes, version):
|
|||||||
|
|
||||||
|
|
||||||
def verify_publication(repository, remote, temporary_root, environment, module_bytes, selected_go):
|
def verify_publication(repository, remote, temporary_root, environment, module_bytes, selected_go):
|
||||||
|
selected_releasekit = run(
|
||||||
|
["go", "list", "-mod=readonly", "-m", "-f", "{{.Version}}", RELEASEKIT_MODULE],
|
||||||
|
cwd=repository,
|
||||||
|
environment=environment,
|
||||||
|
).strip()
|
||||||
publication = repository / "scripts/release.sh"
|
publication = repository / "scripts/release.sh"
|
||||||
run(
|
run(
|
||||||
[str(publication), RELEASE_VERSION],
|
[str(publication), RELEASE_VERSION],
|
||||||
@@ -249,9 +254,11 @@ def verify_publication(repository, remote, temporary_root, environment, module_b
|
|||||||
first_line = build_info.splitlines()[0]
|
first_line = build_info.splitlines()[0]
|
||||||
if selected_go not in first_line:
|
if selected_go not in first_line:
|
||||||
raise RuntimeError(f"tool was built with {first_line!r}, expected {selected_go}")
|
raise RuntimeError(f"tool was built with {first_line!r}, expected {selected_go}")
|
||||||
expected_module = f"\tmod\t{RELEASEKIT_MODULE}\tv0.2.0\t"
|
expected_module = f"\tmod\t{RELEASEKIT_MODULE}\t{selected_releasekit}\t"
|
||||||
if expected_module not in build_info:
|
if expected_module not in build_info:
|
||||||
raise RuntimeError("bootstrap executable does not record ReleaseKit v0.2.0")
|
raise RuntimeError(
|
||||||
|
f"bootstrap executable does not record selected ReleaseKit {selected_releasekit}"
|
||||||
|
)
|
||||||
|
|
||||||
candidate = repo_git(repository, environment, "rev-parse", "HEAD").strip()
|
candidate = repo_git(repository, environment, "rev-parse", "HEAD").strip()
|
||||||
if repo_git(repository, environment, "rev-parse", "main").strip() != candidate:
|
if repo_git(repository, environment, "rev-parse", "main").strip() != candidate:
|
||||||
|
|||||||
Reference in New Issue
Block a user