kumwe / reporting
Bounded report and projection definitions with neutral projection contracts.
Requires
- php: ^8.5
- php-64bit: *
- ext-json: *
- ext-mbstring: *
- kumwe/access-context: 0.1.2
- kumwe/access-control: 0.1.2
- kumwe/business-definition: 0.1.2
- kumwe/contribution: 0.1.1
- kumwe/conversion: 0.1.5
- kumwe/integration: 0.2.3
Requires (Dev)
- ext-zip: *
- phpstan/phpstan: ^2.1
- 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-12 15:16:19 UTC
README
Bounded report and projection definitions under Kumwe\Reporting\. The package owns value invariants,
canonical declarations, neutral projection builder/event/writer contracts and their conformance tests.
Core supplies authorized values, trusted definitions and storage; Engine owns native materialization arithmetic.
Installation and usage
composer require kumwe/reporting:0.1.4
Requires 64-bit PHP 8.5, JSON and mbstring. Exact stable Kumwe dependencies resolve from Packagist without custom VCS overrides. Values and stateless normalization are constructed directly; there is no ConfigProvider or captured global context. See the consumer example, public API, Core contract and integration.
Compatibility and ownership
Report/projection collections and default parameters detach caller references, preserving validated snapshots and checksums. Neutral projection contracts preserve ordered replay and writer failures without imposing a host retry policy. Core owns authorization, SQL, transactions, generation fences, signing, persistence, delivery and recovery. There is no PHP substitute for Engine arithmetic.
Pre-1.0 consumers pin exact verified versions. Published releases, independent verification and Core acceptance remain separate observations. Architecture, test ownership, release record and Core security policy describe the ongoing contract.
Development
npm ci --prefix tools/schema-validator --ignore-scripts composer install composer check
Source checks require Node.js 20+ for the pinned Ajv2020/YAML schema validator. The complete gate validates canonical manifests and the release record, tests behavior and ownership, checks dependency identities, architecture, static analysis and security, and installs the actual archive in a fresh no-dev authoritative consumer. Development tooling is excluded from published archives. See releasing.