{"ref":"artifact:greltel-abap-point-gate","page":"/artifacts/greltel-abap-point-gate","json":"/artifacts/greltel-abap-point-gate.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"greltel-abap-point-gate","name":"abap-point-gate","artifact_type":"package","ecosystem":"abap","flavors":[{"key":"abap-cloud","source":{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README, Design Goals-Features","checked":"2026-10-19","quote":"ABAP Cloud / Clean Core compatibility. Passed SCI check variants S4HANA_READINESS_2023 and ABAP_CLOUD_READINESS; ATC variant `ABAP_CLOUD_DEVELOPMENT_DEFAULT` with zero priority-1/2 findings."}}],"domain":"operations-and-runtime","origin_ring":"independent","description":{"one_line":"A configuration-driven framework that decouples custom ABAP enhancements from standard SAP objects, activating and sequencing them through a Fiori app instead of code changes.","short":"Framework activating custom ABAP enhancements through a Fiori app","what_it_solves":"Custom logic attached to standard SAP objects usually stays hard-coded and scattered across the codebase, which makes it hard to see what runs where. This defines Points as hook locations and attaches an ordered chain of Gate Handlers to each one, activated, deactivated, sequenced and parameterised through a Fiori app rather than by editing code. A failing handler is turned into an error message rather than aborting the host transaction, and dependency injection lets handlers, toggles and configurations be mocked for unit testing. It stops at the gate mechanism itself: the enhancement logic still has to be written as a handler class implementing `ZIF_APG_HANDLER`.","when_not_to_use":"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."},"links":{"repo":"https://github.com/greltel/abap-point-gate"},"type_properties":{"placement":{"value":"in-host","sources":[{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README, Prerequisites","checked":"2026-10-19","quote":"Set the abapGit repository's **ABAP Language Version** to *ABAP for Cloud Development*. The framework targets ABAP Cloud exclusively."}]},"distribution":{"value":["abapgit"],"sources":[{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README, Design Goals-Features","checked":"2026-10-19","quote":"Install via [abapGit](http://abapgit.org)."}]}},"interfaces":[{"key":"point-configuration-service","name":"ZUI_APG_POINT_V4_O4","kind":"api","protocol":"odata-v4","direction":"in","for":"maintains points and their handler chains with draft handling and optimistic locking, as the service binding behind the framework's Fiori configuration app","sources":[{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README, Maintaining the Configuration","checked":"2026-10-19","quote":"The Fiori app (service binding `ZUI_APG_POINT_V4_O4`, OData V4) maintains points and their handler chains with draft handling and optimistic locking."}]}],"identity":{"license":"MIT"},"source_available":true,"provides":[{"capability":"capability:abap-extensibility","what_it_does":"Decouples enhancement logic from standard objects behind a Fiori-configured chain of point and gate handlers, with dependency injection for testing.","sources":[{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README","checked":"2026-10-19","quote":"ABAP Point Gate is a configuration-driven framework designed to decouple custom enhancements from standard SAP objects, ensuring a clean and maintainable architecture."}]}],"requires":[{"ref":"artifact:abapgit-abapgit","for":"Installs the framework into the ABAP system, and is where its ABAP Language Version is set to ABAP for Cloud Development; the README names it under both Prerequisites and Design Goals.","sources":[{"url":"https://github.com/greltel/abap-point-gate","title":"greltel/abap-point-gate — README, Prerequisites","checked":"2026-10-19","quote":"Set the abapGit repository's **ABAP Language Version** to *ABAP for Cloud Development*. The framework targets ABAP Cloud exclusively."}]}],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"maintainers":["actor:greltel"],"contributors":["actor:greltel"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"2 contributors"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"abaplint syntax Cloud, no release"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"good","evidence":"abaplint green, 2026-10-21"}],"practice":[{"label":"Tests","tier":"good","evidence":"1 test file"},{"label":"Docs","tier":"good","evidence":"README 17 KB"},{"label":"Changelog","tier":"good","evidence":"CHANGELOG in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":33,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-24","npm":"not published under this name","stars":33,"forks":4,"open_issues":0,"archived":false,"pushed_at":"2026-10-21","license_spdx":"MIT","org_owned":false,"default_branch":"main","created_at":"2025-09-11T09:42:07Z","open_prs":0,"tree_truncated":false,"test_files":1,"workflows":2,"other_ci":false,"readme_bytes":17839,"docs_files":0,"changelog":true,"license_file":true,"dts_files":0,"first_commit":"2025-09-11","last_commit":"2026-10-21","commits":173,"contributors":2,"ci_status":"success","ci_run_at":"2026-10-21","ci_workflow":"abaplint","ci_event":"push","readme_path":"README.md","readme_sha":"5715bd44e12e60e07099a85575b5624249a4bc67","repo_read":"2026-10-24","abap_syntax":{"repo":"greltel/abap-point-gate","file":"abaplint.json","url":"https://github.com/greltel/abap-point-gate/blob/HEAD/abaplint.json","version":"Cloud","checked":"2026-10-26"}},"release_notes":{"license":"MIT","quotable":true,"source":{"kind":"repo","path":"CHANGELOG.md","ref":"main","url":"https://github.com/greltel/abap-point-gate/blob/main/CHANGELOG.md"},"format":"keep-a-changelog","releases":[{"version":"3.0.0","date":"2026-09-20","date_source":"heading","heading":"[3.0.0] - 2026-09-20","url":"https://github.com/greltel/abap-point-gate/blob/main/CHANGELOG.md#300---2026-09-20","sections":[{"kind":"feature","heading":"Added","items":11},{"kind":"fix","heading":"Fixed","items":4},{"kind":"change","heading":"Changed","items":3}],"hash":"e8728e9f4f9588a7"},{"version":"2.0.0","date":"2026-08-09","date_source":"heading","heading":"[2.0.0] - 2026-08-09","url":"https://github.com/greltel/abap-point-gate/blob/main/CHANGELOG.md#200---2026-08-09","sections":[],"hash":"72514fe5e29d0a4f"},{"version":"1.0.0","date":"2026-01-04","date_source":"heading","heading":"[1.0.0] - 2026-01-04","url":"https://github.com/greltel/abap-point-gate/blob/main/CHANGELOG.md#100---2026-01-04","sections":[],"hash":"a82fa8de29fc033e"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:greltel","name":"George Drakos","json":"/actors/greltel.json"}],"contributors":[{"ref":"actor:greltel","name":"George Drakos","json":"/actors/greltel.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}