Search by

kumwe / business-surface-contract

llewellyn

Portable custom business action, view and field presentation contracts.

Package info

github.com/kumwe/business-surface-contract

pkg:composer/kumwe/business-surface-contract

Statistics

Installs: 6

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.3 2026-09-08 17:09 UTC

README

Portable custom business action, view and field presentation contracts.

Requires PHP 8.5 and the runtime dependencies in composer.json. The canonical namespace is Kumwe\BusinessSurface\Contract\. Published baseline: 0.1.0. This branch records the 0.1.1 successor for publication after merge and the complete package gate. Independently verify that published artifact before App adoption.

Run composer install, composer check, and composer examples. Public API, architecture, integration, and release protocol describe the contract.

The package has no ConfigProvider. Values are constructed directly; ports are supplied by the host. Deterministic pure operations do not capture a site, actor, request, connection or container. App owns authorization, transactions, persistence, dispatch and presentation.

Released consumers exact-pin pre-1.0 versions. Apache-2.0; inherited source behavior is preserved except the explicitly documented bounded-input decisions.

FieldPresentationModel takes an explicit CanonicalEncoder after the required flag. It preserves the SDK exact-value restrictions before calling the generic encoder. The encoder is not retained; App owns the implementation binding. See dependency status for exact published dependency identities and readiness review for the original-ceiling amendment that still requires architecture review.

Current extraction review

See readiness review for the 0.1.1 candidate, current portable boundaries, package-owned regression coverage and the remaining publication/verification steps. Dependency status records the coherent exact release graph.

Source quality checks require Node.js 20+ and npm ci --prefix tools/schema-validator --ignore-scripts. The pinned Ajv2020/YAML gate validates all three canonical manifests and the complete handoff against authoritative schema snapshots, with rejection regressions. These development tools are excluded from consumer archives.