← Back to history

Pipeline run

6896a9c8-5917-42fc-a8f8-907a0ca58502

Pipeline LLM cost (USD)
API 1: $0.0100 API 2: $0.0001 API 3: $0.0000 Total: $0.0102

Client output enrichment

v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA description
SPARSE JD role baseline loaded sources · ai_index: role_baseline · nature_of_work: jd · tech_stack_maturity: jd
Nature of work · API and service implementation
Build and maintain Node.js backend features and APIs, working with front-end developers to deliver scalable OOP-based solutions. Manage Mongoose data models, test requests in Postman, and implement JWT-based auth.
"daily tasks associated with back-end web development and software development"
Tech stack maturity
Mainstream Modern
JWT and Node.js are widely adopted, current backend technologies that fit a modern but not bleeding-edge or legacy stack.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
1.80 / 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):
Evidence — skills matched in JD (4)
Node.js Mongoose Postman JWT
Skill cluster (3 dimension groups, role-scoped)
Authentication and Authorization
JWT
Web Application Frameworks
Node.js
Cross-cutting / unaligned
Mongoose Postman
Show KRA description ↓
This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions. • Proficiency in Back-End Web Development and Software Development • Strong understanding of Object-Oriented Programming (OOP) • Ability to collaborate with Front-End Developers • Experience in Programming • Minimum of 2 years of experience in Node.js • Good logical skills • Knowledge about managing Mongoose • Experience with Postman collection management • Familiarity with JWT tokens Having knowledge or experience in Front-End Development would be beneficial for this role.

Signals

Skill full-stack-engineer
0.50
Alias backend-engineer
1.00
KRA flutter-developer
0.54

Post-classification

Centroidupdated · n=1510
Alias collision log
New-role queue
New skills captured2
New KRA capturedyes

Captured for admin review

Mongoose primary Backend Developer pending
Postman primary Backend Developer pending
R&R fragment (sim 0.00) Backend Developer pending

This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. The…

Status: completed Created: 2026-05-27T16:41:21.500162Z Updated: 2026-05-27T16:42:33.943536Z API 3 duration: 13765 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

Backend Developer

Node.js Backend Developer

sub-role · 0.99 domain · Software Engineering CASE DOMAIN

slug: backend-engineer · id: 1 · source: db · sub-role slug: node-backend-developer

Domain=Software Engineering → sub-role node-backend-developer; The responsibilities clearly center on back-end web development with Node.js, OOP, Mongoose, JWT, and collaboration with frontend developers, which best matches Backend Developer.

Matched skills

Back-End Web DevelopmentSoftware DevelopmentObject-Oriented Programming (OOP)Node.jsMongoosePostmanJWT tokensFront-End Development

Matched dimensions

Backend Web DevelopmentSoftware EngineeringObject-Oriented DesignAPI Testing and Collection ManagementCross-functional Collaboration

Matched KRAs

daily tasks associated with back-end web developmentcollaborate with front-end developersutilize object-oriented programming (OOP) principlescreate efficient and scalable solutionsmanage Mongooseexperience with Postman collection managementfamiliarity with JWT tokens

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

Company Description


Devlupers (Formerly known as Prayagraj Xport) is a software craft company that specializes in creating robust backends and captivating 3D designs. Our bespoke solutions enhance user experiences and operational efficiency, creating immersive digital landscapes that resonate with audiences and drive success.


Role Description


This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.


Qualifications


• Proficiency in Back-End Web Development and Software Development
• Strong understanding of Object-Oriented Programming (OOP)
• Ability to collaborate with Front-End Developers
• Experience in Programming
• Minimum of 2 years of experience in Node.js
• Good logical skills
• Knowledge about managing Mongoose
• Experience with Postman collection management
• Familiarity with JWT tokens


Having knowledge or experience in Front-End Development would be beneficial for this role.

Skills from this JD

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

Node.js Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Node.js id=1564 · node-js

Aliases — catalog

  • Node.js (CANONICAL) primary
  • Node 20 LTS (VERSION)
  • Node 20.x (VERSION)
  • Node.js 20 (VERSION)
  • Node.js 20 LTS (VERSION)
  • Node.js 20.x (VERSION)
  • node (VERSION)
  • node 10 (VERSION)
  • node 12 (VERSION)
  • node 14 (VERSION)
  • node 16 (VERSION)
  • node 18 (VERSION)
  • node 20 (VERSION)
  • node v10 (VERSION)
  • node v12 (VERSION)
  • node v14 (VERSION)
  • node v16 (VERSION)
  • node v18 (VERSION)
  • node v20 (VERSION)
  • node.js (VERSION)
  • node.js 10 (VERSION)
  • node.js 12 (VERSION)
  • node.js 14 (VERSION)
  • node.js 16 (VERSION)
  • node.js 18 (VERSION)
  • node.js 20 (VERSION)
  • nodejs (VERSION)
  • nodejs 10 (VERSION)
  • nodejs 12 (VERSION)
  • nodejs 14 (VERSION)
  • nodejs 16 (VERSION)
  • nodejs 18 (VERSION)
  • nodejs 20 (VERSION)

Context tags (catalog)

API Asynchronous Event-driven Express GraphQL JavaScript Jest Koa Microservices Middleware Mocha MongoDB Mongoose NestJS RESTful Socket.io TypeScript npm

Stored enrichment (catalog DB)

Category
Runtime
Sub-category
Javascript Runtime
Vendor
OpenJS Foundation
License
mit
Year introduced
2009
Confidence
0.99
Version strategy
SEPARATE_ENTITY
Version tag
20

Maturity reasoning: Node.js appears in high-volume job postings across backend/full-stack roles and is a standard runtime in major cloud/vendor docs and ecosystem tooling, indicating broad hiring-pipeline adoption.

Skill profile (library / DB)

Skill nature
RUNTIME
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
67
Sub-category id
1872
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • JavaScript and TypeScript Catalog dimension db id 114

    Library dimension (catalog)

    Roles linked in library: Angular Frontend Developer, Frontend Developer, Ionic Developer, Node.js Backend Developer, React Frontend Developer, React Native Developer, Svelte Frontend Developer, Vue Frontend Developer, Web Developer

  • Web Application Frameworks Catalog dimension db id 2

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Fullstack Developer, Fullstack Developer, Java Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
JavaScript and TypeScript
javascript-and-typescript
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
Mongoose 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
Databases
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Postman 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
API Testing Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
JWT Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: JWT id=28 · jwt

Aliases — catalog

  • JWT (CANONICAL) primary

Context tags (catalog)

Bearer Bearer token HMAC HS256 JSON JSON Web Encryption JSON Web Signature JSON Web Token JWE JWS JWT libraries JWT.io OAuth OAuth 2.0 OAuth2 OpenID Connect RS256 SSO access token access tokens authentication authorization authorization header claims header identity provider payload refresh token refresh tokens secure transmission security security token session management signature stateless stateless authentication token expiration token validation

Stored enrichment (catalog DB)

Category
Format
Sub-category
Token Format
Vendor
IETF
License
unknown
Year introduced
2010
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: JWT is widely listed in backend/auth job descriptions and is a standard token format in OAuth2/OIDC ecosystems; no vendor sunset or replacement has displaced it.

Skill profile (library / DB)

