open-policy-agent / open-policy-agent/java-opa-sdk
Enforce manifest roots and surface revision/metadata
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 16
- Forks
- 24
- Avg merge
- 8h 17m
- Merged PRs (30d)
- 15
Description
BundleAssembler parses .manifest into a Map<String,Object> and stores it on the Bundle, but nothing reads it. Per the OPA bundle spec, the roots field is required to constrain which paths a bundle owns and to detect overlap when multiple bundles are loaded. Revision and custom metadata are also exposed by OPA but currently inaccessible.
- Validate
rootsat activation: reject paths in the bundle that fall outside any root. - Detect collisions across active bundles (overlapping roots → activation error).
- Expose
revisionandmetadatavia typed accessors onBundle(or its successor — see the manifest-typing issue). - Tests covering: missing roots, root-violation in data/policy paths, cross-bundle overlap.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with BundleAssembler and Bundle, then trace the activation flow where manifests are parsed and bundles become active. Check the OPA bundle specification and the manifest-typing issue before designing typed accessors. Done means missing roots, root violations in data and policy paths, and overlaps across active bundles are rejected, with revision and metadata accessible and covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend-api-design, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100