From 20c9b87d40091a70af4f285ac171f8894dea1194 Mon Sep 17 00:00:00 2001 From: James Maes Date: Mon, 5 Oct 2026 10:19:18 -0500 Subject: [PATCH] docs: record the 1.0.0-RC.1 release and the orb RC mechanics --- docs/SESSION-STATE.md | 24 +++++++++--------------- docs/TODO.md | 5 ++++- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/docs/SESSION-STATE.md b/docs/SESSION-STATE.md index 19cce04..36a7b35 100644 --- a/docs/SESSION-STATE.md +++ b/docs/SESSION-STATE.md @@ -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 `. -## 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. diff --git a/docs/TODO.md b/docs/TODO.md index 3e6f8eb..6611c58 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -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 `${revision}`, 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)