CAF is a platform-independent architectural framework. Microsoft Dynamics 365 Business Central (BC) is used as the primary validation platform and reference implementation to exercise CAF concepts in a complex ERP environment. CAF is not a Microsoft product and is not a BC feature or official framework.
Demonstrate that Context can be modeled, persisted, and propagated across modules, workflows, approvals, integrations, and background processing without invasive changes to the platform.
BC offers a rich domain surface, eventing model, and extensibility points suitable for validating CAF's Context modeling and runtime propagation strategies.
Covers runtime Context, Context Provider, domain services, events, approvals, job queue, external integrations, telemetry, APIs, and persistence.
User actions, API calls, job queue executions, workflow approvals, and event subscriptions initialize or enrich Context.
A central service that creates, validates, and retrieves Runtime Context for the current execution, exposing a stable contract to dependent components.
A durable, queryable Context object available across calls and workflows, minimizing parameter lists and eliminating Context reconstruction.
Services consume Runtime Context to make consistent decisions and publish domain events carrying Context identifiers for traceability.
Publishers emit events with Context references to maintain continuity across asynchronous boundaries.
Subscribers enrich or consume Context, enabling downstream operations to recover full intent without parameter explosion.
Propagation rules ensure Context identifiers and data remain intact across module, service, and process boundaries.
Persistence strategies store Context durably with versioning and retention policies suitable for audits and long-running workflows.
External calls accept Context references and return results that maintain Context continuity.
Background processing executes with a recovered Runtime Context to keep behavior consistent with interactive flows.
Approval steps recover and enrich Context so decisions are made with full situational awareness.
Integrations exchange Context identifiers and relevant data to avoid fragile, implicit assumptions between systems.
Context identifiers appear in logs, traces, and metrics to enable end-to-end observability and troubleshooting.
Context history provides reconstructable narratives for compliance and operational forensics.
Tests execute with explicit Context fixtures to validate behavior under repeatable conditions and edge cases.
In Progress. Detailed validation notes and coverage will be published as the implementation evolves.