Search by

kumwe / reporting

llewellyn

Bounded report and projection definitions with neutral projection contracts.

Package info

github.com/kumwe/reporting

pkg:composer/kumwe/reporting

Statistics

Installs: 46

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.4 2026-09-12 12:30 UTC

README

Packagist version Package CI PHP requirement License: Apache-2.0

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.