fix: qbit metadata version comes from the build #26

Merged
KofTwentyTwo merged 1 commits from fix/producer-version-from-build into develop 2026-10-15 06:42:57 +00:00
KofTwentyTwo commented 2026-10-15 06:34:19 +00:00 (Migrated from github.com)

The producer hardcoded its version, so released artifacts reported a stale literal or -SNAPSHOT as the qbit's metadata version.

Fix: this follows the authentik pattern. A Maven-filtered qbit-object-storage.properties holds version=${project.version}, and the producer loads it. The tests assert that the producer version, the help bundle version and the artifact version are equal (surefire passes qbit.artifactVersion).

Codex notes:
Implemented in six files:

  • pom.xml
  • src/main/resources/qbit-object-storage.properties
  • ObjectStorageQBitProducer.java
  • ObjectStorageQBitProducerTest.java
  • ObjectStorageHelpBundleTest.java
  • CHANGELOG.md

RC.99 proof passed: all four tests passed with 0.1.0-RC.99, then passed again after restoring 0.1.0-SNAPSHOT. ${revision} is preserved; POM diff contains only intended changes.

Full verify remains blocked: Docker access denied, causing skipped tests and insufficient coverage. Checkstyle and guardrails passed. No commit or push.

Second Brain save unavailable because the vault is outside writable roots.

Low priority: this rides the repo's next RC.

🤖 Generated with Claude Code

The producer hardcoded its version, so released artifacts reported a stale literal or `-SNAPSHOT` as the qbit's metadata version. **Fix:** this follows the authentik pattern. A Maven-filtered `qbit-object-storage.properties` holds `version=${project.version}`, and the producer loads it. The tests assert that the producer version, the help bundle version and the artifact version are equal (surefire passes `qbit.artifactVersion`). **Codex notes:** Implemented in six files: - `pom.xml` - `src/main/resources/qbit-object-storage.properties` - `ObjectStorageQBitProducer.java` - `ObjectStorageQBitProducerTest.java` - `ObjectStorageHelpBundleTest.java` - `CHANGELOG.md` RC.99 proof passed: all four tests passed with `0.1.0-RC.99`, then passed again after restoring `0.1.0-SNAPSHOT`. `${revision}` is preserved; POM diff contains only intended changes. Full `verify` remains blocked: Docker access denied, causing skipped tests and insufficient coverage. Checkstyle and guardrails passed. No commit or push. Second Brain save unavailable because the vault is outside writable roots. Low priority: this rides the repo's next RC. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.