open-policy-agent / open-policy-agent/java-opa-sdk
Implement http.send builtin
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 16
- Forks
- 24
- Avg merge
- 8h 17m
- Merged PRs (30d)
- 15
Description
Missing builtin
http.send
Context
This OPA builtin is not implemented in the SDK. It is exercised by the Rego compliance suite and currently raises FunctionNotFoundError.
Large scope: HTTP client, request/response mapping, TLS options, and the nd_builtin_cache (nondeterministic) integration. http.send is nondeterministic and should be annotated accordingly.
Implementation notes
Register with an @OpaBuiltin-annotated static method (see io.github.open_policy_agent.opa.ast.builtin.impls). Core builtins are in BuiltinRegistry.BUILTIN_CLASSES; domain-specific ones live in an opa-builtins-* module via the BuiltinProvider SPI.
Reference: https://www.openpolicyagent.org/docs/policy-reference/#built-in-functions
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 BuiltinRegistry.BUILTIN_CLASSES, the io.github.open_policy_agent.opa.ast.builtin.impls package, and the BuiltinProvider SPI to determine where this builtin belongs. Review the Rego compliance suite cases for http.send and the existing nondeterministic builtin handling. Done means the builtin is registered, supports the stated HTTP, mapping, TLS, and nd_builtin_cache requirements, and no longer raises FunctionNotFoundError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100