← Back to history

Pipeline run

2e167e24-88fd-4a8d-93e4-e427d0bff884

Pipeline LLM cost (USD)
API 1: $0.0051 API 2: $0.0016 API 3: $0.0000 Total: $0.0067

Client output enrichment

v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA description
Nature of work · SAP ABAP / S/4HANA Development
Build and support S/4HANA ABAP solutions end to end: design RICEF objects, OData/CDS/AMDP logic, workflows, BAdIs/IDoc extensions, and Adobe/Smart/SAPscript forms, then turn functional needs into technical designs and production fixes.
"Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)"
Tech stack maturity
Mainstream Legacy
SAP ABAP development, especially focused on views, is a well-established enterprise technology with long-standing on-premise legacy roots rather than cloud-native characteristics.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
0.20 / 5
· Title match
Has AI skill
· AI skill (primary)
· AI skill (secondary)
· On AI team
· Builds AI products
vocab breakdown (legacy)
Assistants (×1):
Frameworks (×2):
Models / concepts (×3): AI, Artificial Intelligence
Evidence — skills matched in JD (31)
SAP S/4HANA ABAP OData CDS Views AMDP Adobe Forms SAP Workflow BAdI IDoc Extensions ABAP Objects SAP HANA HANA Studio ABAP Development Tools (ADT) ADBC Native SQL ABAP Core Data Services Database Procedures Text Search ALV on HANA HANA Live SAP Scripts Smart Forms RICEF Object-Oriented Programming Data Dictionary +6
Skill cluster (1 dimension groups, role-scoped)
Cross-cutting / unaligned
SAP S/4HANA ABAP OData CDS Views AMDP Adobe Forms SAP Workflow BAdI IDoc Extensions ABAP Objects SAP HANA HANA Studio ABAP Development Tools (ADT) ADBC Native SQL ABAP Core Data Services Database Procedures Text Search ALV on HANA HANA Live SAP Scripts Smart Forms RICEF Object-Oriented Programming Data Dictionary Data Elements Domains Structures Views Lock Objects Search Helps
Show KRA description ↓
• S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill. • You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms • Knowledge and experience on SAP Workflow, Advance ABAP BADI (Business Add-In), Intermediate Document Extensions, ABAP Objects • Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects • Overall industry experience of 12+ years, working as S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP , ADOBE Forms , Workflows • The ABAP on HANA Application Developers would possess the knowledge of the following topics and apply them to bring in value and innovation to client engagements: SAP HANA Technical Concept and Architecture, Data Modelling using HANA Studio, ABAP Development Tools (ADT), Code Performance Rules and Guidelines for SAP HANA, ADBC, Native SQL, ABAP Core data Services, Data Base Procedures, Text Search, ALV on HANA, and HANA Live models consumption. • Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options. • Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports) • Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options. • Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports) • Modifying standard layout sets in SAP Scripts, Smart forms & Adobe Forms • Knowledge on ABAP Object Oriented Programming • Knowledge and experience on SAP Workflow • Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects. • Experience in working in Implementation, Consulting, Client interaction, Upgrade, Maintenance and Post Production support projects would be an advantage • Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects

Signals

Skill drupal-dev
0.03
Alias sap-abap-developer
1.00
KRA data-engineer
0.53

Post-classification

Centroidupdated · n=2
Alias collision log
New-role queue
New skills captured30
New KRA capturedyes

Captured for admin review

SAP S/4HANA primary SAP ABAP Developer pending
ABAP primary SAP ABAP Developer pending
OData primary SAP ABAP Developer pending
CDS Views primary SAP ABAP Developer pending
AMDP primary SAP ABAP Developer pending
Adobe Forms primary SAP ABAP Developer pending
SAP Workflow primary SAP ABAP Developer pending
BAdI primary SAP ABAP Developer pending
IDoc Extensions primary SAP ABAP Developer pending
ABAP Objects primary SAP ABAP Developer pending
SAP HANA primary SAP ABAP Developer pending
HANA Studio primary SAP ABAP Developer pending
ABAP Development Tools (ADT) primary SAP ABAP Developer pending
ADBC primary SAP ABAP Developer pending
Native SQL primary SAP ABAP Developer pending
ABAP Core Data Services primary SAP ABAP Developer pending
Database Procedures primary SAP ABAP Developer pending
Text Search primary SAP ABAP Developer pending
ALV on HANA primary SAP ABAP Developer pending
HANA Live primary SAP ABAP Developer pending
SAP Scripts primary SAP ABAP Developer pending
Smart Forms primary SAP ABAP Developer pending
RICEF primary SAP ABAP Developer pending
Object-Oriented Programming primary SAP ABAP Developer pending
Data Dictionary primary SAP ABAP Developer pending
Data Elements primary SAP ABAP Developer pending
Domains primary SAP ABAP Developer pending
Structures primary SAP ABAP Developer pending
Lock Objects primary SAP ABAP Developer pending
Search Helps primary SAP ABAP Developer pending
R&R fragment (sim 0.00) SAP ABAP Developer pending

