Managed delivery of changes belongs to transport managementChange promotionMoving a change through the environments of a landscape, from development through test to production, and knowing which change has reached which environment. A CI/CD pipeline builds and tests on each source change, deployment puts a build onto its runtime, and getting source into git is source control.SAP and community, unassessed.
Operations & Runtime
Running the application once it is built: where it runs, how it is deployed and configured, tenants and jobs, and how it reports on itself while it runs.
Capabilities
Compare the concerns mapped here and open an ecosystem for its assessment. Artifact counts show providers; content counts show items linked directly to the capability.
Each ecosystem hexagon shows its own coverage assessment. Coverage is never combined across ecosystems.
Artifacts
Providers, examples and other artifacts mapped to this domain, from SAP and the community. Each artifact appears once.
It is a bundle, not a plugin with one job. Depending on it for one feature brings the rest.
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.
Tied to a specific training repository and last released August 2023. The repository the package declares has been deleted — verified against the GitHub API, not just a failed fetch. The package is still on npm, so it installs; the source it was published from is no longer readable, which is a harder thing to discover than a stale version number.
A library a VS Code extension calls, not something installed and run on its own; there is no documented standalone CLI. No public repository either, so what it does is read from its own README rather than checked against source.
Specific to MDK metadata projects — nothing here builds or deploys a CAP service or a plain Fiori app. Closed-source, under SAP's own developer licence rather than a public repository.
Quiet No published releases; repository quiet for 41 months.
Functional boundary Not in a production environment yet: the maintainer puts abaK in beta, says its API can still change and more tests are needed, and asks that a non-beta release be waited for.
In beta by its own page's account, where conversion bugs may occur and not all functions and variants are supported yet. The shapes named as not yet supported are sub selects, FOR ALL ENTRIES, functions such as count and sum, and the IN operator with a value list, so a statement built on one of those is outside what the converter sets out to do.
A Python 3.10+ CLI, installed with pipx rather than through any SAP-provided package manager. Its own README lists what it does not do yet: where-used, syntax check and unit test runs — for those it says to reach for [ADT/Eclipse](external:eclipse) or an MCP server. First release, v0.1.0, and no standalone LICENSE file in the repository — the MIT grant is in the README and in pyproject.toml's project metadata rather than its own file.
Not a way to run existing reports unchanged: a report is rewritten as a class, and `CALL SCREEN`, dynpro modules, batch input, `SUBMIT` and native SQL are refused by the converter rather than mapped. Not an SAP GUI in the browser either: the programming model is classic and the screens are UI5, and the README points at abap2UI5-addons/sapgui for SE16N or SM37. Output has gaps the README names — ALV cells show dates and times as the model carries them rather than in the user's format, print is a text file because ABAP Cloud has no spool, and value tables for F4 are read on premise only.
No published releases; repository quiet for 96 months.
No published releases; repository quiet for 36 months.
No published releases; repository quiet for 41 months.
The declared repository is archived.
Anything below SAP S/4HANA 2023 FPS03 (ABAP 7.58), and any system not running the ABAP Cloud development model: those two are the prerequisites the README names, and it states that the framework targets ABAP Cloud exclusively.
Only on SAP S/4HANA 2023 and 2025, on premise or private cloud: [SAP S/4HANA Cloud, Public Edition](external:sap-s4hana-cloud-public-edition) and the [SAP BTP ABAP environment](artifact:btp-abap-environment) are listed as coming soon, and a 2023 system has to leave out `ZABAP_PRC_EVENTS_SE_2025`, whose event-based side effects rely on APIs released with S/4HANA 2025. Not for a system that already carries a copy, because object names are global and two versions cannot live side by side, and not for a productive system by way of the `ZABAP_PRC_DEMO*` packages, which the README states are not intended for one and whose init classes delete and rebuild their own tables on every run. While the major version is 0 the public API is not stable: minor bumps carry breaking changes with no deprecation period, so productive use means pinning a tag and reading the CHANGELOG before every upgrade.
No published releases; repository quiet for 39 months.
No published releases; repository quiet for 33 months.
No published releases; repository quiet for 36 months.
Quiet No published releases; repository quiet for 57 months.
Functional boundary The maintainer states the current state has never been used in real-world scenarios: the demo reports in package ZAPS_DEMO and the unit tests are the only runs reported, and the release table marks SAP_BASIS 740 unclear, 754 as the release it was developed on, and 750 to 756 as expected to work.
It sees [abap2UI5](artifact:abap2ui5-abap2ui5) only: the figures come from the framework's HTTP handler, its monitor hook and its draft table, so nothing outside abap2UI5 appears in them. The usage, error and performance tabs stay empty until the handler line is in place or the user exit sets `check_monitor_active`. Recording which employee used which application, when and how fast, is subject to works council co-determination in Germany (§ 87 (1) no. 6 BetrVG); user tracking is `HASH` by default, `NAME` stores user names, and the request recorder keeps the complete request and response of every roundtrip for two days by default.
Quiet No published releases; repository quiet for 54 months.
No license Neither the package manifest nor the repository tree declares a licence.
Neither the package manifest nor the repository tree declares a licence.
Neither the package manifest nor the repository tree declares a licence.
It administers a real account through Core Services, so what it can change is what the caller can change. And the UI half depends on hosts that render mcp-ui or MCP Apps resources; elsewhere those five tools return markup nobody displays.
The declared repository is archived.
No license Neither the package manifest nor the repository tree declares a licence.
Functional boundary Not a descriptor to deploy as it stands: the approuter's `sessionSecret` is written out in `mta.yaml`.
When user-dependent responses are cached without user-aware or explicit operation keys, or translated responses share keys across locales. These cases require key isolation; locale-aware keys are off by default.
Last released June 2022 at 0.0.6, and no repository is declared on the package.
Last released January 2024 at 0.0.6. The repository the package declares has been deleted — verified against the GitHub API, not just a failed fetch. The package is still on npm, so it installs; the source it was published from is no longer readable, which is a harder thing to discover than a stale version number.
Not reachable Not reachable since 2026-10-20.
Functional boundary The Level A–D grade merges SAP's two published files in the tool's own engine: it is an orientation rather than an ATC result and is left out of the signed audit pack, and the repository documents state by state where the grade is expected to differ from what the clean core ATC check reports. Nothing here runs ABAP Unit — on the RAP track that result is recorded from your own SAP system, and generated CAP tests run against mocks in an isolated runner rather than in a real SAP S/4HANA system. Tenants, organisation accounts, single sign-on, a self-hosted edition and write access through an API are deliberately not built, and one account has five analysis runs before a Gemini API key of its own is needed.
An Eclipse installation older than the 2026-03 release, or a Java below 21, cannot take it: both are listed prerequisites, and 2026-03 is named as the oldest release the current ADT installs on. The tenant, region, client ID and client secret are entered per installation in Eclipse preferences, so each developer configures the Cloud ALM connection in their own IDE.
Neither the package manifest nor the repository tree declares a licence.
It is a catalogue of SAP's objects and not a reading of your code: it states that an object is not released, never that you used it, and the finding is the ATC check's. For SAP Cloud ERP Private the files exist for feature pack stack releases only, with no update per support package, so a system between two stacks is checked against its stack's file.
Not for an automated check: the answer arrives as a page in a browser, so a rule that has to run over a codebase, or an agent mid-task, needs the repository as data rather than as a form.
`APP_TITLE` is not applied by the exit: the `title` field was removed from `z2ui5_if_ui5_exit=>ty_s_http_config` in abap2UI5 1.145.0, so an app that wants it as its browser tab title sets it while it runs. The live theme preview runs the frontend action `THEMING` / `setTheme` and needs UI5 1.118 or later; on an older release a saved theme applies with the next page load. The code is written for ABAP 7.50 and the README states there is no downported 7.02 version, no 702 branch and no workflow that builds one.
No published releases; repository quiet for 26 months.
The declared repository is on SAP's internal GitHub (github.tools.sap) and is not publicly reachable, so npm is the only place to read anything about it.
In the Eclipse mode the server lives in a developer's IDE, binds to 127.0.0.1 and answers any request carrying an `Origin` header with HTTP 403, so a pipeline or a remote agent has nothing to reach; the standalone mode on the runtime of the ADT for VS Code extension is the documented route with no IDE open. A new connection starts in write mode, so the 11 write tools are live against a connected system until someone presses Toggle Read-Only. The dropins route for the two bundles is documented as untested.
Quiet No published releases; repository quiet for 101 months.
Functional boundary Not where a toggle is meant to be switched on in a production system: the maintainer warns that features should never be enabled in a production system.
A team that does not keep one long-lived branch per environment has no environment branches for it to compare feature branches against. What it reports is the merge state of branches in Git, so it says nothing about whether a merged change has been built or deployed to the environment.
It runs on macOS only. Hammer Core Services, the part installed into the SAP system, needs that system on ABAP Platform 2023 or newer with SAP_BASIS 758 or newer, and installing it needs a user who can create development objects and run background jobs in that system.
Its maker offers it commercially.
It acts on a real account. Authorisation is the caller's own — single sign-on through the SAP Default Identity Provider, across the global accounts that identity reaches — so what it can change is what you can change, and an agent invoking it is doing administration rather than proposing it. No public source, so what it exposes is what the documentation says it exposes.
It reads the landscape inventory, not the systems in it — nothing here reaches a running application, and nothing here changes anything. A landscape description is also commercially sensitive in its own right: versions and hosts are what a targeting exercise starts from.
There is nothing to clone here: "Access is provided through a registration page. Once registered, you will receive access to the GitHub repository containing the agents, deployment guides, and documentation", and that repository answers 404 to anyone who has not registered, so neither the agent code nor the deployment guides can be read before the form is filled in. AWS states the agents are published as an unsupported solution, with customers responsible for testing and securing the code before deploying in production, and that they are intended for non-production SAP environments rather than production systems. The documentation link in the README is still a placeholder.
Neither the package manifest nor the repository tree declares a licence.
Release and repository quiet for 43 months.
Release and repository quiet for 50 months.
No published releases; repository quiet for 74 months.
It answers about the object catalogue, not about your code: nothing here reads your system, so it will tell you a table is not released and not that you used it. That check is ATC's, and this is what makes ATC's answer actionable.
1 of 8 plans deprecated.
The commands it writes stop production systems, delete data and import transports, which is why execution is deliberately somebody else's decision. BTP and cloud operations are explicitly out of scope and planned as a separate plugin.
Never as the figure a billing decision rests on: the repository states this is not a replacement for the official billing documents, that the information it provides is purely indicative, and that it recommends verifying against the official BTP Cockpit usage reports. It is published as a sample or reference implementation and says it is not intended for production use without review, testing and hardening.
Never as the figure a billing decision rests on: the repository states that the tool is provided as-is, is not covered by SAP Support, is not a replacement of the official billing documents you receive from SAP, and that the information it provides is purely indicative. Its daily delta is also an approximation over a 24-hour period rather than a hard data point for the consumption on that day, because some services report usage only the day after it happened.
Not in production. SAP states it is just a sample, not optimised for performance or security.
Not in production. SAP states it is just a sample, not optimised for performance or security.
Not as the provider behind a live tenant estate: tenant state is kept in a file-based store for demonstration, and the README's own operations notes say a production implementation should use a reliable database so that state survives restarts.
Release and repository quiet for 36 months.
Release and repository quiet for 37 months.
The version list comes from ui5.sap.com, so a build that cannot reach it has nothing to match the project's version against. It checks the version written in `ui5.yaml`; a framework version a deployed app loads from elsewhere is outside what it sees.
Directed at single-tenant applications, which the guide states as its scope. The migration path it uses also has no option to select individual containers, so it migrates every container in the given space.
Directed at single-tenant applications, which the guide states as its scope. Migration of the whole delivery unit or package fails if any source file has errors; the README gives JavaScript files containing unknown characters as its example.
Directed at single-tenant applications, which the guide states as its scope. Migration of the whole delivery unit or package fails if any source file has errors; the README gives JavaScript files containing unknown characters as its example.
No published releases; repository quiet for 42 months.
No published releases; repository quiet for 37 months.
Related capabilities
DeploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design puts an application onto a runtime that this account structure makes available.
Getting a build onto one is deploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design; serving a frontend’s built static files is app hostingApp hostingWhere a built frontend lives and what serves it — the static files of a frontend application after the build, reachable behind a login and beside the API it talks to, without a web server of your own.SAP only.
Getting a build onto one is deploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design; serving a frontend’s built static files is app hostingApp hostingWhere a built frontend lives and what serves it — the static files of a frontend application after the build, reachable behind a login and beside the API it talks to, without a web server of your own.SAP only.
A CI/CD pipelineCI/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 describes getting the build onto its target runtime.SAP only builds and tests on each source change, deploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design puts a build onto its runtime, and getting source into git is source controlSource controlKeeping source code and development objects in version control, comparing their revisions, and moving them between development environments. Managed delivery of changes belongs to transport management.SAP and community, community owns it.
A CI/CD pipelineCI/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 describes getting the build onto its target runtime.SAP only builds and tests on each source change, deploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design puts a build onto its runtime, and getting source into git is source controlSource controlKeeping source code and development objects in version control, comparing their revisions, and moving them between development environments. Managed delivery of changes belongs to transport management.SAP and community, community owns it.
DeploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design describes getting the build onto its target runtime.
LoggingLoggingSeeing what a running service did, in a form something can read afterwards — levels, a formatter that suits a laptop and one that suits a log service.SAP only and telemetryTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.SAP and community, core adopted it watch what an application does; this watches what it costs.
LoggingLoggingSeeing what a running service did, in a form something can read afterwards — levels, a formatter that suits a laptop and one that suits a log service.SAP only and telemetryTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.SAP and community, core adopted it watch what an application does; this watches what it costs.
Connecting an application to the database is database connectorsDatabase connectorsConnecting an application’s data model and queries to a database, including the differences in supported queries, types and schema management between database implementations. Changing an existing schema belongs to schema evolution.SAP and community, narrow by design, moving files in and out of tables is importing and exporting table dataImporting and exporting table dataGetting a file somebody supplies, a spreadsheet, a CSV or a JSON dump, into tables with its columns mapped and its values checked, and getting table content back out as a file. Data shipped with an application for development and demonstration is seed data.SAP and community, unassessed, and what the instance costs is consumption monitoringConsumption monitoringKnowing what a cloud account consumes as it runs, in credits, capacity units and cost per service and organisational unit, and being warned before a budget is spent. Logging and telemetry watch what an application does; this watches what it costs.SAP only.
DeploymentDeploymentGetting an application onto a runtime and keeping it there: build descriptors, deployment topology, service bindings and lifecycle operations. The target runtime determines how the application is packaged and configured.SAP and community, narrow by design describes the target runtime and lifecycle; this concerns the tooling that drives those steps.
It is decided once, before anything is built, and narrows the artifacts in almost every capability downstream: most sharply in cachingCachingHolding 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.SAP and community, unassessed and anything else holding state in process.
LoggingLoggingSeeing what a running service did, in a form something can read afterwards — levels, a formatter that suits a laptop and one that suits a log service.SAP only, telemetryTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.SAP and community, core adopted it and health checksHealth checksReadiness and liveness that mean something for a service — is the database reachable, are bindings resolved, is the message broker connected — rather than merely whether the process is up.SAP only observe; this acts on what they report.
LoggingLoggingSeeing what a running service did, in a form something can read afterwards — levels, a formatter that suits a laptop and one that suits a log service.SAP only, telemetryTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.SAP and community, core adopted it and health checksHealth checksReadiness and liveness that mean something for a service — is the database reachable, are bindings resolved, is the message broker connected — rather than merely whether the process is up.SAP only observe; this acts on what they report.
LoggingLoggingSeeing what a running service did, in a form something can read afterwards — levels, a formatter that suits a laptop and one that suits a log service.SAP only, telemetryTelemetrySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.SAP and community, core adopted it and health checksHealth checksReadiness and liveness that mean something for a service — is the database reachable, are bindings resolved, is the message broker connected — rather than merely whether the process is up.SAP only observe; this acts on what they report.
Running an application's own recurring work is job schedulingJob 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.SAP only.
Async processingAsync 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.SAP and community, narrow by design is the neighbouring concern: work deferred past the request with a guarantee that it eventually happens, where parallel processing is throughput inside a run that waits for its results.
Distinct from service integrationService integrationUsing a service that runs somewhere else as if it were one of your own: its API imported into the model, a proxy that turns a local query into the remote protocol, and a mock that stands in for it on a laptop. Distinct from destinations, which is how the address and the credentials are found, and from replication, which is holding the data locally.SAP and community, narrow by design, which reaches a service that stays deployed elsewhere, and from tenant extensibilityTenant extensibilityLetting a customer extend the model of a running SaaS application with extra fields and entities per tenant, without forking the application, as distinct from extending the application's code for every customer at once.SAP and community, unassessed, which is a subscriber extending a running SaaS.
Across stacks
Content
Content includes reference architectures. Each item appears once; filter by type to narrow the list.
Recent changes
- ABAP Cloud readinesscore coverage revised
Reassessed against the graph (check:capabilities): providers of independent and partner origin now state this capability on the abap door, and an sap-official provider (Cloudification Repository) is present beside the platform's own check.
- ABAP Cloud readinesscore coverage revised
Reassessed against the graph (check:capabilities): the state changed, so the block now says what the added providers do, as kinds with the defining ones linked.
- Account provisioningcore coverage revised
Reassessed against the graph (check:capabilities): a newer independent provider covers access assignments, a kind the text did not name. State unchanged.
- Change promotioncore coverage revised
Reassessed against the graph (check:capabilities): providers arrived since 2026-09-14 (editor, CLI and MCP-server clients, and SAP's Cloud Transport Management service) that the text never named. State unchanged at core-and-community.
- Change promotionecosystems revised
Public feedback issue #9. SAP Cloud Transport Management is the BTP answer, capire's CI/CD guide the CAP one, and the SAP CI/CD service's route to the transport service the UI5 one; each is assessed under coverage_by_ecosystem.
- Configurationcoverage by ecosystem revised
Reassessed against the graph (check:capabilities): config-management arrived as a provider after the block was last looked at; the state stays core-and-community.
- Consumption monitoringcore coverage revised
Reassessed against the graph (check:capabilities): the note counted repositories, and the service that the core sentence names is now an artifact in the graph, so it is linked. State stays core-only.
- Deploymentcoverage by ecosystem revised
Reassessed against the graph (check:capabilities): SAP Cloud Transport Management and Content Agent are BTP services that move MTA archives and content between accounts, so the boundary no longer puts all promotion on a pipeline. Sourced to the Discovery Center record fetched 2026-10-26.
- Deploymentcoverage by ecosystem revised
Reassessed against the graph (check:capabilities): SAP's BTP services now provide this capability behind the door, so the note's count-like absence of providers no longer holds. The state stays core-only: the providers are SAP-official and none comes from the community.
- Extensibilitycore coverage revised
Reassessed against the graph (check:capabilities): a provider of a second kind, a discovery report for existing enhancement points, arrived after the block was last assessed and the text never named it. State unchanged (core-and-community).