Download the PHP package kumwe/business-policy without Composer
On this page you can find all versions of the php package kumwe/business-policy. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download kumwe/business-policy
More information about kumwe/business-policy
Files in kumwe/business-policy
Package business-policy
Short Description Bounded deterministic record policies, field disclosure and portable access plans.
License Apache-2.0
Homepage https://github.com/kumwe/business-policy
Informations about the package business-policy
Business Policy
kumwe/business-policy owns a bounded record-policy AST, deterministic evaluation, field disclosure and immutable access plans under Kumwe\BusinessPolicy.
Installation
Requires 64-bit PHP 8.5 and ext-json. There are no third-party runtime dependencies.
Pre-1.0 consumers pin an exact release and verify it before adoption:
The version badge links to published packages. The CI badge reports the default-branch quality gate; it does not attest a release or a consumer's Core integration.
Usage
Run the complete standalone example with composer examples. Empty allow sets deny; matching denies override allows. Missing fields act as null. Empty disclosure sets disclose no fields. Constructors reject invalid grammar, references, types and complexity through InvalidArgumentException; JSON encoding can raise JsonException. Decimal comparisons use exact digits, never floating-point coercion. Immutable values and the stateless evaluator are reusable across requests; the caller supplies values and authority for each operation.
There is no ConfigProvider: values are directly constructed, and RecordPolicyEvaluator has no collaborators, configuration or mutable state. There are no factories, aliases, registries or injected services. The predicate interface describes a closed grammar; custom implementations cannot add operators.
Core contract
Core and other consuming applications retain active policy selection, actor/resource loading, final allow/deny/step-up decisions, query compilation, transactions, audit and delivery. In-memory evaluation is a semantic facility: hosts constrain queries before counts, paging, aggregates, reports and exports. An access plan records host authority; constructing one does not authorize a caller.
See release record.
Development
The gate runs syntax, PSR-12, maximum-level static analysis, behavior and hostile-input tests, API and architecture drift checks, dependency security audit, release automation tests, and a fresh no-dev, authoritative-classmap install from the verified Composer ZIP. CI targets PHP 8.5 on Linux. Archive consumers require only PHP and JSON; ZIP is required by the development archive gate.
Releases and compatibility
Release automation reads the first numbered release record. Source changes on main are not added to an existing release.
Licensed under Apache-2.0.
All versions of business-policy with dependencies
ext-json Version *