• S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill. • You may also design, develop and/or re-engineer h…

Status: completed Created: 2026-05-27T17:39:08.609086Z Updated: 2026-05-27T17:42:25.075967Z API 3 duration: 1735 ms
Flow Current 3-step pipeline

1 POST /skills/extract-from-jd

2 POST /skills/extract-details

3 POST /skills/final-role-output

Role Chosen role & resolution

SAP ABAP Developer

CASE A

slug: sap-abap-developer · id: 157 · source: db

Exact alias hit on sap-abap-developer (1.0) — no other alias at this confidence; skill_top drupal-dev 0.03 does not contradict

Resolution: in_db — role exists in library; skill↔dim and role↔dim links saved when applicable.

0
New skills
0
Skill↔dim saved
0
Role↔dim saved
0
Skipped

Job description

Introduction

In this role, you'll work in one of our IBM Consulting Client Innovation Centers (Delivery Centers), where we deliver deep technical and industry expertise to a wide range of public and private sector clients around the world. Our delivery centers offer our clients locally based skills and technical expertise to drive innovation and adoption of new technology

In this role, you'll work in one of our IBM Consulting Client Innovation Centers (Delivery Centers), where we deliver deep technical and industry expertise to a wide range of public and private sector clients around the world. Our delivery centers offer our clients locally based skills and technical expertise to drive innovation and adoption of new technology.

Your role and responsibilities

• S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill.
• You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms
• Knowledge and experience on SAP Workflow, Advance ABAP BADI (Business Add-In), Intermediate Document Extensions, ABAP Objects
• Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects


Your Primary Responsibilities Include

• Overall industry experience of 12+ years, working as S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP , ADOBE Forms , Workflows
• The ABAP on HANA Application Developers would possess the knowledge of the following topics and apply them to bring in value and innovation to client engagements: SAP HANA Technical Concept and Architecture, Data Modelling using HANA Studio, ABAP Development Tools (ADT), Code Performance Rules and Guidelines for SAP HANA, ADBC, Native SQL, ABAP Core data Services, Data Base Procedures, Text Search, ALV on HANA, and HANA Live models consumption.
• Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.
• Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)


Required education

Bachelor's Degree

Preferred Education

Master's Degree

Required technical and professional expertise

• Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.
• Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)
• Modifying standard layout sets in SAP Scripts, Smart forms & Adobe Forms
• Knowledge on ABAP Object Oriented Programming
• Knowledge and experience on SAP Workflow


Preferred Technical And Professional Experience

• Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects.
• Experience in working in Implementation, Consulting, Client interaction, Upgrade, Maintenance and Post Production support projects would be an advantage
• Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects


About Business Unit

IBM Consulting is IBM’s consulting and global professional services business, with market leading capabilities in business and technology transformation. With deep expertise in many industries, we offer strategy, experience, technology, and operations services to many of the most innovative and valuable companies in the world. Our people are focused on accelerating our clients’ businesses through the power of collaboration. We believe in the power of technology responsibly used to help people, partners and the planet.

YOUR LIFE @ IBM

In a world where technology never stands still, we understand that, dedication to our clients success, innovation that matters, and trust and personal responsibility in all our relationships, lives in what we do as IBMers as we strive to be the catalyst that makes the world work better.

Being an IBMer means you’ll be able to learn and develop yourself and your career, you’ll be encouraged to be courageous and experiment everyday, all whilst having continuous trust and support in an environment where everyone can thrive whatever their personal or professional background.

Our IBMers are growth minded, always staying curious, open to feedback and learning new information and skills to constantly transform themselves and our company. They are trusted to provide on-going feedback to help other IBMers grow, as well as collaborate with colleagues keeping in mind a team focused approach to include different perspectives to drive exceptional outcomes for our customers. The courage our IBMers have to make critical decisions everyday is essential to IBM becoming the catalyst for progress, always embracing challenges with resources they have to hand, a can-do attitude and always striving for an outcome focused approach within everything that they do.

Are you ready to be an IBMer?

About Ibm

IBM’s greatest invention is the IBMer. We believe that through the application of intelligence, reason and science, we can improve business, society and the human condition, bringing the power of an open hybrid cloud and AI strategy to life for our clients and partners around the world.

