kumwe / business-definition
Immutable business definitions, bounded formula semantics, validation and compatibility.
Requires
- php: ^8.5
- php-64bit: *
- ext-mbstring: *
- kumwe/localization: 0.1.1
- kumwe/sequence: 0.2.1
- psr/container: ^2.0
- ramsey/uuid: ^4.9
Requires (Dev)
- ext-zip: *
- laminas/laminas-servicemanager: ^4.0
- phpstan/phpstan: ^2.1
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-strict-rules: ^2.0
- phpunit/phpunit: ^12.0 || ^13.0
- squizlabs/php_codesniffer: ^4.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-08 15:58:28 UTC
README
Immutable business definitions, typed bounded formula ASTs, canonical profiles, structural validation, compatibility and registries. Requires PHP 8.5 on 64-bit platforms with mbstring for Unicode text default validation.
Version 0.1.0 has been published. This branch prepares the 0.1.1 maintenance release. App adoption remains a separate task after verification of the final release and dependency closure.
Run composer install and composer check. The package owns behavior, boundary and conformance tests. Use php examples/definition.php for an independent definition consumer.
Every validator needs a FieldConfigurationAdmission implementation from the host. The ConfigProvider supplies real
factories but never substitutes a permissive admission policy. See integration, public
API, test ownership, formula profile and
handoff.
Maintenance release: Detach admitted defaults, configuration, validators, workflow and document collections from caller references. Canonical JSON encoding no longer mutates referenced caller arrays.
Direct Kumwe dependencies use exact stable versions. Dependabot proposes grouped weekly Composer updates; review
and merge only after the complete package gate passes. The downstream App consumes a verified exact release, never
an unreviewed moving latest constraint.