Skip to content

feat: Add PROG and FUGR ABAP object type support#81

Draft
Copilot wants to merge 8 commits intomainfrom
copilot/support-programs-functional-groups
Draft

feat: Add PROG and FUGR ABAP object type support#81
Copilot wants to merge 8 commits intomainfrom
copilot/support-programs-functional-groups

Conversation

Copy link
Contributor

Copilot AI commented Mar 11, 2026

Extends the object type coverage to include ABAP Programs (PROG/P) and Function Groups (FUGR/F) across all architecture layers.

Changes

adt-schemas

  • New schemas abapProgram and abapFunctionGroup (both extend AbapSourceMainObject)
  • Corresponding TypeScript types in types/sap/

adt-contracts

  • New programs/ module → programsContract at /sap/bc/adt/programs/programs
  • New functions/ module → functionGroupsContract at /sap/bc/adt/functions/groups
  • Both added to AdtContract interface and adtContract instance

adt-client

  • Re-exports ProgramResponse and FunctionGroupResponse for ADK consumption

adk

  • AdkProgram and AdkFunctionGroup — full AdkMainObject implementations with source code management, CRUD contract wiring, and self-registration
  • AdkContract extended with programs and functions modules
  • AdkObjectForKind conditional type updated for Program and FunctionGroup kinds

adt-plugin-abapgit

  • abapGit schemas: prog (TRDIR-based, serializer LCL_OBJECT_PROG) and fugr (AREAT-based, serializer LCL_OBJECT_FUGR)
  • Handlers programHandler and functionGroupHandler with toAbapGit, fromAbapGit, getSource, and setSources

adt-fixtures

  • Sample XML fixtures for both types; registry updated

Example

// ADK direct use
const prog = await AdkProgram.get('ZTEST_PROGRAM', ctx);
const source = await prog.getSource();

// abapGit handler registration
import { getHandler } from '@abapify/adt-plugin-abapgit/lib/handlers/base';
getHandler('PROG'); // → programHandler
getHandler('FUGR'); // → functionGroupHandler

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/1482714b-5aa4-4d98-9f04-44330e314491
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx build adt-plugin-abapgit bin/�� --abbrev-ref HEAD ash ot%2Fsupport-prosh git /home/REDACTED/.lo"tsdown" bash --no�� --noprofile -c (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/247c3e39-9cea-4f3d-93c8-1bb787d6ecfc
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx build adt-schemas --no�� $ -c ash ?)(\.git)?$|\1| (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/44237c87-ed10-46a8-8a29-bd4c422ff701
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx build adk -qE ^[A-Za-z0-9._-]+9973 rkflows.sh alls.sh s|.*github\.com[sh git ripts/approve-wo"tsdown" sed -E s|.*github\.com[:/]([^/]+/[^/.]+?)(\.git)?$|\1| git in/node = get && echo "pps = get && echo "p-o rkflows.sh git (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/973e0062-777b-4413-b76b-eddee6c15956-logs
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx build adt-client i/no�� node install.js bash i/node_modules/.bin/nx --noprofile bash rkflows.sh git conf�� core.hooksPath .husky/_ bin/sh %S.%3NZ -c rkflows.sh /bin/sh (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/a2a9ea06-b077-437a-b336-844a80b66c4a
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx build adt-contracts (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/e420f4d2-12dd-4a24-963e-89412b9b4752
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx typecheck date i/no�� unrs-resolver 1.11.1 check grep ndor/bin/bash ^[A-Za-z0-9._-]+sh bash alls.sh .github/hooks/scripts/log-tool-calls.sh -c alls.sh sed bin/sh ot%2Fsupport-props bash ripts/approve-wopid gh (http block)
  • https://storage.googleapis.com/prod-north-america/69ab0980542defed8d2aa8f4/e420f4d2-12dd-4a24-963e-89412b9b4752-logs
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/adt-cli/adt-cli/node_modules/.bin/nx typecheck date i/no�� unrs-resolver 1.11.1 check grep ndor/bin/bash ^[A-Za-z0-9._-]+sh bash alls.sh .github/hooks/scripts/log-tool-calls.sh -c alls.sh sed bin/sh ot%2Fsupport-props bash ripts/approve-wopid gh (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Please support programs and functional groups . Follow project architecture guidelines and skills.


🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

@nx-cloud
Copy link
Contributor

nx-cloud bot commented Mar 11, 2026

View your CI Pipeline Execution ↗ for commit 7e0b6d6

Command Status Duration Result
nx affected -t lint test build e2e-ci --verbose... ✅ Succeeded 54s View ↗

☁️ Nx Cloud last updated this comment at 2026-03-12 14:32:34 UTC

Copilot AI and others added 4 commits March 11, 2026 21:51
…upport

Co-authored-by: ThePlenkov <6381507+ThePlenkov@users.noreply.github.com>
Co-authored-by: ThePlenkov <6381507+ThePlenkov@users.noreply.github.com>
Co-authored-by: ThePlenkov <6381507+ThePlenkov@users.noreply.github.com>
Co-authored-by: ThePlenkov <6381507+ThePlenkov@users.noreply.github.com>
Copilot AI changed the title [WIP] Add support for programs and functional groups feat: Add PROG and FUGR ABAP object type support Mar 11, 2026
@coderabbitai
Copy link

coderabbitai bot commented Mar 12, 2026

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b9f40120-34f1-48c5-a430-8842d1c8eebd

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch copilot/support-programs-functional-groups
📝 Coding Plan for PR comments
  • Generate coding plan

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
11 Security Hotspots
29.2% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants