Add source publication command and runbook

This commit is contained in:
2026-10-05 19:04:55 +00:00
parent 7481dd0fd2
commit c83313b3b9
15 changed files with 295 additions and 60 deletions

View File

@@ -649,7 +649,7 @@ local tag before push prevent publication.
## Stage 9: Expose publication and document ReleaseKit bootstrap
Status: Pending. Depends on Stage 8.
Status: Complete. Depends on Stage 8.
1. Wire the complete public publisher into `releasekit publish`, with selected
progress output, final result, exit classification, and signal cancellation.
@@ -672,6 +672,15 @@ committed profile and returns the expected exit/output behavior. Runbook command
are exercised using a temporary repository configured like ReleaseKit. This
stage prepares self-publication and does not publish a real ReleaseKit release.
Evidence: `publish` runs the public publisher with the CLI signal context,
selected progress output, final commit and tag-object output, and separate exit
status for unresolved outcomes. A temporary committed profile runs the offline
test command and publishes to a local bare remote. ReleaseKit's root profile,
entry script, CLI and configuration guides, development guide, and maintainer
runbook describe source-only publication and exact-object recovery. The
runbook's dependency preparation is separate from offline validation. No real
ReleaseKit release was published.
## Stage 10: Build selected targets with shared version injection
Status: Pending. Depends on Stage 9.

View File

@@ -1,6 +1,8 @@
# Adopt the policy framework
Status: Policy adoption complete. Release publication implementation is pending.
Status: Policy adoption complete. Source publication and its maintainer runbook
are implemented; no ReleaseKit release has been published. Executable delivery
remains pending.
Date: 2026-10-05
@@ -130,20 +132,21 @@ policy has separate defaults for applications and libraries.
successful-tag-push completion rules.
- [x] Select source only as ReleaseKit's initial deliverable in the release
policy. Supporting downstream cross-builds does not declare ReleaseKit binaries.
- [ ] Add `docs/release.md` alongside the first working publication command,
- [x] Add `docs/release.md` alongside the first working publication command,
documenting real prerequisites, authoritative remote, branch, validation,
publication, and failure recovery.
- [x] Account for first-release bootstrap: the initial publication command must
run from the captured candidate source with dependencies prepared separately.
The first release uses that source execution path before a released ReleaseKit
tool exists. Document and verify the actual command when it is implemented.
tool exists. The maintainer procedure documents the command and the temporary
repository integration test exercises the same CLI workflow.
- [ ] Add executable delivery declarations and target checks when corresponding
deliverables exist. Keep source completion and asynchronous delivery status
separate. This task is deferred unless executable deliverables are selected.
The publication command, its automated guards and offline candidate validation,
and the executable maintainer runbook remain product implementation work. This
adoption does not claim an available release command or perform publication.
The publication command, its automated guards, offline candidate validation,
and executable maintainer runbook are implemented. This adoption does not claim
that a ReleaseKit version has been published.
## Validation and completion
@@ -165,14 +168,14 @@ approval, and CI polling are not additional adoption or release gates.
## Adoption result
The seven policies, root agent orientation, developer reading guide, documentation
ownership, project grant, attribution, and license texts are in place. The product
proposal lives at `docs/roadmap/releasekit.md`; `ideas.md` remains a navigation
pointer. Future capabilities retain their proposed status, and facade
implementation remains pending in the product roadmap.
ownership, project grant, attribution, license texts, source publication command,
and maintainer runbook are in place. The product proposal lives at
`docs/roadmap/releasekit.md`; `ideas.md` remains a navigation pointer. Executable
delivery remains pending, and no ReleaseKit release has been published.
Verification covers local file and fragment links, per-policy source revision and
base version, removed template adoption sections, attribution scope and pinned
notice destinations, verbatim license bytes, and prose whitespace. The preserved
ADR decision and relocated proposal are checked against their pre-adoption source.
Release automation and its runbook remain pending under stage 4 as permitted by
this roadmap's completion criteria.
ReleaseKit's source publication command and runbook are implemented; executable
delivery declarations remain pending under stage 4.

View File

@@ -1,9 +1,11 @@
# ReleaseKit: shared release process
This is a proposal based on a review of PromptKit, ConfigKit, Audita, Notarius,
Narratio, and Scriptorium on 2026-09-29. Product capabilities remain proposed.
The public facade architecture is accepted in
[ADR 0001](../adr/0001-public-facade.md), with implementation pending.
Narratio, and Scriptorium on 2026-09-29. The implementation plan records the
current implemented boundary; builds, delivery, and broader integrations remain
proposed. The public facade architecture is accepted in
[ADR 0001](../adr/0001-public-facade.md) and is implemented for runtime version,
candidate validation, and source publication.
The [implementation plan](implementation.md) owns ordered stages, execution
instructions, acceptance checks, and progress toward this target state.
@@ -50,12 +52,11 @@ cleanup.
## Architecture
[ADR 0001](../adr/0001-public-facade.md) owns the accepted facade decision.
The [architecture policy](../policy/architecture.md) owns the adopted responsibility
and dependency rules, including the runtime version boundary. The facades remain
unimplemented.
The root `releasekit` package will provide the public facade for publication,
builds, and delivery. A separate public `buildinfo` package will provide the
lightweight facade for runtime version information.
The [architecture policy](../policy/architecture.md) owns the adopted
responsibility and dependency rules, including the runtime version boundary.
The root `releasekit` package provides the public facade for candidate
validation and source publication; builds and delivery remain planned. The
separate public `buildinfo` package provides lightweight runtime version access.
Each facade owns its public named types and documented contracts. Public
operations, inputs, outcomes, errors, and callbacks express deliberately