Person
Max Gruenfelder
Capabilities
Contributes to
Async processingCAPAsync processingDoing work outside the request that triggered it, with a guarantee that it eventually happens — deferred jobs, retries, and periodic work. Distinct from messaging, which is about telling other systems.CachingCAPCachingHolding the result of an expensive read so the next one is cheap. This spans four different things people call caching — HTTP response caching, query result caching, remote service response caching, and application-level memoisation. They are not interchangeable, and picking the wrong one is the usual cause of stale-data bugs in multitenant apps.CI/CD pipelinesCAPCI/CD pipelinesA pipeline that builds, tests and delivers an application each time its source repository changes, with a build log that shows which step failed. [Deployment](capability:deployment) describes getting the build onto its target runtime.Data federationCAPData federationReading data that lives in another system as if it were local — by federating the query, by copying the rows, or by caching what was read. Three different answers to one question, and the choice is about how stale you can afford to be.Job schedulingCAPJob schedulingRunning something later, or on a cadence, without keeping a process alive to do it — a nightly job, a retry in an hour, a report on the first of the month — and knowing afterwards whether it ran.Local developmentCAPLocal developmentRunning the whole stack on a laptop against real bindings — the service, the UI and the routing in front of it — without deploying to see a change.Metadata publishingCAPMetadata publishingDescribing a service to something other than a human — service metadata for clients, and machine-readable descriptions for registries and discovery.MultitenancyCAPMultitenancyServing many tenants from one deployment — onboarding, tenant-isolated data, per-tenant schema deployment and the operational tooling around it. It is decided once, before anything is built, and narrows the artifacts in almost every capability downstream: most sharply in [caching](capability:caching) and anything else holding state in process.ODataCAPODataExposing data and operations through OData, including the service model, metadata and protocol versions clients require. Version differences affect which clients can consume a service and which query features they can use.Rate limitingCAPRate limitingCapping how many requests a service will accept per tenant or per caller, so one consumer cannot exhaust a shared deployment, whether enforced by a policy in front of the application or inside its own process.Schema evolutionCAPSchema evolutionGetting a model change into a database that already holds data, in every tenant, without losing any of it. Generating the initial schema and migrating one that already holds data are often treated as the same step.TelemetryCAPTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.
Entries
Group by
EntrySignals
Contributes to
@cap-js-community/common@cap-js-community/commonSix independent features for CAP services in one package: replication cache, migration check, rate limiting, a Redis client broker, a local HTML5 repository and a CDM builder.community org, cap
It is a bundle, not a plugin with one job. Depending on it for one feature brings the rest.
Six CAP features in one package, from replication cache to rate limits
@cap-js-community/event-queue@cap-js-community/event-queueTransactional processing of asynchronous and periodic events, with instant dispatch over Redis Pub/Sub and load spread across every application instance.community org, cap
If you need sub-second fan-out to external consumers this is the wrong layer — reach for [Event Mesh](artifact:btp-event-mesh) or Kafka. Without [Redis](external:redis), periodic processing still works but instant dispatch degrades to polling.
Transactional processing of asynchronous and periodic CAP events
@cap-js-community/mtx-tool@cap-js-community/mtx-toolCLI for operating multitenant CAP applications — inspecting, upgrading and repairing tenants across a landscape.community org, cap
CLI for operating tenants of multitenant CAP applications
@cap-js-community/odata-v2-adapter@cap-js-community/odata-v2-adapterExposes a CAP service as OData V2 for clients that cannot move to V4.community org, cap
Exposes a CAP service as OData V2
@cap-js-community/sap-afc-sdk@cap-js-community/sap-afc-sdkSDK for building SAP Advanced Financial Closing scheduling providers on CDS.community org, cap
SDK for SAP Advanced Financial Closing scheduling providers on CDS
@cap-js/telemetry@cap-js/telemetryAutomatic OpenTelemetry instrumentation for CAP Node.js services and their database calls, exported as traces and metrics to the console, SAP Cloud Logging, Dynatrace, Jaeger or an OTLP endpoint.sap official, cap
OpenTelemetry instrumentation for CAP services
cf-setupcf-setupGitHub Action that sets up the Cloud Foundry CLI in a workflow.sap official, cap
GitHub Action setting up the Cloud Foundry CLI
Details
For your agent
- Ref
actor:soccermax- JSON
- /actors/soccermax.json
- MCP
- Connecting an agent