Add .asf.yaml with branch protection and required CI check

Protects main: the "Maven verify (JDK 21)" status check becomes
mandatory, so a red CI blocks every merge. Notifications go to
commits@ (commits, job failures) and dev@ (pull requests). Merge
buttons stay at the ASF defaults until the project picks a merge
policy on the dev list; the registry has used merge commits so far.
The file only takes effect once it lands on the default branch.

Apache-ai: Yes
Generated-by: pi (claude-bridge/claude-opus-5-5)
Reviewed-by: anierbeck
1 file changed
tree: 5039b8f22ac5f2fa4939dfbb05dafd3952ad5b87
  1. .github/
  2. dev/
  3. dev-support/
  4. sourcelume-registry-common/
  5. sourcelume-registry-core/
  6. sourcelume-registry-runtime-quarkus/
  7. sourcelume-registry-typedefs/
  8. .asf.yaml
  9. .git-blame-ignore-revs
  10. .gitignore
  11. docker-compose.yml
  12. LICENSE
  13. pom.xml
  14. README.md
README.md

Apache Sourcelume Registry (sourcelume-registry)

Overview

The Apache Sourcelume Registry persists, indexes, and queries signed Sourcelume provenance records for AI training datasets.

Per the dev-list consensus (September 2026, thread “Apache Sourcelume Registry repo creation, and initial discussion”) the codebase is organized as a framework-independent Core/API with Runtime modules layered on top:

  • Java 21 baseline (latest LTS)
  • Adapter isolation: backend operations behind a backend-neutral AtlasAdapter SPI; only Sourcelume types in the interface, no backend SDK types in the core
  • CDI-style runtime, leaning Quarkus (see dev-list thread)

Layout

ModulePurpose
sourcelume-registry-typedefsBackend type definitions (JSON resources)
sourcelume-registry-commonDTOs mapped from sourcelume-spec, Jakarta Validation annotations, exceptions, spec resource loader — framework-free (Jakarta API + Jackson only)
sourcelume-registry-coreBackend-neutral AtlasAdapter SPI (API) — no framework, no backend SDK dependencies
sourcelume-registry-runtime-quarkusQuarkus runtime: thin REST AtlasAdapter implementation over the core SPI, startup bootstrap (spec verification + typedef registration), SmallRye Health readiness, Docker packaging

Runtime modules build on the framework-free core as separate modules and own their framework dependencies (the Quarkus BOM is imported in the runtime module only). Additional runtimes can follow the same pattern.

Building

Requires JDK 21 and Maven 3.9+. The sourcelume-spec artifact must be available (build apache/sourcelume-spec first with mvn install, see its SETUP.md).

mvn clean install

Running the Quarkus runtime

Against a local Atlas (default http://localhost:21000, see dev-support/README.md for standing one up):

mvn -pl sourcelume-registry-runtime-quarkus quarkus:dev

Or as a container next to Atlas via the shared sourcelume-network:

mvn clean package
docker compose build
docker compose up -d

Readiness (Atlas connectivity) is exposed at http://localhost:8082/q/health/ready; metrics at /q/metrics. Configuration lives under the sourcelume.atlas.* properties (sourcelume-registry-runtime-quarkus/src/main/resources/application.properties).

Get involved

License

This project is licensed under Apache License, Version 2.0.