Prepare v0.8.0 notes and retire completed roadmaps

This commit is contained in:
2026-11-03 00:29:51 +00:00
parent ee72566263
commit 37d6209aec
5 changed files with 53 additions and 1826 deletions

53
docs/releases/v0.8.0.md Normal file
View File

@@ -0,0 +1,53 @@
# ReleaseKit v0.8.0
## Summary
ReleaseKit adds read-only recovery for source-publication attempts. It attempts
to retain evidence before a tag push, lets operators discover and explicitly
select a saved attempt, and observes the original destination without repeating
candidate validation or changing tags. Source publication and hosted delivery
continue to have separate outcomes.
## Publication recovery
- `Publish` returns reusable `PublicationEvidence` and attempts to save a
private record. The result reports the saved path or a recording error
separately from the publication outcome. Go callers can load or list records
and reconcile retained evidence through the root facade.
- The CLI adds `publication-attempts` for local discovery and `reconcile` for
an explicitly selected record. Both support human-readable and structured
output. `publish --record-dir` selects an alternate record directory, and
failed publication can print a recovery command for the saved attempt.
- Recovery uses the captured endpoint and full tag with current supported Git
transport settings. It reports publication, current absence, conflict, or an
unresolved observation. Current absence does not prove that a version was
never published; published versions and their contents remain immutable.
- Records preserve exact endpoint and path bytes. Ordinary UTF-8 evidence uses
record format 1; format 2 preserves other bytes. Recovery diagnostics redact
credentials, while private records and typed evidence can contain sensitive
endpoints. Operators control record retention and removal.
## Consumer tools and compatibility
The module path remains `go.maximumdirect.net/releasekit`, and the Go consumer
minimum remains 1.26.0. Existing publication calls and release profiles remain
supported. Publication now attempts to write a private record by default; a
storage failure is reported separately and does not change the publication
result. Applications handling results should inspect `RecordError` when a saved
recovery handoff matters.
Consumers using a module-selected CLI can run it with `go tool releasekit`.
The maintained multi-module launcher and Woodpecker examples use the selected
module's tool version. Register the CLI before generating a vendor tree when
using a vendored tool. Older recovery CLIs that only support record format 1
cannot load format 2 records; use a CLI that supports format 2.
See the [publication guide](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/docs/consumers/publish.md),
[CLI reference](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/docs/cli.md),
[publication record formats](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/docs/integrations/publication-records.md),
and [consumer adoption guide](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/docs/consumers/adoption.md)
for usage and recovery details.
[COPYRIGHT](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/COPYRIGHT) |
[LICENSE](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/LICENSE) |
[ATTRIBUTION](https://forge.maximumdirect.net/base-layer/releasekit/src/tag/v0.8.0/docs/oss/attribution.md)