Skill nature
STANDARD
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
4
Sub-category id
33
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Authentication and Authorization Catalog dimension db id 6

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Go Backend Developer, Java Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer

  • Authentication and Session Handling Catalog dimension db id 86

    Library dimension (catalog)

    Roles linked in library: Android Developer, Frontend Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Native Mobile Developer, Web Developer, iOS Developer

  • Backend Authentication and Authorization Catalog dimension db id 386

    Library dimension (catalog)

    Roles linked in library: Kotlin Backend Developer, Ruby Backend Developer, Scala Backend Developer

  • Frontend Authentication and Session Management Catalog dimension db id 300

    Library dimension (catalog)

    Roles linked in library: React Frontend Developer, Svelte Frontend Developer, Vue Frontend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension saved
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Backend Authentication and Authorization
backend-authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Frontend Authentication and Session Management
frontend-authentication-and-session-management
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

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
Node.js in_db
JavaScript and TypeScript
javascript-and-typescript
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Node.js in_db
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
JWT in_db
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension saved
JWT in_db
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
JWT in_db
Backend Authentication and Authorization
backend-authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
JWT in_db
Frontend Authentication and Session Management
frontend-authentication-and-session-management
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Mongoose | type=Databases subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Postman | type=API Testing Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleBack End Developer
CompanyDevlupers
ExperienceMinimum of 2 years of experience in Node.js
DomainSoftware & SaaS Products
Location(remote)
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "Devlupers (Formerly known as",
      "last_5_words": "audiences and drive success."
    },
    "text": "Devlupers (Formerly known as Prayagraj Xport) is a software craft company that specializes in creating robust backends and captivating 3D designs. Our bespoke solutions enhance user experiences and operational efficiency, creating immersive digital landscapes that resonate with audiences and drive success.",
    "word_count": 50
  },
  "certifications": [],
  "company_name": "Devlupers",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "SaaS",
        "Software Development"
      ],
      "domain": "Software \u0026 SaaS Products"
    },
    "secondary": null
  },
  "education": [],
  "experience": {
    "max": null,
    "min": 2,
    "raw": "Minimum of 2 years of experience in Node.js"
  },
  "job_locations": [
    {
      "aliases": [],
      "city": null,
      "country": null,
      "state": null,
      "work_mode": "remote"
    }
  ],
  "role": "Back End Developer",
  "role_aliases": [
    "Backend Developer",
    "Back-End Engineer",
    "Software Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 0,
      "heading": "Role Description",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "This is a full-time remote",
        "last_5_words": "efficient and scalable solutions."
      },
      "text": "This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
      "word_count": 50
    },
    {
      "bullet_count": 9,
      "heading": "Qualifications",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Proficiency in Back-End Web",
        "last_5_words": "beneficial for this role."
      },
      "text": "\u2022 Proficiency in Back-End Web Development and Software Development\n\u2022 Strong understanding of Object-Oriented Programming (OOP)\n\u2022 Ability to collaborate with Front-End Developers\n\u2022 Experience in Programming\n\u2022 Minimum of 2 years of experience in Node.js\n\u2022 Good logical skills\n\u2022 Knowledge about managing Mongoose\n\u2022 Experience with Postman collection management\n\u2022 Familiarity with JWT tokens\n\nHaving knowledge or experience in Front-End Development would be beneficial for this role.",
      "word_count": 83
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Node.js"
    },
    {
      "is_primary": true,
      "skill_name": "Mongoose"
    },
    {
      "is_primary": true,
      "skill_name": "Postman"
    },
    {
      "is_primary": true,
      "skill_name": "JWT"
    }
  ],
  "jd_role": {
    "display_name": "Back End Developer",
    "rationale": null,
    "role_aliases": [
      "Backend Developer",
      "Back-End Engineer",
      "Software Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "Devlupers (Formerly known as",
        "last_5_words": "audiences and drive success."
      },
      "text": "Devlupers (Formerly known as Prayagraj Xport) is a software craft company that specializes in creating robust backends and captivating 3D designs. Our bespoke solutions enhance user experiences and operational efficiency, creating immersive digital landscapes that resonate with audiences and drive success.",
      "word_count": 50
    },
    "certifications": [],
    "company_name": "Devlupers",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "SaaS",
          "Software Development"
        ],
        "domain": "Software \u0026 SaaS Products"
      },
      "secondary": null
    },
    "education": [],
    "experience": {
      "max": null,
      "min": 2,
      "raw": "Minimum of 2 years of experience in Node.js"
    },
    "job_locations": [
      {
        "aliases": [],
        "city": null,
        "country": null,
        "state": null,
        "work_mode": "remote"
      }
    ],
    "role": "Back End Developer",
    "role_aliases": [
      "Backend Developer",
      "Back-End Engineer",
      "Software Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 0,
        "heading": "Role Description",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "This is a full-time remote",
          "last_5_words": "efficient and scalable solutions."
        },
        "text": "This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
        "word_count": 50
      },
      {
        "bullet_count": 9,
        "heading": "Qualifications",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Proficiency in Back-End Web",
          "last_5_words": "beneficial for this role."
        },
        "text": "\u2022 Proficiency in Back-End Web Development and Software Development\n\u2022 Strong understanding of Object-Oriented Programming (OOP)\n\u2022 Ability to collaborate with Front-End Developers\n\u2022 Experience in Programming\n\u2022 Minimum of 2 years of experience in Node.js\n\u2022 Good logical skills\n\u2022 Knowledge about managing Mongoose\n\u2022 Experience with Postman collection management\n\u2022 Familiarity with JWT tokens\n\nHaving knowledge or experience in Front-End Development would be beneficial for this role.",
        "word_count": 83
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "6896a9c8-5917-42fc-a8f8-907a0ca58502",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 1,
        "score": 1.0,
        "slug": "backend-engineer",
        "total_count": null
      },
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 446,
        "score": 1.0,
        "slug": "backend-developer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Flutter Developer",
        "kra_matches": [
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "Ability to collaborate with Front-End Developers",
            "similarity": 0.6728
          },
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
            "similarity": 0.5432
          },
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "This is a full-time remote role for a Back End Developer at Devlupers.",
            "similarity": 0.4024
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 0.5395,
        "slug": "flutter-developer",
        "total_count": null
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": [
          {
            "kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
            "sentence": "Ability to collaborate with Front-End Developers",
            "similarity": 0.5606
          },
          {
            "kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
            "sentence": "They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
            "similarity": 0.4714
          },
          {
            "kra_text": "Supports production releases by diagnosing cross-browser compatibility issues, investigating UI regressions, and resolving frontend performance degradation.",
            "sentence": "Having knowledge or experience in Front-End Development would be beneficial for this role.",
            "similarity": 0.4264
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 7,
        "score": 0.4861,
        "slug": "frontend-engineer",
        "total_count": null
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": [
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "Ability to collaborate with Front-End Developers",
            "similarity": 0.506
          },
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
            "similarity": 0.4883
          },
          {
            "kra_text": "Builds and integrates client-side React or Vue components with server-side Node.js or Django APIs, managing bidirectional data flow across frontend and backend layers.",
            "sentence": "Having knowledge or experience in Front-End Development would be beneficial for this role.",
            "similarity": 0.3958
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.4634,
        "slug": "full-stack-engineer",
        "total_count": null
      },
      {
        "display_name": "Angular Frontend Developer",
        "kra_matches": [
          {
            "kra_text": "collaboration with design and QA",
            "sentence": "Ability to collaborate with Front-End Developers",
            "similarity": 0.5666
          },
          {
            "kra_text": "collaboration with design and QA",
            "sentence": "They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
            "similarity": 0.4596
          },
          {
            "kra_text": "Angular component development",
            "sentence": "Minimum of 2 years of experience in Node.js",
            "similarity": 0.3528
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 90,
        "score": 0.4597,
        "slug": "angular-frontend-developer",
        "total_count": null
      },
      {
        "display_name": "Python Backend Developer",
        "kra_matches": [
          {
            "kra_text": "Design backend endpoints and request handling",
            "sentence": "Ability to collaborate with Front-End Developers",
            "similarity": 0.4812
          },
          {
            "kra_text": "Design backend endpoints and request handling",
            "sentence": "They will also collaborate with front-end developers and utilize object-oriented programming (OOP) principles to create efficient and scalable solutions.",
            "similarity": 0.4336
          },
          {
            "kra_text": "Design backend endpoints and request handling",
            "sentence": "The Back End Developer will be responsible for daily tasks associated with back-end web development and software development.",
            "similarity": 0.4162
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 80,
        "score": 0.4437,
        "slug": "python-backend-developer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "JWT",
          "Node.js"
        ],
        "role_id": 15,
        "score": 0.5,
        "slug": "full-stack-engineer",
        "total_count": 4
      },
      {
        "display_name": "Web Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "JWT",
          "Node.js"
        ],
        "role_id": 25,
        "score": 0.5,
        "slug": "web-developer",
        "total_count": 4
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "JWT",
          "Node.js"
        ],
        "role_id": 7,
        "score": 0.5,
        "slug": "frontend-engineer",
        "total_count": 4
      },
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "JWT",
          "Node.js"
        ],
        "role_id": 1,
        "score": 0.5,
        "slug": "backend-engineer",
        "total_count": 4
      },
      {
        "display_name": "Java Backend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "JWT",
          "Node.js"
        ],
        "role_id": 79,
        "score": 0.5,
        "slug": "java-backend-developer",
        "total_count": 4
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": false,
    "case": "DOMAIN",
    "chosen_role": {
      "display_name": "Backend Developer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 1,
      "score": 0.98,
      "slug": "backend-engineer",
      "total_count": null
    },
    "confidence": 0.98,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [
      "Backend Web Development",
      "Software Engineering",
      "Object-Oriented Design",
      "API Testing and Collection Management",
      "Cross-functional Collaboration"
    ],
    "matched_kras": [
      "daily tasks associated with back-end web development",
      "collaborate with front-end developers",
      "utilize object-oriented programming (OOP) principles",
      "create efficient and scalable solutions",
      "manage Mongoose",
      "experience with Postman collection management",
      "familiarity with JWT tokens"
    ],
    "matched_skills": [
      "Back-End Web Development",
      "Software Development",
      "Object-Oriented Programming (OOP)",
      "Node.js",
      "Mongoose",
      "Postman",
      "JWT tokens",
      "Front-End Development"
    ],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Domain=Software Engineering \u2192 sub-role node-backend-developer; The responsibilities clearly center on back-end web development with Node.js, OOP, Mongoose, JWT, and collaboration with frontend developers, which best matches Backend Developer.",
    "sub_role": {
      "confidence": 0.99,
      "display_name": "Node.js Backend Developer",
      "reasoning": "The JD explicitly requires 2+ years of Node.js experience and mentions Mongoose and JWT, which strongly indicates a Node.js backend role.",
      "role_id": 82,
      "slug": "node-backend-developer"
    }
  },
  "stage5_updates": {
    "centroid_n_after": 1510,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": {
      "best_kra_similarity": 0.0,
      "queue_id": 1611,
      "r_and_r_preview": "This is a full-time remote role for a Back End Developer at Devlupers. The Back End Developer will be responsible for daily tasks associated with back-end web development and software development. The",
      "role_display_name": "Backend Developer",
      "role_slug": "backend-engineer",
      "status": "pending"
    },
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 21493,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Mongoose",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 21494,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Postman",
        "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": 2500,
      "existing_alias_text": "Node.js",
      "input_term": "Node.js",
      "matched_canonical": {
        "category_id": 67,
        "display_name": "Node.js",
        "id": 1564,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "RUNTIME",
        "slug": "node-js",
        "sub_category_id": 1872,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 165,
      "existing_alias_text": "JWT",
      "input_term": "JWT",
      "matched_canonical": {
        "category_id": 4,
        "display_name": "JWT",
        "id": 28,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "STANDARD",
        "slug": "jwt",
        "sub_category_id": 33,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Angular Frontend Developer",
      "id": 90,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "angular-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Frontend Developer",
      "id": 7,
      "rationale": null,
      "role_archetype": null,
      "slug": "frontend-engineer",
      "source": "db"
    },
    {
      "display_name": "Ionic Developer",
      "id": 434,
      "rationale": null,
      "role_archetype": null,
      "slug": "ionic-developer",
      "source": "db"
    },
    {
      "display_name": "Node.js Backend Developer",
      "id": 82,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "node-backend-developer",
      "source": "db"
    },
    {
      "display_name": "React Frontend Developer",
      "id": 89,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "React Native Developer",
      "id": 73,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-native-developer",
      "source": "db"
    },
    {
      "display_name": "Svelte Frontend Developer",
      "id": 92,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "svelte-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Vue Frontend Developer",
      "id": 91,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "vue-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Web Developer",
      "id": 25,
      "rationale": null,
      "role_archetype": null,
      "slug": "web-developer",
      "source": "db"
    },
    {
      "display_name": "Backend Developer",
      "id": 1,
      "rationale": null,
      "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
      "slug": "backend-engineer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 435,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "fullstack-developer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 15,
      "rationale": null,
      "role_archetype": null,
      "slug": "full-stack-engineer",
      "source": "db"
    },
    {
      "display_name": "Java Backend Developer",
      "id": 79,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "java-backend-developer",
      "source": "db"
    },
    {
      "display_name": "PHP Backend Developer",
      "id": 86,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "php-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Python Backend Developer",
      "id": 80,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "python-backend-developer",
      "source": "db"
    },
    {
      "display_name": ".NET Backend Developer",
      "id": 83,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "dotnet-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Go Backend Developer",
      "id": 81,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "go-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Android Developer",
      "id": 4,
      "rationale": null,
      "role_archetype": null,
      "slug": "android-engineer",
      "source": "db"
    },
    {
      "display_name": "Hybrid Mobile Developer",
      "id": 11,
      "rationale": null,
      "role_archetype": null,
      "slug": "hybrid-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "Native Mobile Developer",
      "id": 75,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "native-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "iOS Developer",
      "id": 6,
      "rationale": null,
      "role_archetype": null,
      "slug": "ios-engineer",
      "source": "db"
    },
    {
      "display_name": "Kotlin Backend Developer",
      "id": 84,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "kotlin-server-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Ruby Backend Developer",
      "id": 85,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "ruby-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Scala Backend Developer",
      "id": 87,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "scala-backend-developer",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "Backend Developer",
    "id": 1,
    "rationale": "Domain=Software Engineering \u2192 sub-role node-backend-developer; The responsibilities clearly center on back-end web development with Node.js, OOP, Mongoose, JWT, and collaboration with frontend developers, which best matches Backend Developer.",
    "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
    "slug": "backend-engineer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "JavaScript and TypeScript",
        "id": 114,
        "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
        "slug": "javascript-and-typescript",
        "source": "db"
      },
      "input_skill": "Node.js",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Angular Frontend Developer",
          "id": 90,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "angular-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "React Frontend Developer",
          "id": 89,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        },
        {
          "display_name": "Svelte Frontend Developer",
          "id": 92,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "svelte-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Vue Frontend Developer",
          "id": 91,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "vue-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Web Application Frameworks",
        "id": 2,
        "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
        "slug": "web-application-frameworks",
        "source": "db"
      },
      "input_skill": "Node.js",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Java Backend Developer",
          "id": 79,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "java-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "PHP Backend Developer",
          "id": 86,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "php-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Python Backend Developer",
          "id": 80,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "python-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Authentication and Authorization",
        "id": 6,
        "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
        "slug": "authentication-and-authorization",
        "source": "db"
      },
      "input_skill": "JWT",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": ".NET Backend Developer",
          "id": 83,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "dotnet-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Java Backend Developer",
          "id": 79,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "java-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "PHP Backend Developer",
          "id": 86,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "php-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Python Backend Developer",
          "id": 80,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "python-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Authentication and Session Handling",
        "id": 86,
        "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
        "slug": "authentication-and-session-handling",
        "source": "db"
      },
      "input_skill": "JWT",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        },
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Backend Authentication and Authorization",
        "id": 386,
        "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
        "slug": "backend-authentication-and-authorization",
        "source": "db"
      },
      "input_skill": "JWT",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Kotlin Backend Developer",
          "id": 84,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "kotlin-server-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Ruby Backend Developer",
          "id": 85,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "ruby-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Scala Backend Developer",
          "id": 87,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "scala-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Frontend Authentication and Session Management",
        "id": 300,
        "rationale": "Client-side authentication and session management for frontend applications, including sign-in flows, OAuth 2.0/OpenID Connect/SSO integration, JWT and refresh token handling, login forms, protected routes, session persistence, and session-expiry user experience. This covers the user-facing parts of identity workflows implemented in React or other frontend stacks, but excludes identity provider administration, backend authorization policy, secret storage on servers, and MFA device management.",
        "slug": "frontend-authentication-and-session-management",
        "source": "db"
      },
      "input_skill": "JWT",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "React Frontend Developer",
          "id": 89,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Svelte Frontend Developer",
          "id": 92,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "svelte-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Vue Frontend Developer",
          "id": 91,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "vue-frontend-developer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Node.js",
    "Mongoose",
    "Postman",
    "JWT"
  ],
  "input_llm_skills": [
    "Node.js",
    "Mongoose",
    "Postman",
    "JWT"
  ],
  "new_aliases_persisted": 0,
  "run_id": "6896a9c8-5917-42fc-a8f8-907a0ca58502",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Node.js",
          "alias_type": "CANONICAL",
          "id": 2500,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Node 20 LTS",
          "alias_type": "VERSION",
          "id": 2508,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Node 20.x",
          "alias_type": "VERSION",
          "id": 2506,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Node.js 20",
          "alias_type": "VERSION",
          "id": 2505,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Node.js 20 LTS",
          "alias_type": "VERSION",
          "id": 2509,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Node.js 20.x",
          "alias_type": "VERSION",
          "id": 2507,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node",
          "alias_type": "VERSION",
          "id": 2501,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 10",
          "alias_type": "VERSION",
          "id": 3786,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 12",
          "alias_type": "VERSION",
          "id": 3787,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 14",
          "alias_type": "VERSION",
          "id": 3788,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 16",
          "alias_type": "VERSION",
          "id": 3789,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 18",
          "alias_type": "VERSION",
          "id": 3790,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node 20",
          "alias_type": "VERSION",
          "id": 2503,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v10",
          "alias_type": "VERSION",
          "id": 3793,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v12",
          "alias_type": "VERSION",
          "id": 3794,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v14",
          "alias_type": "VERSION",
          "id": 3795,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v16",
          "alias_type": "VERSION",
          "id": 3796,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v18",
          "alias_type": "VERSION",
          "id": 3797,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node v20",
          "alias_type": "VERSION",
          "id": 3798,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js",
          "alias_type": "VERSION",
          "id": 3792,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 10",
          "alias_type": "VERSION",
          "id": 3805,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 12",
          "alias_type": "VERSION",
          "id": 3806,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 14",
          "alias_type": "VERSION",
          "id": 3807,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 16",
          "alias_type": "VERSION",
          "id": 3808,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 18",
          "alias_type": "VERSION",
          "id": 3809,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "node.js 20",
          "alias_type": "VERSION",
          "id": 3810,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs",
          "alias_type": "VERSION",
          "id": 2502,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 10",
          "alias_type": "VERSION",
          "id": 3799,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 12",
          "alias_type": "VERSION",
          "id": 3800,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 14",
          "alias_type": "VERSION",
          "id": 3801,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 16",
          "alias_type": "VERSION",
          "id": 3802,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 18",
          "alias_type": "VERSION",
          "id": 3803,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "nodejs 20",
          "alias_type": "VERSION",
          "id": 2504,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 67,
        "display_name": "Node.js",
        "id": 1564,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "RUNTIME",
        "slug": "node-js",
        "sub_category_id": 1872,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "JavaScript and TypeScript",
            "id": 114,
            "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
            "slug": "javascript-and-typescript",
            "source": "db"
          },
          "input_skill": "Node.js",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Angular Frontend Developer",
              "id": 90,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "angular-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "React Frontend Developer",
              "id": 89,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            },
            {
              "display_name": "Svelte Frontend Developer",
              "id": 92,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "svelte-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Vue Frontend Developer",
              "id": 91,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "vue-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Web Application Frameworks",
            "id": 2,
            "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
            "slug": "web-application-frameworks",
            "source": "db"
          },
          "input_skill": "Node.js",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Java Backend Developer",
              "id": 79,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "java-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "PHP Backend Developer",
              "id": 86,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "php-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Python Backend Developer",
              "id": 80,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "python-backend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Node.js",
      "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": "Mongoose",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Databases",
          "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": "mongoose",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Postman",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "API Testing Tools",
          "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": "postman",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "JWT",
          "alias_type": "CANONICAL",
          "id": 165,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 4,
        "display_name": "JWT",
        "id": 28,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "STANDARD",
        "slug": "jwt",
        "sub_category_id": 33,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Authorization",
            "id": 6,
            "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
            "slug": "authentication-and-authorization",
            "source": "db"
          },
          "input_skill": "JWT",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": ".NET Backend Developer",
              "id": 83,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "dotnet-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Java Backend Developer",
              "id": 79,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "java-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "PHP Backend Developer",
              "id": 86,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "php-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Python Backend Developer",
              "id": 80,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "python-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Session Handling",
            "id": 86,
            "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
            "slug": "authentication-and-session-handling",
            "source": "db"
          },
          "input_skill": "JWT",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            },
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Backend Authentication and Authorization",
            "id": 386,
            "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
            "slug": "backend-authentication-and-authorization",
            "source": "db"
          },
          "input_skill": "JWT",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Kotlin Backend Developer",
              "id": 84,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "kotlin-server-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Ruby Backend Developer",
              "id": 85,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "ruby-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Scala Backend Developer",
              "id": 87,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "scala-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Frontend Authentication and Session Management",
            "id": 300,
            "rationale": "Client-side authentication and session management for frontend applications, including sign-in flows, OAuth 2.0/OpenID Connect/SSO integration, JWT and refresh token handling, login forms, protected routes, session persistence, and session-expiry user experience. This covers the user-facing parts of identity workflows implemented in React or other frontend stacks, but excludes identity provider administration, backend authorization policy, secret storage on servers, and MFA device management.",
            "slug": "frontend-authentication-and-session-management",
            "source": "db"
          },
          "input_skill": "JWT",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "React Frontend Developer",
              "id": 89,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Svelte Frontend Developer",
              "id": 92,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "svelte-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Vue Frontend Developer",
              "id": 91,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "vue-frontend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "JWT",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Mongoose",
    "Postman"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Backend Developer",
    "id": 1,
    "rationale": "Domain=Software Engineering \u2192 sub-role node-backend-developer; The responsibilities clearly center on back-end web development with Node.js, OOP, Mongoose, JWT, and collaboration with frontend developers, which best matches Backend Developer.",
    "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
    "slug": "backend-engineer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Node.js",
      "tag": "in_db"
    },
    {
      "skill": "Mongoose",
      "tag": "new"
    },
    {
      "skill": "Postman",
      "tag": "new"
    },
    {
      "skill": "JWT",
      "tag": "in_db"
    }
  ],
  "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": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "JavaScript and TypeScript",
          "id": 114,
          "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
          "slug": "javascript-and-typescript",
          "source": "db"
        },
        "dimension_id": 114,
        "input_skill": "Node.js",
        "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": "Angular Frontend Developer",
            "id": 90,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "angular-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          },
          {
            "display_name": "React Frontend Developer",
            "id": 89,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          },
          {
            "display_name": "Svelte Frontend Developer",
            "id": 92,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "svelte-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Vue Frontend Developer",
            "id": 91,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "vue-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1564,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Web Application Frameworks",
          "id": 2,
          "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
          "slug": "web-application-frameworks",
          "source": "db"
        },
        "dimension_id": 2,
        "input_skill": "Node.js",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Java Backend Developer",
            "id": 79,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "java-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          },
          {
            "display_name": "PHP Backend Developer",
            "id": 86,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "php-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Python Backend Developer",
            "id": 80,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "python-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1564,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Authorization",
          "id": 6,
          "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
          "slug": "authentication-and-authorization",
          "source": "db"
        },
        "dimension_id": 6,
        "input_skill": "JWT",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": ".NET Backend Developer",
            "id": 83,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "dotnet-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Go Backend Developer",
            "id": 81,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "go-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Java Backend Developer",
            "id": 79,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "java-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          },
          {
            "display_name": "PHP Backend Developer",
            "id": 86,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "php-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Python Backend Developer",
            "id": 80,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "python-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 28,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Session Handling",
          "id": 86,
          "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
          "slug": "authentication-and-session-handling",
          "source": "db"
        },
        "dimension_id": 86,
        "input_skill": "JWT",
        "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": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          },
          {
            "display_name": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 28,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Backend Authentication and Authorization",
          "id": 386,
          "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
          "slug": "backend-authentication-and-authorization",
          "source": "db"
        },
        "dimension_id": 386,
        "input_skill": "JWT",
        "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": "Kotlin Backend Developer",
            "id": 84,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "kotlin-server-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Ruby Backend Developer",
            "id": 85,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "ruby-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Scala Backend Developer",
            "id": 87,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "scala-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 28,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Frontend Authentication and Session Management",
          "id": 300,
          "rationale": "Client-side authentication and session management for frontend applications, including sign-in flows, OAuth 2.0/OpenID Connect/SSO integration, JWT and refresh token handling, login forms, protected routes, session persistence, and session-expiry user experience. This covers the user-facing parts of identity workflows implemented in React or other frontend stacks, but excludes identity provider administration, backend authorization policy, secret storage on servers, and MFA device management.",
          "slug": "frontend-authentication-and-session-management",
          "source": "db"
        },
        "dimension_id": 300,
        "input_skill": "JWT",
        "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": "React Frontend Developer",
            "id": 89,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Svelte Frontend Developer",
            "id": 92,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "svelte-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Vue Frontend Developer",
            "id": 91,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "vue-frontend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 28,
        "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": "6896a9c8-5917-42fc-a8f8-907a0ca58502"
}