Restlessly reinventing since 1911, we are not only one of the largest corporate organizations in the world, we’re also one of the biggest technology and consulting employers, with many of the Fortune 50 companies relying on the IBM Cloud to run their business.

At IBM, we pride ourselves on being an early adopter of artificial intelligence, quantum computing and blockchain. Now it’s time for you to join us on our journey to being a responsible technology innovator and a force for good in the world.

IBM is proud to be an equal-opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, gender, gender identity or expression, sexual orientation, national origin, caste, genetics, pregnancy, disability, neurodivergence, age, veteran status, or other characteristics. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.

Other Relevant Job Details

When applying to jobs of your interest, we recommend that you do so for those that match your experience and expertise. Our recruiters advise that you apply to not more than 3 roles in a year for the best candidate experience. For additional information about location requirements, please discuss with the recruiter following submission of your application.

Skills from this JD

Each row merges API 1 extraction, API 2 library match / v3 orchestration (dimensions + locked dims), and API 3 persistence tags.

SAP S/4HANA Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ABAP Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
OData Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
CDS Views Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
AMDP Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Adobe Forms Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
SAP Workflow Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
BAdI Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
IDoc Extensions Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ABAP Objects Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
SAP HANA Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
HANA Studio Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ABAP Development Tools (ADT) Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ADBC Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Native SQL Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ABAP Core Data Services Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Database Procedures Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Text Search Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
ALV on HANA Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
HANA Live Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
SAP Scripts Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Smart Forms Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
RICEF Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Object-Oriented Programming Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Data Dictionary Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Data Elements Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Domains Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Structures Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Views Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Views id=3116 · views

Aliases — catalog

  • Views (CANONICAL) primary

Context tags (catalog)

AJAX CRUD operations MVC RESTful API UI components client-side rendering component lifecycle data binding data visualization dynamic content event handling query builder server-side rendering state management template rendering

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Query Builder Framework
Vendor
null
License
unknown
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: “Views” as a query-builder framework has low JD volume and is largely overshadowed by ORM/query tools like Django ORM, SQLAlchemy, and Knex in current postings and docs.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
2424
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Views and Content Querying Catalog dimension db id 347

    Library dimension (catalog)

    Roles linked in library: Drupal Dev

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Views and Content Querying
views-and-content-querying
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Lock Objects Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Search Helps Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Other
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED

All API 3 persistence rows

Same grid as the skill-extractor “Persistence items” table: one row per (skill × dimension) work item.

