Historical preparation record. Current dependency, registry, and publication instructions are in the release runbook and the README.
This historical maintainer runbook records preparation of the initial public
source snapshot from private main fa323b8, after review and merge of PR #16.
Its original tracking issue
is retained in the private archive (maintainer access required). References to
private settings below describe preparation, not the new public repository.
Public source availability and Maven Central publication are separate milestones.
The review started from main 926ef4c (94 tracked files), after the behavior
audit and 167 passing tests. The intended public source is a fresh snapshot,
not a copy of private branches, tags, pull-request refs, releases, or history.
Checks performed on that tree:
Repeat the scan on the final committed PR head and exact public snapshot. No automated scan proves the absence of secrets. Previously accepted rotated values in private historical refs do not require a history rewrite for this clean-snapshot transition. Preserve that history privately.
The initial public commit must use
wojciech-fraczak <wojciech@ratelimitly.com> as both author and committer.
Verify the new GitHub attribution; do not infer it from local Git settings alone.
The security workflow runs a redacted,
checksum-pinned Gitleaks scan of git archive HEAD. It does not read a
developer’s untracked files, build outputs, credentials, or sibling repositories.
Use Gitleaks 8.30.1 locally:
bash scripts/test-secret-scan.sh
bash scripts/scan-secrets.sh
Set GITLEAKS_BIN to an installed binary path if it is not on PATH. Verify the
upstream release checksum before executing downloaded tools. No scanner account,
private token, or Gitleaks Action license is required. No secret findings are
uploaded as artifacts, and output is redacted.
Dependabot checks Maven projects (including the independent consumer) and GitHub Actions weekly. Dependabot alerts and automated security updates are enabled separately in repository settings. Review updates; do not auto-merge.
CodeQL Java/Actions and dependency review are configured for public runs. Code Security is disabled on the private repository, so those jobs are explicitly skipped here, not claimed as passed. The organization reports an Enterprise plan; this check does not establish whether unused security seats are licensed, and this work does not activate paid add-ons. GitHub documents availability for CodeQL and dependency review. Java analysis uses a manual build with the same pinned public dependency as CI. Do not enable a second default-setup CodeQL configuration alongside this workflow.
PR workflows use pull_request, never pull_request_target, and do not need
repository secrets. Checkout credentials are not persisted. CodeQL’s job has
only the analysis upload permissions in addition to read access; fork tokens
remain subject to GitHub’s restrictions. No PR workflow can publish a package.
An actual external-fork PR remains a public-transition smoke test; private
preparation cannot demonstrate an anonymous fork’s full execution path.
The baseline ruleset requires a PR, resolved review conversations, current-base CI, the four platform jobs, hygiene, and the source secret scan. It blocks force-pushes and deletion, with no bypass actors. It requires zero external approvals and no last-pusher approval; one maintainer can review and merge when checks pass.
The private repository’s baseline is active as ruleset 22593360 (verified
during preparation). Workflow tokens default to read-only and cannot approve
PRs. Dependabot alerts/security updates are enabled, metadata is corrected,
stale CI PR #1 is closed as superseded, and coverage issue #3 is resolved.
These observations must be rechecked on the new repository after transition.
The new source-scan check must pass on the preparation PR before it can merge.
For the public repository, apply the additional
public security ruleset after
validating Analyze (java-kotlin), Analyze (actions), and dependency review.
It also blocks high/critical CodeQL security alerts and error-level results.
A successful analysis job alone does not mean
there are no findings. Inspect alerts, and do not waive failures to publish.
Settings do not transfer automatically when creating the fresh repository.
Automatic reports still measure the whole admitted operation and are coupled to guards. They are not per-dependency measurements or delivery acknowledgements. Independent reports remain available through the Java client. The design work stays in #2, rather than blocking source publication on an unrequested reporting API redesign.
An earlier upstream Java timing-test failure remains noted in the readiness plan. Later green runs are evidence for those commits, not proof that timing sensitivity is fixed. Current failures would still block the transition; no tests are skipped for it.
rl-spring-private-archive; do not expose its historical refs.rl-spring with one reviewed snapshot commit. Keep all POMs
on their current snapshot versions; do not copy release tags or assets.Archiving/creating repositories is not performed by any workflow in this PR.