SAP Gap Radar
Fit-to-standard vs custom delta analyzer with Clean Core recommendations
Content reviewed September 26, 2026
- Engine
- SAP_GAP_RADAR
- Domain
- Migration & Clean Core
- Version
- 1.2.0
- Target releases
- S4H_2022, S4H_2023, S4HANA_CLOUD_2402, S4HANA_CLOUD_2408
- Accepted formats
- JSON, TEXT
Input contract
Business / technical requirement statements: JSON {'requirements': [{'requirement': '…', 'scope_items': [...]}]}, {'requirement': '…'}, a JSON list, or plain text (one statement, or a bulleted / numbered / ID-prefixed list with one requirement per item).
Required input
- At least one non-empty requirement statement
- Every statement must be an SAP business or technical requirement (SAP process, object, configuration or extensibility term); unrelated prose is rejected as GAP_RADAR_INVALID_INPUT
- GAP_RADAR_UNKNOWN_REQUIREMENT is only emitted for statements that ARE recognisably SAP requirements but match no curated tier keyword; non-SAP text never reaches the classifier.
Finding codes
Finding codes (13)
GAP_RADAR_BLOCKED_CLEAN_CORE_VIOLATIONDefault severity: CriticalCategory: MIGRATION_CLEAN_CORERequirement implies a Clean Core violation (tier 11)
Remediation: Direct table writes / modifications are not possible in the cloud; redesign against released APIs, RAP business objects or BAdIs.
GAP_RADAR_KNOWN_PRODUCT_GAPDefault severity: MajorCategory: MIGRATION_CLEAN_COREKnown product gap (tier 11)
Remediation: Track the SAP roadmap item, raise an influence request, or cover the gap with a BTP extension.
GAP_RADAR_PARTIALDefault severity: MinorCategory: MIGRATION_CLEAN_CORERequirement only partially met by a supported approach
Remediation: Split the requirement: implement the part covered by the named supported capability, and run a fit-to-standard decision for the rest (restricted configuration, successor concept, or an identifier that is not in the capability catalog) before committing to a solution.
GAP_RADAR_SUPPORTED_WORKAROUNDDefault severity: MinorCategory: MIGRATION_CLEAN_CORERequirement only met by a workaround (tier 10)
Remediation: Document the workaround, its owner and an exit plan; re-check at every release.
GAP_RADAR_UNKNOWN_REQUIREMENTDefault severity: MinorCategory: MIGRATION_CLEAN_CORERequirement could not be classified (tier 12)
Remediation: Refine the requirement statement (process, object, integration point) and re-run, or assess manually.
GAP_RADAR_SUPPORTED_BUSINESS_EVENTDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by business events (tier 8)
Remediation: Subscribe to the released business event via SAP Event Mesh / Advanced Event Mesh (Enterprise Event Enablement).
GAP_RADAR_SUPPORTED_CONFIGURATIONDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by configuration (tier 2)
Remediation: Configure via the SSCUI / Central Business Configuration activity; record it in the configuration workbook.
GAP_RADAR_SUPPORTED_DEVELOPER_EXTENSIBILITYDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by developer extensibility (tier 4/7)
Remediation: Implement in ABAP Cloud (RAP / released BAdI) in a tier-1 software component; no classic enhancements.
GAP_RADAR_SUPPORTED_KEY_USERDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by key-user extensibility (tier 3)
Remediation: Implement with Custom Fields / Custom Logic / Custom CDS Views apps and transport via Software Collections.
GAP_RADAR_SUPPORTED_RELEASED_APIDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by released API (tier 6)
Remediation: Use the released OData/SOAP API with a Communication Arrangement.
GAP_RADAR_SUPPORTED_RELEASED_CDSDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by released CDS views (tier 5)
Remediation: Consume the released (C1) CDS view; never read the underlying tables.
GAP_RADAR_SUPPORTED_SIDE_BY_SIDEDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met side-by-side on SAP BTP (tier 9)
Remediation: Build the extension on SAP BTP (CAP / Build Apps) using released APIs and events.
GAP_RADAR_SUPPORTED_STANDARDDefault severity: InfoCategory: MIGRATION_CLEAN_CORERequirement met by standard scope item (tier 1)
Remediation: Activate the SAP Best Practices scope item; do not build custom objects for this requirement.
Input validation codes (5)
GAP_RADAR_ARCHIVE_REJECTEDDefault severity: MajorCategory: INPUT_VALIDATIONArchive rejected by ingestion safety limits
Remediation: The archive exceeded the 100:1 expansion ratio, 500 MB total size, entry-count or 2-level nesting limit, or contained path traversal / encrypted members. Upload a flat, unencrypted archive of the export files. No verdict was produced. Re-export the artifact in one of the formats accepted by SAP Gap Radar (JSON, TEXT) and re-run the analysis.
GAP_RADAR_INVALID_INPUTDefault severity: MajorCategory: INPUT_VALIDATIONArtifact does not match the engine input contract
Remediation: Provide the artifact type documented for this engine; unrelated or structurally invalid documents are rejected. No verdict was produced. Re-export the artifact in one of the formats accepted by SAP Gap Radar (JSON, TEXT) and re-run the analysis.
GAP_RADAR_PARSE_ERRORDefault severity: MajorCategory: INPUT_VALIDATIONArtifact could not be parsed
Remediation: Fix the syntax error at the reported line/column (or re-export the file unmodified from SAP). No verdict was produced. Re-export the artifact in one of the formats accepted by SAP Gap Radar (JSON, TEXT) and re-run the analysis.
GAP_RADAR_PAYLOAD_TOO_LARGEDefault severity: MajorCategory: INPUT_VALIDATIONArtifact exceeds the size limit
Remediation: Split the export (e.g. per package, company code or date range) so each upload stays under the service payload limit. No verdict was produced. Re-export the artifact in one of the formats accepted by SAP Gap Radar (JSON, TEXT) and re-run the analysis.
GAP_RADAR_INSUFFICIENT_INPUTDefault severity: InfoCategory: INPUT_VALIDATIONRequired input missing
Remediation: Supply every input the engine's contract marks as required (see the engine catalog entry). No verdict was produced. Re-export the artifact in one of the formats accepted by SAP Gap Radar (JSON, TEXT) and re-run the analysis.