Skill Tag Dimension Skill↔dim Role↔dim Outcome Notes
Views in_db
Views and Content Querying
views-and-content-querying
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed SAP S/4HANA | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ABAP | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed OData | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed CDS Views | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed AMDP | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Adobe Forms | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed SAP Workflow | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed BAdI | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed IDoc Extensions | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ABAP Objects | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed SAP HANA | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed HANA Studio | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ABAP Development Tools (ADT) | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ADBC | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Native SQL | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ABAP Core Data Services | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Database Procedures | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Text Search | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed ALV on HANA | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed HANA Live | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed SAP Scripts | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Smart Forms | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed RICEF | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Object-Oriented Programming | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Data Dictionary | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Data Elements | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Domains | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Structures | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Lock Objects | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Search Helps | type=Other subtype=general nature=TOOL lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleS4 HANA ABAP consultant
CompanyIBM
ExperienceOverall industry experience of 12+ years
DomainIT Services & Consulting
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "IBM Consulting is IBM\u2019s consulting",
      "last_5_words": "help people, partners and the planet."
    },
    "text": "IBM Consulting is IBM\u2019s consulting and global professional services business, with market leading capabilities in business and technology transformation. With deep expertise in many industries, we offer strategy, experience, technology, and operations services to many of the most innovative and valuable companies in the world. Our people are focused on accelerating our clients\u2019 businesses through the power of collaboration. We believe in the power of technology responsibly used to help people, partners and the planet.",
    "word_count": 64
  },
  "certifications": [],
  "company_name": "IBM",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "ITES",
        "BPO",
        "Tech Consulting"
      ],
      "domain": "IT Services \u0026 Consulting"
    },
    "secondary": null
  },
  "education": [
    {
      "level": "Bachelor\u0027s",
      "qualification": "BTECH/BE - Any Discipline",
      "raw": "Bachelor\u0027s Degree",
      "requirement": "required"
    },
    {
      "level": "Master\u0027s",
      "qualification": "MTECH/ME - Any Discipline",
      "raw": "Master\u0027s Degree",
      "requirement": "preferred"
    }
  ],
  "experience": {
    "max": null,
    "min": 12,
    "raw": "Overall industry experience of 12+ years"
  },
  "job_locations": [],
  "role": "S4 HANA ABAP consultant",
  "role_aliases": [
    "ABAP Developer",
    "SAP ABAP Consultant",
    "SAP Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 4,
      "heading": "Your role and responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 S4 HANA ABAP consultant with",
        "last_5_words": "in SAP ABAP HANA projects"
      },
      "text": "\u2022 S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill.\n\u2022 You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms\n\u2022 Knowledge and experience on SAP Workflow, Advance ABAP BADI (Business Add-In), Intermediate Document Extensions, ABAP Objects\n\u2022 Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects",
      "word_count": 64
    },
    {
      "bullet_count": 4,
      "heading": "Your Primary Responsibilities Include",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Overall industry experience of 12+",
        "last_5_words": "Enhancements, Forms and Reports"
      },
      "text": "\u2022 Overall industry experience of 12+ years, working as S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP , ADOBE Forms , Workflows\n\u2022 The ABAP on HANA Application Developers would possess the knowledge of the following topics and apply them to bring in value and innovation to client engagements: SAP HANA Technical Concept and Architecture, Data Modelling using HANA Studio, ABAP Development Tools (ADT), Code Performance Rules and Guidelines for SAP HANA, ADBC, Native SQL, ABAP Core data Services, Data Base Procedures, Text Search, ALV on HANA, and HANA Live models consumption.\n\u2022 Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.\n\u2022 Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
      "word_count": 134
    },
    {
      "bullet_count": 5,
      "heading": "Required technical and professional expertise",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Designing and developing, data dictionary",
        "last_5_words": "knowledge and experience on SAP Workflow"
      },
      "text": "\u2022 Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.\n\u2022 Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)\n\u2022 Modifying standard layout sets in SAP Scripts, Smart forms \u0026 Adobe Forms\n\u2022 Knowledge on ABAP Object Oriented Programming\n\u2022 Knowledge and experience on SAP Workflow",
      "word_count": 83
    },
    {
      "bullet_count": 3,
      "heading": "Preferred Technical And Professional Experience",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Proven work experience in 3-4",
        "last_5_words": "in implementation or support projects"
      },
      "text": "\u2022 Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects.\n\u2022 Experience in working in Implementation, Consulting, Client interaction, Upgrade, Maintenance and Post Production support projects would be an advantage\n\u2022 Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects",
      "word_count": 66
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "SAP S/4HANA"
    },
    {
      "is_primary": true,
      "skill_name": "ABAP"
    },
    {
      "is_primary": true,
      "skill_name": "OData"
    },
    {
      "is_primary": true,
      "skill_name": "CDS Views"
    },
    {
      "is_primary": true,
      "skill_name": "AMDP"
    },
    {
      "is_primary": true,
      "skill_name": "Adobe Forms"
    },
    {
      "is_primary": true,
      "skill_name": "SAP Workflow"
    },
    {
      "is_primary": true,
      "skill_name": "BAdI"
    },
    {
      "is_primary": true,
      "skill_name": "IDoc Extensions"
    },
    {
      "is_primary": true,
      "skill_name": "ABAP Objects"
    },
    {
      "is_primary": true,
      "skill_name": "SAP HANA"
    },
    {
      "is_primary": true,
      "skill_name": "HANA Studio"
    },
    {
      "is_primary": true,
      "skill_name": "ABAP Development Tools (ADT)"
    },
    {
      "is_primary": true,
      "skill_name": "ADBC"
    },
    {
      "is_primary": true,
      "skill_name": "Native SQL"
    },
    {
      "is_primary": true,
      "skill_name": "ABAP Core Data Services"
    },
    {
      "is_primary": true,
      "skill_name": "Database Procedures"
    },
    {
      "is_primary": true,
      "skill_name": "Text Search"
    },
    {
      "is_primary": true,
      "skill_name": "ALV on HANA"
    },
    {
      "is_primary": true,
      "skill_name": "HANA Live"
    },
    {
      "is_primary": true,
      "skill_name": "SAP Scripts"
    },
    {
      "is_primary": true,
      "skill_name": "Smart Forms"
    },
    {
      "is_primary": true,
      "skill_name": "RICEF"
    },
    {
      "is_primary": true,
      "skill_name": "Object-Oriented Programming"
    },
    {
      "is_primary": true,
      "skill_name": "Data Dictionary"
    },
    {
      "is_primary": true,
      "skill_name": "Data Elements"
    },
    {
      "is_primary": true,
      "skill_name": "Domains"
    },
    {
      "is_primary": true,
      "skill_name": "Structures"
    },
    {
      "is_primary": true,
      "skill_name": "Views"
    },
    {
      "is_primary": true,
      "skill_name": "Lock Objects"
    },
    {
      "is_primary": true,
      "skill_name": "Search Helps"
    }
  ],
  "jd_role": {
    "display_name": "S4 HANA ABAP consultant",
    "rationale": null,
    "role_aliases": [
      "ABAP Developer",
      "SAP ABAP Consultant",
      "SAP Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "IBM Consulting is IBM\u2019s consulting",
        "last_5_words": "help people, partners and the planet."
      },
      "text": "IBM Consulting is IBM\u2019s consulting and global professional services business, with market leading capabilities in business and technology transformation. With deep expertise in many industries, we offer strategy, experience, technology, and operations services to many of the most innovative and valuable companies in the world. Our people are focused on accelerating our clients\u2019 businesses through the power of collaboration. We believe in the power of technology responsibly used to help people, partners and the planet.",
      "word_count": 64
    },
    "certifications": [],
    "company_name": "IBM",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "ITES",
          "BPO",
          "Tech Consulting"
        ],
        "domain": "IT Services \u0026 Consulting"
      },
      "secondary": null
    },
    "education": [
      {
        "level": "Bachelor\u0027s",
        "qualification": "BTECH/BE - Any Discipline",
        "raw": "Bachelor\u0027s Degree",
        "requirement": "required"
      },
      {
        "level": "Master\u0027s",
        "qualification": "MTECH/ME - Any Discipline",
        "raw": "Master\u0027s Degree",
        "requirement": "preferred"
      }
    ],
    "experience": {
      "max": null,
      "min": 12,
      "raw": "Overall industry experience of 12+ years"
    },
    "job_locations": [],
    "role": "S4 HANA ABAP consultant",
    "role_aliases": [
      "ABAP Developer",
      "SAP ABAP Consultant",
      "SAP Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 4,
        "heading": "Your role and responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 S4 HANA ABAP consultant with",
          "last_5_words": "in SAP ABAP HANA projects"
        },
        "text": "\u2022 S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill.\n\u2022 You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms\n\u2022 Knowledge and experience on SAP Workflow, Advance ABAP BADI (Business Add-In), Intermediate Document Extensions, ABAP Objects\n\u2022 Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects",
        "word_count": 64
      },
      {
        "bullet_count": 4,
        "heading": "Your Primary Responsibilities Include",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Overall industry experience of 12+",
          "last_5_words": "Enhancements, Forms and Reports"
        },
        "text": "\u2022 Overall industry experience of 12+ years, working as S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP , ADOBE Forms , Workflows\n\u2022 The ABAP on HANA Application Developers would possess the knowledge of the following topics and apply them to bring in value and innovation to client engagements: SAP HANA Technical Concept and Architecture, Data Modelling using HANA Studio, ABAP Development Tools (ADT), Code Performance Rules and Guidelines for SAP HANA, ADBC, Native SQL, ABAP Core data Services, Data Base Procedures, Text Search, ALV on HANA, and HANA Live models consumption.\n\u2022 Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.\n\u2022 Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
        "word_count": 134
      },
      {
        "bullet_count": 5,
        "heading": "Required technical and professional expertise",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Designing and developing, data dictionary",
          "last_5_words": "knowledge and experience on SAP Workflow"
        },
        "text": "\u2022 Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.\n\u2022 Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)\n\u2022 Modifying standard layout sets in SAP Scripts, Smart forms \u0026 Adobe Forms\n\u2022 Knowledge on ABAP Object Oriented Programming\n\u2022 Knowledge and experience on SAP Workflow",
        "word_count": 83
      },
      {
        "bullet_count": 3,
        "heading": "Preferred Technical And Professional Experience",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Proven work experience in 3-4",
          "last_5_words": "in implementation or support projects"
        },
        "text": "\u2022 Proven work experience in 3-4 full cycle implementation in SAP ABAP HANA projects.\n\u2022 Experience in working in Implementation, Consulting, Client interaction, Upgrade, Maintenance and Post Production support projects would be an advantage\n\u2022 Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects",
        "word_count": 66
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "2e167e24-88fd-4a8d-93e4-e427d0bff884",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "SAP ABAP Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 157,
        "score": 1.0,
        "slug": "sap-abap-developer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Data Engineer",
        "kra_matches": [
          {
            "kra_text": "Designs dimensional models, star schemas, data vault structures, and curated data mart tables to support BI tools and self-service analytics consumption.",
            "sentence": "Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.",
            "similarity": 0.5879
          },
          {
            "kra_text": "Designs dimensional models, star schemas, data vault structures, and curated data mart tables to support BI tools and self-service analytics consumption.",
            "sentence": "Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.",
            "similarity": 0.5878
          },
          {
            "kra_text": "Designs dimensional models, star schemas, data vault structures, and curated data mart tables to support BI tools and self-service analytics consumption.",
            "sentence": "Overall industry experience of 12+ years, working as S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP , ADOBE Forms , Workflows",
            "similarity": 0.4206
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 2,
        "score": 0.5321,
        "slug": "data-engineer",
        "total_count": null
      },
      {
        "display_name": "Pega Developer",
        "kra_matches": [
          {
            "kra_text": "Requirements analysis and process translation",
            "sentence": "Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects",
            "similarity": 0.4956
          },
          {
            "kra_text": "external system integration implementation",
            "sentence": "You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms",
            "similarity": 0.4931
          },
          {
            "kra_text": "Requirements analysis and process translation",
            "sentence": "Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
            "similarity": 0.4521
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 24,
        "score": 0.4802,
        "slug": "pega-developer",
        "total_count": null
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": [
          {
            "kra_text": "Designs and queries relational databases like PostgreSQL and document stores like MongoDB, writing migrations, indexes, and optimized queries.",
            "sentence": "Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.",
            "similarity": 0.4694
          },
          {
            "kra_text": "Designs and queries relational databases like PostgreSQL and document stores like MongoDB, writing migrations, indexes, and optimized queries.",
            "sentence": "Designing and developing, data dictionary objects, data elements, domains, structures, views, lock objects, search helps and in formatting the output of SAP documents with multiple options.",
            "similarity": 0.4694
          },
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms",
            "similarity": 0.4579
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.4656,
        "slug": "full-stack-engineer",
        "total_count": null
      },
      {
        "display_name": "Java Backend Developer",
        "kra_matches": [
          {
            "kra_text": "external system integration",
            "sentence": "You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms",
            "similarity": 0.4812
          },
          {
            "kra_text": "code refactoring and defect fixes",
            "sentence": "Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
            "similarity": 0.4264
          },
          {
            "kra_text": "code refactoring and defect fixes",
            "sentence": "Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
            "similarity": 0.4264
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 79,
        "score": 0.4447,
        "slug": "java-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Flutter Developer",
        "kra_matches": [
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "You may also design, develop and/or re-engineer highly complex application components and integrate software packages, programs and reusable objects residing on multiple platforms",
            "similarity": 0.4953
          },
          {
            "kra_text": "translate product and design requirements",
            "sentence": "Understanding of SAP functional requirement, conversion into Technical design and development using ABAP Language for Report, Interface, Conversion, Enhancement and Forms in implementation or support projects",
            "similarity": 0.4357
          },
          {
            "kra_text": "Implement user-facing screens and flows",
            "sentence": "Development experience in RICEF (Reports, Interfaces, Conversions, Enhancements, Forms and Reports)",
            "similarity": 0.3996
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 0.4435,
        "slug": "flutter-developer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Drupal Dev",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "Views"
        ],
        "role_id": 228,
        "score": 0.0323,
        "slug": "drupal-dev",
        "total_count": 31
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": false,
    "case": "A",
    "chosen_role": {
      "display_name": "SAP ABAP Developer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 157,
      "score": 1.0,
      "slug": "sap-abap-developer",
      "total_count": null
    },
    "confidence": 1.0,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [],
    "matched_kras": [],
    "matched_skills": [],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Exact alias hit on sap-abap-developer (1.0) \u2014 no other alias at this confidence; skill_top drupal-dev 0.03 does not contradict",
    "sub_role": null
  },
  "stage5_updates": {
    "centroid_n_after": 2,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": {
      "best_kra_similarity": 0.0,
      "queue_id": 1928,
      "r_and_r_preview": "\u2022 S4 HANA ABAP consultant with experience of working on ODATA , CDS Views ,AMDP, ADOBE Forms, Workflows . Also having very good communication skill.\n\u2022 You may also design, develop and/or re-engineer h",
      "role_display_name": "SAP ABAP Developer",
      "role_slug": "sap-abap-developer",
      "status": "pending"
    },
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 24835,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "SAP S/4HANA",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24836,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ABAP",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24837,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "OData",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24838,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "CDS Views",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24839,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "AMDP",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24840,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Adobe Forms",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24841,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "SAP Workflow",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24842,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "BAdI",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24843,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "IDoc Extensions",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24844,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ABAP Objects",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24845,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "SAP HANA",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24846,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "HANA Studio",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24847,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ABAP Development Tools (ADT)",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24848,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ADBC",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24849,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Native SQL",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24850,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ABAP Core Data Services",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24851,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Database Procedures",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24852,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Text Search",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24853,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "ALV on HANA",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24854,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "HANA Live",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24855,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "SAP Scripts",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24856,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Smart Forms",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24857,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "RICEF",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24858,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Object-Oriented Programming",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24859,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Data Dictionary",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24860,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Data Elements",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24861,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Domains",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24862,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Structures",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24863,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Lock Objects",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24864,
        "role_display_name": "SAP ABAP Developer",
        "role_slug": "sap-abap-developer",
        "skill_name": "Search Helps",
        "status": "pending"
      }
    ],
    "queue_entry_id": null,
    "v3_pipeline_triggered": false,
    "v3_role_slug": null,
    "v3_run_id": null
  }
}
API 2 — extract-details
{
  "alias_matches": [
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 4593,
      "existing_alias_text": "Views",
      "input_term": "Views",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Views",
        "id": 3116,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "views",
        "sub_category_id": 2424,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Drupal Dev",
      "id": 228,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "drupal-dev",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "SAP ABAP Developer",
    "id": 157,
    "rationale": "Exact alias hit on sap-abap-developer (1.0) \u2014 no other alias at this confidence; skill_top drupal-dev 0.03 does not contradict",
    "role_archetype": null,
    "slug": "sap-abap-developer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Views and Content Querying",
        "id": 347,
        "rationale": "Building listings, feeds, and filtered content displays using Drupal\u0027s query and presentation tools. This cluster is coherent because many Drupal features are delivered through reusable content queries rather than custom code.",
        "slug": "views-and-content-querying",
        "source": "db"
      },
      "input_skill": "Views",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Drupal Dev",
          "id": 228,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "drupal-dev",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "SAP S/4HANA",
    "ABAP",
    "OData",
    "CDS Views",
    "AMDP",
    "Adobe Forms",
    "SAP Workflow",
    "BAdI",
    "IDoc Extensions",
    "ABAP Objects",
    "SAP HANA",
    "HANA Studio",
    "ABAP Development Tools (ADT)",
    "ADBC",
    "Native SQL",
    "ABAP Core Data Services",
    "Database Procedures",
    "Text Search",
    "ALV on HANA",
    "HANA Live",
    "SAP Scripts",
    "Smart Forms",
    "RICEF",
    "Object-Oriented Programming",
    "Data Dictionary",
    "Data Elements",
    "Domains",
    "Structures",
    "Views",
    "Lock Objects",
    "Search Helps"
  ],
  "input_llm_skills": [
    "SAP S/4HANA",
    "ABAP",
    "OData",
    "CDS Views",
    "AMDP",
    "Adobe Forms",
    "SAP Workflow",
    "BAdI",
    "IDoc Extensions",
    "ABAP Objects",
    "SAP HANA",
    "HANA Studio",
    "ABAP Development Tools (ADT)",
    "ADBC",
    "Native SQL",
    "ABAP Core Data Services",
    "Database Procedures",
    "Text Search",
    "ALV on HANA",
    "HANA Live",
    "SAP Scripts",
    "Smart Forms",
    "RICEF",
    "Object-Oriented Programming",
    "Data Dictionary",
    "Data Elements",
    "Domains",
    "Structures",
    "Views",
    "Lock Objects",
    "Search Helps"
  ],
  "new_aliases_persisted": 0,
  "run_id": "2e167e24-88fd-4a8d-93e4-e427d0bff884",
  "skills_detail": [
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "SAP S/4HANA",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "sap-s-4hana",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ABAP",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "abap",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "OData",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "odata",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "CDS Views",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "cds-views",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "AMDP",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "amdp",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Adobe Forms",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "adobe-forms",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "SAP Workflow",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "sap-workflow",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "BAdI",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "badi",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "IDoc Extensions",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "idoc-extensions",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ABAP Objects",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "abap-objects",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "SAP HANA",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "sap-hana",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "HANA Studio",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "hana-studio",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ABAP Development Tools (ADT)",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "abap-development-tools-adt",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ADBC",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "adbc",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Native SQL",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "native-sql",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ABAP Core Data Services",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "abap-core-data-services",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Database Procedures",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "database-procedures",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Text Search",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "text-search",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "ALV on HANA",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "alv-on-hana",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "HANA Live",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "hana-live",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "SAP Scripts",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "sap-scripts",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Smart Forms",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "smart-forms",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "RICEF",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "ricef",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Object-Oriented Programming",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "object-oriented-programming",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Data Dictionary",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "data-dictionary",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Data Elements",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "data-elements",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Domains",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "domains",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Structures",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "structures",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Views",
          "alias_type": "CANONICAL",
          "id": 4593,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Views",
        "id": 3116,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "views",
        "sub_category_id": 2424,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Views and Content Querying",
            "id": 347,
            "rationale": "Building listings, feeds, and filtered content displays using Drupal\u0027s query and presentation tools. This cluster is coherent because many Drupal features are delivered through reusable content queries rather than custom code.",
            "slug": "views-and-content-querying",
            "source": "db"
          },
          "input_skill": "Views",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Drupal Dev",
              "id": 228,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "drupal-dev",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Views",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Lock Objects",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "lock-objects",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Search Helps",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Other",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "search-helps",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "SAP S/4HANA",
    "ABAP",
    "OData",
    "CDS Views",
    "AMDP",
    "Adobe Forms",
    "SAP Workflow",
    "BAdI",
    "IDoc Extensions",
    "ABAP Objects",
    "SAP HANA",
    "HANA Studio",
    "ABAP Development Tools (ADT)",
    "ADBC",
    "Native SQL",
    "ABAP Core Data Services",
    "Database Procedures",
    "Text Search",
    "ALV on HANA",
    "HANA Live",
    "SAP Scripts",
    "Smart Forms",
    "RICEF",
    "Object-Oriented Programming",
    "Data Dictionary",
    "Data Elements",
    "Domains",
    "Structures",
    "Lock Objects",
    "Search Helps"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "SAP ABAP Developer",
    "id": 157,
    "rationale": "Exact alias hit on sap-abap-developer (1.0) \u2014 no other alias at this confidence; skill_top drupal-dev 0.03 does not contradict",
    "role_archetype": null,
    "slug": "sap-abap-developer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "SAP S/4HANA",
      "tag": "new"
    },
    {
      "skill": "ABAP",
      "tag": "new"
    },
    {
      "skill": "OData",
      "tag": "new"
    },
    {
      "skill": "CDS Views",
      "tag": "new"
    },
    {
      "skill": "AMDP",
      "tag": "new"
    },
    {
      "skill": "Adobe Forms",
      "tag": "new"
    },
    {
      "skill": "SAP Workflow",
      "tag": "new"
    },
    {
      "skill": "BAdI",
      "tag": "new"
    },
    {
      "skill": "IDoc Extensions",
      "tag": "new"
    },
    {
      "skill": "ABAP Objects",
      "tag": "new"
    },
    {
      "skill": "SAP HANA",
      "tag": "new"
    },
    {
      "skill": "HANA Studio",
      "tag": "new"
    },
    {
      "skill": "ABAP Development Tools (ADT)",
      "tag": "new"
    },
    {
      "skill": "ADBC",
      "tag": "new"
    },
    {
      "skill": "Native SQL",
      "tag": "new"
    },
    {
      "skill": "ABAP Core Data Services",
      "tag": "new"
    },
    {
      "skill": "Database Procedures",
      "tag": "new"
    },
    {
      "skill": "Text Search",
      "tag": "new"
    },
    {
      "skill": "ALV on HANA",
      "tag": "new"
    },
    {
      "skill": "HANA Live",
      "tag": "new"
    },
    {
      "skill": "SAP Scripts",
      "tag": "new"
    },
    {
      "skill": "Smart Forms",
      "tag": "new"
    },
    {
      "skill": "RICEF",
      "tag": "new"
    },
    {
      "skill": "Object-Oriented Programming",
      "tag": "new"
    },
    {
      "skill": "Data Dictionary",
      "tag": "new"
    },
    {
      "skill": "Data Elements",
      "tag": "new"
    },
    {
      "skill": "Domains",
      "tag": "new"
    },
    {
      "skill": "Structures",
      "tag": "new"
    },
    {
      "skill": "Views",
      "tag": "in_db"
    },
    {
      "skill": "Lock Objects",
      "tag": "new"
    },
    {
      "skill": "Search Helps",
      "tag": "new"
    }
  ],
  "llm_cost_api1_usd": null,
  "llm_cost_api2_usd": null,
  "llm_cost_api3_usd": null,
  "llm_cost_total_usd": null,
  "persistence": {
    "items": [
      {
        "chosen_role_id": 157,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Views and Content Querying",
          "id": 347,
          "rationale": "Building listings, feeds, and filtered content displays using Drupal\u0027s query and presentation tools. This cluster is coherent because many Drupal features are delivered through reusable content queries rather than custom code.",
          "slug": "views-and-content-querying",
          "source": "db"
        },
        "dimension_id": 347,
        "input_skill": "Views",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Drupal Dev",
            "id": 228,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "drupal-dev",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 3116,
        "skill_tag": "in_db",
        "skipped_reason": null
      }
    ],
    "new_skills_created": 0,
    "role_dimension_saved": 0,
    "skill_dimension_saved": 0,
    "skipped": 0
  },
  "planner_output": null,
  "run_id": "2e167e24-88fd-4a8d-93e4-e427d0bff884"
}