|
1 | 1 | # Release Checklist |
2 | 2 |
|
3 | | -Use this checklist for StreamHive `v0.3.0`, the first release with static blob replication, reconnect/backoff, and file-backed storage. |
| 3 | +Use this checklist for StreamHive releases. The current target is `v0.4.0`, the first release with content-addressed CLI puts, startup anti-entropy sync, Prometheus text metrics, and a CI-verified 3-node Compose rehydration demo. |
4 | 4 |
|
5 | 5 | ## Preflight |
6 | 6 |
|
7 | 7 | ```bash |
8 | 8 | go test ./... |
9 | 9 | go test -bench=. -benchmem -run '^$' ./... |
10 | 10 | P2P_ADDR=127.0.0.1:17070 HEALTH_ADDR=127.0.0.1:18080 make demo-replication |
| 11 | +make demo-compose |
| 12 | +go run . -version |
11 | 13 | ``` |
12 | 14 |
|
13 | 15 | ## Version |
14 | 16 |
|
15 | | -1. Update [internal/version/version.go](../internal/version/version.go) from `0.2.0` to `0.3.0`. |
16 | | -2. Rename the `[Unreleased]` section in [CHANGELOG.md](../CHANGELOG.md) to `[0.3.0] - YYYY-MM-DD`. |
| 17 | +1. Update [internal/version/version.go](../internal/version/version.go) to the release semver. |
| 18 | +2. Move completed [CHANGELOG.md](../CHANGELOG.md) entries from `[Unreleased]` into `[MAJOR.MINOR.PATCH] - YYYY-MM-DD`. |
17 | 19 | 3. Commit the version bump: |
18 | 20 |
|
19 | 21 | ```bash |
20 | 22 | git add internal/version/version.go CHANGELOG.md |
21 | | -git commit -m "chore: release v0.3.0" |
| 23 | +git commit -m "chore: release v0.4.0" |
22 | 24 | ``` |
23 | 25 |
|
24 | 26 | ## Tag |
25 | 27 |
|
26 | 28 | ```bash |
27 | | -git tag -a v0.3.0 -m "v0.3.0" |
| 29 | +git tag -a v0.4.0 -m "v0.4.0" |
28 | 30 | git push origin main |
29 | | -git push origin v0.3.0 |
| 31 | +git push origin v0.4.0 |
30 | 32 | ``` |
31 | 33 |
|
32 | 34 | ## Release Notes |
33 | 35 |
|
34 | 36 | Highlight: |
35 | 37 |
|
36 | | -- Static `blob.put` replication over SHV1 frames. |
37 | | -- CLI demo path with `-replicate`, `-put-key`, `-put-data`, and `-exit-after-put`. |
38 | | -- Durable receiver storage with `-store-dir`. |
39 | | -- Static peer lists plus reconnect/backoff via `-peers` and `-peer-reconnect`. |
40 | | -- `/metrics` counters for replication and transport behavior. |
41 | | -- `FileStore` behind the `storage.BlobStore` interface. |
| 38 | +- SHA-256 content key helpers and `-put-content-key`. |
| 39 | +- `blob.has`, `blob.get`, and `blob.missing` anti-entropy messages. |
| 40 | +- Startup anti-entropy sync for static `-replicate` peers. |
| 41 | +- Durable receiver storage with `-store-dir` and `-list-keys`. |
| 42 | +- `/metrics` JSON counters and `/metrics/prometheus` text format. |
| 43 | +- 3-node Docker Compose demo with node restart rehydration, verified in CI. |
42 | 44 |
|
43 | 45 | Attach or link the CI SBOM artifact when publishing GitHub release binaries. |
0 commit comments