Person

Oliver Klemenz

GitHub@oklemenz2last push

Capabilities10

Provides 9
Async processingCAPAsync processingcapabilityDoing 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.CachingCAPCachingcapabilityHolding 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.Data federationCAPData federationcapabilityReading 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 schedulingcapabilityRunning 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 developmentcapabilityRunning 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 publishingcapabilityDescribing a service to something other than a human — service metadata for clients, and machine-readable descriptions for registries and discovery.ODataCAPODatacapabilityExposing 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 limitingcapabilityCapping 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 evolutioncapabilityGetting 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.
Contributes to 1
WebSocketCAPWebSocketcapabilityPushing to a browser that already has the page open, rather than making it ask again — the half of a UI that polling imitates badly.

Entries6

Group by
EntrySignals
Maintains4
@cap-js-community/commonv0.5.5
Functional boundary

Six CAP features in one package, from replication cache to rate limits

@cap-js-community/event-queuev2.3.2
Functional boundary

Transactional processing of asynchronous and periodic CAP events

@cap-js-community/odata-v2-adapterv1.16.2
none

Exposes a CAP service as OData V2

@cap-js-community/sap-afc-sdkv1.1.0
none

SDK for SAP Advanced Financial Closing scheduling providers on CDS

Contributes to2
@cap-js-community/websocketv1.11.3
none

WebSocket and Socket.IO adapter for CDS services

capire/docs
none

Sources of capire, the CAP documentation

Details

History5
  • @cap-js-community/commonprovides[capability:local-development].what_it_does, sources, facets → What the local repository serves and what it proxies, the two conditions the README states, three quoted sources and the comparison value for the part of the local stack it starts.capability:local-development curation on 2026-10-15. The edge rested on a link with no quoted sentence, and the README states both halves a reader needs: the apps in the app folder with a ui5.yaml come from the file system and everything else is proxied to the remote repository, with the configuration file in the approuter folder as the prerequisite.
  • @cap-js-community/odata-v2-adapterprovides[odata].facets.protocols, requires → OData V2The option states the protocol it serves for this concern, from its README (docs/concepts/design-roles-and-interfaces.md, P2): the odata facet is what is served, and the adapter serves V2; the V4 the same sentence names is what it translates into, which @sap/cds serves and states. The checker's reading found the runtime the README calls mandatory carried by no edge; it is one now.
  • @cap-js-community/commonprovides, requires → Sourced cache layer, freshness and tenant configuration facets; explicit SQLite production dependencyMaintainer README documents replication configuration and the required production dependency.
  • @cap-js-community/event-queueverdict → retiredVerdict rings retired. What the ring compressed now lives in readings derived from facts (liveness, compatibility, reach) and in the description fields, so a thing can be dead as a dependency and still worth reading. VISION §9.
  • First entry seenDiscovered via npm registry, GitHub API · cap-js-community, bestofcapjs, capire · plugins.
For your agent