docs: record the 1.0.0-RC.1 release and the orb RC mechanics

This commit is contained in:
james.maes committed 2026-10-05 10:19:30 -05:00
1 parent 36bc0fb6f1
commit 20c9b87d40
2 files changed
+13 -16

No files matched your search

+9 -15
View File
@@ -4,22 +4,16 @@ Updated: 2026-10-05
## Context
Repo `QRun-IO/qbit-quick-search`, branch `feature/GH-1-0-release-readiness`, pushed; PR #10 to `develop` is open, reviewed and CI-green at `49f20c0`. Goal in flight: ship `1.0.0-RC.1`.
`1.0.0-RC.1` is released (2026-10-05). PR #10 merged as `0cd892d` and PR #8 as `36bc0fb`, both on `develop`. `release/1.0` was cut from `36bc0fb`; the orb's `publish_release_candidate` workflow succeeded, pushed `0b7bc98` ("Bump version to 1.0.0-RC.1 [skip ci]") to `release/1.0`, and published to Maven Central (jar, pom, sources, javadoc, signatures). A clean consumer resolves it with qqq-backend-core 4.1.0-RC.1 and opensearch-java 3.10.0.
## This session
## Release mechanics (qqq-orb 0.6.8, confirmed in its source)
- Recovered after a crash; the prior session had ended cleanly (all 1.0 work committed, verify green).
- Rebased the branch onto `origin/develop` (`000e5bb`, squash of PR #7); the tree was unchanged. Committed `AGENTS.md`. GitHub SSH times out from this machine, so pushes use HTTPS with `git -c credential.helper='!gh auth git-credential' push https://github.com/QRun-IO/qbit-quick-search.git ...`.
- Deep review of PR #10 (search permissions and alias swap, silent failures in the listener and basepull, security of transport and config). Two merge blockers in the full-reindex path and two search paging defects fixed in `45bd1fc`; lower-severity items are in `docs/TODO.md` under "Before 1.0.0 GA". Verify after the fixes: 307 unit, 18 integration, coverage gate passed. Review posted on PR #10; PR #8 reviewed and approved in a comment. Dependabot PR #1 closed as superseded.
- Merging was refused by the Claude Code auto-mode permission classifier ("Merge Without Review") for both #8 and #10, so the merges are left to James.
- RCs publish artifacts only: no git tag and no GitHub release. The GitHub release comes when the release branch merges to `main` and a `vX.Y.Z` tag is pushed.
- Never push a `vX.Y.Z-RC.n` tag: it matches the GA job's `v*` filter, maps back to `release/X.Y.Z`, and would publish a stray `RC.n+1`.
- The next push to `release/1.0` publishes `1.0.0-RC.2`.
- The agent cannot run `gh pr merge` (auto-mode classifier); James merges. GitHub SSH times out from this machine; push over HTTPS with `git -c credential.helper='!gh auth git-credential' push https://github.com/QRun-IO/qbit-quick-search.git <ref>`.
## Release mechanics (qqq-orb 0.5.2, confirmed in the orb source)
## Next
Pushing `release/1.0` runs `publish_release_candidate`; the orb derives `1.0.0-RC.1` from the `1.0.0-SNAPSHOT` revision, publishes the artifact, tags and creates a GitHub pre-release. Do not create the tag by hand. The next push to `release/1.0` publishes RC.2.
## Next (in order)
1. `gh pr merge 10 --squash --admin` (reviewed; CI green).
2. Rebase `feature/GH-10-public-stack-prep` on `develop` (pom.xml conflict: take assertj 3.27.7), push, `gh pr merge 8 --squash --admin`.
3. `git fetch origin && git checkout -b release/1.0 origin/develop && git push origin release/1.0`; watch the `publish_release_candidate` workflow; confirm the `v1.0.0-RC.1` pre-release.
4. Pin `1.0.0-RC.1` in qqq-all and Voyage (see TODO); their feedback decides RC.2 or GA.
1. Pin `1.0.0-RC.1` in qqq-all and Voyage (see `docs/TODO.md`); their feedback decides RC.2 or GA.
2. Work the "Before 1.0.0 GA" list in `docs/TODO.md` on feature branches into `develop`, then merge `develop` into `release/1.0` for RC.2.
+4 -1
View File
@@ -2,6 +2,8 @@
## Before tagging 1.0.0
- [ ] qqq-all and Voyage adopt `1.0.0-RC.1` (items below) and report back.
- [x] PR #10 (`feature/GH-1-0-release-readiness`) opened and reviewed 2026-10-05; `AGENTS.md` kept.
- [ ] Re-pin to `qbit-build-parent` 2.1.0 when qbit-bom publishes it, and remove the `activeByDefault` on the `qqq-snapshot` profile (ADR-0007).
- [ ] qqq-all follow-up PR: remove the manual `instance.addQBit(...)` for quick-search in `DemoQBits`, pass `withSchedulerName("demoScheduler")`, set `withStartupMode(QuickSearchStartupMode.DEGRADED)` for the full profile test, pin 1.0.0.
@@ -9,7 +11,8 @@
- [ ] CI: add a second test job with `-Dopensearch.test.image=opensearchproject/opensearch:3.9.0` (needs a qqq-orb parameter for extra Maven args, or a plain job).
- [ ] Open the qqq issue proposing `RecordSearchProviderInterface` (D1); quick-search adapter lands in 1.1.
- [ ] Create the GitHub tracking issue for the 1.0 initiative; write its number into the PRD frontmatter.
- [ ] Merge PR #8 (reviewed 2026-10-05, approve); Dependabot PR #1 closed as superseded.
- [x] PR #8 merged 2026-10-05; Dependabot PR #1 closed as superseded.
- [x] PR #10 merged and `1.0.0-RC.1` published to Maven Central from `release/1.0` (2026-10-05).
- [ ] Upstream: tell qbit-bom that the published parent POM has `<version>${revision}</version>`, which Maven 3.10 rejects (this repo works around it with the wrapper on 3.9.11).
## Before 1.0.0 GA (from the PR #10 review, 2026-10-05)